En este tutorial, aprenderás a construir un robot móvil y controlarlo desde un dispositivo móvil mediante bluetooth. A lo largo del tutorial, te guiaremos paso a paso en la conexión de los componentes y la programación necesaria para hacer que tu robot funcione de manera efectiva controlado por bluetooth.
Materiales Necesarios:
• 01 Arduino UNO
Este microcontrolador será el cerebro del robot. Controlará los motores para los movimientos del robot:

• 01 Sensor Shield v5
El Shield de sensores facilitará las conexiones de los componentes.

• 02 Motores DC
Estos motores permitirán que el robot se desplace. Serán controlados por el driver L298N para moverse hacia adelante, hacia atrás y girar.

• 01 Driver L298N
El driver se encargará de controlar los dos motores DC, recibiendo señales del Arduino para determinar la dirección y velocidad de los motores.

• 02 Baterías 18650 y 01 caja de baterías
Las baterías proporcionarán la alimentación necesaria para todos los componetnes del robot. Se utilizarán dos en serie para obtener un rango de voltaje entre 7.4V y 8.4V.

• 01 Módulo bluetooth HC-05, HC-06, HM-10 o AT-09
Este módulo nos servirá para conectar nuestro robot de forma inalámbrica a un dispositivo móvil. Podemos usar los módulo de bluetooth clásico (HC-05 o HC-06), o también los de bluetooth de bajo consumo BLE (HM-10 o AT-09). Recomendamos estos últimos ya que al ser BLE consumen muy poca energía, pero si prefieres usar los otros modelos el código y conexiones es el mismo.

• Cables de conexión
Los cables se utilizarán para conectar todos los componentes eléctricos y electrónicos entre sí.

• 01 Interruptor ON/OFF
Este interruptor permitirá controlar la alimentación de todo el sistema, encendiendo y apagando el robot fácilmente.

• Chasis y ruedas para el robot (opcional, según tu diseño)
El chasis es la estructura donde se montarán todos los componentes. Las ruedas permitirán que el robot se desplace al ser impulsado por los motores DC. Nosotros usaremos el kit de robot móvil 2WD

Paso 1: Ensamblaje de la Estructura y Montaje del Robot
Antes de iniciar con los componentes electrónicos, es esencial ensamblar la estructura del robot. Existen varios diseños y chasis disponibles, pero en este tutorial utilizaremos un robot diferencial que utiliza 2 motores con sus respectivas llantas y una rueda loca de soporte para mantener el equilibrio.
1. Coloca todos los componentes en el chasis:
• Monta los motores y ruedas en el chasis del robot.
• Coloca las baterías y asegúrate de que todo esté bien asegurado.
• Coloca los demás componentes sorbe el chasis y luego conéctalos según el diagrama de conexiones.

Paso 2: Diagrama de conexiones:

1. Conexión de los motores:
• Conecta los dos motores DC al driver L298N. El motor derecho se conecta a la salida OUT1 y OUT2, mientras que el motor izquierdo va a OUT3 y OUT4 del driver.
2. Alimentación del robot:
• Alimenta el driver L298N con las 02 baterías 18650.
• Asegúrate de conectar un interruptor ON/OFF entre la fuente de alimentación y el driver para poder controlar el encendido y apagado del robot.
3. Control del Driver L298N desde el Arduino:
• Conecta los pines de control del driver a los pines correspondientes en el Shield del Arduino. Estos controlarán el giro y la velocidad de los motores.
4. Módulo bluetooth:
- Rx (PIN 1) -> Tx del módulo bluetooth
- Tx (PIN 0) -> Rx del módulo bluetooth
IMPORTANTE: Como estamos usando los pines 0 y 1, deberás desconectar el módulo bluetooth cada vez que subas un código al Arduino.
NOTA: El módulo bluetooth debe estar configurado para comunicarse a una velocidad de 9600bps
Paso 3: Programación del Robot
Carga el código en el ESP32 para controlar la locomoción del robot y el sistema de fumigación. Este código deberá manejar los motores mediante comandos, además de activar la bomba y el atomizador a través de los relés.
// Pines del driver L298N const int ENA = 6; const int IN1 = 7; const int IN2 = 8; const int IN3 = 9; const int IN4 = 10; const int ENB = 11; void setup() { // Inicialización de pines pinMode(ENA, OUTPUT); pinMode(IN1, OUTPUT); pinMode(IN2, OUTPUT); pinMode(IN3, OUTPUT); pinMode(IN4, OUTPUT); pinMode(ENB, OUTPUT); // Inicializar comunicación Serial a 9600 bps Serial.begin(9600); } void loop() { if (Serial.available()) { char comando = Serial.read(); switch (comando) { case 'A': // Avanzar adelante(); break; case 'R': // Retroceder atras(); break; case 'I': // Girar a la izquierda izquierda(); break; case 'D': // Girar a la derecha derecha(); break; case 'T': // Detenerse detener(); break; default: detener(); break; } } } void adelante() { digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH); analogWrite(ENA, 110); // Velocidad analogWrite(ENB, 110); // Velocidad } void atras() { digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW); analogWrite(ENA, 110); // Velocidad analogWrite(ENB, 110); // Velocidad } void izquierda() { digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW); analogWrite(ENA, 110); // Velocidad analogWrite(ENB, 110); // Velocidad } void derecha() { digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH); analogWrite(ENA, 110); // Velocidad analogWrite(ENB, 110); // Velocidad } void detener() { digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, LOW); analogWrite(ENA, 0); analogWrite(ENB, 0); }
Paso 4: Control Bluetooth
Para controlar el robot de manera remota por bluetooth, utilizaremos la aplicación móvil EduConnect, disponible en Google Play Store.

Descárgala aquí: EduConnect – Arduino Bluetooth.
Configuraremos la app de la siguiente manera, en Ajustes elegimos el modelo del módulo bluetooth, en este caso HM-10. Si estás usando un HC-05 o HC-06 sólo debes elegirlo, el código no varía:

En la pantalla de Comandos, configuraremos los siguientes comandos:

Una vez que hayas terminado, solo necesitarás abrir la aplicación EduConnect en tu dispositivo móvil, conectarte al módulo Bluetooth del robot, y podrás comenzar a moverlo utilizando los botones de la app.
Si necesitas más detalles sobre como conectar la aplicación al módulo bluetooth, puedes revisar este tutorial.
Si tienes alguna duda, puedes dejar tu comentario y te ayudaremos.