TOBY: EL PERRO MOTORIZADO [Grupo nº9 Vicálvaro]
EQUIPO Nº9 – CAMPUS DE VICÁLVARO
Integrantes del proyecto:
Pablo Castaño Urías
Silvia Pascual Castillo
Paula Sestafe Zamorano
GII + GADE
1. Introducción
El proyecto desarrollado
consiste en un coche controlado por los gestos de una mano. El funcionamiento
de este es muy sencillo, y se basa en la presencia de un acelerómetro, que es
el encargado de leer, mediante dos coordenadas X e Y, los movimientos de la
persona que está sujetando este sensor, y transmitírselos a la placa de Arduino
para que, dependiendo del movimiento de la mano, ponga o no en funcionamiento
los motores del coche.
consiste en un coche controlado por los gestos de una mano. El funcionamiento
de este es muy sencillo, y se basa en la presencia de un acelerómetro, que es
el encargado de leer, mediante dos coordenadas X e Y, los movimientos de la
persona que está sujetando este sensor, y transmitírselos a la placa de Arduino
para que, dependiendo del movimiento de la mano, ponga o no en funcionamiento
los motores del coche.
En concreto,
nuestro coche será capaz de moverse en cuatro sentidos: hacia adelante, hacia
atrás, giro hacia la izquierda y giro hacia la derecha. Por supuesto, también
contemplaremos la opción de que se quede parado.
nuestro coche será capaz de moverse en cuatro sentidos: hacia adelante, hacia
atrás, giro hacia la izquierda y giro hacia la derecha. Por supuesto, también
contemplaremos la opción de que se quede parado.
2. Componentes empleados
NOMBRE |
PRECIO |
Placa Arduino UNO |
0€ (proporcionada por el profesor) |
Breadboard |
0€ (proporcionada por el profesor) |
Chasis de coche con motores y cuatro ruedas |
13,99€ |
Motor Driver L293D |
10,00€ |
Acelerómetro ADXL335 |
13,15€ |
Pila de 9V + cable para conectarla |
2,80€ |
Cables Jumper |
3,26€ |
Estaño para poder soldar |
3,81€ |
Batería externa |
0€ |
TOTAL |
47,01€ |
3. Implementación
Así empezó todo
Nuestra práctica comenzó con el montaje
del coche, lo que no nos llevó mucho tiempo debido a su simpleza.
del coche, lo que no nos llevó mucho tiempo debido a su simpleza.
Tadáaaaaa
Con el coche montado, solo quedaba unir los dos motores de cada lado (con cuidado de que ambas ruedas se movieran en el mismo sentido) para poder manejar ambos motores como si fuera uno solo.
Es posible que en nuestro primer intento un dedo casi acabara soldado…
Hecho esto, solo restaba probar que los motores del coche funcionaran bien para poder seguir.
¡Éxito!
En nuestro proyecto se pueden
ver dos partes del hardware diferenciadas: el transmisor, representado por la
mano que decide el movimiento, y la parte del receptor, en este caso el coche,
que mediante el código implementado realiza una acción concreta (moverse en un
sentido u otro). Viendo cada una de ellas por separado:
ver dos partes del hardware diferenciadas: el transmisor, representado por la
mano que decide el movimiento, y la parte del receptor, en este caso el coche,
que mediante el código implementado realiza una acción concreta (moverse en un
sentido u otro). Viendo cada una de ellas por separado:
- · La acción de la
mano viene interpretada por un acelerómetro, que cuenta
con tres inputs: las coordenadas X, Y, Z.
Como solo queremos que se mueva hacia delante, detrás y los lados, no
necesitamos más que las coordenadas X (para movimientos hacia delante y hacia
detrás) e Y (para movimientos hacia la izquierda y hacia la derecha).
- ·
El movimiento del
coche se realiza de la siguiente manera:
o Desde el código
de Arduino se especifica qué motores deben encenderse y cuáles apagarse en
cuestión de los valores X e Y antes comentados.
de Arduino se especifica qué motores deben encenderse y cuáles apagarse en
cuestión de los valores X e Y antes comentados.
o
El encargado de
poner en funcionamiento o no dichos motores es el Motor Driver. Este componente
se une, por una parte, a la placa de Arduino, identificando esas patillas
correctamente como variables de salida; y por otra parte a los motores.
El encargado de
poner en funcionamiento o no dichos motores es el Motor Driver. Este componente
se une, por una parte, a la placa de Arduino, identificando esas patillas
correctamente como variables de salida; y por otra parte a los motores.
o Una vez hechas
las conexiones, no quedará más que cargar el código y mover el acelerómetro. El
coche se moverá de acuerdo a él.
las conexiones, no quedará más que cargar el código y mover el acelerómetro. El
coche se moverá de acuerdo a él.
Aunque a veces prefiera estamparse contra la pared…
Esquema de los componentes hardware
4. Problemas encontrados
1. Si
bien la idea inicial era que los movimientos de la mano fueran transmitidos al
coche mediante un par transmisor-receptor, un error durante la implementación
de este proyecto nos obligó a pensar en otra posibilidad sin alejarnos
demasiado del planteamiento original. Tuvimos que buscar a contrarreloj un
proyecto que utilizase prácticamente los mismos componentes de los que
disponíamos y que no perdiese la esencia de la idea inicial.
bien la idea inicial era que los movimientos de la mano fueran transmitidos al
coche mediante un par transmisor-receptor, un error durante la implementación
de este proyecto nos obligó a pensar en otra posibilidad sin alejarnos
demasiado del planteamiento original. Tuvimos que buscar a contrarreloj un
proyecto que utilizase prácticamente los mismos componentes de los que
disponíamos y que no perdiese la esencia de la idea inicial.
2. Quizá
uno de los problemas que más quebraderos de cabeza nos dio fue también el de
resolución más sencilla: el uso de las baterías. Todas las baterías se nos
gastaban con gran facilidad, y cuando esto sucedía de un día para otro, nos
hacía pensar, equivocadamente, que el error se encontraba en otro sitio.
Además, nos costó deducir cuál era el voltaje idóneo para mover nuestro
proyecto.
uno de los problemas que más quebraderos de cabeza nos dio fue también el de
resolución más sencilla: el uso de las baterías. Todas las baterías se nos
gastaban con gran facilidad, y cuando esto sucedía de un día para otro, nos
hacía pensar, equivocadamente, que el error se encontraba en otro sitio.
Además, nos costó deducir cuál era el voltaje idóneo para mover nuestro
proyecto.
3. La
excesiva sensibilidad del acelerómetro hace que, en muchas ocasiones, parezca
que el movimiento de la mano no está siendo seguido por el coche. Sin embargo,
depurando el código hemos podido comprobar cómo el coche sí recibe las
instrucciones del acelerómetro.
excesiva sensibilidad del acelerómetro hace que, en muchas ocasiones, parezca
que el movimiento de la mano no está siendo seguido por el coche. Sin embargo,
depurando el código hemos podido comprobar cómo el coche sí recibe las
instrucciones del acelerómetro.
5. Posibles mejoras para el futuro
La primera
mejora que se nos ocurre es conseguir que el acelerómetro pueda transmitir al
coche qué movimiento debe realizar sin necesidad de usar cables, sino de manera
inalámbrica. Esto se conseguiría utilizando más componentes electrónicos: como
mínimo un módulo RF emisor y receptor para que ambas partes puedan comunicarse,
pero también algún componente más que nos permita traducir los valores que se
transmiten de una parte a otra, o una placa de Arduino extra.
mejora que se nos ocurre es conseguir que el acelerómetro pueda transmitir al
coche qué movimiento debe realizar sin necesidad de usar cables, sino de manera
inalámbrica. Esto se conseguiría utilizando más componentes electrónicos: como
mínimo un módulo RF emisor y receptor para que ambas partes puedan comunicarse,
pero también algún componente más que nos permita traducir los valores que se
transmiten de una parte a otra, o una placa de Arduino extra.
Conseguido
esto, se abre todo un abanico de posibilidades en cuanto a funcionalidades
adicionales que puede realizar nuestro coche: esquivar objetos, incluir luces
LEDs para marcar la dirección, incluir un pulsador para que emita un pitido
cada vez que se encuentre un obstáculo…
esto, se abre todo un abanico de posibilidades en cuanto a funcionalidades
adicionales que puede realizar nuestro coche: esquivar objetos, incluir luces
LEDs para marcar la dirección, incluir un pulsador para que emita un pitido
cada vez que se encuentre un obstáculo…
Y sobre todo, lo más importante es no marear demasiado al coche
Pero… un coche sin más es muy soso y está muy visto. ¿Por qué no mejor un perro? Una vez que el proyecto estaba terminado, tuvimos una semana extra para ponernos creativos, ¡y así nació Toby!
El perro que todo el mundo querría tener en su casa.
Enlaces de interés:
Memoria completa: https://drive.google.com/open?id=1Mqz3MyuqxY-8dCJ_r1zPRbKLP9ZhFbBW