miércoles, 13 de mayo de 2020

He construido mi propio perro-robot como los de Boston Dynamics, lo controlo con un mando de PlayStation

He construido mi propio perro-robot como los de Boston Dynamics, lo controlo con un mando de PlayStation

Los robots de Boston Dynamics en forma de perros -o algo así- se han hecho tremendamente populares en los últimos años, e incluso hemos visto cómo este mismo fin de semana eran empleados por autoridades de Singapur para recordar a sus ciudadanos que deben mantener la distancia de seguridad en plena pandemia mundial.

Verlos en acción hace un par de años encendió la bombilla de Miguel Ayuso, un estudiante de Física de Valdepeñas (Ciudad Real) que pensó en si podría conseguir algo así hecho por él mismo. Hace seis meses se puso a trabajar en serio aquella idea, y hoy tiene un nuevo compañero de piso cuadrúpedo en su hogar en Madrid, donde con 22 años está a punto de acabar la carrera.

Un Arduino, una Raspberry Pi, doce motores y muchas matemáticas

"Ha sido un proceso lento, sin prisa, lo he hecho simplemente para aprender", dice Miguel, que estima en unas doscientas horas el tiempo invertido en diseño CAD mediante Fusion360 -un software de Adobe-, y en otras doscientas lo usado para crear el código que hace posible a este robot.

Paradójicamente, su formación académica no tiene nada que ver con lo necesario para esta creación, excepto por las matemáticas, que básicamente son la base del software de estos robots, tanto para moverse y coordinar esos movimientos, como para que lo hagan de la forma más natural posible. "El código lo he ido sacando poco a poco con mis conocimientos matemáticos, sacando buenos modelos. Orientaciones, vectores, traslaciones... Es lo más importante para el movimiento del robot".

Ese código, escrito en Python, es ejecutado por su ordenador y transmitido vía USB, pero está cerca de poder llevarlo a la Raspberry Pi que ya está dentro del cuerpo del robot. Cuando logre hacerlo, e incluya las baterías también en el cuerpo, ya será inalámbrico. Algo que tenía pensado que estuviese hecho a estas alturas, pero que por la imposibilidad de ir a su casa familiar, donde tiene la Anet A8 con la que imprime las piezas en 3D, ha tenido que posponer. "La idea es hacerlo radiocontrol, no me costará mucho cuando pueda volver a imprimir".

Miguel Ayuso 02

De momento, los cálculos de movimiento los realiza con datos como las propias dimensiones del robot, diciéndole a cada pata a qué coordenada en el espacio quiere que la lleve gracias tanto a sus propios cálculos como a Pybullet, una librería de Python con un motor de físicas a tiempo real.

El resto del cuerpo se inclina indicando el movimiento del centro de gravedad, y un bucle hace que el robot recorra todo el ciclo del paso con el resto de patas aplicando un desfase entre ellas. Una placa Arduino mueve los motores y lee los datos del acelerómetro, integrado en un chip IMU junto a un giroscopio. Una cadena que termina con el robot caminando como un perrito.

Miguel Ayuso 04
Miguel Ayuso 05 Circuitería interna y piezas impresas en 3D desmontadas que forman el perro-robot.

Cada pata tiene tres motores -doce en total- que permiten ese movimiento articulado. Esos componentes son los más caros del conjunto, ya que además ha tenido que subir la calidad de los mismos frente a los que intentó usar en un principio, baratos pero que se quemaban en poco tiempo. "En total calculo que me ha costado unos 500 euros en componentes: los motores, la Raspberry Pi, el Arduino, la impresión de las piezas, cableado, rodamientos, conectores...".

Pulsa X para que se agache, pulsa triángulo para que te dé la pata

La idea de hacer que se pudiese controlar mediante un DualShock 3, el de la PlayStation 3, vino porque es un tipo de mando archiconocido, muy bueno, y que funciona como cualquier teclado vía Bluetooth. "Una pulsación en cualquier tecla es un evento dentro del ordenador, un comando. Lo lee Python con una librería, solo he tenido que configurar el emparejamiento Bluetooth".

Próximamente investigará más movimientos que se puedan controlar mediante la combinación de botones pulsados en el mando, como en un videojuego cualquiera. "Se puede añadir cualquier movimiento: agacharse, saludar con una pata... Cualquier cosa que haga al robot más visual, más cercano, más interactivo. La idea es aprender sobre los sistemas de control que se usan en estos robots para que tengan una retroalimentación y pueda predecir cuándo se van a caer, o dónde debe poner las patas para que al caminar sea estable".

Miguel Ayuso 03 El robot de Miguel, dando la patita.

Para el futuro, Miguel planea introducir mejoras. "Tengo ganas de que yo le pueda dar golpes y él los esquive o se adapte para que el golpe no le haga caer, el sensor ya lo tiene, solo queda labor de software. Por ejemplo, que cuando reciba un golpe y detecte una aceleración mayor de la normal, que intente equilibrar esa perturbación ajustando la posición de sus patas".

Mientras llega ese siniestramente atractivo día en el que pueda golpear a su robot simplemente para hacerlo mejor, asume que este robot supone un escaparate para él en el mundo laboral al que próximamente entrará. En su canal de YouTube y en su cuenta de Instagram va explicando los avances que va realizando con él, y de paso, promocionándose como un precoz de la robótica que ni siquiera estudia una ingeniería. Además, el código del robot es libre y puede consultarse en Github.

"En juguetería educativa quizás podría ser una buena opción, pero este tipo de robot tiene difícil aplicación más allá del aprendizaje. Va muy al límite de lo que puedes implementar en un robot así. Una Raspberry Pi no es tan potente como para hacer cálculos de estabilidad y a la vez ir controlando la imagen de una cámara, por ejemplo. Y el consumo energético de los motores es alto, los cálculos de estabilidad deben ir muy fluidos para que sean eficaces".

Su objetivo principal con este robot, al margen de permitirle aprender de electrónica, programación y circuiría por el camino, es enseñar que es posible crear un robot así sin salir de casa, y que "la robótica está más cercana a nosotros de lo que puede parecer". Intentará que su TFG -Trabajo de Fin de Grado- esté orientado a este robot, sobre todo para ramas de la Física donde se desarrollan teorías de sistemas de control, de álgebra y matemáticas para controlar sistemas de la vida real. "A ver si convenzo a algún profesor", dice Miguel riendo.



via Magazine - robotica-e-ia https://ift.tt/2Lor0Hx

No hay comentarios:

Publicar un comentario