WALL-E
(30/11/2013)
Desde que era un niño, siempre me han gustado los robots. Me encantaban R2-D2, C3PO… Por esto, decidí construir mi propio robot yo mismo usando mis conocimientos de electrónica y programación. Y que mejor robot que un Wall-e.
Vi que había un juguete de Wall-e del merchandising de la película que era una réplica muy fiel al robot original. Busqué por internet y finalmente lo pude comprar.
Una vez adquirido el Wall-e, decidí que acciones haría este:
– Mover los dos brazos arriba y abajo.
– Mover la cabeza en horizontal y en vertical
– Tracción en las ruedas para que pueda moverse hacia delante, hacia atrás, girar a la izquierda y girar a la derecha.
– Iluminar los ojos con leds.
– Una barra de leds para saber el nivel de batería.
– Dos sensores de proximidad infrarrojos para hacerlo autónomo y que no choque con obstáculos.
– Reconocimiento de voz, para darle instrucciones.
– Que emita sonidos característicos de Wall-e.
– Todo controlado a través de un Arduino.
Una vez decidido esto, el siguiente paso fue comprar los componentes que usaría:
Sensor de proximidad por infrarrojos
Como he comentado antes, Wall-e tiene dos sensores de proximidad para hacerlo autónomo: uno en la parte de abajo del cuerpo, y el otro en el cuello. Este último, al estar sujeto al movimiento horizontal de la cabeza, consigue ampliar el rango horizontal de lectura. De esta manera se obtiene dos lecturas de distancia diferentes a la vez.
El sensor que he optado es el Sharp GP2Y0A21YK. Es un sensor que mide la distancia por infrarrojos a través de la reflectividad del color en objetos. Tiene tres pins: positivo, masa y salida. Proporciona un voltaje de salida analógico según la distancia del objeto detectado. El rango de la distancia es de 10cm a 80cm. La instalación es muy sencilla, basta con alimentarlo a 5V y la salida analógica directamente a una entrada analógica del Arduino ya que la salida proporciona 3,1V a 10cm hasta 0,4V a 80cm.
Servomotor
Hay cuatro servomotores para mover los brazos y la cabeza. Los brazos tienen un micro servomotor cada uno. La cabeza tiene un servomotor para moverla horizontalmente y un micro servomotor para la vertical.
Los servomotores van alimentados a 5V.
Servomotor rotación continua
Para que Wall-e pueda desplazarse he optado por poner dos servomotores de rotación continua en sus dos ruedas. Estos servomotores son igual que un servomotor normal con la diferencia que en vez de quedarse fijo en una posición giran como si fueran un motor DC pero sin la necesidad de un driver para motores. Con estos servomotores podemos dotar de suficiente tracción a Wall-e, ya que no necesitamos que corra a gran velocidad.
Se alimentan a 6V.
Easy VR
Para el reconocimiento de voz he puesto un módulo Easy VR.
– Es una placa que permite almacenar hasta 32 comandos de voz en su memoria interna a través de un software de PC.
– Viene equipado con un micrófono.
– Tiene una salida para conectar un altavoz de 8 ohmios para la reproducción de sonidos. Los sonidos los almacena en la memoria interna insertados previamente a través del software de PC.
– Se comunica directamente al Arduino a través del puerto Serial.
– Se puede alimentar entre 3,3V hasta a 5,5V.
Con esta placa, daré órdenes de voz a Wall-e para que las ejecute y también para la reproducción de los sonidos a través del altavoz.
LEDS
Aunque en la película los ojos de Wall-e no están iluminados, yo quería poner dos leds en cada ojo para que se viera más “vivo”. Además descubrí que el juguete ya tenía de serie un led azul a cada ojo, así que los aproveché.
También le acoplé una barra de leds para hacer una medición de la batería.
Arduino Uno Rev 3
Será el cerebro de Wall-e, el que lo controla todo. El Arduino Uno Rev 3 se ajusta perfectamente a las necesidades de este proyecto, con sus 14 entradas/salidas digitales (6 con PWM para controlar los Servos) y sus 6 entradas analógicas.
Batería
Para la alimentación, Wall-e tiene una batería LiPo de 7,4V (2 celdas) y 850 mAh.
Reguladores de tensión
En el circuito habrá tres alimentaciones:
-5V: Para alimentar los servomotores de los brazos y la cabeza, los dos sensores de proximidad y la placa Easy VR.
-6V: Para alimentar los dos servomotores de rotación continua de las ruedas.
-7,4V: Es la alimentación máxima de la batería que será la alimentación de la placa Arduino.