ESP8266: Control del servomotor mediante Bluetooth

Este tutorial explica cómo programar un ESP8266 para controlar un servomotor utilizando Bluetooth (módulo HC-05) o BLE (módulo HM-10). Se proporcionan instrucciones para ambos módulos.

Usaremos la Bluetooth Serial Monitor App en un teléfono inteligente para transmitir el valor del ángulo al ESP8266. El ESP8266 ajustará entonces el servomotor de acuerdo con el valor recibido.

ESP8266 NodeMCU servomotor Bluetooth

Hardware Requerido

1×ESP8266 NodeMCU
1×Cable USB Tipo-A a Tipo-C (para PC USB-A)
1×Cable USB Tipo-C a Tipo-C (para PC USB-C)
1×Módulo Bluetooth HC-05
1×(Alternativo) HM-10 BLE Module
1×Servomotor
1×Cables Puente
1×(Recomendado) Placa de Expansión de Terminales de Tornillo para ESP8266
1×(Recomendado) Divisor de Alimentación para ESP8266 Tipo-C

Or you can buy the following kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgación: Algunos de los enlaces proporcionados en esta sección son enlaces de afiliado de Amazon. Podemos recibir una comisión por las compras realizadas a través de estos enlaces sin costo adicional para usted. Apreciamos su apoyo.

Acerca del servomotor y del módulo Bluetooth

Si no está familiarizado con los servomotores, los módulos Bluetooth, sus conexiones de pines, cómo funcionan y cómo programarlos, por favor consulte los siguientes tutoriales para obtener más información:

Diagrama de Cableado

  • Para controlar un servomotor con Bluetooth clásico, se debe utilizar el módulo Bluetooth HC-05. Se proporciona un diagrama de cableado como referencia.
Diagrama de cableado del servomotor Bluetooth con ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

Para obtener m\u00e1s informaci\u00f3n, consulte Pines del ESP8266 y c\u00f3mo alimentar ESP8266 y otros componentes.

  • Para controlar un motor servo con BLE, se debe usar el módulo HM-10 BLE. Un diagrama de cableado está disponible como referencia.
Diagrama de cableado del motor servo BLE con ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

Código ESP8266 - controla un servomotor a través de Bluetooth/BLE

El siguiente código es adecuado para su uso con tanto el módulo Bluetooth HC-10 como el módulo HM-10 BLE. Es compatible con ambos.

/* * Este código de ESP8266 NodeMCU fue desarrollado por es.newbiely.com * Este código de ESP8266 NodeMCU se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/esp8266/esp8266-control-servo-motor-via-bluetooth */ #include <SoftwareSerial.h> #include <Servo.h> #define SOFT_RX D7 // The ESP8266 pin connected to the TX of the bluetooth module #define SOFT_TX D6 // The ESP8266 pin connected to the RX of the bluetooth module SoftwareSerial bluetooth(SOFT_RX, SOFT_TX); Servo servo; // create servo object to control a servo int pos = 0; // variable to store the servo position void setup() { Serial.begin(9600); bluetooth.begin(9600); servo.attach(11); // attaches the servo on pin 11 to the servo object } void loop() { if (bluetooth.available()) { // if there is data comming int angle = bluetooth.parseInt(); if (angle >= 0 && angle <= 180) { servo.write(angle); // rotate servo bluetooth.print("Rotated servo to angle: ");// reports action to smartphone app bluetooth.println(angle); } else { bluetooth.print("Invalid angle: ");// reports invalid value to smartphone app bluetooth.println(angle); } } }

Pasos R\u00e1pidos

Para empezar con ESP8266 en el IDE de Arduino, siga estos pasos:

  • Consulta el tutorial cómo configurar el entorno para ESP8266 en Arduino IDE si es la primera vez que usas ESP8266.
  • Conecta los componentes tal como se muestran en el diagrama.
  • Conecta la placa ESP8266 a tu computadora usando un cable USB.
  • Abre Arduino IDE en tu computadora.
  • Elige la placa ESP8266 correcta, como (p. ej. NodeMCU 1.0 (ESP-12E Módulo)), y su puerto COM correspondiente.
  • Descarga la aplicación Bluetooth Serial Monitor para tu smartphone.
  • Toma el código proporcionado y ábrelo en Arduino IDE, luego súbelo a tu placa ESP8266.
  • Si experimentas dificultades para subir el código, intenta desconectar los pines TX y RX del módulo Bluetooth, subir el código y luego volver a conectar los pines RX/TX.
  • Abre la aplicación Bluetooth Serial Monitor en tu smartphone y selecciona la opción Bluetooth Clásico o BLE, dependiendo del módulo que se esté utilizando.
Aplicación de monitor serie Bluetooth
  • Conecta la aplicación al módulo Bluetooth HC-05 o al módulo BLE HM-10.
Emparejamiento del Monitor Serial Bluetooth
  • Ingrese un ángulo como 45 o 90 y presione el botón Enviar.
Aplicación de Monitor Serial Bluetooth
  • Observa la variación del ángulo del servomotor.
  • Examina las consecuencias en la aplicación de Android.
Aplicación de Monitor Serial Bluetooth

Si encuentra útil la aplicación Bluetooth Serial Monitor, por favor califíquela con 5 estrellas en Play Store. ¡Gracias por su apoyo!

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.

Referencias de funciones

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!