ESP8266 - Chave Fim de Curso

Este tutorial ensina você a usar o ESP8266 com a chave fim de curso. Em detalhes, vamos aprender:

ESP8266 NodeMCU com Chave Fim de Curso

Sobre a Chave Fim de Curso

Ela é chamada de Chave Fim de Curso porque sua principal finalidade é detectar quando um objeto em movimento chegou a um limite.

A Pinagem da Chave Fim de Curso

Existem vários tipos de chaves fim de curso, mas as mais populares são a KW12-3 e a V-156-1C25. Cada um desses tipos possui três pinos:

  • C: Este é o pino comum e é usado tanto no modo normalmente aberto quanto no modo normalmente fechado.
  • NO: Este é o pino normalmente aberto e é usado apenas no modo normalmente aberto.
  • NC: Este é o pino normalmente fechado e é usado apenas no modo normalmente fechado.
Pinagem da chave fim de curso
image source: diyables.io

Como Funciona

Embora a chave fim de curso tenha três pinos, uma aplicação típica geralmente utiliza apenas dois pinos: o pino C e um dos outros dois. Por isso, existem quatro maneiras diferentes de usar a chave fim de curso. A seguir está uma tabela de ligação da chave fim de curso e do estado de leitura no ESP8266 para todos os quatro métodos:

Pino C Pino NO Pino NC Estado do Pino de Entrada do ESP8266
1 GND Pino de Entrada do ESP8266 (com pull-up) não conectado HIGH quando não tocada, LOW quando tocada
2 GND não conectado Pino de Entrada do ESP8266 (com pull-up) LOW quando não tocada, HIGH quando tocada
3 VCC Pino de Entrada do ESP8266 (com pull-down) não conectado LOW quando não tocada, HIGH quando tocada
4 VCC não conectado Pino de Entrada do ESP8266 (com pull-down) HIGH quando não tocada, LOW quando tocada

Em cada método, podemos trocar o pino GND e o pino de entrada do ESP8266. Assim, existem oito maneiras possíveis de conectar um ESP8266 a uma chave fim de curso.

Devemos escolher uma das quatro opções apresentadas. No restante do tutorial, usaremos o primeiro método.

Diagrama de Ligação

Diagrama de ligação do ESP8266 NodeMCU com chave fim de curso

This image is created using Fritzing. Click to enlarge image

Para mais informações, veja Pinagem do ESP8266 e como alimentar o ESP8266 e outros componentes.

Para uma ligação segura e confiável, sugerimos usar um Ferro de Solda para soldar os fios e os pinos da chave fim de curso. Depois disso, cubra a conexão com Tubo Termorretrátil para maior segurança.

Código ESP8266 - Chave Fim de Curso

Assim como em um botão, o debounce também é necessário para uma chave fim de curso (para mais informações, veja Por que o debounce é necessário para o botão/chave fim de curso?). Isso pode deixar a programação complexa. Felizmente, a biblioteca ezButton suporta a função de debounce e possui um resistor pull-up interno, o que facilita a programação do botão.

※ Nota:

Existem duas aplicações comuns com a chave fim de curso:

  • A primeira: se a chave estiver no estado TOCADA (TOUCHED), uma determinada ação deve ser executada. Por outro lado, se a entrada estiver NÃO TOCADA (UNTOUCHED), uma ação diferente deve ser executada.
  • A segunda: se a chave mudar de NÃO TOCADA para TOCADA (ou vice-versa), uma ação específica deve ser executada.
/* * Este código de ESP8266 NodeMCU foi desenvolvido por pt.newbiely.com * Este código de ESP8266 NodeMCU é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/esp8266/esp8266-limit-switch */ #include <ezButton.h> ezButton limitSwitch(D7); // create ezButton object that attach to ESP8266 pin D7 void setup() { Serial.begin(9600); limitSwitch.setDebounceTime(50); // set debounce time to 50 milliseconds } void loop() { limitSwitch.loop(); // MUST call the loop() function first if(limitSwitch.isPressed()) Serial.println("The limit switch: UNTOUCHED -> TOUCHED"); if(limitSwitch.isReleased()) Serial.println("The limit switch: TOUCHED -> UNTOUCHED"); int state = limitSwitch.getState(); if(state == HIGH) Serial.println("The limit switch: UNTOUCHED"); else Serial.println("The limit switch: TOUCHED"); }

Passos Rápidos

Para começar com o ESP8266 no Arduino IDE, siga estes passos:

  • Confira o tutorial como configurar o ambiente para o ESP8266 no Arduino IDE se esta for a sua primeira vez usando o ESP8266.
  • Faça a ligação dos componentes conforme mostrado no diagrama.
  • Conecte a placa ESP8266 ao seu computador usando um cabo USB.
  • Abra o Arduino IDE no seu computador.
  • Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
  • Faça a ligação conforme indicado no diagrama.
  • Conecte o ESP8266 a um computador usando um cabo USB.
  • Abra o Arduino IDE.
  • Instale a biblioteca ezButton, as instruções podem ser encontradas aqui.
  • Selecione a placa e a porta corretas.
  • Clique no botão Upload no Arduino IDE para compilar e fazer o upload do código para o ESP8266.
  • Pressione e solte a chave fim de curso.
  • Confira o resultado no Serial Monitor.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
Nodemcu 1.0 (ESP-12E Module)
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Nodemcu 1.0 (ESP-12E Module)' on 'COM15')
New Line
9600 baud
The limit switch: UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED -> TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED -> UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED
Ln 11, Col 1
Nodemcu 1.0 (ESP-12E Module) on COM15
2

Vídeo

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!