Cómo crear un coche controlado por Bluetooth con Arduino: una guía paso a paso
13 min
- Paso 1: Definir el sistema mecánico y eléctrico del coche Arduino Bluetooth
- Paso 2: Seleccionar Componentes para el PCBA del Coche RC Arduino Nano
- Paso 3: Diseñar el Esquemático para un Coche RC Bluetooth Arduino Nano
- Paso 4: Diseñar el Layout del PCB para un PCBA de Coche Robot de Dos Ruedas
- Paso 5: Fabricar el Coche RC Bluetooth Arduino Nano Usando Servicios de PCBA
- Paso 6: Programar el Arduino Nano para el Control del Coche Bluetooth
- Paso 7: Controlar el Coche RC Bluetooth Arduino con un Teléfono Móvil
- Paso 8: Probar y Optimizar el Coche Controlado por Bluetooth Arduino
- Preguntas Frecuentes sobre el Coche Controlado por Bluetooth Arduino
- Conclusión: Coche Controlado por Bluetooth Arduino
Este tutorial explica paso a paso el diseño de ingeniería y la implementación completa de un coche RC Bluetooth de dos ruedas con un módulo Arduino Nano sobre una PCBA (Ensamblaje de Placa de Circuito Impreso) especialmente diseñada.
Aunque muchos aficionados comienzan conectando los motores y el módulo Bluetooth mediante cables jumper sobre una protoboard, este enfoque es propenso a desconexiones y ruido en la señal. En esta guía aprenderás a llevar ese proyecto al siguiente nivel diseñando una placa principal (mainboard) de calidad profesional.
Características Clave del Diseño
- Controlador: Arduino Nano utilizado como módulo enchufable.
- Sistema de Tracción: Dos motores DC N20 con caja reductora configurados para tracción diferencial.
- Driver: Driver TB6612FNG de montaje superficial basado en MOSFET.
- Fabricación: Servicio de ensamblaje de PCB profesional (JLCPCB PCBA) para mayor fiabilidad.
Paso 1: Definir el sistema mecánico y eléctrico del coche Arduino Bluetooth
Elegir un Sistema de Tracción Diferencial
Este robot no depende de la dirección Ackerman (como en los coches reales), sino que emplea un sistema de Tracción Diferencial.
Mecanismo: La configuración comprende dos potentes motores DC N20 que pueden funcionar de forma independiente y están ubicados en lados opuestos del chasis.
Lógica de Dirección:
- Adelante: Ambos motores giran a igual velocidad (VL = VR).
- Girar: Un motor gira más lento que el otro (VL ≠ VR).
- Izquierda: VL > VR
- Derecha: VL < VR
- Giro de Radio Cero: Los motores giran en direcciones opuestas.
Estabilidad: Se utiliza una rueda loca pasiva delantera como tercer punto de contacto, reduciendo la fricción y permitiendo el movimiento omnidireccional.
Planificar la Arquitectura Eléctrica
La unidad central de procesamiento en este proyecto es el Arduino Nano. Controla los tres subsistemas más importantes:
- Comunicación: Gestiona la transmisión de datos a través del UART proveniente del módulo Bluetooth HC-05.
- Control de Motores: Produce señales PWM para el driver del motor.
- Distribución de Energía: Regula el voltaje de la batería para la lógica y la tracción del motor.
Crucialmente, el CI Driver del Motor aísla los pines lógicos sensibles del Arduino Nano de los altos picos de voltaje inductivo generados por los motores N20.
Si el voltaje de la batería es inferior al voltaje nominal del motor, se utiliza un convertidor elevador (como el XL6009) para suministrar el voltaje completo a los motores a través del driver del motor, aumentando así el voltaje de la batería.
| Subsistema | Componente | Propósito |
|---|---|---|
| Controlador | Arduino Nano | Lógica de control de motor y Bluetooth |
| Motores | Motores DC N20 (x2) | Actuación de tracción diferencial |
| Módulo Elevador | XL6009 | Elevador de voltaje desde la batería |
| Comunicación | HC-05 | Interfaz UART Bluetooth |
| Soporte | Rueda loca | Estabilidad mecánica delantera |
Tabla de resumen del sistema para el coche RC Bluetooth Arduino Nano con motores N20
Paso 2: Seleccionar Componentes para el PCBA del Coche RC Arduino Nano
La selección de los componentes correctos es necesaria para construir un Ensamblaje de PCB para robot.
| Componente | Cant. | Notas |
|---|---|---|
| Arduino Nano | 1 | Módulo enchufable (Montaje en tira de pines) |
| Motor DC N20 | 2 | Tracción diferencial (6V-12V) |
| TB6612FNG | 1 | Driver de Puente H Doble (SMD) |
| XL6009 | 1 | Módulo Convertidor Elevador |
| Interruptor Basculante | 1 | Interruptor de Corte para encender/apagar |
| HC-05 | 1 | Módulo UART Bluetooth |
| Rueda loca | 1 | Soporte pasivo delantero |
Tabla de lista de materiales (BOM) para el PCBA del coche RC Bluetooth Arduino Nano usando motores N20
Paso 3: Diseñar el Esquemático para un Coche RC Bluetooth Arduino Nano
Asignar Pines del Arduino Nano para Control de Motor y Bluetooth
Un mapeo de pines adecuado es esencial para la generación de PWM.
| Función | Pin Arduino Nano |
|---|---|
| Motor A PWM | D5 (Capacidad PWM) |
| Dirección Motor A | D6, D7 |
| Motor B PWM | D10 (Capacidad PWM) |
| Dirección Motor B | D8, D9 |
| Bluetooth RX | D0 (RX) |
| Bluetooth TX | D1 (TX) |
Asignación de pines del Arduino Nano para periféricos
Cablear el Driver del Motor para Tracción Diferencial
- Entradas: AIN1/AIN2 se conectan a Nano D6/D7 para controlar la dirección (Horario/Antihorario) y BIN1/BIN2 se conectan a Nano D8/D9 para controlar la dirección (Horario/Antihorario).
- Velocidad: PWMA/PWMB se conectan a Nano D5/D10.
- Standby: El pin STBY en el TB6612FNG debe ponerse en ALTO (a VCC) o ser controlado por un GPIO para habilitar los motores.
- Salidas: AO1, AO2, y BO1, BO2 se conectan a los terminales del Motor N20.
Conectar el Módulo Bluetooth para Control Móvil
Conexión Directa: HC-05 TX a Arduino RX y HC-05 RX a Arduino TX.

Diagrama esquemático del coche RC de dos ruedas controlado por Bluetooth Arduino con motores N20
Paso 4: Diseñar el Layout del PCB para un PCBA de Coche Robot de Dos Ruedas
Optimizar la Colocación de Componentes
- Centrado: El portapilas debe colocarse exactamente en el medio para que el peso se distribuya uniformemente.
- Colocación en el Borde: Coloca el módulo HC-05 en el borde de la placa. Los planos de cobre del PCB no deben extenderse bajo el área de la antena Bluetooth para evitar el blindaje de la señal.
- Conectores: Coloca los terminales JST o de tornillo para los motores N20 exactamente donde los motores se montarán físicamente para mantener cortos los tramos de cable.
Enrutar de Forma Segura las Pistas de Alta Corriente del Motor en el PCB (Consejos de Diseño Críticos)
Consejos de Diseño
- Ancho de Pista: Las pistas que transportan energía a los motores N20 deben ser anchas. Usa una calculadora (IPC-2221) para dimensionarlas para al menos 1A de corriente continua (típicamente ≥ 20 mil).
- Área de Bucle: Mantén las rutas de Ida y Retorno para la corriente del motor juntas para minimizar la inductancia y el ruido radiado.
- Plano de Masa (GND): Un plano de masa en un PCB rellena las áreas abiertas con cobre conectado a tierra, estableciendo un plano de tierra sólido. Funciona mediante la reducción de EMI, proporcionando rutas de retorno de señal de baja impedancia, ayudando a eliminar el calor y estabilizando los voltajes, lo cual es muy importante para la calidad de la señal y la producción en diseños complicados o de alta velocidad.

- Layout del PCB para coche RC Bluetooth Arduino optimizado para PCBA
Paso 5: Fabricar el Coche RC Bluetooth Arduino Nano Usando Servicios de PCBA
Generar Archivos Gerber, BOM y Pick-and-Place para PCBA
Para usar el servicio de PCBA de JLCPCB, debes exportar tres archivos específicos desde tu software EDA (como EasyEDA o KiCad):
- Archivos Gerber: Define el cobre físico, la máscara de soldadura y los agujeros de perforación.
- BOM (Lista de Materiales): Una lista de componentes que contiene los Números de Pieza del Fabricante.
- CPL (Lista de Colocación de Componentes): Las coordenadas (X, Y, Rotación) para la máquina Pick-and-Place SMT.

- Visor Gerber 2D de JLCPCB mostrando las pistas de la placa del coche RC Arduino sin componentes.

- Vista previa 3D mostrando los componentes ensamblados
Pedir PCB y PCBA para el Coche Controlado por Bluetooth Arduino en JLCPCB
Después de finalizar tu diseño, puedes pedir tu placa ensamblada realizando los siguientes pasos:
- Subir Gerbers: Ve al sitio de JLCPCB y sube el archivo zip que contiene tus Gerbers. El visor mostrará el diseño de tu placa.

- Página de Pedido de JLCPCB, mostrando la vista Gerber del PCB desnudo
- Seleccionar PCBA: Activa la opción "Ensamblaje de PCB" (PCB Assembly) en ON.

- Pedido PCBA lado superior económico
- Elegir Configuración: Elige "Ensamblar lado superior" (porque nuestros componentes SMT están en la parte superior) y luego decide entre ensamblaje "Económico" o "Estándar" según tu complejidad.
- Subir BOM y CPL: Sube los archivos específicos generados en el paso anterior.
- Selección de Piezas: Los elementos de tu BOM se compararán con la Biblioteca de Piezas de JLCPCB a través del sistema. Verifica las piezas y mira la vista previa 3D para confirmar la orientación correcta.
- Pedir: Procede al pago. Los ingenieros de JLCPCB realizarán una revisión DFM (Diseño para Manufacturabilidad) antes de que comience la producción.
Por Qué el PCBA Hace que un Coche Controlado por Bluetooth Arduino Sea Más Fiable
- Inmunidad al Ruido: Un plano de tierra de PCB sólido reduce drásticamente la interferencia electromagnética en comparación con los cables puente, que actúan como antenas.
- Resistencia a la Vibración: Los motores N20 crean vibración. Las uniones de soldadura en un PCB son mucho más duraderas que las conexiones en protoboard.
| Métrica | Protoboard | PCBA |
|---|---|---|
| Inmunidad al Ruido | Pobre | Alta |
| Durabilidad | Baja (cables se sueltan fácilmente) | Alta (Soldado) |
| Repetibilidad | Baja | Excelente |
Comparación de cableado en protoboard vs PCBA para coche robot Arduino Nano
Paso 6: Programar el Arduino Nano para el Control del Coche Bluetooth
Estructurar el Firmware del Arduino para el Control del Coche RC
El código debe recibir los caracteres del puerto serie y transformarlos en velocidades diferenciales del motor.
#include <SoftwareSerial.h>
// Motor Pins
const int enA = 5;
const int inA1 = 6;
const int inA2 = 7;
const int enB = 10;
const int inB1 = 8;
const int inB2 = 9;
// ... define other pins
void setup() {
Serial.begin(9600); // Bluetooth baud rate
pinMode(enA, OUTPUT);
pinMode(inA1, OUTPUT);
pinMode(inA2, OUTPUT);
pinMode(enB, OUTPUT);
pinMode(inB1, OUTPUT);
pinMode(inB2, OUTPUT);
}
void loop(){
//your logic here
}Implementar la Lógica de Tracción Diferencial
- Girar a la Izquierda: El robot gira a la izquierda cuando el Motor Derecho rota hacia adelante a velocidad X, mientras que el Motor Izquierdo se detiene o rota hacia atrás.
Lógica del Código:analogWrite(MotorDerecho, 200); analogWrite(MotorIzquierdo, 0); - Girar a la Derecha: El motor izquierdo rota hacia adelante a velocidad X, y el motor derecho se detiene o rota hacia atrás.
Lógica del Código:analogWrite(MotorDerecho, 0); analogWrite(MotorIzquierdo, 200); - Pivotar (Radio Cero): Lógica del Código: Motor Izquierdo HACIA ATRÁS, Motor Derecho HACIA ADELANTE.
Añadir Lógica de Seguridad para Prevenir Fallos de Motor y Energía
Consejos de Seguridad
- A Prueba de Fallos: En caso de una desconexión del enlace Bluetooth, la acción del robot debe detenerse, no continuar conduciendo.
- Aceleración Progresiva: Se debe evitar el salto inmediato de 0 a 255 PWM para proteger los engranajes de plástico en los motores N20.
Paso 7: Controlar el Coche RC Bluetooth Arduino con un Teléfono Móvil
Emparejar el Módulo Bluetooth con un Dispositivo Móvil
- Enciende el PCBA. El LED del HC-05 debería parpadear rápidamente (Modo de Emparejamiento).
- Abre los ajustes de Bluetooth en tu teléfono y empareja con "HC-05".
- PIN: Generalmente 1234 o 0000.
Controlar el Coche RC Usando una Aplicación Móvil Bluetooth
Usa una aplicación estándar de "Electrónica Bluetooth".
- Configuración: Mapea el botón de flecha "Adelante" para enviar el carácter 'F'. Mapea "Izquierda" a 'L', etc.
- Flujo de Datos: Aplicación del Teléfono → Bluetooth → HC-05 → Arduino Nano (RX) → Lógica del Firmware → TB6612FNG → Motores.
Paso 8: Probar y Optimizar el Coche Controlado por Bluetooth Arduino
Realizar Pruebas Eléctricas en el PCBA y los Motores
Importante
Antes de conectar el Nano:
- Alimenta la placa con la batería.
- Verificación con Multímetro: Mide el pin de 5V en los conectores. Debe ser un 5V constante. ¡Si es 7V+, no conectes el Nano!
- Corriente de Bloqueo: Asegúrate de que las pistas de calor no se sobrecalienten tomando medidas de corriente mientras las ruedas están sujetas.
Validar el Rendimiento Mecánico
- Equilibrio: Asegúrate de que la batería esté centrada para que el robot no se vuelque.
- Arrastre de la Rueda Loca: En caso de arrastre de la rueda loca delantera, lubrícala o cambia la altura de los soportes del motor N20.
Preguntas Frecuentes sobre el Coche Controlado por Bluetooth Arduino
P: ¿Qué pasa si el driver TB6612FNG está agotado en la biblioteca?
JLCPCB tiene una amplia biblioteca, pero la disponibilidad de stock cambia. Puedes usar la opción "Pre-pedido" para reservar piezas, o ver si el driver L9110S que figura como compatible satisface tus necesidades de voltaje como sustituto.
P: ¿Necesito pedir un esténcil?
Si estás utilizando el servicio de PCBA, no. JLCPCB crea su propio esténcil interno para aplicar la pasta de soldadura. Solo necesitas un esténcil si planeas soldar las piezas SMT tú mismo en casa.
P: ¿Cuál es la diferencia entre piezas "Básicas" y "Extendidas" en JLCPCB?
Las piezas "Básicas" ya están cargadas en los alimentadores y no tienen tarifa de mano de obra. Las piezas "Extendidas" requieren una pequeña tarifa de mano de obra para cargar los carretes. Para ahorrar dinero, filtra por piezas "Básicas" al seleccionar resistencias, condensadores y LEDs.
P: ¿Puedo alimentar este PCBA con una batería estándar de 9V?
Lo desaconsejamos firmemente. Las baterías estándar de 9V (PP3) no pueden suministrar la alta corriente necesaria para los motores. Usa un paquete de iones de litio 2S (7.4V) o 6 pilas AA para un rendimiento fiable.
P: ¿Por qué falla la carga del código cuando el módulo Bluetooth está conectado?
El HC-05 utiliza los mismos pines Serial por hardware (D0/D1) que se conectan al puerto USB. Durante la carga de sketches al Arduino Nano, tendrás que desconectar el módulo Bluetooth, o alternativamente, puedes añadir un interruptor a la línea de alimentación del módulo Bluetooth.
Conclusión: Coche Controlado por Bluetooth Arduino
Este tutorial demuestra cómo un simple coche RC Bluetooth Arduino Nano de dos ruedas puede elevarse a un proyecto de ingeniería fiable utilizando PCBA.
El uso de fabricación profesional en lugar de protoboards garantiza que tu robot pueda entregar potencia perfecta a los motores N20, tener comunicación Bluetooth ininterrumpida y ser mecánicamente lo suficientemente fuerte para manejar aplicaciones del mundo real.
¿Listo para comenzar tu construcción?
¡Exporta tus archivos Gerber y comienza tu proyecto de PCBA con Arduino Nano en el portal de PCBA de JLCPCB para que fabriquen tu placa personalizada hoy! Comenzar
Siga aprendiendo
Cómo crear un coche controlado por Bluetooth con Arduino: una guía paso a paso
Este tutorial explica paso a paso el diseño de ingeniería y la implementación completa de un coche RC Bluetooth de dos ruedas con un módulo Arduino Nano sobre una PCBA (Ensamblaje de Placa de Circuito Impreso) especialmente diseñada. Aunque muchos aficionados comienzan conectando los motores y el módulo Bluetooth mediante cables jumper sobre una protoboard, este enfoque es propenso a desconexiones y ruido en la señal. En esta guía aprenderás a llevar ese proyecto al siguiente nivel diseñando una placa......
PCB vs PCBA: ¿Cuáles son las diferencias y cómo elegir el servicio correcto para tu proyecto?
En la industria electrónica, las PCB y las PCBA se confunden con frecuencia, pero representan etapas distintas en la secuencia de producción de hardware. Los ingenieros y diseñadores de productos deben mantener una clara distinción entre el significado de una Bare PCB (una Placa de Circuito Impreso sin componentes) y un Ensamblaje de Placa de Circuito Impreso (PCBA) completamente montado. Así que aquí está el asunto: Una PCB es una placa en blanco: cobre grabado, sin componentes. Un PCBA es una placa ......
Guía completa del proceso de ensamblaje de PCB en JLCPCB: todo lo que debe saber sobre una fabricación eficiente y fiable
Uno de los factores más importantes para crear una placa de circuito funcional es la técnica y el proceso de ensamblaje, un paso que debe ser controlado y ejecutado con cuidado para garantizar el buen funcionamiento del dispositivo final. En JLCPCB ofrecemos el servicio de ensamblaje de PCB (PCBA) encargándonos de todas las etapas de soldadura de cada componente en su posición sobre la placa según las capacidades, lo que optimiza los tiempos y facilita el trabajo de muchos ingenieros y empresas. El pr......
Guía completa de ensamblaje de PCB (PCBA): Procesos, tipos y técnicas para los entusiastas de la electrónica
A medida que la demanda de dispositivos electrónicos no deja de crecer, comprender la complejidad del ensamblaje de placas de circuito impreso (Printed Circuit Board Assembly o PCBA) resulta cada vez más imprescindible. Esta guía completa ofrece un análisis detallado del proceso de PCBA, los tipos de ensamblaje y las distintas técnicas y recomendaciones implicadas. Además, exploraremos el significado de PCBA en el ámbito electrónico, asegurando así que disponga de un conocimiento exhaustivo sobre este......
