ESP8266 - Trava Solenoide
A trava solenoide, também chamada de fechadura elétrica (Electric Strike Lock), pode ser usada para trancar e destrancar armários, gavetas e portas. Neste tutorial, vamos aprender a controlar a trava solenoide usando o ESP8266.
Uma alternativa à trava solenoide é a trava eletromagnética. Para mais informações, consulte o Tutorial ESP8266 - Trava Eletromagnética.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre a Trava Solenoide
Pinagem da Trava Solenoide
A trava solenoide tem dois fios:
- O fio positivo (+) (vermelho) deve ser conectado ao 12V de uma fonte de alimentação DC
- O fio negativo (-) (preto) deve ser conectado ao GND de uma fonte de alimentação DC

Como Funciona
- Quando a trava solenoide recebe energia, a lingueta da trava se estende, e a porta fica trancada.
- Quando a trava solenoide NÃO recebe energia, a lingueta da trava se retrai, e a porta fica destrancada.
※ Nota:
A trava solenoide normalmente precisa de uma fonte de 12V, 24V ou 48V. Por isso, ela NÃO pode ser conectada diretamente a um pino do ESP8266. É preciso usar um relé para ligar a trava solenoide ao pino do ESP8266.
Se a trava solenoide estiver conectada a um relé (no modo normalmente aberto):
- Quando o relé não está ativado, a porta está destrancada
- Quando o relé está ativado, a porta está trancada
Conectar o ESP8266 a um relé permite programar o ESP8266 para controlar a trava solenoide. Para mais informações sobre relés, consulte o Tutorial ESP8266 - Relé.
Diagrama de Ligação

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.
Código ESP8266
Este código faz a porta ser trancada e destrancada a cada cinco segundos.
Passos Rápidos
Para começar com o ESP8266 no Arduino IDE, siga estes passos:
- Veja o tutorial como configurar o ambiente para o ESP8266 no Arduino IDE se esta for a sua primeira vez usando o ESP8266.
- Ligue os componentes como 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.
- Copie o código e abra-o no Arduino IDE.
- Clique no botão Upload da IDE do Arduino para enviar o código para o ESP8266.
- Observe o estado da lingueta da trava.
ESP8266 - Botão Controla a Trava Solenoide
- Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
- Escrevendo o código para uma placa ESP8266.
Passos Rápidos
- Ligue os componentes como 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.
- Instale a biblioteca ezButton. Consulte Como Fazer para ver as instruções.
- Copie o código e abra-o no Arduino IDE.
- Clique no botão Upload do Arduino IDE para fazer upload do código para o ESP8266.
- Pressione o botão uma vez.
- Observe o estado da lingueta da trava por 10 segundos.
※ Nota:
No código acima, usamos a função delay. Por isso, não precisamos implementar debouncing para o botão. Mesmo assim, incluímos o código com debouncing caso você queira executar tarefas adicionais sem usar a função delay. Veja Como usar millis() em vez de delay() para mais informações.