Arduino Nano - Teclado - Servo Motor
Este tutorial ensina você a usar o Arduino Nano e um teclado para controlar um servo motor. Em detalhes:
- Quando uma senha autorizada é digitada no teclado, o Arduino Nano gira o servo motor para 90°.
- Em seguida, o Arduino Nano gira o servo motor de volta para 0°.
O código do Arduino Nano pode aceitar várias senhas.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Buy Note: For controlling multiple servo motors, use the PCA9685 16 Channel PWM Servo Driver Module to save MCU pins and simplify wiring.
Sobre o Teclado e o Servo Motor
Se você não conhece o teclado e o servo motor (incluindo pinagem, funcionamento e programação), os tutoriais a seguir podem ajudar:
- Tutorial Arduino Nano - Teclado
- Tutorial Arduino Nano - Servo Motor
Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
Observe que o diagrama de ligação mostrado acima é adequado apenas para um servo motor com baixo torque. Caso o motor vibre em vez de girar, é preciso usar uma fonte de alimentação externa para operar o servo motor. O diagrama de ligação a seguir mostra como conectar o servo motor a uma fonte de alimentação externa.

This image is created using Fritzing. Click to enlarge image
Veja A melhor forma de alimentar o Arduino Nano e outros componentes.
Não se esqueça de conectar o GND da fonte externa ao GND do Arduino.
Código Arduino Nano - gira o Servo Motor se a senha estiver correta
Se a senha estiver correta, o servo motor será posicionado em 90° por 5 segundos. Após esse período de tempo, ele será girado para 0°.
Passos Rápidos
- Conecte um cabo USB entre o Arduino Nano e o PC.
- Abra a Arduino IDE e selecione a placa e a porta corretas.
- Clique no ícone Libraries na barra à esquerda da Arduino IDE.
- Pesquise por “keypad” e localize a biblioteca keypad criada por Mark Stanley e Alexander Brevig.
- Em seguida, pressione o botão Install para concluir a instalação da biblioteca keypad.

- Copie o código e abra-o na Arduino IDE.
- Clique no botão Upload na Arduino IDE para enviar o código ao Arduino Nano.

- Digite 12345# no teclado, seguido de 09876#.
- Confira o Serial Monitor e observe o estado do servo motor.
Explicação do Código
As senhas válidas são predefinidas no código do Arduino Nano. Uma string, chamada de input_password, é usada para armazenar a senha digitada pelos usuários. No teclado, duas teclas (* e #) têm funções especiais: limpar a senha e encerrar a senha. Quando uma tecla é pressionada:
- Se a tecla não for uma das duas teclas especiais, ela é adicionada à input_password.
- Se a tecla for *, a input_password é limpa. Isso pode ser usado para iniciar ou reiniciar a digitação da senha.
- Se a tecla for #:
- O Arduino Nano compara a input_password com as senhas predefinidas. Se ela corresponder a uma delas, o servo motor é girado para 90°.
- Independentemente de a senha estar correta ou não, a input_password é limpa para a próxima digitação.
- Após um tempo limite, o Arduino Nano gira o servo motor para 0°.