Primeras pruebas de coche bluetooth


COCHE BLUETOOTH 1 from Leo Lamolda on Vimeo.


Aquí os dejo este video en el que podeis ver las primeras pruebas del coche bluetooth. He montado el circuito con un arduino nano que lleva el mismo procesador que el arduino uno, un modulo bluetooth a 5v y un driver de motores L293. Lo he alimentado desde las pilas que lleva el coche, en este caso 6 pilas de 1,5 voltios. El programa del arduino comprueba la entrada serie, y si recibe un dato, entonces activa o desactiva los motores en una u otra dirección. En este caso he enlazado el bluetooth con el ordenador y le mando pulsaciones de teclado desde el hiperterminal, y ¡¡¡funciona!!!

El programa no está depurado y no está echo muy fino, pero era para probar que el circuito funciona. Ahora estoy enfrascado en el programa para android.

He utilizado las salidas analógicas para activar los motores porque en la versión completa voy a hacer que se pueda variar la velocidad de marcha del coche, mediante valores PWM. También tengo intención de ponerle luces de freno y luces delanteras y traseras para apagarlas y encenderlas desde un botón en el programa de control del android.

Os pego el código del programa del arduino:

/*
  COCHE BLUETOOTH
  POR LEO LAMOLDA
 
  CODIGO PARA CONTROL DE UN COCHE RC POR BLUETOOTH USANDO UN ARDUINO NANO 3.0,
  UN CI L293 COMO DRIVER DE MOTORES Y UN MODULO BLUETOOTH PARA ARDUINO A 5V.
 
 */
  // Inicialización de los pines de salida analogicos para activar direccion y control de velocidad
  int direccion = 12;
  int velocidad = 9;
 

  // Inicialización de los pines de activación de marcha y dirección
  int derecha = 2;
  int izquierda = 4;
  int adelante = 7;
  int atras = 8;
 
  //variable para lectura de datos desde android
 
  int recepcion = 0;

void setup() {               
 
  // Inicialización de los pines de salida analogicos para activar direccion y control de velocidad
  pinMode(direccion, OUTPUT); //Enable para control izquierda/derecha
  pinMode(velocidad,  OUTPUT); //Enable para control adelante/atrás
 

  // Inicialización de los pines de activación de marcha y dirección
  pinMode(derecha, OUTPUT);
  pinMode(izquierda, OUTPUT); 
  pinMode(adelante, OUTPUT); 
  pinMode(atras, OUTPUT);
 
 
  // Inicialización comunicación serie a 9600 bps
  Serial.begin(9600);
 
  //Inicialización de salidas a valores iniciales de parada;
  analogWrite(direccion, 0);
  analogWrite(velocidad, 0);
  digitalWrite(derecha, LOW);
  digitalWrite(izquierda, LOW);
  digitalWrite(adelante, LOW);
  digitalWrite(atras, LOW);
 
}
void loop() {
 
  if (Serial.available() > 0)
  {
  recepcion=Serial.read();
  if (recepcion == 97)
    {
      digitalWrite(adelante, HIGH);
      digitalWrite(atras, LOW);
      analogWrite(velocidad, 254);
    }
  if (recepcion == 116)
    {
      digitalWrite(adelante, LOW);
      digitalWrite(atras, HIGH);
      analogWrite(velocidad, 254);
    }
  if (recepcion == 112)
    {
      digitalWrite(adelante, LOW);
      digitalWrite(atras, LOW);
      analogWrite(velocidad, 0);
    }
  if (recepcion == 100)
    {
      digitalWrite(derecha, HIGH);
      digitalWrite(izquierda, LOW);
      analogWrite(direccion, 254);
    }
  if (recepcion == 105)
    {
      digitalWrite(derecha, LOW);
      digitalWrite(izquierda, HIGH);
      analogWrite(direccion, 254);
    }
  if (recepcion == 99)
    {
      digitalWrite(derecha, LOW);
      digitalWrite(izquierda, LOW);
      analogWrite(direccion, 0);
    }
  }

     
  delay(100);              // retardo
}

Comentarios

  1. hola he visto tu proyecto yo estoy haciendo algo similar, pero he visto tu codigo y me gustaria saber de donde sacaste la információn yo tengo un arduino uno, y un coche rc con su puente en H. he conectado los cables al chip integrado y consigo movimiento alante y atras pero buscando información y no encuentro paso concretos o claves para hacer que haga mas cosas a si como controlarlo por un modulo bluetooth .Si puedes echarme un cable gracias.

    ResponderEliminar
    Respuestas
    1. Hola. Estoy preparando otra entrada en el blog con un nuevo programa de control desde el movil y para utilizar un arduino uno con una shield de motores de Ladyada, para que cualquiera pueda hacerlo. Pondré toda la información que pueda. Si necesitas algo más en concreto dimelo. Gracias.

      Eliminar
  2. He utilizado las salidas analógicas para activar los motores porque en la versión completa voy a hacer que se pueda variar la velocidad de marcha del coche. consejoscomunales.net/tercer-militarismo/

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

Mirrorlink. Smartphone Samsung Galaxy A5 y Peugeot Partner Tepee. Controla tu móvil desde la pantalla de tu coche.

UN CLASICO: SEMAFORO CON ARDUINO Y EJEMPLO DE LIBRERIA.

TeLEOsketch. Un experimento con arduino, bluetooth, appinventor y android.