Sie sind auf Seite 1von 9

Resumen

Este proyecto describe el diseño y la implementación de un vehículo controlado de


manera remota a través de un dispositivo móvil. Estará formado por dos grandes
bloques: hardware y software. El prototipo de vehículo, construido a escala mediante
una estructura que contiene un microcontrolador, podrá desplazarse con las órdenes que
el usuario envíe o de manera automática, gracias a la creación de un algoritmo
inteligente que evita las colisiones con objetos frontales. En el presente documento se
detalla todo el proceso llevado a cabo en la realización del proyecto.

En la actualidad la tecnología móvil se encuentra en constante evolución; cada vez son


mayores las utilidades que puede ofrecer un dispositivo móvil, desde utilidades básicas
como son realizar llamadas, a utilidades más complejas. El impacto que genera en la
sociedad el auge de la tecnología móvil, puede reflejarse en el número de terminales
vendidos por año entre personas de todas las edades; esto despierta un interés tanto en
los usuarios como en los desarrolladores de aplicaciones, ya que cada vez existe un
mayor número de aplicaciones destinadas al ocio o para facilitar ciertas tareas al
usuario. De aquí surge la motivación fundamental por la cual se va a realizar este
proyecto, que consiste en aplicar la tecnología del radio control a la tecnología móvil.
Los coches teledirigidos fueron una gran revolución tecnológica; el poder manejar un
coche con un mando de forma inalámbrica despertó gran interés en el mundo del ocio.
En la actualidad existen estructuras teledirigidas más complejas, como barcos, aviones,
helicópteros o los innovadores “drones”. El poder unir el concepto de radio control con
la tecnología móvil, es el principal objetivo de este proyecto, que consistirá en un
prototipo de coche que podrá ser dirigido a través de un teléfono inteligente o
“smartphone”.
Justificación y problema.-

El motivo por el cual se desea diseñar un auto controlado por el teléfono celular es para
poner en  práctica los conocimientos obtenidos durante la carrera y se considera lo
bastante complejo como para poner a prueba cada lección aprendida. Se necesita
diseñar, investigar el estado del arte y  pensar la solución más eficiente para cada
problema. Nos ayuda a la investigación nos dará a conocer cómo manejar un auto  a
través del teléfono celular con una programación.

Objetivo general.-

Demostrar la programación de un sistema operativo Android móvil hacia la placa


Arduino que está instalada en el auto.

Objetivos específicos.-

 Demostrar la facilidad de la programación inventar nuevas cosas que funcionen


con tecnología inalámbrica y compatibilidad Arduino
 Demostrar a factibilidad de conexión, con dispositivos móviles como teléfonos
celulares
 Demostrar nuevos usos que puede tener el sistema operativo ARDUINO
ROBOT MÓVIL CONTROLADO POR BLUETOOTH

1. Materiales:

Empecemos describiendo los principales materiales:

 Arduino

Podemos usar cualquiera de las placas Arduino, nosotros usaremos el Arduino Uno R3
por ser uno de los más usados.

 Módulo Bluetooth HC-06 o HC-05

Este módulo nos sirve para que nuestro Arduino y el celular puedan comunicarse a
través de Bluetooth. Para esta aplicación podemos usar cualquiera de los dos módulos
pues los trabajaremos en modo esclavo.

Si usan un HC-06 estaría listo para usar, si usan un HC-05 deben verificar que esté
configurado como esclavo. La velocidad con la que vamos a trabajar es a 9600baudios,
que es la velocidad que viene por defecto tanto en el HC-06 como en el HC-05.
Nosotros usaremos el HC-06 con su configuración por defecto.
 Driver Puente H

El puente H es el que nos permite invertir el giro de un motor, necesitamos un puente H


que tenga dos canales para poder controlar dos motores.

Entre los puente H más comunes tenemos el L298N, L293D, TB6612FNG y


el L9110S , Algunos módulos aparte de los pines para controlar la dirección tienen un
pin (Enable ) por donde podemos enviar PWM y controlar la velocidad, pero para este
tutorial podemos usar cualquiera pues solo controlaremos dirección.

 Motores con Llanta:

Básicamente  2 motores DC con caja reductora y su respectiva llanta, una velocidad


promedio puede ser 100RPM, pero dependerá de la velocidad que uno desee.

El voltaje dependerá de la batería, por ejemplo si tienen una batería de 6V o de 3.7V se


puede trabajar con el motor amarillo, si tienen una batería de 12V  o 9V pueden trabajar
con los micro motores, Si alimentamos un motor con un voltaje inferior al nominal, su
velocidad disminuye, en cambio sí alimentamos con un voltaje superior podemos
malograr el motor, por eso debemos de tener en cuenta las especificaciones técnicas del
motor.
 Batería

Esto tal vez sea lo más difícil de establecer, lo primero que hay que tener en cuenta es el
voltaje. Arduino trabaja con un  voltaje entre 6 y 12V, aparte de esto hay que tener en
cuenta el voltaje del motor. También hay que considerar la corriente y la capacidad, por
ejemplo si usamos una pila económica de 9V nos durará menos de un minuto, se
recomienda que la capacidad sea superior a 500mAH

A continuación mostramos las opciones que pueden usar dependiendo del motor que
tengan:

 Motor de  6V:

Opción 1: 4 pilas AA para los motores y una de 9V para el Arduino

Opción 2: 1 celda de litio (batería de celular) para los motores y una pila de 9V para el
Arduino

Opción 2: Cualquier batería superior a 6V (de suficiente corriente) y un step down para
bajar el voltaje.

 Motor de 12V:

Opción 1: Pila duracell 9V

Opción 2: batería lipo o litio de 2 o 3 celdas.

Opción 3: cualquier Batería de 12V  (de suficiente corriente)

Opción 4: 1 celda de litio (batería de celular) o batería de 3.7V y un step Up para


aumentar el voltaje.
Independiente del valor del voltaje de la batería podemos usar conversores DC-DC para
aumentar (step up) o reducir (step down) el voltaje.

 Chasis y rueda loca 

Esto dependerá del diseño de cada uno, pueden hacerlo, o comprar uno hecho. El chasis
básicamente es en donde se va a poner los dos motores con llanta y los demás
componentes, adicionalmente se necesita una rueda giratoria o una ballcaster, que será
el tercer punto de apoyo junto a las otras dos llantas.

Conexiones eléctricas
CÓDIGO

//Pines de conexión del driver


int Pin_Motor_Der_A = 8;
int Pin_Motor_Der_B = 9;
int Pin_Motor_Izq_A = 10;
int Pin_Motor_Izq_B = 11;

int tiempo=0;
void setup() {
 // inicializar la comunicación serial a 9600 bits por segundo:
 Serial.begin(9600);
 // configuramos los pines como salida
 pinMode(Pin_Motor_Der_A, OUTPUT);
 pinMode(Pin_Motor_Der_B, OUTPUT);
 pinMode(Pin_Motor_Izq_A, OUTPUT);
 pinMode(Pin_Motor_Izq_B, OUTPUT);

void loop() {

 if (Serial.available()) {
    char dato= Serial.read();
    if(dato=='a')
    {
       Mover_Adelante();
       tiempo=0;
    }
    else if(dato=='r')
    {
       Mover_Retroceso();
       tiempo=0;
    }
    else if(dato=='d')
    {
       Mover_Derecha();
       tiempo=0;
    }
    else if(dato=='i')
    {
       Mover_Izquierda();
       tiempo=0;
    }   
  
 }

 if(tiempo<200) // 100 cilcos de 1ms


 {    
   tiempo=tiempo+1;
 }
 else   //ya transcurrió 100ms (100ciclos)
 {
   Mover_Stop();
 }
 
 
 delay(1); //pasusa de 1ms por ciclo
 
}

void Mover_Adelante()
{
 digitalWrite (Pin_Motor_Der_A, HIGH);
 digitalWrite (Pin_Motor_Der_B, LOW);
 digitalWrite (Pin_Motor_Izq_A, HIGH);
 digitalWrite (Pin_Motor_Izq_B, LOW);
}
void Mover_Retroceso()
{
 digitalWrite (Pin_Motor_Der_A,LOW );
 digitalWrite (Pin_Motor_Der_B,HIGH );
 digitalWrite (Pin_Motor_Izq_A,LOW );
 digitalWrite (Pin_Motor_Izq_B,HIGH );
}
void Mover_Derecha()
{
 digitalWrite (Pin_Motor_Der_A,LOW );
 digitalWrite (Pin_Motor_Der_B,HIGH );
 digitalWrite (Pin_Motor_Izq_A,HIGH);
 digitalWrite (Pin_Motor_Izq_B,LOW);
}
void Mover_Izquierda()
{
 digitalWrite (Pin_Motor_Der_A,HIGH);
 digitalWrite (Pin_Motor_Der_B,LOW);
 digitalWrite (Pin_Motor_Izq_A,LOW );
 digitalWrite (Pin_Motor_Izq_B,HIGH );
}
void Mover_Stop()
{
 digitalWrite (Pin_Motor_Der_A, LOW);
 digitalWrite (Pin_Motor_Der_B, LOW);
 digitalWrite (Pin_Motor_Izq_A, LOW);
 digitalWrite (Pin_Motor_Izq_B, LOW);
}

Material bibliográfico
[1]Configuración Módulo Bluetooth HC-06.

http://www.prometec.net/bt-hc06/

[2]Doble puente H en Arduino.


https://prezi.com/8aznbsvshbv3/circuito-integrado-l293b-doble-puente-h/

[3]Configuración módulos Bluetooth HC-05 y HC-06


http://www.geekfactory.mx/tutoriales/bluetooth-hc-05-y-hc-06-tutorial-deconfiguracion/

[4]Configuración chip L293D.

http://www.instructables.com/id/Control-your-motors-with-L293D-and-Arduino/

[5]Arduino UNO.

https://www.arduino.cc/en/Main/ArduinoBoardUno

Das könnte Ihnen auch gefallen