Robotizando un astronauta

En la entrada anterior contaba cómo hacer un muñeco – el «astronauta» – que se movía con un motorcito alimentado con una pila o con un pequeño panel solar. Ahora voy a usar una placa Arduino para controlarlo a través del ordenador, es decir, lo voy a robotizar. Ya no voy a necesitar ni la pila ni el panel solar porque el motor tomará la energía del propio ordenador. En un programa voy a escribir una serie de instrucciones para controlar el motor. Este caso es muy sencillo porque al haber sólo un motor lo único que va a poder hacer el robot es avanzar en un sentido. Desde el ordenador le puedo ordenar que camine o que se pare (¡por eso se llama ordenador!). Parece complicado pero realmente no lo es. Sobre el porqué de hacer proyectos de electrónica en primaria ya escribí también aquí.

Lo primero que hay que hacer es montar el circuito de la izquierda (aunque en mi caso he usado una resistencia de 33o ohmios en lugar de la de 2200 que se ve en el dibujo). Nos va a hacer falta, además de la placa Arduino, una resistencia, un transistor y un diodo. El transistor es un gran invento y gracias a él funcionan la mayoría de los dispositivos eléctrónicos que usamos a diario. En este caso va a amplificar la corriente para poder mover el motor. El diodo, por su parte, es un dispositivo que permite que la corriente pase sólo en un sentido. Esta función hace que actúe como interruptor y nos va a permitir encender y apagar el motor. Todo se conecta a un pin de la placa (en este caso el número 9 pero podría haber sido otro), a tierra y a la salida de 5 voltios de nuestro Arduino. El montaje se hace sobre una protoboard. En realidad se podría hacer sobre cualquier superficie pero la protoboard es muy cómoda porque al estar perforada nos permite hacer las conexiones con facilidad y usarla una y otra vez. Los prototipos de todos los aparatos electrónicos que usamos se montan inicialmente sobre una protoboard y sólo cuando se comprueba que todo funciona bien se construyen en serie. Por último la placa Arduino se conecta al ordenador con un cable USB. En el siguiente vídeo(*) se muestra cómo se montó el circuito:

El software del Arduino se baja de su web y se instala muy fácilmente. Después hay que escribir un programa de control. En la red hay también multitud de ejemplos y de ayudas para programar. Yo he hecho este programa sencillo (se puede ver más grande pinchando sobre la imagen):

Al final conecté el motor del astronauta a las salidas que había dejado en la placa. Simplemente le he puesto un cable más largo y le he cortado las conexiones que iban a la batería, al interruptor y a la placa solar. La pila en principio no hace falta pero se la he dejado para contrapesar y que nuestro robot no caiga hacia delante.

En este ejemplo, el motor funcionará con ciclos de 2 segundos y pausas de 0.1 segundos. O sea, se moverá así:

Si le cambio los valores del tiempo («time_on» y «time_off«) por 2 segundos en ambos casos, nuestro astronauta andará 2 segundos y se parará otros dos. O sea, se moverá así:

Y ya está. Si quisiéramos que andase hacia atrás tendríamos que cambiar la polaridad del motor lo que se consigue simplemente intercambiando sus conexiones. Sin embargo, con el circuito que he montado no podríamos seleccionar un sentido u otro desde el ordenador. Para eso nos haría falta introducir lo que los electrónicos llaman Puente H. Pero vamos a dejarlo para otro día.

(*)La canción del vídeo es «In our talons» de The Bowerbirs.

Deja un comentario

4 comentarios

  1. Asdf

     /  19 de abril de 2013

    Hola
    Otra cosa muy chula para aprender a programar, y que además puede servir para poner un servidor en casa, como reproductor de música externo, y muchísimas otras cosas, y por sólo 35 euros: http://www.raspberrypi.org/

    Responder
  2. Hola. Gracias por enlace. Ya lo conocía y sí es verdad que tiene muy buena pinta.

    Responder
  1. La tecnología por dentro: controlar o ser controlado | El traje nuevo del emperador
  2. El movimiento maker | El traje nuevo del emperador

Deja un comentario