ESP32 - MG996R
En este tutorial, vamos a aprender a usar el servomotor MG996R de alto par con ESP32.
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | |
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Acerca del servomotor
El servomotor MG996R es un servomotor de alto torque capaz de levantar hasta 15 kg de peso. El motor puede girar su eje de 0° a 180°, proporcionando un control preciso de la posición angular. Para información básica sobre servomotores, consulte el tutorial ESP32 - Servo Motor.
Disposición de pines
El servomotor MG996R utilizado en este ejemplo incluye tres pines:
- Pin VCC: (típicamente rojo) debe conectarse a VCC (4.8 V – 7.2 V)
- Pin GND: (típicamente negro o marrón) debe conectarse a GND (0 V)
- Pin de señal: (típicamente amarillo o naranja) recibe la señal de control PWM desde un pin del ESP32.

Diagrama de Cableado
Como el MG996R es un servomotor de alto par, consume mucha potencia. No debemos alimentar este motor a través del pin 5V del ESP32. En su lugar, debemos utilizar una fuente de alimentación externa para el servomotor MG996R.

This image is created using Fritzing. Click to enlarge image
Si no sabe c\u00f3mo alimentar ESP32 y otros componentes, encuentre instrucciones en el siguiente tutorial: C\u00f3mo alimentar ESP32.
Código ESP32
Pasos R\u00e1pidos
- Si es la primera vez que usas ESP32, consulta cómo configurar el entorno para ESP32 en Arduino IDE.
- Realiza el cableado como en la imagen de arriba.
- Conecta la placa ESP32 a tu PC mediante un cable micro USB.
- Abre Arduino IDE en tu PC.
- Selecciona la placa ESP32 adecuada (p. ej. ESP32 Dev Module) y el puerto COM.
- Haz clic en el icono Libraries en la barra izquierda del Arduino IDE.
- Escribe ESP32Servo en la caja de búsqueda, luego busca la biblioteca de servo de Kevin Harrington y John K. Bennett.
- Haz clic en el botón Install para instalar la biblioteca de servomotores para ESP32.

- Conecta el ESP32 al PC mediante un cable USB
- Abre Arduino IDE, selecciona la placa y el puerto correctos
- Copia el código anterior y ábrelo con Arduino IDE
- Haz clic en el botón Subir en Arduino IDE para subir el código al ESP32

- Ver el resultado: El servomotor gira lentamente de 0° a 180° y luego vuelve a girar lentamente de 180° a 0°
Explicación del código
Puede encontrar la explicación en la línea de comentarios del código de Arduino anterior.
Cómo controlar la velocidad del servomotor
Al usar las funciones map() y millis(), podemos controlar la velocidad del servomotor de forma suave sin bloquear el resto del código
Video Tutorial
Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.