CARRO CONTROLADO VIA BLUETOOTH

CARRO CONTROLADO VIA
BLUETOOTH
HEY AMIGOS DESEO COMPARTIRLES UN PROYECTO DE MI COLEGIO PARA
EL GRADO BUENO BUSCANDO EN INTERNET AVERIGUAMOS COMO CREAR
UN COCHE O CARRO DE CONTROL REMOTO TRANSFORMARLO PARA QUE SE
CONTROLE MEDIANTE UN TELEFONO CELULAR CON SISTEMA OPERATIVO
ANDROID
Tema.
MOBOT auto controlado vía bluethoot por un dispositivo móvil android basado en
una placa arduino
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.
Nuestro proyecto de conclusión de año de tercero de bachillerato informática, 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. Con este proyecto desarrollaremos
nuestras mentes para crear este auto de juguete hará demostrar que
si podremos hacer que un auto se maneje atreves del teléfono celular Ya que así
demostraremos la programación de un control remoto y el sistema en el teléfono
celular para controlar todos los tipos de movimientos del auto RC
Objetivo general.
Demostrar la programación de un sistema operativo android móvil hacia la placa
arduino que está instalada en el auto RC (teléfono celular – auto RC)
Objetivos específicos.-

Demostrar la facilidad de la programación para inventar nuevas cosas que
funcionen con tecnología de computación

Demostrar a factibilidad de contrallación, con dispositivos móviles como teléfonos
celulares

Demostrar nuevos usos que puede tener el sistema operativo android, pero que
se le pueda añadir programación y dispositivos de contrallación inalámbrica como
tal proyecto que estamos ejecutando
Ideas a defender.La creación de este carro servirá para demostrar nuestras aptitudes en los
campos de trabajo
También para demostrar la programación en nuevas tecnologías como lo es
android
La realización de los códigos en android para programar y demostrar nuestro
interés en la especialidad
Metodología investigativa.Utilizamos la investigativa – deductiva según la búsqueda de los instrumentos de
construcción dedujimos como el carro podría ser incorporado
1 DIAGNOSTICO
1.1 FORMATO DE ENCUESTA
ENCUESTAS DE EL PROYECTO
El proyecto consiste en la modificación de un pequeño auto de radio control, a la que ha
conectado una placa Arduino UNO y un módulo Bluetooth para comunicarse con la tarjeta
y entregar los pedidos. Además, se ha añadido un sistema de iluminación completa que
incluye luces cortas, luces largas y luces de marcha atrás, que todo esto será controlado
incluyendo el auto RC, por un teléfono celular con sistema operativo android móvil.
si
no
PREGUNTAS
1.- ¿LE GUSTARIA CONDUCIR UN AUTO RC CONTROLADO POR
TELEFONO CELULAR?
2.- ¿CONOCE USTED EL SISTEMA OPERATIVO ANDROID MOVILE?
3.- ¿CONOCE LA PLACA ARDUINO?
4.- ¿SABE QUE ES PROGRAMACION EN ANDROID?
5.- ¿SABE QUE ES UNMODULO BLUETOOTH?
6.- ¿DECEARIA APRENDER A PROGRAMAR EN ANDRIOD?
7.- ¿QUISIERA USTED DESARROLLAR MODULOS PARA ANDROID?
8.- ¿EL PARESE INTERESANTE EL PROYECTO?
9.- ¿CREE QUE EL PROYECTO ES INNOVADOR?
10.- ¿DESEARIA USTED DESALLORAR PROLLECTOS DE ESTE TIPO?
11.- ¿PIENSA QUE ESTE PROYECTO ES SENSILLO?
12.- ¿CREE USTED QUE EL PROYECTO AYUDARIA EN NUESTRA
FORMACION ACADEMICA?
13.- ¿CREE QUE EL PROYECTO ES COSTOSO?
14.- ¿SI EL PROYECTO SALE AL MERCADO, USTED LO COMPRARIA?
15.- ¿USTED AYUDARIA A DESARROLLAR EL PROYECTO?
SUGERENCIAS:_________________________________________________
_______________________________________________________________
_______________________________________________________________
________________________.
1.2 FORMATO DE ENTREVISTAS.Entrevistas
Introducción.El proyecto consiste en la modificación de un pequeño auto de radio control, a la que ha
conectado una placa Arduino UNO y un módulo Bluetooth para comunicarse con la tarjeta
y entregar los pedidos. Además, se ha añadido un sistema de iluminación completa que
incluye luces cortas, luces largas y luces de marcha atrás, que todo esto será controlado
incluyendo el auto RC, por un teléfono celular con sistema operativo android móvil.
Profesores / autoridades
1. Qué opina sobre el proyecto MOBOT?
______________________________________________________
2. Cree que el proyecto es factible?
______________________________________________________
3. Piensa Ud. que el proyecto sería fácil de realizar?
______________________________________________________
4. Como define el proyecto?
______________________________________________________
5. Cuanto cree que costaría el proyecto?
______________________________________________________
6. Porque es importante la realización de este proyecto?
______________________________________________________
7. Si el proyecto da frutos como lo calificaría Ud.?
______________________________________________________
8. Si el producto saldría al mercado lo compraría porque?
______________________________________________________
9. De una pequeña definición de que entiende sobre el tema MOBOT?
______________________________________________________
10. Porque cree que el proyecto seria beneficiario?
______________________________________________________
11. Que opina Ud. sobre el proyecto?
______________________________________________________
12. Como cree que influirá el proyecto en la vida académica?
______________________________________________________
13. Que opina que mobot un proyecto complicado sea realizado por alumnos del colegio?
______________________________________________________
14. Le parece atractivo el proyecto porque?
______________________________________________________
15. Encuentra aspectos negativos en el proyecto?
______________________________________________________
16. Conoce Ud. algún lugar donde realicen proyectos de este tipo indicar el lugar?
______________________________________________________
Gracias
Capitulo II
2 MARCO TEORICO.MOBOT coches BT es un proyecto simple que me ha ayudado a familiarizarse con
la plataforma Arduino. El proyecto consiste en la modificación de un pequeño radio
de coches de bajo coste, a la que ha conectado un Arduino UNO y un módulo
Bluetooth para comunicarse con la tarjeta y entregar los pedidos. Además, se ha
añadido un sistema de iluminación completa que incluye luces cortas, luces largas
y luces de marcha atrás.
2.1.1 Componentes:
1/16 coche de RC
Arduino UNO bordo
Módulo Bluetooth (modelo: BT0417C)
6 LEDs blancos
2 LEDs rojos
4 pilas AA
Ni-Mh 650mAh batería
Alambrado
2.1.2 Construcción:
Lo primero que debe hacer es quitar la cáscara del coche para desatornillar la
placa que controla los motores. Si nos fijamos, la junta tiene un micro controlador
con 16 pines (8 en cada lado). Los modelos más baratos tienen un chip RX2/TX2
Realtek o compatible con el diseño de las entradas mostradas en la imagen. Lo
que tenemos que hacer es soldar un cable a las salidas del chip que las señales
de control hacia adelante, hacia atrás, Turbo, derecha e izquierda, además de la
salida GND que debe ser conectado a tierra. Usted puede mantener el chip, pero
como solía usarlo, es mejor eliminarlos del tablero y eliminar. Todas las señales de
control se realizan desde la placa Arduino.
Una vez que desactive las clavijas en el chip a puentear, debe estar soldado a
cada uno de ellos. Para facilitar esto, no se recomienda la soldadura directamente
en el chip, pero en algún punto en la placa conectada a cada pin donde ya tiene
punto de soldadura aa. También es recomendable poner una etiqueta en cada
cable con la función de pasador que se suelda a encontrar más adelante cuál es
cuál.
2.1.3 Arduino:
Arduino es una fuente abierta de una sola placa electrónica, descendiente de la
plataforma de cableado de código abierto, diseñado para hacer que el proceso de
utilización de la electrónica en proyectos multidisciplinares más accesibles. El
hardware consiste en un diseño de hardware simple y abierto para la placa
Arduino con un procesador Atmel AVR ya bordo de entrada / salida de apoyo. El
software consiste en un compilador de lenguaje de programación estándar y el
gestor de arranque que se ejecuta en el tablero.
Hardware Arduino se programa mediante un lenguaje basado en Wiring (sintaxis y
bibliotecas), similar a C + + con algunas simplificaciones y modificaciones leves, y
un ambiente de procesamiento basado en el desarrollo integral.
Las versiones actuales se pueden comprar pre-ensamblado, información de
diseño de hardware está disponible para aquellos que quieran montar un Arduino
a mano. Además, las variaciones de la fabricación italiana Arduino-con diferentes
niveles de compatibilidad, han sido puestas en libertad por parte de terceros,
algunos de ellos están programados con el software Arduino.
El proyecto Arduino recibió una mención honorífica en la categoría de
Comunidades Digitales en el PrixArsElectronica 2006.
2.1.4 Pins soldadas:
Pin 2 – GND
Pin 6 – Derecho
Pin 7 – Left
Pin 10 – Retroceso
Pin 11 – Forward
Pin 12 – Turbo
Ahora vamos a ver el tema de las luces. El modelo que utilicé fue 2 faros de LED
blancos que iluminaban cuando el coche estaba en la parte delantera y dos luces
traseras LED rojo que enciende cuando el coche estaba en la parte trasera.
También, me uní a un segundo conjunto de 2 LEDs blancos de iluminación más
potente para su uso como luces largas y 2 otro para la función inversa. Para
instalarlo, tuve que atravesar la niebla con un destornillador para sacar el hueco
justo a la nueva iluminación.
Tenemos que cortar los cables de los LEDs a la placa original. Para el control de
los LEDs (tanto nuevos como los originales) que necesitamos un nuevo cableado.
Los pasadores cortos del LED 8 (ánodos) se conectan entre sí y todos van a una
entrada GND de la placa Arduino. Los pasadores largos estarán conectados en
pares (los dos LEDs para las luces cortas, los dos LEDs para las luces largas y los
dos LEDs para las luces traseras y los dos LEDs para atrás). Cada uno de estos
pares se acopla con una resistencia de 1K para evitar que los LEDs de la quema.
Cada resistencia se conectará al terminal correspondiente.
En este momento todos hemos montado. Ahora tenemos que perforar cada cable
de los que hemos preparado en el pin correspondiente de la placa Arduino. A
continuación se explican los pines correspondientes para cada elemento:
Pin 12 – Forward
Pin 11 – Regresar
Pin 10 – Left
Pin 9 – Derecho
Pin 8 – Turbo
Pin 7 - Luces cortas
Pin 6 - Luces Largas
Pin 5 - Luces traseras
Pin 4 - Las luces de marcha atrás
TX - RXD del módulo de BT
RX - TXD del módulo BT
3.3V - 3.3V del módulo de BT
GND - GND del módulo de BT / GND de LEDs / GND del chip de coche (desde el
Arduino tiene 3 entradas GND, puede utilizar uno para cada uno de los cables
especificados)
2.2 Montaje del circuito arduino con el módulo BT, las
LED y el controlador
En la siguiente imagen se puede ver el montaje completo del circuito:
Sólo queda por resolver la cuestión del poder, tanto los motores de los
automóviles y el Arduino. Como estamos usando el propio circuito del coche, para
alimentar los motores que pueden utilizar el sistema de baterías estándar. En un
primer intento, traté de alimentación de la placa Arduino con la batería del coche
mismo, pero las baterías no eran lo suficientemente fuertes para alimentar el
circuito. Por esta razón, tuve que usar una segunda batería para alimentar el
Arduino. Esta batería se ha tomado de un modelo de avión y está fuera del coche
debido a un problema de espacio.
2.3 Arduino Programación:
Código completo de la placa Arduino, que debe ser cargado en el tablero para una
adecuada comunicación con el cliente de Android.
int forward = 12; // Pin 12 - Forward
int reverse = 11; // Pin 11 - Reverse
int left = 10;
// Pin 10 - Left
int right = 9;
// Pin 9 - Right
int turbo = 8;
// Pin 8 - Turbo
intshort_lights = 7;
// Pin 7 - Short Lights
intlong_lights = 6;
// Pin 6 - Long Lights
intback_lights = 5;
// Pin 5 - Back Lights
intreverse_lights = 4;
// Pin 4 - Reverse Lights
charval; // Variable to receive data from the serial port
void setup() {
// initialize the digital pins as output
pinMode(forward, OUTPUT);
pinMode(reverse, OUTPUT);
pinMode(left, OUTPUT);
pinMode(right, OUTPUT);
pinMode(turbo, OUTPUT);
pinMode(short_lights, OUTPUT);
pinMode(long_lights, OUTPUT);
pinMode(back_lights, OUTPUT);
pinMode(reverse_lights, OUTPUT);
Serial.begin(9600);
}
// Start serial communication at 9600bps
// Forward action
voidgo_forward() {
digitalWrite(forward, HIGH);
digitalWrite(turbo, LOW);
digitalWrite(reverse, LOW);
}
// Stop Forward action
voidstop_go_forward() {
digitalWrite(forward, LOW);
}
// Reverse action
voidgo_reverse() {
digitalWrite(reverse, HIGH);
digitalWrite(forward, LOW);
digitalWrite(turbo, LOW);
digitalWrite(reverse_lights, HIGH);
}
// Stop Reverse action
voidstop_go_reverse() {
digitalWrite(reverse, LOW);
digitalWrite(reverse_lights, LOW);
}
// Turbo action
voidgo_turbo() {
digitalWrite(turbo, HIGH);
digitalWrite(forward, LOW);
digitalWrite(reverse, LOW);
}
// Stop Turbo action
voidstop_go_turbo() {
digitalWrite(turbo, LOW);
}
// Left action
voidgo_left() {
digitalWrite(left, HIGH);
digitalWrite(right, LOW);
}
// Right action
voidgo_right() {
digitalWrite(right, HIGH);
digitalWrite(left, LOW);
}
// Stop turn action
voidstop_turn() {
digitalWrite(right, LOW);
digitalWrite(left, LOW);
}
// Stop car
voidstop_car() {
digitalWrite(forward, LOW);
digitalWrite(reverse, LOW);
digitalWrite(turbo, LOW);
digitalWrite(right, LOW);
digitalWrite(left, LOW);
digitalWrite(reverse_lights, LOW);
}
// Short Lights ON
voidlights_on() {
digitalWrite(short_lights, HIGH);
digitalWrite(back_lights, HIGH);
}
// Short Lights OFF
voidlights_off() {
digitalWrite(short_lights, LOW);
digitalWrite(back_lights, LOW);
}
// Long Lights ON
voidlong_lights_on() {
digitalWrite(long_lights, HIGH);
}
// Long Lights OFF
voidlong_lights_off() {
digitalWrite(long_lights, LOW);
}
// Reverse Lights ON
voidback_lights_on() {
digitalWrite(reverse_lights, HIGH);
}
// Reverse Lights OFF
voidback_lights_off() {
digitalWrite(reverse_lights, LOW);
}
// Read serial port and perform command
voidperformCommand() {
if (Serial.available()) {
val = Serial.read();
}
if (val == 'f') { // Forward
go_forward();
} else if (val == 'z') { // Stop Forward
stop_go_forward();
} else if (val == 'b') { // Backward
go_reverse();
} else if (val == 'y') { // Stop Backward
stop_go_reverse();
} else if (val == 't') { // Turbo
go_turbo();
} else if (val == 'x') { // Stop Turbo
stop_go_turbo();
} else if (val == 'l') { // Right
go_right();
} else if (val == 'r') { // Left
go_left();
} else if (val == 'v') { // Stop Turn
stop_turn();
} else if (val == 's') { // Stop
stop_car();
} else if (val == 'a') { // Short Lights
lights_on();
} else if (val == 'c') { // Stop Short Lights
lights_off();
} else if (val == 'd') { // Long Lights
long_lights_on();
} else if (val == 'e') { // Stop Long Lights
long_lights_off();
}
}
void loop() {
performCommand();
}
3 propuesta (desarrollo del proyecto)
3.1 propuesta.Deseamos emplear este proyecto en el plantel para demostrar lo aprendido en las
diferentes materias de especialidad y también nuestra capacidad investigativa
sobre cualquier tema relacionado con informática
3.2 presupuesto tentativo.descripción
precio
Auto RC
50$
Módulo Bt
30$
Placa arduino
40$
leds
15$
Cables
5$
otros
10$
3.3procesos del proyecto
3.4 bibliografía.Arduino Diecimila
http://arduino.cc/en/Main/ArduinoBoardDiecimila
Software de arduino
http://www.atmel.com/default.aspx
http://es.wikipedia.org/wiki/Arduino
http://tecnomobilex.com/materias/electronica/la-comunicacion-inalambrica-con-elpc-y-placa-arduino-mediante-bluetooth
http://btcarrocuenca.blogspot.com.co/
Carro Wi-Fi 4x4 con Android & Arduino
Todos hemos tenido (y manejado) alguna vez un carro a control remoto, pero ahora tienes la
oportunidad de manejar tu carrito desde tu Smartphone, vía Wi-Fi! Nuestros amigos de la web
Instructables comparten con nosotros este interesante tutorial que hará revivir la niñez de
muchos.
Ok, si si, lo sabemos, ya venden carros de juguete controlados por Smartphone en diferentes
tiendas, pero quizás aún son muy costosos, y resulta mucho más económico comprar un 4x4 (que
te permitirá conducir por los terrenos más agrestes, o incluso transportar algún objeto... alguien
dijo cámara?...) a control remoto, una placa de Arduino, y algunos componentes sencillos, y por
supuesto, siempre es más emocionante hacerlo uno mismo.
Para este proyecto entonces, utilizaremos la estructura del 4x4 (mas no el control), su circuitería
interna (electrónico que no recicla, no es electrónico), un Arduino, componentes para armar un
Shield, una PC (se utilizará Visual Studio para pruebas) y claro, un Smartphone.
Recalcamos que hemos extaído este tutorial de la web Instructables, puedes encontrar el proyecto
a mayor detalle (en inglés) y descargar todos los esquemáticos y códigos (de Visual y de la App) en
este link, sin embargo, en este blog te daremos algunos consejos para ayudarte a construir el
proyecto, así que no dejes de leernos.
A propósito, en el proyecto original utilizan un Arduino Duemilanove (o traducido a español,
2009), pero ya sabes que puedes acoplar el proyecto para usar un Arduino UNO o el que mejor se
te acomode.
Manos a la Obra:
Antes de empezar a "meter mano" al diseño (o construcción) de los circuitos, te recomendamos
primero ver lo que tienes, así que coge un destornillador y desarma de una vez el carrito!
Ahora, con ayuda de un multímetro, trata de reconocer los componentes del circuito original,
identifica la unidad de control, la fuente de energía, la etapa de recepción de señal, los
componentes de control de motores, y las etapas adicionales que puede tener el juguete. Es
importante conocer estas cosas porque pueden ahorrarte trabajo al tener la posibilidad de usar lo
mayor posible lo que ya está armado, así como también te puede ahorrar problemas de
compatibilidad al momento de acoplar otros componentes.
En el proyecto original, luego de examinar su juguete, tomaron la decisión de construir un circuito
de control de motor, puesto que el original no contaba con control de velocidad (que puede
lograrse fácilmente con la PWM del Arduino), aparte del Shield, pero insistimos, antes de armar
algo, primero mira si lo necesitas (o quizás necesites más cosas).
Control de Motor:
Nuestros amigos de Instructables han utilizado un Puente H (SN754410) para el control de motor,
el cual puede ir conectado directamente al Arduino, pero además, han aprovechado la tarjeta para
el regulador de voltaje para el Arduino. En caso quieras utilizar otro Puente H, o algún otro circuito
de control de motor, te recomendamos revisar bien los valores de voltaje, tanto de alimentación
como de los demás pines, para evitar incompatibilidades.
Este es el diseño de la placa impresa de Instructables, se recomienda utilizar doble capa por el
espacio disponible dentro del carrito (y claro, hacer tu propio diseño de PCB... vamos! se puede
hacer mucho mejor que eso), pero si tu 4x4 es lo suficientemente grande, puedes hacerlo en una
sola capa.
Circuito de Arduino Shield:
El Shield utilizado por Instructables permite, a través de éste circuito, enviar y recibir los datos
necesarios via Wi-Fi. Cabe recalcar que para ésto, el dispositivo cuenta con una IP, la cual debe ser
especificada en la App (o en la PC para las pruebas).
Te recomendamos añadir indicadores (que pueden ser LEDs) en el envío y recepción de datos,
para que puedas verificar que la comunicación se produce correctamente, además del LED que ya
viene con el Wi-Fi Shield que indica que se ha establecido conexión con un router.
[Obs: Aún no sabemos para qué sirve el "Temperature-Sensor" del esquemático, si alguien lo sabe,
agradeceríamos enormemente nos resuelvan la duda en los comentarios]
Éste es el PCB del circuito del Shield, que lo puedes descargar de la página del proyecto original,
pero nuevamente, te invitamos a "rutearlo" tu mismo.
Acoplando el circuito completo al carro:
Antes que nada, te recomendamos que antes de imprimir tu "ruteo" y decapar tu tarjeta (o
mandarla a hacer), veas las medidas de la futura tarjeta y verifiques que va a caber (con un
margen de precaución) en tu juguete, sólo necesitas ver las medidas en tu Eagle (o Proteus, o el
software que uses) y medir el espacio en el carrito con una regla o wincha. Ten en cuenta también
que, si vas a usar parte de la circuitería original, ésta también ocupa espacio. Te recomendamos
también considerar espacio, en la tarjeta y en el juguete, para tornillos y pernos, puesto que no es
bueno tener las tarjetas "en el aire"
Programando el Arduino:
Lamentablemente, Instructables no ha compartido imágenes de la programación del Arduino,
pero puedes descargar el código desde la web, sin embargo, las funciones son sencillas, puesto
que únicamente producirá una PWM y realizará funciones accesorias (como encendido y apagado
de luces) con los valores recibidos vía Wi-Fi, por tanto puedes desarrollar tu mismo el código.
Te recomendamos también definir tu propio "protocolo" para los datos, y usarlo también para la
programación de la App. Por ejemplo, puedes establecer un orden de la "trama de datos" donde
(por ejemplo) los primeros bits sean para luces y los siguientes para la PWM, o quizas tener tramas
separadas para estas funciones identificadas por un encabezado, o quizás tener un rango de
valores para cada función, eso lo dejamos a tu criterio.
Instructables nos da también la precaución de el tiempo de espera del Wi-Fi Shield. Este Shield
espera de 15 a 45 segundos para establecer comunicación con el router, y una vez realizada la
conexión te avisa por medio de su LED rojo, así que tenlo en cuenta.
Probando con la PC:
Antes de desarrollar la App, vamos a probar que la idea realmente funciona. Si el carro puede ser
controlado por Wi-Fi, podemos mandarle las funciones vía PC, para ello nuestros amigos de
Instructables han desarrollado una interfaz utilizando Visual Studio, mediante la cual envían los
valores hacia el Arduino. Tu también puedes hacer tu propia interfaz, ya sea con Visual Studio o
con algún otro software, y si no sabes desarrollar este tipo de software, te recomendamos pedir
ayuda a algún amigo que si sepa (y así trabajar en equipo) o utilizar el software que desarrollaron
en Instructables.
Te aconsejamos, antes de empezar a enviar datos vía Wi-Fi, y quizás entrar en pánico por el
posible no-funcionamiento del carro, primero realiza los códigos (tanto en PC como para el
Arduino) para enviar los datos por USB y controlar el carro con estos valores, y con ellos probar el
funcionamiento del control de motores. Una vez que ésto funciona, recién probar la comunicación
Wi-Fi, ésto para identificar dónde estás el error en caso se presente.
Desarrollando la App:
Nuestros amigos de Instructables han desarrollado una App (puedes descargarla también) que
funciona, pero según ellos mismos, tiene muchos errores aún, así que, como siempre, te invitamos
a desarrollar tu propia App.
Con tu propia App, tu decides si controlar el carro a través de botones (en la pantalla táctil), o con
los botones de volumen, o con la inclinación de tu Smartphone, o como se te ocurra! sólo no
olvides que estás enviando los datos por Wi-Fi y no por Bluetooth (debido a la gran cantidad de
proyectos de Bluetooth, te puedes confundir), que necesitas especificar la IP del dispositivo, y el
protocolo que tu mismo hiciste en pasos anteriores.
A jugar!:
Con todos estos pasos, puedes tener tu carrito controlado por Smartphone, con lo cual puedes
tener un sin fin de aplicaciones, desde investigación, hasta aplicaciones reales como rescate o
minería, pero no nos puedes engañar que, si lo tienes en tus manos, vas a jugar con él hasta el
cansancio (e incluso, vas a hacer algunas bromas, lo sabemos).
Control de un Carro por Bluetooth+ Android con PIC18F4550
Pues los últimos meses después del aniversario del blog deje de escribir demasiado solo
escribí la entrada del PIC C 4.410 y unos recuerdos del año 2011, de ahí en adelante las
practicas de Sosa y este proyecto que ahora les traigo me tuvieron bastante ocupado (claro
no lo niego una que otra chevecita también xD).
A principio del semestre leí un articulo en el blog Neoteo que me llamo bastante la atención
donde mostraban como utilizar el modulo bluetooth RN41 y una interfaz con Android
creada con appinventor (dejo la nota al final del post como fuente), al mismo tiempo me
llego una invitación de parte de los compañeros de Mecánica de 9° semestre para colaborar
con ellos en el diseño de la parte electrónica de un vehículo.
Así que acepte y me puse a trabajar en ello, la idea que me surgió fue poder controlar el
vehículo por medio del celular con Android y un 18F4550, usando el modulo RN41 como
interface entre los dos dispositivos.
Modulo RN41 en tarjeta
El sistema lo que hace es estar esperando un carácter ya sea a,b,c,d,e,f,g,h,i,j,k,l cada uno
de ellos le indica una subrutina a seguir adelante, atras, izquierda, derecha, abrir, cerrar
brazo… el PIC en su función principal esta siempre preguntando y cuando encuentra un
carácter que proviene de la interrupción efectúa el submenu (comando)
Haciendo Pruebas en el auto
El modulo RN41 como podrán ver en los links que dejo al final del post se comporta como
un puerto serial y se comunica al PIC por medio de su terminales eso si tener en cuenta que
el RN41 trabaja a 3.3v (si le aplican 5v lo queman)
Auto Armado
En la aplicación de android lo único que haremos es mandar los caracteres que se necesitan,
según sea el caso y el botón asignado el smarphone enviara la información indicada al
modulo RN41 y esta a su vez al microcontrolador que efectuara las actividades por medio
de los UL293D.
Pruebas de funciones de la pinza
Toda la información es a grandes rasgos ya que en los links encontraran toda la
información mas detallada así como tutoriales en los que me base y que explican a detalle
cada paso para la realización de una aplicación en appinventor y unirlo con el RN41
Pruebas del auto
Es muy similar a trabajar con un puerto serie, si no es que igual, el modulo bluetooth
también se puede comunicar con una PC (con bluetooth claro) si tienen posibilidades de
cómpralo háganlo yo compre la versión SMD ya que es la mas barata, pero hay unas
versiones que ya trabajan a 5 volts en alimentación y en transmisión serial (RX y TX) que
aumenta un poco el costo pero vale la pena.
Diagrama en bloques Appinventor
Instalado Aplicación
¿Mejoras a realizar?



Comunicación bidireccional que el auto envié información de temperatura, velocidad,
obstáculos, localización, errores al smarphone.
Mejora de la aplicación mejor imagen, opciones y tal vez realizarlo con un verdadero
software de programación como Eclipse.
Un Protocolo de comunicación eso de mandar un carácter no es nada seguro y diría Piña
“Nada de una bonita programación”
Aplicación en funcionamiento
Dejo todos los códigos, ensayos y demás al final del post para que puedan replicar el
proyecto, modificar y demás, cualquier duda háganmela llegar y como este semestre vi el
“Reconocimiento de Colores” mejorado espero el siguiente ver unos cuantos RN41 o
módulos bluetooth funcionando
Icono de la Aplicación
A algunos les parecerá sencillo y si señores es sencillo, es el objetivo de este post
mostrarles que es sencillo manejar un modulo bluetooth y hacer aplicaciones en Android.
Claro hay cosas un poco mas complicadas pero nada es imposible y claro es el objetivo.
Primeras pruebas con el modulo usando el programa de NeoTeo
Prendiendo y apagando un led, con el mismo programa de NeoTeo
Apertura y cierre de brazo
https://www.youtube.com/watch?feature=player_embedded&v=e__LCccUjPE
https://www.youtube.com/watch?v=nMd7b_TZqSk&feature=player_embedded
https://www.youtube.com/watch?v=_QvuJsW4l8w&feature=player_embedded
http://www.taringa.net/post/autos-motos/6716674/Controla-tu-auto-con-tu-propio-celular.html
Carrito controlado arduino + android
Descripcion:
Es un pequeño carro de juguete armado por nosotros, que se mueve por medio de indicaciones
del celular con Android que son recibidas por el arduino por medio de blutooth del android y un
modulo de blutooth que se le puso al arduino uno.
Materiales:

Arduino UNO

Android

Modulo Bluetooth

Motores


Placa de carrito
Llantas


Esqueleto de carrito
Pilas
Herramientas:

Processing

IDE arduino

SDK android
Elaboracion:
Se programo el android por medio de Processing, el arduino con su IDE, se armo el carrito con
piezas y materiales encontrados de cada integrante de juguetes cuando eramos pequeños, se
fueron haciendo pruebas con arduino y processing, y tambien con difierentes carritos armados,
hasta que por fin el carro que les presentamos pudo dar sus primeros pasos.
Primer intento:
Segundo y final intento:
Codigo:
int incomingByte = 0; // para el byte leido
//boolean estado;
void setup() {
Serial.begin(115200);
///primera entrada a
pinMode(13, OUTPUT);
digitalWrite(13, LOW);
//segunda entrada b
pinMode(12, OUTPUT);
digitalWrite(12, LOW);
//tercera entrada c
pinMode(11, OUTPUT);
digitalWrite(11, LOW);
}
void loop() {
if (Serial.available() > 0) {
// lee el byte entrante:
incomingByte = Serial.read();
if(incomingByte == 0){
digitalWrite(13, LOW);
digitalWrite(12, LOW);
digitalWrite(11, LOW);
Serial.println("detener todo");
}
if(incomingByte == 1){
digitalWrite(13, LOW);
digitalWrite(12, HIGH);
digitalWrite(11, LOW);
Serial.println("correr");
}
if(incomingByte == 3){
digitalWrite(13, LOW);
digitalWrite(12, LOW);
digitalWrite(11, HIGH);
Serial.println("reversa");
}
}
}
view raw arduino.c hosted with
by GitHub
Funcionamiento:
El carro solo da en dos direcciones hacia adelante y hacia atra, cuando da de reversa el carro
levanta las llantas traseras para poder asi girar sobre su propio eje y poder dar vuelta.
https://youtu.be/s5LGztQKXMg
http://www.xatakamovil.com/varios/15-juguetes-y-dispositivos-que-puedes-controlar-desde-tusmartphone
Los smartphones se han convertido en unas potentes herramientas informáticas cuya
utilidad va mucho más allá de la simple llamada telefónica o incluso la conexión con
Internet. Podemos utilizarlos para casi todo, incluidas las funciones de control remoto de
dispositivos, juguetes y electrodomésticos.
Utilizando la conectividad WiFi o Bluetooth del móvil, así como sus acelerómetros, GPS,
cámaras y giroscopios podemos manejar a distancia drones, coches teledirigidos, robots,
equipos de sonido, de vídeo y otros aparatos electrónicos que tienen una app propia y que
ya se diseñan pensando en el teléfono como sistema de control. ¿Algunos ejemplos
curiosos? A continuación tenéis 15 dispositivos (algunos de los cuales no creeríais que
existían) pensados para ser controlados desde el smartphone.
AR Drone 2.0
Los drones de uso doméstico son unos de los equipos más comunes que han nacido
pensando en el control desde terminales móviles y este AR Drone 2.0 fue uno de los
primeros modelos que pudimos probar a fondo y que incluía cámara de vídeo en alta
definición capaz de enviar las secuencias directamente al móvil.
Bionic Bird
¿Un pájaro biónico bajo nuestro control? Esa es la idea de Bionic Bird, un curioso robot
volador que podemos manejar a distancias de hasta 100 metros desde una aplicación
utilizando la pantalla táctil del teléfono o directamente cogiendo el móvil con la mano y
moviéndolo en cualquier dirección gracias a los acelerómetros.
Living Aerial Bot
LAB (Living Aerial Bot), un drone que utiliza un teléfono inteligente como cerebro de
operaciones. El móvil se coloca en un receptáculo en la parte frontal y se conecta a la parte
de aviónica por medio de un puerto USB o por Bluetooth. Una aplicación se encarga de dar
las órdenes y dirigir el movimiento del engendro mecánico allá donde queramos.
Parrot Jumping Sumo
A medio camino entre el juguete, vehículo de control remoto y robot está el Jumping Sumo
de Parrot. Puede desplazarse a gran velocidad (7 km/h) realizando saltos y giros sin control.
La cámara integrada permite grabación de vídeo y emisión en directo vía streaming y
además, este Jumping Sumo incluye un modo de programación que deja a los más
pequeños planificar un recorrido desde el móvil estableciendo tanto la ruta como el tipo de
movimientos y acrobacias que queremos que haga Sumo.
Beewi BBZ251
Un sencillo pero divertido coche teledirigido también es el complemento ideal para jugar
desde el móvil. Éste de Beewi es un Mini a escala 1/20 que funciona con terminales
Android e iPhone a través de una conexión Bluetooth y utiliza los acelerómetros del
teléfono para controlar el movimiento a distancia.
Kuratas KR-01
Si siempre has querido tener tu propio ‘Mecha’ gigante, el Kuratas KR-01 hará tus sueños
realidad. Creado por Suidobashi Heavy Industry y por algo más de 1 millón de euros,
podrás montarte en el interior de este enorme robot de 4 toneladas o bien controlarlo a
distancia desde el smartphone con una sencilla aplicación.
Ghost Drone
Ghost Drone es un curioso vehículo volador semiautónomo que puede guiarse tanto por
una señal GPS como por la posición de nuestro teléfono inteligente. Lo podemos controlar
directamente desde el teléfono de dos formas distintas: a través de la pantalla táctil o bien a
través de movimientos con el terminal que son recogidos por los giroscopios y convertidos
en órdenes para el drone.
Pero además, Ghost está pensado para que sea capaz de seguir de forma automática a un
usuario, o mejor dicho, a su móvil iOS o Android, allá donde vaya, grabándo con una
cámara opcional que podemos montar en su cuerpo y haciendo las veces de un vigilante
aéreo.
Wifi Mouse Pro
¿Controlar el teclado y ratón del ordenador desde el móvil? Este es el propósito de Wifi
Mouse Pro, una aplicación gratuita para iOS y de pago en la versión Pro para Android que
nos permite controlar nuestro PC o Mac gracias a un ratón y teclado virtual.
La app se conecta al equipo mediante una aplicación servidor que tendremos que tener
previamente instalada. A partir de ahí, podremos acceder a un “touchpad” que aprovecha
la pantalla táctil del terminal, también a un teclado que podrá ser el propio de iOS o uno
completo con las teclas de función incluidas.
Controller de Sonos
¿Por qué limitarte a utilizar el complicado mando a distancia de tu equipo de audio si
puedes usar el móvil? Esa es la idea tras los equipos de música de la marca Sonos, que
vienen de serie perfectamente integrados con la aplicación Controller, para manejar las
funciones principales y la reproducción musical directamente desde smartphones.
MightyRC
¿No sería posible poder controlar todos los equipos electrónicos del hogar desde el móvil.
Esa es la razón de ser de MightyRC, una pequeña caja de 80 x 80 x 18 mm que actúa como
nexo de unión entre nuestro smartphone y los equipos que queramos controlar a distancia.
The Satis, tu inodoro a control remoto
Y ya puestos en esto de electrodomésticos controlados desde el móvil, ¿Por qué no un
inodoro? The Satis es un sanitario que se controla desde una aplicación Android. Entre
sus funciones se encuentra tanto levantar la tapa, tirar de la cadena, poner música en los
altavoces que incorpora, etc. Vamos, el complemento ideal para pasar largas sesiones en el
Trono.
AGA iTotal Control Cooker
iTotal Control Cooker es una interesante cocina creada por AGA con la que podremos
conocer en cada momento su estado e interactuar sobre ella de forma remota como si la
tuviésemos delante.
iTotal es un nuevo sistema de control remoto que permite encender, apagar y cambiar la
temperatura de los diferentes hornos, quemadores y calientaplatos de la cocina mediante
el envío de un mensaje desde el móvil o a través de la conexión WiFi.
Haiku con SenseME
Se trata de un ventilador inteligente presentado en diferentes acabados que cuenta con
conectividad WiFi para controlarlo desde el móvil y con una serie de sensores que
permiten al sistema regular la temperatura de la estancia en la que lo instalemos.
Para ello hace uso de un detector de movimientos, un sensor de temperatura ambiental y
un sensor de humedad que son empleados para detectar cuando entra alguien en la
habitación y ajustar la velocidad de giro en función del número de personas de la sala y del
grado de humedad y temperatura.
CyberQ Wi-Fi, barbacoa a distancia
CyberQ Wi-Fi es un curioso accesorio que nos ofrece poder controlar una barbacoa a
distancia desde nuestros móviles. Nos permite conocer el estado de la carne gracias a unos
sensores y controlar la potencia de fuego de la barbacoa.
Podremos ver estos valores y tomar el control total de la barbacoa desde cualquier
smartphone conectado a Internet e incluso configurarlo para que nos avise cuando la carne
esté en el punto justo que deseemos. Eso sí, para darle la vuelta a las chuletas tendremos
que acercarnos presencialmente.
Bombillas inteligentes de INSTEON
El molesto gesto de levantarse a encender o apagar la luz ya es cosa del pasado gracias a los
sistemas de iluminación inteligente como este de Insteon. Gracias al SmartLinc Hub, un
dispositivo que se comunica con las bombillas y que deberemos conectar a la red,
podremos apagar, encender o graduar la intensidad de las bombillas desde el móvil
ganando en comodidad.
https://youtu.be/AGUtDUU_2_w
https://www.youtube.com/watch?v=G3tee10ZqP0&feature=youtu.be
https://youtu.be/2iZ0WuNvHr8
https://youtu.be/O5FkkTnVkSE