Arduino Nano ESP32 - Trava Solenoide

A trava solenoide também é conhecida como trava de fechadura elétrica. Ela pode ser usada para trancar/destrancar armário, gaveta e porta. Este tutorial ensina como usar o Arduino Nano ESP32 para controlar a trava solenoide.

Uma alternativa à trava solenoide é a trava eletromagnética. Você pode saber mais no Tutorial da Trava Eletromagnética com Arduino Nano ESP32

Hardware Necessário

1×Arduino Nano ESP32
1×Cabo USB Tipo-A para Tipo-C (para PC com USB-A)
1×Cabo USB Tipo-C para Tipo-C (para PC com USB-C)
1×Fechadura Solenoide
1×Relé
1×Fonte de Alimentação 12V
1×Protoboard
1×Fios Jumper
1×(Opcional) Conector de Alimentação DC
1×(Recomendado) Placa de Expansão com Bornes de Parafuso para Arduino Nano
1×(Recomendado) Placa de Expansão Breakout para Arduino Nano
1×(Recomendado) Divisor de Alimentação para Arduino Nano ESP32

Or you can buy the following kits:

1×DIYables Sensor Kit (18 sensors/displays)
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.

Sobre a Trava Solenoide

Pinagem

A trava solenoide inclui dois fios:

  • Fio positivo (+) (vermelho): precisa ser conectado aos 12V da fonte de alimentação DC
  • Fio negativo (-) (preto): precisa ser conectado ao GND da fonte de alimentação DC
Pinagem da trava solenoide

Como Funciona

  • Quando a trava solenoide está alimentada, a lingueta da trava (strike) fica estendida ⇒ a porta está trancada
  • Quando a trava solenoide NÃO está alimentada, a lingueta da trava (strike) fica recolhida ⇒ a porta está destrancada

※ Nota:

A trava solenoide geralmente usa uma fonte de alimentação de 12V, 24V ou 48V. Portanto, NÃO podemos conectar a trava solenoide diretamente ao pino do Arduino Nano ESP32. Precisamos conectá-la ao pino do Arduino Nano ESP32 por meio de um relé

Se conectarmos a trava solenoide a um relé (modo normalmente aberto):

  • Quando o relé está aberto, a porta está destrancada
  • Quando o relé está fechado, a porta está trancada

Ao conectar o Arduino Nano ESP32 ao relé, podemos programar o Arduino Nano ESP32 para controlar a trava solenoide. Saiba mais sobre o relé no Tutorial do Relé com Arduino Nano ESP32.

Diagrama de Ligação

Diagrama de ligação da trava solenoide com o Arduino Nano ESP32

This image is created using Fritzing. Click to enlarge image

Código Arduino Nano ESP32

O código abaixo tranca/destranca a porta a cada 5 segundos

/* * Este código de Arduino Nano ESP32 foi desenvolvido por pt.newbiely.com * Este código de Arduino Nano ESP32 é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino-nano-esp32/arduino-nano-esp32-solenoid-lock */ #define RELAY_PIN D2 // The Arduino Nano ESP32 pin connected to the solenoid lock via the relay // The setup function runs once on reset or power-up void setup() { // initialize digital pin as an output. pinMode(RELAY_PIN, OUTPUT); } // The loop function repeats indefinitely void loop() { digitalWrite(RELAY_PIN, HIGH); // unlock the door delay(5000); digitalWrite(RELAY_PIN, LOW); // lock the door delay(5000); }

Passos Rápidos

Para começar com o Arduino Nano ESP32, siga estes passos:

  • Se você é novo no Arduino Nano ESP32, consulte o tutorial sobre como configurar o ambiente para o Arduino Nano ESP32 na Arduino IDE.
  • Faça a ligação dos componentes de acordo com o diagrama fornecido.
  • Conecte a placa Arduino Nano ESP32 ao seu computador usando um cabo USB.
  • Abra a Arduino IDE no seu computador.
  • Selecione a placa Arduino Nano ESP32 e a porta COM correspondente.
  • Copie o código acima e cole na Arduino IDE
  • Compile e faça o upload do código para a placa Arduino Nano ESP32 clicando no botão Upload na Arduino IDE
  • Veja o estado da lingueta da trava

Arduino Nano ESP32 - Botão Controla a Trava Solenoide

Veja o Tutorial do Botão que Controla a Trava Solenoide com Arduino Nano ESP32

※ Nota:

No código acima, usamos a função delay. Portanto, não precisamos fazer debouncing do botão. No entanto, ainda fornecemos o código com debouncing, caso você queira executar mais tarefas sem usar a função delay. Veja Como usar millis() em vez de delay()

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!