Arduino Nano - Botão - Servo Motor
Neste tutorial, você vai aprender a controlar um servo motor usando um Arduino Nano e um botão. Quando o botão é pressionado, o servo motor gira 90 graus. Se o botão for pressionado novamente, o servo motor volta para 0 grau. Essa ação se repete continuamente.
Este tutorial tem duas seções:
- Operando um servo motor sem debounce no botão.
- Operando um servo motor com debounce no botão.
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 Servo Motor e o Botão
Se você não conhece servo motores e botões (incluindo pinagens, como funcionam e como programá-los), os tutoriais a seguir podem ajudar:
Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
Note que o diagrama de ligação mostrado acima é adequado apenas para um servo motor de 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 - Botão Controla o Servo Motor Sem Debounce
Passos Rápidos
- Conecte um cabo USB ao seu Arduino Nano e ao PC.
- Abra o Arduino IDE e selecione a placa e a porta corretas.
- Cole o código no IDE e abra-o.
- Clique no botão Upload do IDE para enviar o código para o Arduino Nano.
- Pressione o botão várias vezes.
- Observe o movimento do servo motor.
※ Nota:
Na prática, o código mencionado acima nem sempre funciona corretamente. Para garantir que ele funcione bem, precisamos fazer o debounce do botão. Fazer o debounce do botão pode ser difícil para quem é novo no assunto. Felizmente, com a ajuda da biblioteca ezButton, essa tarefa fica muito mais simples.
Código Arduino Nano - Botão Controla o Servo Motor Com Debounce
Por que o debounce é necessário? Veja o Arduino Nano - Tutorial de Debounce de Botão para mais informações.
Passos Rápidos
- Instale a biblioteca ezButton. Consulte o Como Fazer para ver as instruções.
- Abra o código no Arduino IDE.
- Clique no botão Upload do Arduino IDE para fazer o upload do código para o Arduino Nano.
- Pressione o botão várias vezes.
- Observe as mudanças no servo motor.