Arduino - Teclado - Fechadura Eletromagnética
Neste tutorial, vamos aprender como usar um teclado, uma fechadura eletromagnética e o Arduino juntos. Em detalhes, se um usuário digitar a senha corretamente no teclado, o Arduino ativa a fechadura eletromagnética.
O tutorial também fornece o código que ativa uma fechadura eletromagnética por um período de tempo e depois a desativa sem usar a função delay(). O código Arduino também suporta várias senhas.

Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables STEM V3 Starter Kit (Arduino included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Teclado e a Fechadura Eletromagnética
Se você não conhece o teclado e a fechadura eletromagnética (pinagem, como funciona, como programar...), aprenda sobre eles nos seguintes tutoriais:
- Tutorial Arduino - Teclado
- Tutorial Arduino - Fechadura Eletromagnética
Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
Código Arduino - ativar a fechadura eletromagnética se a senha estiver correta
Os códigos abaixo ativam uma fechadura eletromagnética se a senha estiver correta
Passos Rápidos
- Conecte o Arduino ao PC por meio do cabo USB
- Abra o Arduino IDE, selecione a placa e a porta corretas
- Vá até o ícone Libraries na barra esquerda do Arduino IDE.
- Pesquise “keypad” e, em seguida, encontre a biblioteca keypad de Mark Stanley, Alexander Brevig
- Clique no botão Install para instalar a biblioteca keypad.

- Copie o código acima e abra-o no Arduino IDE
- Clique no botão Upload no Arduino IDE para carregar o código no Arduino

- Pressione as teclas 8123 e pressione #
- Pressione as teclas 1234 e pressione #
- Veja o resultado no Serial Monitor e o estado da fechadura eletromagnética
Explicação do Código
As senhas autorizadas são predefinidas no código Arduino.
Uma string é usada para armazenar a senha digitada pelos usuários, chamada de input string. No teclado, duas teclas (* e #) são usadas para fins especiais: limpar a senha e finalizar a senha. Quando uma tecla do teclado é pressionada:
- Se a tecla pressionada não for uma das duas teclas especiais, ela é adicionada à input string
- Se a tecla pressionada for *, a input string é limpa. Você pode usá-la para começar ou recomeçar a digitar a senha
- Se a tecla pressionada for #:
- A input string é comparada com as senhas predefinidas. Se corresponder a uma das senhas predefinidas, a fechadura eletromagnética é ativada.
- Independentemente de a senha estar correta ou não, a input string é limpa para a próxima entrada
Código Arduino - ativar uma fechadura eletromagnética por um período de tempo se a senha estiver correta
O código abaixo ativa a fechadura eletromagnética por 5 segundos se a senha estiver correta. Após 5 segundos, a fechadura eletromagnética é desativada.
Observe que o código acima usa a biblioteca ezOutput, que facilita o gerenciamento do tempo de forma não bloqueante. Você pode consultar o Guia de Instalação da Biblioteca ezOutput