Arduino Nano ESP32 - MG996R
Neste tutorial, vamos aprender a usar o servo motor de alto torque MG996R com o Arduino Nano ESP32.
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
O servo motor MG996R é um servo motor de alto torque capaz de levantar até 15kg de peso. O motor pode girar seu eixo de 0° a 180°, oferecendo controle preciso da posição angular. Para informações básicas sobre servo motores, consulte o tutorial Arduino Nano ESP32 - Servo Motor.
Pinagem
O servo motor MG996R usado neste exemplo tem três pinos:
- Pino VCC: (normalmente vermelho) precisa ser conectado ao VCC (4,8V – 7,2V)
- Pino GND: (normalmente preto ou marrom) precisa ser conectado ao GND (0V)
- Pino de sinal: (normalmente amarelo ou laranja) recebe o sinal de controle PWM de um pino do ESP32.

Diagrama de Ligação
Como o MG996R é um servo motor de alto torque, ele consome muita energia. Não devemos alimentar este motor pelo pino 5v do Arduino Nano ESP32. Em vez disso, precisamos usar uma fonte de alimentação externa para o servo motor MG996R.
- Quando a placa Arduino Nano ESP32 é alimentada pela porta USB.

This image is created using Fritzing. Click to enlarge image
- Quando a placa Arduino Nano ESP32 é alimentada pelo pino Vin.

This image is created using Fritzing. Click to enlarge image
Código Arduino Nano ESP32
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 no Arduino IDE.
- Ligue os componentes de acordo com o diagrama fornecido.
- Conecte a placa Arduino Nano ESP32 ao seu computador usando um cabo USB.
- Abra o Arduino IDE no seu computador.
- Selecione a placa Arduino Nano ESP32 e a porta COM correspondente.
- Clique no ícone Libraries na barra à esquerda do Arduino IDE.
- Digite ESP32Servo na caixa de pesquisa e procure a biblioteca de servo de Kevin Harrington,John K. Bennett.
- Clique no botão Install para instalar a biblioteca de servo motor para o Arduino Nano ESP32.

- Conecte o Arduino Nano ESP32 ao PC por um cabo USB
- Abra o Arduino IDE, selecione a placa e a porta corretas
- Copie o código acima e abra com o Arduino IDE
- Clique no botão Upload no Arduino IDE para fazer upload do código para o Arduino Nano ESP32

- Veja o resultado: o servo motor gira lentamente de 0 a 180° e depois gira lentamente de 180° de volta a 0°
Explicação do Código
Leia a explicação linha por linha nas linhas de comentário do código!
Como Controlar a Velocidade do Servo Motor
Usando as funções map() e millis(), podemos controlar a velocidade do servo motor de forma suave, sem bloquear o restante do código