Cómo hacer un coche Bluetooth con Arduino

¿Alguna vez te ha fascinado un auto a control remoto, o mejor aún, te has preguntado cómo se hizo? Bueno, tal ha sido el caso de muchas personas que han crecido alrededor de dispositivos controlados electrónicamente.

El elemento de control ha estado con nosotros desde nuestra infancia y la mayoría de nosotros hemos fantaseado con controlar autos, aviones, barcos y trenes, entre otras cosas.

Por lo tanto, no es una sorpresa cuando crecemos y crece cierta curiosidad sobre cómo construir y controlar algunos electrodomésticos. Es una práctica de la que la mayoría de nosotros nos enamoramos incluso antes de entender lo que significaba. Entonces, volviendo a nuestra pregunta principal, ¿cómo hacer un automóvil Bluetooth con Arduino?

Arduino se ha convertido rápidamente en una de las plataformas de microcontroladores preferidas para crear proyectos interactivos. La herramienta ha ganado popularidad y se ha ganado la admiración de todos los niveles de usuarios de su comunidad.

Esto se debe a que es relativamente asequible en comparación con otras placas de circuitos, es fácil de diseñar o codificar programas y ofrece una plataforma de software y hardware de código abierto.

Además de eso, Arduino tiene licencia Creative Commons, lo que significa que los usuarios interesados ​​de cualquier nivel pueden diseñar y programar sus propios proyectos desde el módulo. Y en este proyecto, aprenderá cómo hacer un automóvil con Bluetooth con Arduino.

En realidad, es uno de los proyectos más importantes para emprender una vez que haya terminado con los conceptos básicos. En este proyecto, Bluetooth y Arduino permanecen desde el núcleo del automóvil controlado por robot, entre otros componentes esenciales que se detallan a continuación.

Lo que necesitarás

  • arduino uno
  • Robot/chasis de coche (con base, motores BO y ruedas)
  • Módulo Bluetooth HC-05
  • Módulo de controlador de motor L298N
  • Fuente de alimentación
  • Compartimiento de la batería
  • 4 motores de engranajes de 5 V.
  • Cables de conexión
  • Y un teléfono inteligente con una aplicación de controlador Bluetooth

Después de adquirir los componentes mencionados anteriormente, diseñar el circuito debe ser el siguiente paso. Pero primero, tengamos un poco de conocimiento constructivo sobre los módulos de controlador de motor y Bluetooth.

Módulo de controlador de motor L298N

Como sugiere el nombre, el módulo controlador L298N suministra la corriente de accionamiento necesaria a los motores del automóvil con control remoto Arduino.

Módulo Bluetooth HC-05

Este es el otro módulo esencial en el circuito y permite que Arduino se comunique con su teléfono inteligente a través de Bluetooth.

Diseñando el circuito

Sobre el diseño del circuito Bluetooth, la primera parte a considerar es el Módulo Bluetooth HC-05. A partir de entonces, conecte los pines +5V y GND del módulo Bluetooth a los +5V y GND de la placa Arduino.

Y debido a que este proyecto solo tiene como objetivo transmitir datos relacionados con el movimiento del robot desde un teléfono inteligente al módulo Bluetooth HC-05, solo conectará el pin TX del módulo Bluetooth al pin RX del Arduino.

Este pin RX de Arduino se basa en la biblioteca de software en serie (los pines 2 y 3 están configurados como RX y TX en Arduino). El pin RX del Bluetooth se deja abierto.

El siguiente paso es trabajar en el Módulo L298N. Aquí, configurará los pines de E/S digital 9 a 12 de Arduino como pines de entrada del controlador de motor y los conectará a IN1 a través de IN4 del módulo L298N. Deberá conectar ambos pines de activación a 5 V a través del puente proporcionado.

En este proyecto, el RC controlado por Bluetooth viene con 4 motores de engranajes. Y debido a que el Módulo de controlador de motor L298N solo tiene dos ranuras de motor, deberá fusionar los motores izquierdo y derecho como conjuntos individuales cada uno. Luego, conecte ambos conjuntos a la salida del módulo de controlador de motor L298N.

¡Conecta los componentes! 🙂

Código requerido

#include #define IN1 9 #define IN2 10 #define IN3 11 #define IN4 12 //#define EN1 6 //#define EN2 5 SoftwareSerial mySerial(2, 3); // RX, TX String data; int btVal; void setup()  {  //Serial.begin(115200); pinMode(IN1, OUTPUT); pinMode(IN2, OUTPUT); pinMode(IN3, OUTPUT); pinMode(IN4, OUTPUT); //pinMode(EN1, OUTPUT); //pinMode(EN2, OUTPUT); digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, LOW); //analogWrite(EN1,63); //analogWrite(EN2,63); mySerial.begin(9600); } void loop() { while (mySerial.available()){  { data = mySerial.readStringUntil('n'); //Serial.print(str);  }  btVal = (data.toInt()); //Serial.print("BlueTooth Value "); //Serial.println(btVal);  switch (btVal)  {case 1:  //Serial.println("Forward"); forward(); break; case 2:  //Serial.println("Reverse"); reverse(); break; case 3:  //Serial.println("Left"); left(); break; case 4:  //Serial.println("Right"); right(); break; case 5:  //Serial.println("Stop"); stoprobot(); break;  } }  if (mySerial.available() < 0)  { //Serial.println("No Bluetooth Data ");  } } void forward() { digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW); } void reverse() { digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH); } void left() { digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW); } void right() { digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, LOW); } void stoprobot() { digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, LOW); } 

Finalizando el Proyecto

En este punto, debe ensamblar el automóvil Bluetooth y realizar las conexiones finales necesarias. Lo que sigue a continuación es cargar el código anterior en Arduino.

Ahora, tome su teléfono y en la aplicación de Android, use cinco (5) teclas de la siguiente manera:

  • Adelante
  • Contrarrestar
  • Izquierda
  • Correcto
  • Detener

Los datos correspondientes a cada tecla siguen la siguiente estructura:

  • Adelante – 1
  • Inversa – 2
  • Izquierda – 3
  • Derecha – 4
  • Parada – 5

Una vez que presiona una tecla, los datos correspondientes se transmiten al módulo Bluetooth HC-05 desde el teléfono inteligente a través de la compatibilidad con Bluetooth. Ahora, dentro del código Arduino, la placa recibe los datos provenientes del Módulo Bluetooth y las instrucciones ordenadas según las teclas presionadas.

En conclusión, debe saber que existen algunas limitaciones que vienen con este proyecto, como el alcance de Bluetooth y la potencia suficiente para los Módulos. El rango máximo de Bluetooth es de 10 metros y cualquier distancia más allá del auto RC desconectará la conexión Bluetooth.

Además, debe asegurarse de que haya suficiente suministro de energía, especialmente para el módulo Bluetooth para una funcionalidad óptima. Experimentará problemas de conectividad cuando la fuente de alimentación sea baja.