1 — Materiales
Ir a la Tienda- Arduino UNO, Nano o compatible
- Módulo Bluetooth HC-05 o HC-06 (clásico)
- Pareja de motores DC 6V (o un chasis con motorreductores)
- Piloto L298N (o driver motor L293D / TB6612) o controlador de motores similar
- Batería 7.4V (2S LiPo) o pack de pilas según requerimiento
- Cables, protoboard (opcional), chasis, ruedas y sensores opcionales
- Smartphone con app "Bluetooth Serial" o "Bluetooth Terminal"
Arma la estructura del robot montando dos motores en el chasis, coloca las ruedas en cada motor y una rueda loca adelante o atrás. Instala la batería en un lugar seguro y fija el driver de motores y la placa de control (Arduino o similar) sobre el chasis. Asegúrate de que todo esté firme.
Conecta los motores al driver. Une la batería al driver para que pueda alimentar los motores. Conecta el driver a la placa controladora usando sus pines de control. Asegúrate de unir todas las tierras (GND) para que exista referencia común. Revisa polaridades antes de encender.
Configura la velocidad y tiempos de movimiento.Después de cargar el programa, realiza pruebas cortas, ajusta velocidades y corrige cualquier problema de conexión, equilibrio o potencia.
2 — Principio de funcionamiento
El módulo HC-05 crea un enlace serial inalámbrico entre el Arduino y un teléfono. El teléfono envía caracteres (por ejemplo: F adelante, B atrás, L izquierda, R derecha, S stop). Arduino lee esos caracteres por Serial (o Serial1 en placas con puerto hardware extra) y activa los pines del driver de motor para mover los motores.
3 — Diagrama de conexiones (resumen)
Conexiones básicas
- HC-05: VCC -> 5V (o 3.3V según módulo), GND -> GND
- HC-05 TX -> Arduino RX (pin 0) (opcional usar SoftwareSerial)
- HC-05 RX -> Arduino TX (pin 1) (si el módulo usa 3.3V RX, usar divisor de tensión)
- Driver L298N ENA/ENB y entradas IN1..IN4 -> pines digitales de Arduino
- Motores -> Salidas del driver; Batería externa -> VIN del driver (no alimentar motores desde 5V del Arduino)
Mapa de pines ejemplo (Arduino Uno)
- IN1 -> D8
- IN2 -> D9
- IN3 -> D10
- IN4 -> D11
- HC-05 TX -> Arduino D2 (SoftwareSerial RX)
- HC-05 RX -> Arduino D3 (SoftwareSerial TX) *
*Si prefieres usar el puerto serial hardware (Serial) desconecta HC-05 de los pines 0/1 cuando cargues el sketch y vuelve a conectar para la comunicación por Bluetooth.
Esquema ASCII rápido
[HC-05] [Arduino UNO] [L298N] [Motor A] [Motor B] VCC -------+---> 5V GND -------+---> GND -----------------------> GND TX -----> D2 (RX SoftwareSerial) RX <----- D3 (TX SoftwareSerial) (con divisor de tensión) Arduino D8 ---> IN1 (L298) Arduino D9 ---> IN2 (L298) Arduino D10 --> IN3 (L298) Arduino D11 --> IN4 (L298) L298N OUT1/OUT2 -> Motor A L298N OUT3/OUT4 -> Motor B Batería (7-12V) -> L298N VCC (motores)
4 — Código Arduino (ejemplo simple)
Este sketch usa la librería SoftwareSerial para comunicar con HC-05. Envía comandos simples: F, B, L, R, S. Ajusta pines si usas otro driver o placa.
// Robot Bluetooth básico - HC-05 (SoftwareSerial)
#include <SoftwareSerial.h>
// Pines motores (L298N ejemplo)
const int in1 = 8;
const int in2 = 9;
const int in3 = 10;
const int in4 = 11;
// Pines SoftwareSerial para HC-05
SoftwareSerial bt(2, 3); // RX, TX
void setup(){
Serial.begin(9600);
bt.begin(9600); // HC-05 default
pinMode(in1, OUTPUT); pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT); pinMode(in4, OUTPUT);
stopMotors();
}
void loop(){
if(bt.available()){
char cmd = bt.read();
Serial.print("Recibido: "); Serial.println(cmd);
handleCommand(cmd);
}
// opcional: leer sensores, estado batería, etc.
}
void handleCommand(char c){
switch(c){
case 'F': forward(); break;
case 'B': backward(); break;
case 'L': left(); break;
case 'R': right(); break;
case 'S': stopMotors(); break;
default: stopMotors(); break;
}
}
void forward(){
digitalWrite(in1, HIGH); digitalWrite(in2, LOW);
digitalWrite(in3, HIGH); digitalWrite(in4, LOW);
}
void backward(){
digitalWrite(in1, LOW); digitalWrite(in2, HIGH);
digitalWrite(in3, LOW); digitalWrite(in4, HIGH);
}
void left(){
digitalWrite(in1, LOW); digitalWrite(in2, HIGH);
digitalWrite(in3, HIGH); digitalWrite(in4, LOW);
}
void right(){
digitalWrite(in1, HIGH); digitalWrite(in2, LOW);
digitalWrite(in3, LOW); digitalWrite(in4, HIGH);
}
void stopMotors(){
digitalWrite(in1, LOW); digitalWrite(in2, LOW);
digitalWrite(in3, LOW); digitalWrite(in4, LOW);
}
Nota: si tus motores necesitan control de velocidad, conecta ENA/ENB del L298 a pines PWM y usa analogWrite().
5 — Cómo controlar desde el teléfono
- Instala una app de terminal Bluetooth como "Bluetooth Terminal HC-05" o "Serial Bluetooth Terminal".
- Empareja el HC-05 desde los ajustes Bluetooth (código por defecto:
1234o0000). - En la app, conéctate al HC-05 y envía una letra:
Fpara adelante, etc.
Si prefieres botones, muchas apps permiten crear botones que envíen cadenas específicas. También puedes crear tu propia app con MIT App Inventor o un pequeño app Android que envíe comandos por Bluetooth.
6 — Buenas prácticas y seguridad
- No alimentes motores desde el pin 5V del Arduino: usa una batería externa a través del driver.
- Protege el pin RX del HC-05 con un divisor de tensión si lo conectas a TX del Arduino (5V -> 3.3V).
- Prueba sin ruedas (motores en altura) para comprobar dirección antes de soltar el robot.
- Ajusta la velocidad con PWM (EN pins) para maniobras más suaves.
7 — Extensiones recomendadas
- Sensores ultrasónicos HC-SR04 para evitar obstáculos
- Encoders en ruedas para control de velocidad/posicionamiento
- Módulo BLE (HM-10) si quieres controlar desde navegador (Web Bluetooth)
- Agregar cámara o módulo ESP32-CAM para teleoperación
8 — Recursos y plantillas
Puedes copiar este archivo como plantilla HTML para documentar tu proyecto o compartirlo con otras personas. Si quieres, puedo:
- Generar el esquema en formato PDF o Word
- Crear la versión con control por navegador (si usas BLE/HM-10 o ESP32)
- Añadir una sección con código para control por velocidad (PWM)
Libros y Articulos recomendados
Recursos recomendados:
- Libros y Articulos — documentación oficial y ejemplos de proyectos en Automatización.
- Biblioteca Villa Automation
Catalogo de proyectos
Recursos recomendados:
- Catologo — Catologo de productos terminandos y listos para su funcionamientobasados en Automatización.
- Catologo VILLA AUTOMATION
Donaciones Aquí