Proyecto 42.1 - OTTO DIY Robot

7 de enero de 2018

Con el siguiente tutorial inauguramos una nueva sección dedicada a los robots imprimibles, también llamados PrintBots. Los PrintBots son robots que puedes imprimir y montar en casa por ti mismo.

En este primer tutorial vamos a montar el robot OTTO. Seguro que lo habéis visto por ahí.

Los archivos STL para imprimir las diferentes partes del cuerpo y las instrucciones de montaje están disponibles en Thingiverse. Si no tienes impresora 3D puedes comprar el kit en la página oficial ottodiy.com o acudir a algún servicio de impresión online.

Lo primero que hay que hacer es imprimir las seis piezas que forman el robot; dos piernas, los pies derecho e izquierdo, el cuerpo y la cabeza. Para imprimir a OTTO he utilizado la impresora 3D que hicimos en el Proyecto 40.

Una vez impresas las piezas, procedemos a montar el robot. Al final de la página hay un PDF con las instrucciones de montaje y el esquema de conexión.

A la hora de montar los servos, el eje debe estar a 90º. Una buena práctica es conectarlos según el esquema y cargar un sencillo sketch que mueve todos los servos a la posición de 90º. Esto es porque cuando compramos un servo, no sabemos en qué posición se encuentra el eje, de esa forma evitaremos tener que desmontar alguna de las partes porque ha quedado torcida.

Sketch calibración servos a 90º

/*

*  Calibración del eje de los servos

*  Este sketch lleva el eje de los servos a 90º

*  antes de montarlos en OTTO.

*  escrito por Angel M. https://sites.google.com/site/angmuz/home

*  Public domain

*/

#include <Servo.h>

Servo myservo2;  // create servo object to control a servo

Servo myservo3;  // create servo object to control a servo

Servo myservo4;  // create servo object to control a servo

Servo myservo5;  // create servo object to control a servo

int pos=90;

void setup() {

 myservo2.attach(2);

 myservo3.attach(3);

 myservo4.attach(4);

 myservo5.attach(5);

 

}

void loop() {

   myservo2.write(pos);           

   myservo3.write(pos);

   myservo4.write(pos);           

   myservo5.write(pos);

   delay(10000);

                      

 }

 

Lo siguiente es conectar los servos según el esquema. OTTO se puede programar para que realice diferentes acciones, tales como bailar, andar, esquivar obstáculos, etc. Para esto último hay que conectar un sensor de ultrasonidos HC-SR04. Esto lo veremos más adelante. Para empezar con algo sencillo, de momento solo vamos a conectar los servos y a programar un sketch para que OTTO baile una coreografía. El zumbador piezoeléctrico tampoco lo necesitamos.

OTTO visto por dentro

En lugar del sensor HC-SR04 voy a colocar unos ojos pegados en un trozo de cartón

Y así de bien luce OTTO terminado

Sketch

Por último solo hay que programar el Arduino con el sketch. Se trata de una coreografía para que OTTO baile Smooth Criminal de Michael Jackson. Atentos a las librerías, es posible que tengáis que instalar alguna.

Como el código es un poco extenso, lo dejo para descargar un poco más abajo.Gracias a Javier Isabel y a Juan González por compartilo.

En la página oficial de OTTO hay disponibles más sketchs con diferentes funciones, además de las librerías necesarias para que funcione el sketch. Solo hay que registrarse para descargar libremente el código para Arduino.

Links

Archivos STL en Thingiverse por C. Parra Palacio

Página oficial ottodiy.com