Que tal amigos en esta ocasion les traemos un pequeño pero interesante proyecto de electronica, se trata de un carro controlado por bluetooth con un dispositivo Android y una tarjeta Arduino.
Los siguientes videos explican paso a paso la elaboracion de este proyecto y los componentes necesarios.
Parte 1
Parte 2
Parte 3
Partes:
Tambien les dejamos la app que utilizamos y el codigo, recuerden que por el momento solo funciona para dispositivos android.
Bluetooth car App
Diagrama de conexion
Codigo para arduino:
const int motorA1 = 5; // Pin 2 of L293 const int motorA2 = 6; // Pin 7 of L293 const int motorB1 = 10; // Pin 10 of L293 const int motorB2 = 9; // Pin 14 of L293 //Leds connected to Arduino UNO Pin 12 const int lights = 12; //Buzzer / Speaker to Arduino UNO Pin 3 const int buzzer = 3 ; //Bluetooth (HC-06 JY-MCU) State pin on pin 2 of Arduino const int BTState = 2; //Calculate Battery Level const float maxBattery = 8.0;// Change value to your max battery voltage level! int perVolt; // Percentage variable float voltage = 0.0; // Read battery voltage int level; // Use it to make a delay... without delay() function! long previousMillis = -1000*10;// -1000*10=-10sec. to read the first value. If you use 0 then you will take the first value after 10sec. long interval = 1000*10; // interval at which to read battery voltage, change it if you want! (10*1000=10sec) unsigned long currentMillis; //unsigned long currentMillis; //Useful Variables int i=0; int j=0; int state; int vSpeed=200; // Default speed, from 0 to 255 void setup() { // Set pins as outputs: pinMode(motorA1, OUTPUT); pinMode(motorA2, OUTPUT); pinMode(motorB1, OUTPUT); pinMode(motorB2, OUTPUT); pinMode(lights, OUTPUT); pinMode(BTState, INPUT); // Initialize serial communication at 9600 bits per second: Serial.begin(9600); } void loop() { //Stop car when connection lost or bluetooth disconnected if(digitalRead(BTState)==LOW) { state='y'; } //Save income data to variable 'state' if(Serial.available() > 0){ state = Serial.read(); } //Change speed if state is equal from 0 to 4. Values must be from 0 to 255 (PWM) if (state == '0'){ vSpeed=0;} else if (state == '1'){ vSpeed=100;} else if (state == '2'){ vSpeed=180;} else if (state == '3'){ vSpeed=200;} else if (state == '4'){ vSpeed=255;} /***********************Forward****************************/ //If state is equal with letter 'F', car will go forward! if (state == 'F') { analogWrite(motorA1, vSpeed); analogWrite(motorA2, 0); analogWrite(motorB1, 0); analogWrite(motorB2, 0); } /**********************Forward Left************************/ //If state is equal with letter 'G', car will go forward left else if (state == 'G') { analogWrite(motorA1, vSpeed); analogWrite(motorA2, 0); analogWrite(motorB1, 200); analogWrite(motorB2, 0); } /**********************Forward Right************************/ //If state is equal with letter 'I', car will go forward right else if (state == 'I') { analogWrite(motorA1, vSpeed); analogWrite(motorA2, 0); analogWrite(motorB1, 0); analogWrite(motorB2, 200); } /***********************Backward****************************/ //If state is equal with letter 'B', car will go backward else if (state == 'B') { analogWrite(motorA1, 0); analogWrite(motorA2, vSpeed); analogWrite(motorB1, 0); analogWrite(motorB2, 0); } /**********************Backward Left************************/ //If state is equal with letter 'H', car will go backward left else if (state == 'H') { analogWrite(motorA1, 0); analogWrite(motorA2, vSpeed); analogWrite(motorB1, 200); analogWrite(motorB2, 0); } /**********************Backward Right************************/ //If state is equal with letter 'J', car will go backward right else if (state == 'J') { analogWrite(motorA1, 0); analogWrite(motorA2, vSpeed); analogWrite(motorB1, 0); analogWrite(motorB2, 200); } /***************************Left*****************************/ //If state is equal with letter 'L', wheels will turn left else if (state == 'L') { analogWrite(motorA1, 0); analogWrite(motorA2, 0); analogWrite(motorB1, 200); analogWrite(motorB2, 0); } /***************************Right*****************************/ //If state is equal with letter 'R', wheels will turn right else if (state == 'R') { analogWrite(motorA1, 0); analogWrite(motorA2, 0); analogWrite(motorB1, 0); analogWrite(motorB2, 200); } /************************Lights*****************************/ //If state is equal with letter 'W', turn leds on or of off else if (state == 'W') { if (i==0){ digitalWrite(lights, HIGH); i=1; } else if (i==1){ digitalWrite(lights, LOW); i=0; } state='n'; } /**********************Horn sound***************************/ //If state is equal with letter 'V', play (or stop) horn sound else if (state == 'V'){ if (j==0){ tone(buzzer, 1000);//Speaker on j=1; } else if (j==1){ noTone(buzzer); //Speaker off j=0; } state='n'; } /************************Stop*****************************/ //If state is equal with letter 'S', stop the car else if (state == 'S'){ analogWrite(motorA1, 0); analogWrite(motorA2, 0); analogWrite(motorB1, 0); analogWrite(motorB2, 0); } /***********************Battery*****************************/ //Read battery voltage every 10sec. currentMillis = millis(); if(currentMillis - (previousMillis) > (interval)) { previousMillis = currentMillis; //Read voltage from analog pin A0 and make calibration: voltage = (analogRead(A0)*5.015 / 1024.0)*11.132; //Calculate percentage... perVolt = (voltage*100)/ maxBattery; if (perVolt<=75) { level=0; } else if (perVolt>75 && perVolt<=80) { level=1; } // Battery level else if (perVolt>80 && perVolt<=85) { level=2; } //Min ------------------------ Max else if (perVolt>85 && perVolt<=90) { level=3; } // | 0 | 1 | 2 | 3 | 4 | 5 | > else if (perVolt>90 && perVolt<=95) { level=4; } // ------------------------ else if (perVolt>95) { level=5; } Serial.println(level); } }
Si les gusta porfavor comenten y den like recuerden suscribirse para estar al dia con los nuevos proyectos.
Buen video , como se llama su app?
ResponderBorrarno tienes un tutorial de como hacer el apk o me podrias pasar el .aia de tu apk para dar me una idea es que tengo un proyecto similar
ResponderBorrarFiquei aqui amigo e apareceu bluetooth rc car
BorrarDisculpa como se llama el programa que utilizaste para hacer el Codigo?
ResponderBorrarhttp://www.createandhelp.com/dwds/arduino_code_rc_car.txt
ResponderBorrarcaduco :/ un favor pues brother actualizalo ;)
TAMBIEBN QIERO EL CODIGO LA PROGRAMACION Q LE ISE ARDUINO
ResponderBorrarRESPONDE ASME EL FAVOR PON LA PROGRACION DE ARDUINO q TENGO TODOS LOS MATERIALES SOLO ME FALTA PROGRAMAR EL ARDUINO
RESPONDE PRONTO q ES PARA UN PROYECTO SCOLAR QUE LO NECESITO
ResponderBorraralguien se lo consiguio el codigo?
ResponderBorrarme podrias enviar el codigo porfa, sotox202000@gmail.com :)
ResponderBorrarsi consiguiste el codigo
BorrarComo posso ligar no l293d
ResponderBorrarE qual App vc utilizou pra controlar
Se pode compartilhar
excelente!!! pero tengo un problema con el motor trasero ..........gira un poco se para y luego se desconecta del bluethoot, con el motor de direccion funciona a la perfeccion
ResponderBorrarya lo solucione ....excelente tutorial !!!
BorrarAmigo me puede ayudar
BorrarQue tal como lo solucionaste lo que se desconecta el Bluetooth
BorrarAmigo como solucionaste lo que se desconecta del Bluetooth
BorrarNO ME HANDA EL CARRO
ResponderBorrarEsta súper bueno el video pero en ese mismo sircuito se le pueden agregar luces, intermitente y luz de retroceso ¿? Es urgente amigo ayuda
ResponderBorrarTe funciono
BorrarMe podría dar la clave para conectar al Bluetooth
ResponderBorrarGracias!
ResponderBorrarMe sirvió demasiado!
buenas noches amigo... me podria enviar el link de la apk de android para controlar el vehiculo..antemano, excelente proyecto
ResponderBorrarAmigo necesito la clave para conectarlo al bluetooth urgente :(
ResponderBorrarHOLA AMIGO ME INTERESA TU PROYECTO , PERO HAY UN DETALLE ELCODIGO K HICISTE ES CON EL ARDUINO UNO Y CON ELNANO NO ME FUNCIONA PUEDES MANDARME EL CODIGO PARA NANO POR FAVOR
ResponderBorrarAúm no hice el proyecto pero me parecio genial como lo hiciste. Felicitaciones, gracias y saludos desde Tucumán - Rep. Argentina.
ResponderBorrarTengo un problema se pierde la conexión del Bluetooth como lo solucionó
ResponderBorrarno funciona el codigo porfa ayuda
ResponderBorrarDisculpe me puede embiar el codigo para el blutooth
ResponderBorrarA alguien le pasó el código xk yo creo todos los códigos para todo tipo de proyectos
ResponderBorrarel código que viene en la pagina no funciona????
Borrarpasamelo
BorrarSir why you have not connected rx pin of bluetooth module to tx. And their is error coming when I am uploading the code to Arduino
ResponderBorrary la appk?
ResponderBorrar