comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Les Presento Mi Auto Controlado Por Bluetooth

  • 4 Respuestas
  • 2548 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado rreedd

  • *
  • Underc0der
  • Mensajes: 113
  • Actividad:
    0%
  • Reputación 6
  • Somos Nada Señores
    • Ver Perfil
« en: Marzo 06, 2016, 12:14:35 am »
RREEDD
Hola !!!
Les presento mi auto basado en Arduino y que se controla por bluetooth.


El armazón esta hecho de cartón piedra, cuenta con:1 Arduino nano, 1 puente H, 4 reductores de velocidad, 2 servo y una placa que regula el voltaje para alimentar los servos por que consumen mucha corriente de mis baterías de 9v


La pinza la hice yo solo con cartón y silicona


Como control utilizo una aplicación que se llama Arduino BT Joistick
Aqui LINK de descarga

El código fuente de mi auto lo dejo a continuación por si es que les sirve, para sus proyectos o de referencia.
Lo intente comentar lo mas que puede pero si es que surge cualquier duda solo díganme


Código: [Seleccionar]

// incluimos la biblioteca Servo

#include <SoftwareSerial.h>
#include <Servo.h>   

// Se crean los objetos Servo
Servo servoAngulo;       
Servo servoPinza;
 

int comando = 0; // variable a la cual de daremos el valor de la que venga por la comunicacion serial

//pines de entrada de motores
int Motor4 = 5;
int Motor3 = 4;
int Motor2 = 3;
int Motor1 = 2;

//angulos de controlpara el servo
int angulo =90;
int anguloPinza =30;
/*

Los pines GND y VCC del Servo no aparecen porque use un regulador de tencion para que no me consumiera toda la bateria


             
                    _________________
                    |d13         D12| Servo
                    |3v3         D11| Servo
                    |REF         D10|     
                    |A0   Arduino D9|
                    |A1    NANO   D8|
                    |A2           D7|
                    |A3           D6|
                    |A4           D5| Motor3
                    |A5           D4| Motor4
                    |A6           D3| Motor2
                    |A7           D2| Motor1
     VCC bluetooth  |5v          GND| gnd bluetooth, gnd PuenteH(para igualar tierra)
                    |RST         RST|
     - 9v, - PunteH |GND          TR| tr bluetooh
     + 9v, + PunteH |VIN          TX| tx bluetooh
                    |_______________|       

*/

void setup() {

//inicializar servos
servoAngulo.attach(12);
servoPinza.attach(11);

//se declaran como OUTPUT los pines para controlar los motores junto al puente H
pinMode (Motor3, OUTPUT);
pinMode (Motor4, OUTPUT);
pinMode (Motor2, OUTPUT);
pinMode (Motor1, OUTPUT);

 // Se declara la recepcion Serial a 9600 baud
Serial.begin(9600);
}
 
void loop() {
//si viene algo por Serial se continua
if(Serial.available() > 0){
//el contenido de Serial se guarda en comando
comando = Serial.read();
}


   if (comando == '1') {
        digitalWrite (Motor3, HIGH);
        digitalWrite (Motor4, LOW);
        digitalWrite (Motor2, HIGH);
        digitalWrite (Motor1, LOW);
        Serial.println("Derecha");
        delay(20);
   }
   else if (comando == '0') {
        digitalWrite (Motor3, LOW);
        digitalWrite (Motor4, HIGH);
        digitalWrite (Motor1, HIGH);
        digitalWrite (Motor2, LOW);
        Serial.println("izquierda");
        delay(20);
   }
   else if (comando == '3') {
        digitalWrite (Motor3, HIGH);
        digitalWrite (Motor4, LOW);
        digitalWrite (Motor1, HIGH);
        digitalWrite (Motor2, LOW);
        Serial.println("Abajo");
        delay(20);
   }
   else if (comando == '4') {
        digitalWrite (Motor4, HIGH);
        digitalWrite (Motor3, LOW);
        digitalWrite (Motor2, HIGH);
        digitalWrite (Motor1, LOW);
        Serial.println("Arriba");
        delay(20);
   }
   else if (comando == '5') {
   //servo arriba
         angulo = angulo + 5;
        Serial.println(angulo);
        servoAngulo.write(angulo);               
        delay(15);                       
        angulo =constrain(angulo,0,180);
        Serial.println("angulo arriba");
   }
   else if (comando == '6') {
       angulo = angulo - 5;
        Serial.println(angulo);
        servoAngulo.write(angulo);               
        delay(15);
        angulo =constrain(angulo,0,180);
        Serial.println("angulo abajo");


   }
   else if (comando == '8') {
        anguloPinza = anguloPinza + 5;
        Serial.println(anguloPinza);
        servoPinza.write(anguloPinza);               
        delay(15);                                 
        anguloPinza =constrain(anguloPinza,0,180);
   Serial.println("pinza cierra");
   }
   else if (comando == '9') {
       anguloPinza = anguloPinza - 5;
       Serial.println(anguloPinza);
       servoPinza.write(anguloPinza);               
       delay(15);                                 
       anguloPinza =constrain(anguloPinza,0,180);
       Serial.println("pinza abre");

   }else{
        // se ponen todos los valores en LOW para detener la detener los motores hasta que llege una nueva orden
        digitalWrite (Motor3, LOW);
        digitalWrite (Motor4, LOW);
        digitalWrite (Motor2, LOW);
        digitalWrite (Motor1, LOW);
   }
}
   
 


Saludos Desde Chile

Conectado Gabriela

  • *
  • Co Admin
  • Mensajes: 877
  • Actividad:
    3.33%
  • Reputación 15
    • Ver Perfil
    • Email
« Respuesta #1 en: Marzo 06, 2016, 12:22:01 am »
Estupendo trabajo!!

Te felicito y agradezco que lo compartieras con nosotros!
Te dejo coins  ;D

Saludos.

Gabriela

Desconectado rreedd

  • *
  • Underc0der
  • Mensajes: 113
  • Actividad:
    0%
  • Reputación 6
  • Somos Nada Señores
    • Ver Perfil
« Respuesta #2 en: Marzo 06, 2016, 12:40:30 am »
RREEDD
Estupendo trabajo!!

Te felicito y agradezco que lo compartieras con nosotros!
Te dejo coins  ;D

Saludos.

Gabriela

muchas gracias, me gusta mucho esta comunidad, así que pronto estaré haciendo mas post.
Saludos desde chile.

Desconectado ice

  • *
  • Underc0der
  • Mensajes: 74
  • Actividad:
    0%
  • Reputación 1
    • Ver Perfil
    • LinuxerOS
  • Skype: icetremens
  • Twitter: twitter.com/icemodding
« Respuesta #3 en: Marzo 06, 2016, 04:35:56 am »
RREEDD
Estupendo trabajo!!

Te felicito y agradezco que lo compartieras con nosotros!
Te dejo coins  ;D

Saludos.

Gabriela

muchas gracias, me gusta mucho esta comunidad, así que pronto estaré haciendo mas post.
Saludos desde chile.
Simplemente... Excelente! +10

[N]ation Special Edition by ice


Desconectado blackdrake

  • *
  • Co Admin
  • Mensajes: 1914
  • Actividad:
    0%
  • Reputación 15
    • Ver Perfil
« Respuesta #4 en: Marzo 06, 2016, 09:10:41 am »
Impresionante




 

¿Te gustó el post? COMPARTILO!



Les Presento mi Detector de Fugas de Gas con Arduino

Iniciado por rreedd

Respuestas: 3
Vistas: 3809
Último mensaje Marzo 22, 2016, 12:54:49 am
por Gabriela
Arduino + Bluetooth HC-05 [Configuracion con Comandos AT]

Iniciado por Riojas

Respuestas: 0
Vistas: 1258
Último mensaje Abril 26, 2017, 05:30:38 pm
por Riojas