29-08-2015, 12:48 PM (Última modificación: 25-08-2016, 05:11 PM por Iván.)
Estoy haciendo un proyecto que consiste en hacer un coche de dos ruedas con Arduino controlado por bluetooth desde mi móvil con una App hecha por mí. He visto que mucha gente abre hilos para hablar de sus proyectos y me gustaría hacerlo. Claramente, solo lo haré si os interesa a vosotros por lo que, si quieren que lo haga, respondan a este post.
Había pensado hacerlo con una protoboard y dos ruedas a los costados (ruedas: https://drive.google.com/file/d/0B-1Pdkn...sp=sharing ) y conectar el polo + y el - de tal forma que entrase con el 255 y que el 0 actuase como GND (tengo un display en el que pasaba eso).
Código:
int derA = 11;
int derB = 9;
int izqA = 5;
int izqB = 3;
int estado = 'e';
Pero cuando llegaron las ruedas, lo probé y no funcionaba, solo con los pines 5V y GND.
Por lo que se me ocurrió hacer un puente H (por cada motor). En el video del que me inspiré ( https://www.youtube.com/watch?v=2U0-RuuyqHY ) utilizaban un PIC, y como no tenia utilicé transistores 2n2222a.
Ayer volví a probar con el módulo bluetooth HC-05, pero no hubo manera. Pensaba que el modulo estaba mal programado, pero lo programé con este código y nada:
Código:
// Opciones de configuración:
char ssid[10] = "HC-05"; // Nombre para el modulo Bluetooth.
char baudios = '6'; // 1=>1200 baudios, 2=>2400, 3=>4800, 4=>9600 (por defecto), 5=>19200, 6=>38400, 7=>57600, 8=>115200
char password[10] = "1234"; // Contraseña para el emparejamiento del modulo.
char role = '0';
void setup()
{
Serial.begin(9600);
// Tiempo de espera:
pinMode(13,OUTPUT);
digitalWrite(13,HIGH);
delay(500);
digitalWrite(13,LOW);
digitalWrite(13,HIGH);
delay(500);
digitalWrite(13,LOW);
digitalWrite(13,HIGH);
delay(5000);
digitalWrite(13,LOW);
// Ahora se procede a la configuración del modulo:
// Se inicia la configuración:
Serial.print("AT"); delay(1000);
// Se ajusta el nombre del Bluetooth:
Serial.print("AT+NAME"); Serial.print(ssid); delay(1000);
// Se ajustan los baudios:
Serial.print("AT+BAUD"); Serial.print(baudios); delay(1000);
// Se ajusta la contraseña:
Serial.print("AT+PIN"); Serial.print(password); delay(1000);
// Se ajusta el modo (0=Esclavo)(1=Maestro)(2=Mezcla entre los dos)
Serial.print("AT+ROLE"); Serial.print(role); delay(1000);
}
void loop()
{
// Al parpadear el led se habrá terminado la configuración:
digitalWrite(13, !digitalRead(13));
delay(200);
}
Este código me lo dio Krampman y se lo agradezco mucho:
Código:
// Opciones de configuración:
char ssid[10] = "ANaze32"; // Nombre para el modulo Bluetooth.
char baudios = '8'; // 1=>1200 baudios, 2=>2400, 3=>4800, 4=>9600 (por defecto), 5=>19200, 6=>38400, 7=>57600, 8=>115200
char password[10] = "1234"; // Contraseña para el emparejamiento del modulo.
void setup()
{
Serial1.begin(9600);
// Tiempo de espera:
pinMode(13,OUTPUT);
digitalWrite(13,HIGH);
delay(500);
digitalWrite(13,LOW);
digitalWrite(13,HIGH);
delay(500);
digitalWrite(13,LOW);
digitalWrite(13,HIGH);
delay(5000);
digitalWrite(13,LOW);
// Ahora se procede a la configuración del modulo:
// Se inicia la configuración:
Serial1.print("AT"); delay(1000);
// Se ajusta el nombre del Bluetooth:
Serial1.print("AT+NAME"); Serial1.print(ssid); delay(1000);
// Se ajustan los baudios:
Serial1.print("AT+BAUD"); Serial1.print(baudios); delay(1000);
// Se ajusta la contraseña:
Serial1.print("AT+PIN"); Serial1.print(password); delay(1000);
}
void loop()
{
// Al parpadear el led se habrá terminado la configuración:
digitalWrite(13, !digitalRead(13));
delay(200);
}
Estoy empezando a pensar que es un fallo del modulo...
Sigo fallando como un loco... Esta mañana me ha llegado la breadboard mediana y como la mía pequeña tiene unos salientes y huecos pensaban que iban a encajar PERO NO. Así que lo que voy a hacer va a ser cortar esos salientes...
Pero a la hora de la verdad, probándolo durante 2 seg. y medio hacia delante, otros 2'5 hacia atrás y que se parara otros 2'5 pero este es el resultado (lo siento por la calidad de la imagen):
https://drive.google.com/file/d/0B-1Pdkn...sp=sharing
Como veréis, un fracaso absoluto.
Yo creo que por el peso de la proto+el arduino+la pila de 9v se va hacia la izquierda.
Pero si alguien tiene alguna otra corazonada, por favor responded.
Gracias!
Como veis, para equilibrarlo, me he comprado otra protoboard. Y como lo de mi bluetooth no tenía remedio me he comprado también otro HC-05.
Estoy empezando a pensar que no valgo para esto...
Lo siento si os he decepcionado pero no creo que pueda seguir con este proyecto, ya que empiezan las clases no voy a tener tiempo para solucionar el problema de las pilas. Quizás pueda preguntar a mi profesor, a ver si sabe algo pero por ahora no creo que pueda seguir con el coche.
Aún así os dejaré unas fotos del montaje (casi) final en el siguiente comentario.
Gracias si habéis seguido este hilo!
He cambiado los transistores npn que reciben los 5V por transistores pnp y va la derecha pero no la izquierda (será por problema del cableado, lo miraré cuando tenga tiempo) y ahora va.