sábado, 29 de febrero de 2020

Robot Otto / Zowi

Hola a td@s.

En este tema vamos a ver los diferentes pasos para iniciar la construcción y programación del robot bípedo Otto que es una versión más económica del robot original de BQ Zowi:






Como puede verse ambos robot son muy similares y de hecho comparten códigos de programación de manera que con un mismo programa de arduino podemos controlar los dos modelos y las aplicaciones móviles de uno pueden usarse con el otro.
Además en ambos casos permiten iniciarse en la programación usando programación por bloques.

IMPRESIÓN 3D DE LAS PIEZAS:

Lo primero que necesitaremos son las piezas para montar el robot. Para la parte de impresión en 3D hay diferentes opciones en internet y nos hemos decantado por imprimir las piernas y los pies de este modelo de la web:


La idea es imprimir las piernas y los pies y construir de manera manual la parte del cuerpo y la cabeza.
El motivo es porque el Otto original esta diseñado para que entre en él un arduino Nano con un shield de conexión de servos y nosotros vamos a montarlo con los arduinos UNO que tenemos y por tanto necesitaremos algo más de espacio para la parte del cuerpo.

Existen algunos modelos imprimibles de Otto con cuerpo para arduino UNO como el de esta web:


Puede verse en la imagen el de arduino Nano a la izquierda y el de arduino UNO a la derecha.



Pero al final lo mejor será ajustar manualmente los espacios construyéndolo en madera o incluso con cualquier otro material reciclado del taller.


Una vez tengamos la piezas la siguiente fase será montar los componentes empezando por los 4 servos que nos van a permitir realizar los diferentes movimientos.

Existen en la webs de Otto manuales como el de este enlace:


Recordar que es fundamental asegurarse que el engranaje de los servos está a 90º antes de montarlos. Para ello conviene realizar un sencillo programa que los coloque a 90º.


En este sencillo programa realizado en bitbloq aprovechamos además para comprobar que el servo realiza bien todo el rango de movimientos haciendole hasta 175º y 5º (conviene evitar los grados extremos de 180 y 0) donde permanece 1 segundo en cada posición y quedandose 6 segundos en la posición de 90º que es en la que deberemos desconectar el servo o la placa para así asegurarnos que el engranaje está a 90º y podemos montarlo correctamente.

Además de esos manuales tenemos en internet vídeos como los de estos 4 enlaces diferentes:

En este primero vemos un vídeo de la web de Otto que explica de manera rápida el montaje:



Este otro vídeo explica con más detalle como montarlo incidiendo en los posibles problemas que se pueden presentar y como solucionarlos:




En este otro vídeo veremos una versión avanzada de Otto con brazos y matriz de leds para las expresiones de la boca:




Por último en este vídeo vemos un resumen de los diferentes movimientos que podemos programar a nuestro robot:



Una vez que tengamos a Otto montado podemos empezar a programarlo. Una primera opción puede ser cargar algunos de los códigos de arduino ya existentes que hacen moverse a Otto y nos permiten además controlarlo mediante las aplicaciones móviles ya existentes.
En el siguiente enlace podéis descargar un código de arduino que permite hacer funcionar a Otto aunque no tenga interruptor de manera que el robot va haciendo movimientos aleatorios de su base de movimientos hasta que nos conectamos por bluetooth momento en el que ya queda a la espera de las ordenes que le mandemos:


Las aplicaciones de Otto y Zowi para controlarlo podemos descargarlas en PlayStore son estas dos:



Importante tener en cuanta que en ambas (como puede verse en el código de arduino) el bluetooth que hayamos montado debe de estar configurado para usarse a 115200 de baudrate y que para la aplicación de Zowi para usar Otto el bluetooth debe tener de nombre "Zowi" y tener de pin "1234" ya que esa aplicación no permite seleccionar el módulo bluetooth y busca uno con ese nombre automáticamente. La versión de de la aplicación de Otto si que permite elegir el módulo bluetooth como haremos nostros al crear nuestra propia aplicación para el control del robot.

En los siguiente temas iremos viendo las diferentes opciones para programar los movimientos y los componentes de nuestro robot usando arduino/bitbloq y appinventor.

Un saludo,
Raúl.




No hay comentarios:

Publicar un comentario