Los robots son un ejemplo perfecto de cómo la electrónica puede realizar trabajos mecánicos con precisión y exactitud. En las últimas décadas, el alcance y la definición de robots se han alejado del ámbito de las tareas mecánicas. Ahora se imagina que los robots automatizan todo lo posible, incluidas la comunicación y la inteligencia. Una de las causas detrás de esto es el intento de replicar las capacidades humanas en todos. El resultado del mismo esfuerzo son los robots humanoides.
Los robots humanoides son robots construidos para parecerse a un cuerpo humano. Estos robots tienen una construcción similar a la humana y replican movimientos cinemáticos y capacidades cinéticas similares. A menudo los humanoides están diseñados como robots autónomos. Muchos robots humanoides están controlados remotamente o preprogramados. Al igual que el baile, los robots humanoides suelen estar preprogramados para mostrar secuencias de baile específicas. Los avances en el campo de los robots humanoides se centran principalmente en dos aspectos: uno, la imitación del movimiento humano y el segundo, la imitación de la interacción humana.
En este artículo, analizaremos los robots humanoides y exploraremos algunos proyectos humanoides de código abierto que los entusiastas y los ingenieros electrónicos pueden probar o iniciar como punto de partida. Los proyectos humanoides de código abierto analizados en este artículo utilizan piezas impresas en 3D, por lo que se necesitaría una impresora 3D para iniciar cualquiera de los proyectos mencionados. Incluso una impresora 3D económica que funcione con Cura u otro cortador 3D de código abierto será suficiente. Los proyectos utilizan el mismo microcontrolador o plataformas de microcomputadoras que se utilizan en proyectos integrados o de hobby.
¿Qué es un robot?
El término robot se originó de la palabra checa "robota", que significa esclavo o elemento mecánico que ayudaría a su amo. Un robot es un dispositivo automático que realiza funciones normalmente asignadas a los humanos. En realidad, el concepto de robótica evolucionó a partir de las máquinas CNC. Aún así, un robot es muy diferente de una máquina automatizada de control numérico (NC). La diferencia radica en las capacidades sensoriales del robot. Un robot es un dispositivo mecánico controlado por software que utiliza sensores para guiar uno o más efectores finales a través de movimientos programados en un lugar de trabajo para manipular objetos físicos. A diferencia de las máquinas automatizadas, los robots son reprogramables y dependen en gran medida de la detección de su entorno. Un flujo de trabajo típico de un robot incluye esencialmente detección, toma de decisiones y rendimiento. Una gran diferencia entre los robots y las máquinas CNC es que los robots están diseñados para ser máquinas autónomas. Esta definición encaja perfectamente al menos para lo que llamamos robots industriales.
¿Qué es un robot humanoide?
Actualmente, los robots humanoides no tienen una definición exacta. A menudo, los robots que tienen una estructura similar a la humana o los robots que imitan la interacción humana se denominan robots humanoides. Sin embargo, los robots que tienen rostro humano y están diseñados para imitar la interacción humana son un campo de la robótica completamente diferente, más centrados en el procesamiento del lenguaje natural (PNL) y la inteligencia artificial (IA) que en la robótica mecánica típica. Sería mejor clasificar a los robots humanoides como aquellos robots que son similares a los humanos y construidos para imitar la cinemática y el movimiento humanos. Un robot humanoide suele estar diseñado para imitar caminar, saltar, sostener, recoger y colocar objetos, así como imitar gestos humanos.
Aplicaciones del robot humanoide
Actualmente, la robótica humanoide es un campo de investigación. Esta es un área de la robótica desafiante y en evolución. A diferencia de los robots industriales, es posible que no encuentre robots humanoides implementados en aplicaciones industriales o de consumo. Se están desarrollando robots humanoides como proyectos militares o de ingeniería.
Hay dos desafíos principales en la robótica humanoide. Uno de ellos es imitar la flexibilidad y dinámica de los músculos humanos. Los músculos humanos son una red compleja de tejidos interconectados que estimulan y producen movimiento de manera muy eficiente. La robótica humanoide actual se basa en servos para imitar movimientos similares. Obviamente, los servos tienen sus propias limitaciones como motores y no pueden producir exactamente la dinámica que estimulan los músculos. Los músculos humanos también tienen un papel decisivo en el mantenimiento del equilibrio y la postura corporal. Obviamente, los servos por sí solos no tienen nada que ver con el equilibrio. En los robots humanoides, el equilibrio se mantiene mediante diseño mecánico, posicionamiento y servooperación. En segundo lugar, el movimiento humano está guiado por la visión y unos sentidos auditivos altamente capaces. Desarrollar capacidades similares con cámaras y micrófonos es una tarea complicada.
Aunque actualmente los robots humanoides no tienen presencia industrial ni de consumo. Los humanoides son parte de la robótica y, a menudo, se prueban como robots andantes o proyectos de robots danzantes. Puedes encontrar robots humanoides como juguetes, robots domésticos o robots de restaurante. Algunas aplicaciones activas de la robótica humanoide se pueden encontrar en el área de ortesis y prótesis. Una vez que la robótica humanoide supere un hito, podremos encontrar humanoides reemplazando a los humanos en todo tipo de trabajos, especialmente aquellos que representan un peligro para la vida humana. Puedes encontrar robots humanoides realizando tareas domésticas, operando como trabajadores de fábrica, como buzos o como astronautas en una misión espacial lejana sin necesidad de un tanque de oxígeno.
Proyectos humanoides de código abierto
La robótica humanoide es un campo desafiante. Se requieren conocimientos de electrónica, ingeniería mecánica, física y programación de software para diseñar y fabricar un robot humanoide. Un desafío importante al tomar esta iniciativa sería elegir un punto de partida. En teoría, crear un robot humanoide podría ser una tarea difícil. Afortunadamente, existen algunos proyectos de robots humanoides de código abierto que vale la pena probar. Estos proyectos pueden ser un punto de partida en su aventura robótica o servir como proyectos independientes. Lo bueno de estos proyectos es que no es necesario diseñar robots desde cero. Obtiene modelos 3D para piezas de robots que se pueden imprimir y ensamblar en 3D de acuerdo con las guías proporcionadas. De esta manera, puede concentrarse en programar la plataforma integrada para implementar cinemática máxima o resolver nuevos problemas de dinámica.
Analicemos ahora algunas de las iniciativas de código abierto en robótica humanoide.
Proyecto de robot humanoide InMoov

Ejemplo de robot humanoide impreso en 3D de código abierto InMoov
InMoov es una iniciativa personal del escultor y diseñador francés Gael Langevin. Comenzó como un proyecto de código abierto en 2012 para prótesis de manos, lo que dio lugar a proyectos como Bionics, E-Nable y otros. Actualmente, InMoov es un proyecto humanoide completo como un robot de tamaño natural impreso en 3D. Todas las partes mecánicas del robot se pueden producir desde una impresora 3D doméstica con un tamaño de impresión de al menos 120x120x120 mm.
El robot humanoide tiene una cabeza de 6 DOF, un torso de 2 DOF, brazos de 5 DOF, manos de 16 DOF y piernas no motorizadas. Este humanoide es capaz de realizar movimientos independientes de la cabeza y los ojos. Hacer este humanoide requiere 2 Arduino Mega/Arduino UNO, 2 escudos de tablero nervioso y 28 servos. Utiliza dos cámaras para seguimiento de rostros/objetos, dos parlantes para voz, 1 sensor Kinect para reconocimiento de gestos y profundidad 3D y un sensor PIR para detección de presencia. Todos los dedos del robot están motorizados.
Puedes construir este humanoide paso a paso, comenzando desde los dedos y progresando a través de la mano y el antebrazo, bíceps, hombros y torso, espalda, cabeza, cuello y mandíbula, ojos, parte superior del estómago, medio estómago, parte inferior del estómago y, finalmente. las piernas no motorizadas.
Si las piezas se imprimen en 3D en casa y el tablero nervioso lo prepara usted mismo, es posible que el proyecto no cueste demasiado. Los archivos SLT de las piezas impresas en 3D se pueden encontrar en la galería inmoov.fr. Construir un humanoide completo requiere imprimir alrededor de 57 partes diferentes. Muchos modelos 3D para InMoov también se aportan a ThingiVerse. Los componentes electrónicos y sus conexiones de circuitos se proporcionan en el mapa de hardware y en la sección BOM. InMoov se puede programar utilizando MyRobotLab. Sin embargo, nadie se detiene en tener su propia programación Arduino personalizada utilizando piezas InMoov y servológica.
Lo mejor de este diseño humanoide es que está dividido en segmentos según partes humanas específicas como dedos, manos y brazos, cabezas, etc. Para que puedas crear partes específicas de este humanoide de tamaño natural según tu presupuesto y progresión. Esto también te permite jugar con la cinemática de piezas específicas de forma independiente.
Explore este proyecto humanoide en inmoov.fr.
El canal de YouTube de Gael Langevin tiene algunos vídeos interesantes de InMoov, el robot humanoide de tamaño natural.
Proyecto humanoide amapola

Ejemplo de robot humanoide impreso en 3D de código abierto Poppy
Poppy es otro robot humanoide impreso en 3D de código abierto. El proyecto comenzó en 2012 en el laboratorio Flores de Inria Bordeaux Sud-Ouest. Todo empezó durante el doctorado de Matthieu Lapeyre. Tesis dirigida por Pierre-Yves Oudeyer. Inicialmente fue financiado por ERC Grant Explorer. Ahora está dirigido por Poppy Station, una organización sin fines de lucro que promueve la Robótica y la Inteligencia Artificial. Este es un proyecto impulsado por la comunidad con hardware, software y herramientas web que se pueden compartir. De hecho, el proyecto incluye tres robots: el humanoide Poppy, el torso Poppy, Poppy Ergo Junior, Poppy Heol, Poppyrate y el brazo derecho Poppy. El proyecto está disponible gratuitamente bajo licencias de código abierto. Sin embargo, el uso del nombre 'Poppy' está restringido y protegido como marca internacional.
Todas las partes del robot están impresas en 3D. Los archivos STL para partes impresas en 3D de este humanoide están disponibles en Github. Este humanoide se puede construir en tres partes: piernas bípedas, torso y cabeza. El modelo humanoide completo requiere 25 servos. El proyecto utiliza actuadores inteligentes modulares llamados Robotis Dynamixel. Poppy es un humanoide de 25 grados de libertad con una columna vertebral totalmente potenciada. El robot se puede programar para caminar, interactuar, bailar y realizar actuaciones artísticas.
El Poppy Humanoid se puede construir en una Raspberry Pi 3/4 o en una placa Odroid. La forma más sencilla de configurar el software Poppy Humanoid es instalar el sistema operativo Poppy ya preparado en una tarjeta SD. El sistema operativo listo para usar está disponible en Github. Las herramientas de software para Poppy incluyen Pypot, una biblioteca de Python para controlar robots Poppy, repositorios específicos de robots, un simulador de robots y una interfaz de control web. Poppy Humanoid se puede programar usando scratch, Python y Robot Operating System (ROS). El humanoide también se puede controlar mediante API de robot. Se puede probar una versión simulada de Poppy utilizando dos software de simulación: CoppeliaSim (anteriormente llamado V-REP), una plataforma de experimentación con robots virtuales, y un visor web 3D, un simulador liviano sin soporte físico. Para controlar un robot Poppy simulado, necesita Python 3.5 o superior, la biblioteca PyPot y las bibliotecas Python específicas de Poppy Humanoid instaladas en su sistema informático.

Ejemplo de simulador de robot amapola
Explore más sobre Poppy Humanoid en poppy-project.org.
Puede encontrar algunos videos interesantes de Poppy Humanoid y otros robots Poppy en el canal de YouTube de Poppy Project.
Proyecto humanoide RoboPrime

Ejemplo de robot humanoide impreso en 3D de código abierto RoboPrime
Si está interesado en construir un robot humanoide relativamente pequeño con un presupuesto de entre 60 y 100 dólares, RoboPrime es un robot humanoide impreso en 3D de código abierto con licencia GPL 3.0. RoboPrime es una iniciativa de Simone Primarosa. Este es un humanoide de 21 DOF construido sobre ATmega328P. El proyecto fue desarrollado por Simone como un proyecto de escuela secundaria. El autor construyó el robot en el Arduino Pro Micro, sin embargo, se puede utilizar cualquier Arduino con suficiente GPIO en el sitio. El humanoide completo requiere 21 servomotores MG90S 9G. Además, utiliza HC-05 para Bluetooth, MPU-6050 para aceleración y giroscopio, y contador de décadas 74HC4017.
Todas las piezas utilizadas para ensamblar este humanoide están impresas en 3D. Los archivos STL de las piezas impresas en 3D están disponibles en la página de Github del proyecto. El diagrama del circuito y el firmware también están disponibles en el mismo enlace. RoboPrime es ideal para iniciar un proyecto humanoide desde cero con un presupuesto mínimo. Sería divertido modificar el firmware de este proyecto para jugar con diferentes cinemáticas. El firmware ya incluye código para caminar, sentarse y saludar.
Este proyecto humanoide de bajo coste podría ser un buen comienzo. Este proyecto te permite ensuciarte las manos con código C de bajo nivel. Este puede ser un camino difícil, pero con mucho aprendizaje. Esta no podría ser una mejor oportunidad para comprender la física y la programación de la robótica humanoide, implementando la teoría en la práctica.
El único inconveniente de este proyecto humanoide de código abierto es que su documentación sólo está disponible en italiano. Aún así, tienes el firmware y el código fuente completo a tu disposición. Puedes examinar el código fuente para desmitificar cómo funciona el código y el robot humanoide. Una vez que hayas decodificado el código fuente, puedes encontrar ayuda en repositorios de código de otros proyectos humanoides para hacer que RoboPrime baile en tus propias secuencias. Eres libre de hacer más contribuciones al proyecto en Github y mejorar este robot humanoide más asequible y accesible.
Tenga en cuenta que este proyecto humanoide no se mantiene activamente, por lo que es posible que necesite muchos ajustes y pruebas. Aun así, el proyecto es un robot humanoide funcional que puede mejorarse y modificarse.
Explore más sobre RoboPrime en Github.