Casi no llega a la altura de “proyecto” porque no lleva Arduino, pero encaja en eso de “trabajo rápido + grandes resultados” y profundiza en las posibilidades de los “trampantojos”. Básicamente consiste en comprar y pegar unos vinilos para la puerta del taller.
Hay múltiples opciones donde elegir en Amazon y Aliexpress:
Las 3 últimas opciones son posibles fotos que se podrían imprimir en la tienda de abajo. creo que saldría por el mismo precio, lo que abre un mundo creativo de posibilidades chulas.
Las opciones ganadoras junto a mi primo han sido la “puerta metálica” (amazon) y por dentro el “Han Solo en Carbonita” (Aliexpress, todavía esperando que llegue). La fijación del vinilo no es difícil, viene dividido en dos partes y permite despegar y volver a pegar. Hay que tener cuidado con las dichosas burbujas y las arrugas, aunque con un poco de paciencia se consiguen buenos resultados.
Como siempre, hay que darle un toque personal. En este caso mi primo ha ideado un ventanuco con cerrojo, para crear la ilusión de mirar dentro del taller, que he fabricado con unos paneles de MDF y un acabado con témpera plata y betún de judea, junto con unas chinchetas.
El efecto al abrir el ventanuco era inicialmente ver a un batman, pero ha mejorado con la propuesta de mi primo de usar la potente mirada de Igor homenaje a la película “El Jovencito Frankestein”.
El taller está siempre en continua transformación desde “La Batcueva”, pasando por el taller del “Juguetero de Blade Runner” hasta “La Mazmorra de Igor”. Mi hijo dice que el taller parece un parque temático, no anda desencaminado.
Actualización: Por fin llegó el “Han Sólo en Carbonita” para la parte interior de la puerta y ha quedado muy chulo, aunque de cerca le falta resolución, un poco lejos da el pego total. Así no está sólo el RD2-D2, el mundo friki sigue en expansión:
Increíblemente, incluso en esta tontería se cumple mi teoría de los 3 planos: el plano de diseño (“vamos a decorar la puerta, con múltiples opciones”), el plano de ejecución (“dónde compro el vinilo, cómo se pega, cómo se fabrica un ventanuco”) y el plano de personalidad o historia (“Es la mazmorra de Igor, que está detrás de la puerta”).
“TELEKING” –el Pollo Automatemático-bisnieto del artimómetro electromecánico de D. Leonardo Torres Quevedo– es una marioneta robótica basada en Arduino que figura un pollo enjaulado de estilo Steampunk . Como los mejores espectáculos de finales del siglo XIX, puede responder a las preguntas de cualquier persona del público sobre la tabla de multiplicar, así como amenizar la velada con bailes y chistes.
La marioneta-robótica puede mover las patas, la boca, la cabeza, bailar, hablar, cantar.. incluso sabe multiplicar!!!, de ahí el sobrenombre de “automatemático”.
Funciona autónomamente con una inteligencia casi-artificial o también se controla con un mando de Playstation, renovando la experiencia marionetista en el siglo XXI. Como diría el Doctor Frankenstein: ¡ESTA VIVA!
Hay una web llamada “www.instructables.com” que se está convirtiendo en la referencia mundial de la comunidad “maker”. Al principio tenía sólo unos cuantos apartados, de gente que hacía proyectos lúdicos o de hobbies como artesanía, electrónica, disfraces… pero ha ido creciendo y tienen categorías para absolutantemente todo: recetas, impresion 3D, limpieza, decoración, mascotas, plastico, …
He creado un “instructable” de Teleking, que ha tenido bastante éxito, lo han destacado como “featured”, que significa que les ha gustado y le dan relevancia. Ha aparecido en el newsletter que envían a miles de personas, y se nota el impacto, el primer día ya hay más de 1000 visitas. Lo he publicado en Inglés porque es el idioma mayoritario de esa web.
Teleking participa en el concurso de “ROBOTS” que finaliza el 15 de Noviembre de 2021, aunque no tiene muchas opciones, porque hay un nivelazo increible. La originalidad de Teleking creo que es su mayor baza, pero hay robots chulísimos y mucho más complejos, como una máquina para resolver el cubo de rubik, un droide de la guerra de las Galaxias, y una fantástica máquina CNC para pintar huevos.
En cualquier caso, ya es un éxito que Teleking sea destacado en una web con tanta cantidad y calidad. Go, Teleking. Go!.
A continuación trataré de explicar cómo construir la marioneta “TELEKING” – el Pollo Automatemático-bisnieto del artimómetro electromecánico de D. Leonardo Torres Quevedo- es una marioneta robótica basada en Arduino que figura un pollo enjaulado de estilo Steampunk . Como los mejores espectáculos de finales del siglo XIX, puede responder a las preguntas de cualquier persona del público sobre la tabla de multiplicar, así como amenizar la velada con bailes y chistes.
Algunos pasos de construcción están resumidos y también supongo que la persona que quiera fabricar algo parecido debe tener ya ciertos conocimientos sobre arduino y algunas dotes para el bricolaje. Las medidas de los elementos tampoco las detallo porque entiendo que si alguien quiere hacer algo similar debe tomar sus propias decisiones de construcción.
El objetivo es fabricar una marioneta tipo “pollo” , que es una de las más simpáticas a la vez que simples de construir y manejar. La idea es controlarla mediante servomotores que fijamos en “techo” de una estructura que, como se trata de un pollo, podríamos simular que forman parte de una jaula.
Lógicamente, el pollo no puede andar, solo moverse de forma estática, por lo que estar encerrado en una “jaula” tiene mucho sentido. Para esconder la electrónica y los motores, el techo es una caja fabricada con cuatro listones de madera y una tapa con bisagras para facilitar el acceso a la electrónica y los ajustes mecánicos.
MECÁNICA
Los servomotores mueven diferentes poleas que al girar suben el hilo de cada articulación: cabeza vertical, pata izquierda, pata derecha, más otro servomotor para el movimiento lateral de la cabeza. Básicamente se trata de una “grúa” controlada por dos servos y otros dos servos para levantar las patas.
Al principio pensé en un motor adicional para subir y bajar el cuerpo, pero la sincronización de todos los servos en ese movimiento no creo que compense el esfuerzo para el efecto conseguido. De forma que la marioneta cuelga de un hilo central fijo sujetado al techo.
El material elegido para fijar los servos y las poleas es un panel de madera fino (chapón) que permite facilidad de fijación de los elementos y de corte, a la vez que ofrece suficiente firmeza. Es necesario hacer un hueco con forma semicircular para que los hilos de la “grúa” se puedan mover hacia los lados. El brazo de la grúa está construido con una pequeña canaleta de plástico de las que se usan para fijar los cables eléctricos a la pared.
Primero se fija la polea con un clavo y se mideSe fija un engranaje al servo
se corta con segueta permitiendo la fijación del servose coloca una fijacion para el soporte metálico
Detalle de una polea de pata terminada
Tuve dificultades para encontrar “poleas” pequeñas que pudieran servir para enrollar cada hilo, por lo que he usado ruedas de juguete sin los “neumáticos”, unidos a engranajes de plástico. Los servos tienen engranajes que hacen la función de piñones para transmitir el movimiento. Al principio pensaba colocar las poleas directamente en los servos, pero necesitamos más giro que los 180º de un servo.
Por el tipo de movimiento idóneo para mover una polea se podrían utilizar motores paso a paso que permiten un giro continuo sin estar limitado a 180º, pero tengo entendido que su control es bastante complejo y hay que entender que la sincronización posterior de todos los motores es un reto importante. Poner un servo en el ángulo 37 es muy simple. Controlar la realimentación de 5 motores paso a paso supongo que es bastante más complejo, pero no lo se, es la primera vez que uso un motor con arduino.
La polea roja para la cabeza vertical es más grande, permite más recorrido para el movimiento de cabeza a mayor velocidad. Dado que los motores ejercen mucha presión sobre las poleas, es necesario añadir una chapa de metal que sirva de soporte superior de las poleas, y además, hace las veces de guías para los hilos. Quizás las poleas sean la parte que más esfuerzo ha costado del proyecto, lo ideal es encontrar poleas que sean más grandes sobre todo en la parte de enrollamiento del hilo y eviten que los hilos se salgan con relativa facilidad si hay desajustes.
MECÁNICA – LA BOCA
La marioneta está bastante limitada, por lo que decidí añadir más expresividad: el movimiento de la boca. Aquí estaba ante un reto, porque es necesario sincronizar el movimiento del hilo de la boca con el de la cabeza. Pensaba que no iba a funcionar, pero resultó que funcionó prácticamente a la primera, la suerte del novato. La cabeza está fabricada con una pelota de pingpong, donde se fija un “pico” construido con el plástico de una botella de leche, que permite darle forma si aplicamos aire caliente con una pistola de calor y que una vez enfriado, mantiene la forma aplicada con rigidez. La parte inferior del pico es un “balancín”, con el eje en un par de alfileres. El balancín tiene un contrapeso detrás, de forma que si tiramos del hilo hacia arriba, la boca se abre y al soltar el hilo se cierra por efecto del contrapeso (tuerca). Es necesario que la cabeza tenga también un peso adicional para que la gravedad “tire” hacia abajo de la cabeza al tirar hacia arriba del hilo de la boca.
Los dos hilos de la cabeza deben estar sincronizados, porque cuando la cabeza se mueve, el hilo de la boca debe moverse a la vez. La boca se abre cuando el hilo de la boca “tira” un poco más que el hilo de la cabeza. La sincronización de los dos hilos podría hacerse con poleas por separado, pero también funciona con los dos hilos que se enrollan en la misma polea y un quinto servomotor independiente que al girar “amplía” el camino del hilo de la boca cuando queremos abrirla.
Los hilos de la cabeza y la boca lo ideal es que estén lo más separados posible durante su recorrido desde la polea hasta la cabeza, por lo que fijé una pequeña rueda en el extremo del brazo de la grúa para que el hilo de la cabeza vaya separado del hilo de la boca, además de usar distintos agujeros de las chapas metálicas que hacen de guías.
Hay que realizar ajustes finos para que todo funcione y calibrar la longitud de los hilos con cuidado, quizás la parte que requiere más esfuerzo “marionetista”. Como los hilos son sedales de pesca, tienden a resbalarse cuando se anudan, dificultando la precisión del proceso. La solución que mejora ha resultado ha sido emplear el interior de una clema eléctrica pequeña para atrapar el hilo con un destornillador.
CONSTRUCCION DE LA MARIONETA
Todas las marionetas deben tener personalidad. En nuestro caso, seleccionamos un estilo de pollo SteamPunk, porque la marioneta rinde homenaje al gran inventor español de finales del siglo XIX y principios del XX, D. Leonardo Torres Quevedo, que fue precursor de ordenadores (aritmómetro electromecánico), de un autómata controlado remotamente (telekino), e incluso de un robot que jugaba al ajedrez.
Mi hijo Mario, ayudante meritorio en el proceso de creación fue el que le dio el nombre definitivo: Teleking (¿o Telekin?), que enlaza con el telekino y con nuestro nombre de guerra: Telekomor. El prototipo inicial tenía el cuerpo de lana, pero finalmente usé una bola de polispan a la que pegamos unas plumas y unos engranajes metálicos de decoración.
Para la cabeza la idea era usar un sombrero steampunk fabricado con goma eva y unas gafitas de alambre. El reto era fijarlo pero que a su vez se pudiera desmontar, porque todos los elementos del proyecto deben ser fácilmente desmontables para poderse ajustar o modificar con facilidad. La cabeza de pinpong está cortada y debe poder abrise. Al final la solución es un tubo fijado a unos soportes de plástico (de nuevo, usando un trozo de botella de leche, que gran material!) que permite el movimiento de los hilos y la fijación de la peluca y el sombrero.
Detale dela cabezaUsamos fieltro en otra bola de pingpong y ojos
La peluca final es más pequeña y amarillaPequeños velcros sirven para fijar la cara amarilla
La jaula también debe estar decorada como un mueble viejo, para ello usamos barniz oscuro, aunque lo aplicamos un poco rápido. Se trata de cuatro palos y un panel de chapon con bisagras. La verdad que no nos hemos esmerado mucho, pero al fin y al cabo se trata de una jaula rústica, no un mueble rococó.
Por último, el cartel anunciador sobre la tapa está basado en un anuncio vintage de Apple de los años 70, que encaja muy bien con el espíritu de principios del siglo pasado donde se ubica la estética Steampunk.
ELECTRÓNICA
La electrónica se basa en una placa arduino Nano, conectada a los 5 servomotores, con un componente para disparar los sonidos en el altavoz y unas entradas de jostick y mando IR. En realidad es muy simple.
Los servomotores deben alimentarse con una fuente de alimentación lo suficientemente potente. Al principio las pruebas las hice con una pila y fue un desastre, los servos parecían unos motores vagos y maleantes. De los servos hay mucha información en Internet, sólo comentar que usamos la librería “VarSpeedServo” que permite modificar la velocidad de los servos y su control de forma asíncrona.
Muy importante poner un condensador de al menos 100micro faradios entre Vcc y Gnd, ya que los servomotores introducen inestabilidad en la corriente y provocaban reinicios en el Arduino y creo que llegaron a quemar alguno.
También controlamos por serie un circuito DFPlayer mini conectado a unos altavoces que permite reproducir canciones, mensajes o frases grabadas para darle voz a la marioneta. De esta forma la marioneta puede moverse y hablar de forma autónoma. No hay que olvidar la resistencia de 100k en el puerto serie o los resultados son inciertos.
Para el prototipado he usado una placa motherboard, después he optado por usar una placa PCB para soldar los conectores de la alimentación y de los servomotores, el módulo DFPlayer mini, así como condensador y resistencias. En lugar de soldar el Arduino, he optado por usar una “chaqueta” que permite atornillar los cables, lo que facilita la manipulación posterior.
Motherboard
DF player y conectores
Arduino con los cables atornillados
Las soldaduras de la placa PCB bastante desastrosas. Totalmente desentrenado.
CONTROL MANUAL
Como estamos fabricando una marioneta es imprescindible introducir la posibilidad de un control humano manual en tiempo real. He utilizado dos métodos de entrada de forma simultánea: Por un lado, un circuito de comunicación por infrarrojos, que permite introducir comandos con un pequeño mando a distancia, y por otro lado, un jostick modificado de playstation que se conecta por cable.
Al principio había pensado usar una conexión bluetooth y un móvil como herramienta de control, incluso desarrollando una aplicación que use el cinemómetro del móvil para simular el movimiento de una “cruceta” tradicional. Pero creo que es un esfuerzo elevado y los métodos de control que he usado han sido simples y satisfactorios.
El jostick tipo playstation es muy sugerente, es una especie de conexión del mundo actual del videojuego con el mundo tradicional de las marionetas. Aquí también hubiese podido usar un mando bluetooth, pero creo que no merece la pena tanta sofisticación, lo dejamos para una versión posterior.
Para el mando he usado dos jostick analógicos (resistencias de 10K) unidos a un chapón (por supuesto) y con un cable serie que se conecta en la parte trasera de la caja para transmitir las 7 señales de control (Jos_x1, Jos_x2, Jos_y1, Jos_y2, botón, Vcc y GND). El jostick de la izquierda (1) mueve la cabeza arriba/abajo e izquieda/derecha y el jostick de la derecha (2) mueve la pata izquierda, pata derecha y la boca al pulsarse hacia adentro.
Tope cutre, Telekomor style
El cableado, un chapús
El control mediante mando a distancia infrarrojo se basa en un receptor discretamente ubicado en la parte de abajo del techo y un mando a distancia númerico barato del chino. Permite mover con los cursores la cabeza y subir las patas. Para lanzar las coreografías hay que seleccionar el número correspondiente de cada una y pulsar el botón ok para reproducirla.
SPOILER: El control mediante el mando a distancia de infrarrojos es discreto, permite lanzar comandos sin que la gente lo perciba, por ejemplo para que la marioneta responda ante la pregunta de una persona sobre la tabla de multiplicar, funciona de forma “mágica” o como yo digo con “inteligencia casi-artificial”. Al pulsar dos números se leen ambos valores, se multiplican y se reproduce la secuencia de voz de multiplicación (“tres por cinco son quince”), es decir, teleking puede recitar toda la tabla de multiplicar. Bueno, alguien podría pensar que es un truco mentirosillo, pero es que al fin y al cabo una marioneta siempre debe tener una persona detrás que le aporte vida.
HABLAR Y CANTAR
Teleking puede hablar y cantar moviendo la boca, pero es necesario que reproduzca sonidos, claro. La forma de hacerlo es utilizando un módulo para arduino reproductor de MP3 llamado DF-Player. Es un módulo barato, unos pocos euros, y conectado mediante una resistencia al puerto serie, permite enviarle comandos que reproducen ficheros mp3 de una memoria SD. Su programación no es difícil y las posibilidades que le ofrece a arduino son infinitas. Los ficheros se organizan en carpetas y se nombran comenzando con un número (001, 002, 003…). El sonido se reproduce conectando un altavoz a la salida de audio, pero aunque se escucha, el ruido de los servomotores es elevado, por lo que he decidido usar la salida de audio del DF-Player como entrada auxilar de un altavoz portátil con batería de 10W.
Para generar los sonidos he utilizado el software libre AUDACITY, que permite grabar frases o modificar canciones. Además, permite modificar las canciones y añadirles la voz de Teleking, y encima sin pagar un euro. Que caña el software libre.
Tiene una función muy útil dentro de “efectos” que es “cambiar tono”, que permite modificar las voces a tipo más agudo, es decir, “apitufarlas”. De esta forma podemos habar o cantar normalmente, y al procesarlo como 5 notas más alto, conseguimos el efecto “pollo”.
PROGRAMACIÓN
El código arduino de Teleking está siempre en construcción, aquí comentaré las funciones principales. comentar que utilizo la librería “VarSpeedServoI” que permite un control asíncrono y con distintas velocidades para cada servo. Controlar los motores con el jostick es algo bastante trivial, hay multitud de información en Internet. Para el mando a distancia IR he utilizado la librería “TinyIRReceiver”, fácil de implementar.
Pero el reto más importante era la programación de las “coreografías”. Teleking debía cantar y bailar, lo que significa la programación de decenas o centenares de posiciones de 5 servomotores sincronizadas con la música. La primera aproximación fue sincronizando los servos “a mano”, con la canción de MC-HUMMER. El resultado es simpático, pero el esfuerzo de sincronización en base a cuenta de milisegundos (millis) es descomunal.
Una canción tiene un ritmo, es decir, unos BPM (beat per minute). Una forma de simplificar el movimiento es sincronizar los movimientos de teleking con esos golpes del compás. No tiene sentido hacer una coreografía que los movimientos no sean rítmicos, fuera del compás.
Con la librería “MsTimer2.h” generamos una interrupción en cada BPM que incrementa el compás. Si el compás ha aumentado, leemos la variable de un array que almacena la posición de cada motor para ese instante. Así que para crear la coreografía, lo que hay que hacer es una tabla con excell donde se ubican cada servo en cada inicio de cada compás. Puede parecer también muy complejo, pero es una forma mucho más simple de imaginar y programar los movimientos.
De la hoja excel exportamos un fichero .csv que se convierte de forma muy simple en una variable array dentro del código de arduino, cambiado , por ; y añadiendo {}.
Esta es la primera marioneta robot que he hecho. Si tengo que resumir este proyecto, creo que el viaje ha sido muy satisfactorio. ¡A veces frustrante, muchas veces emocionante! . La ejecución de la idea original ha superado las expectativas. El proyecto ha sido muy creativo tanto físicamente (marioneta) como abstracto (diseño, programación).
Quería hacer un robot original con mi hijo, además de seguir las instrucciones de otra persona. Supongo que existe, pero no he encontrado ninguna información sobre marionetas robóticas en Internet, solo material animatrónico, que no es exactamente lo mismo. Todo este instructable nació de mi mente retorcida. Quizás puedas seguir el camino: ¿Un curso de Teleking? ¿Un títere robótico pianista? (tengo un diseño primario).
Ahora queda trabajar para que Teleking tenga vida propia … oh, mierda, … ¡ESTÁ VIVO!