Construye un Robot Araña Cuadrúpedo con Arduino – Tutorial Paso a Paso
Componentes y materiales
| Componente | Cantidad |
|---|---|
| Arduino Nano R3 | 1 |
| Módulo Bluetooth Low Energy (BLE) genérico | 1 |
| Expansión OLED Onion Corporation | 1 |
| LED RGB difuso de cátodo común | 1 |
| PCB personalizada JLCPCB | 1 |
| 12 servomotores (3 por pata) | 12 |
| Módulo Bluetooth HC-06 | 1 |
| Pantalla OLED | 1 |
| LEDs RGB de 5mm | 1 |
| Conectores header | Varios |
| Piezas del cuerpo del robot (impresión 3D) | 1 juego |
Sobre este proyecto
¡Hola a todos! Aquí presentamos un nuevo tutorial que os guiará paso a paso en la creación de un robot cuadrúpedo, también conocido como robot araña o robot reptador. Dada la rápida evolución de la robótica, queremos llevaros al siguiente nivel en la construcción de robots.
Comenzamos con proyectos básicos como el robot seguidor de líneas PICTO92 para familiarizaros con la electrónica. Ahora damos un salto a un robot conceptualmente sencillo pero con una programación más compleja. Como estos dispositivos son costosos en el mercado, os ofrecemos esta guía completa para construir vuestro propio Spiderbot.
El proyecto se completa en solo 7 días: 2 días para el hardware y montaje, y 5 días para el código y la app Android. La PCB personalizada de JLCPCB mejora la estética y facilita el montaje. Toda la documentación y el código necesario están incluidos.
Qué aprenderás
- Seleccionar los componentes adecuados según las funcionalidades del proyecto
- Diseñar el circuito para conectar todos los componentes elegidos
- Montar todas las partes del proyecto
- Calibrar el equilibrio del robot
- Usar la app Android para conectar vía Bluetooth y controlar el sistema
Paso 1: ¿Qué es un robot araña?
Como su nombre indica, nuestro robot imita los movimientos de una araña, pero con cuatro patas en lugar de ocho. También se le llama robot cuadrúpedo por tener cuatro patas que coordinan sus movimientos para mantener el equilibrio y la posición del cuerpo.
Los robots con patas manejan terrenos irregulares mejor que los de ruedas y se mueven de forma más natural. Sin embargo, son más complejos y costosos debido al uso de servomotores o motores paso a paso, más caros que los motores DC de los robots con ruedas.
Ventajas
En la naturaleza abundan los cuadrúpedos porque cuatro patas proporcionan estabilidad pasiva: la capacidad de mantenerse en pie sin ajustes activos. Lo mismo ocurre en robótica: un robot de cuatro patas es más barato y simple que uno con más patas, pero logra estabilidad.
Paso 2: Los servomotores como actuadores principales
Un servomotor es un actuador rotativo o lineal que permite control preciso de posición angular, velocidad y aceleración. Consiste en un motor acoplado a un sensor de retroalimentación de posición y requiere un controlador sofisticado.
La señal de control es un tren de pulsos cuadrados (frecuencias típicas: 44Hz, 50Hz, 400Hz). El ancho del pulso positivo determina la posición: ~0.5ms gira a la izquierda (45-90°), ~2.5-3.0ms a la derecha, ~1.5ms posición neutra (0°). Voltaje de salida alto: 2.5-10V (típico 3V); bajo: -40mV a 0V.
Paso 3: Fabricación de la PCB (producida por JLCPCB)
Sobre JLCPCB
JLCPCB (Shenzhen JIALICHUANG Electronic Technology Development Co., Ltd.) es el mayor fabricante de prototipos PCB en China, especializado en prototipado rápido y producción en pequeñas series. Con más de 10 años de experiencia, tiene 200,000+ clientes y procesa 8,000+ pedidos diarios. Capacidad anual: 200,000 m² de PCB de 1, 2 o múltiples capas.
Volviendo a nuestro proyecto
Tras comparar precios, elegí JLCPCB como mejor proveedor calidad-precio. Solo subí el archivo Gerber, configuré parámetros (grosor, color, cantidad) y pagué $2 para recibir la PCB en 5 días. La PCB incluye forma de araña, etiquetas y logos para guiar el soldado. Usé un Arduino Nano para controlar el sistema.
Podéis descargar el circuito (PDF) y el archivo Gerber para pedir el mismo diseño.
Paso 4: Lista de materiales
- PCB pedida a JLCPCB
- 12 servomotores (3 por pata)
- 1 Arduino Nano
- Módulo Bluetooth HC-06
- 1 pantalla OLED
- LEDs RGB de 5mm
- Conectores header
- Piezas del cuerpo del robot (impresión 3D)
Paso 5: Montaje del robot
Con la PCB lista y componentes soldados, pasamos al montaje del cuerpo. Cada pata necesita dos servos para las articulaciones y las piezas impresas: Coxa, Femur, Tibia y pieza de unión.
- Colocar el primer servo en su alojamiento y fijar con tornillos.
- Girar el eje del servo a 180° (sin colocar tornillo de la unión) y conectar el Femur a la Tibia usando el eje del primer servo y la pieza de unión.
- Colocar el segundo servo (segunda articulación) para sujetar la tercera parte de la pata (Coxa).
- Repetir para las 4 patas.
- Colocar los servos restantes en el chasis superior y conectar cada pata a su servo correspondiente.
- Colocar la placa de circuito en el chasis inferior.
Los archivos STL para las piezas del cuerpo están disponibles para descarga.
Paso 6: La app Android
La app permite conectar al robot vía Bluetooth y controlar:
- Movimientos adelante/atrás y giros izquierda/derecha
- Color de los LEDs en tiempo real mediante una rueda de colores
La app está disponible para descarga gratuita.
Paso 7: Código Arduino y validación
Primero subimos el código de calibración para colocar cada servo a 90° (conectar batería 7V DC). Luego subimos el programa principal para control vía app. Ambos códigos disponibles para descarga.
Tras subir el código, conectamos la pantalla OLED para mostrar caras estilo Cozmo programadas en el código principal. El robot responde a las instrucciones del smartphone, quedando margen para mejoras futuras.
Código principal
El código completo incluye control de 12 servos, cinemática inversa, movimientos (adelante, atrás, giros), expresiones faciales en OLED y comunicación serie para Bluetooth. Utiliza librerías Servo.h, FlexiTimer2.h, Wire.h, Adafruit_SSD1306.h y Adafruit_GFX.h.
Funciones clave: servo_service() (interrupción 50Hz), cartesian_to_polar() y polar_to_servo() (modelo matemático), step_forward(), step_back(), turn_left(), turn_right(), y animaciones faciales (happy(), triste(), enfado(), etc.).
Piezas personalizadas y cerramientos
Archivos STL para impresión 3D de las piezas del cuerpo (patas, chasis superior/inferior).
Esquemáticos
Diagrama de conexiones de la PCB personalizada con Arduino Nano, 12 servos, módulo Bluetooth, pantalla OLED y LED RGB.
Proceso de manufactura
- Construya un robot Raspberry Pi controlado por Bluetooth con retroalimentación de audio
- JQR Robot Cuadrúpedo Autónomo: Robot de Patas DIY para Navegación y Rescate Autónomos
- Robot evasor de obstáculos con servo: Construcción con Arduino y HC-SR04
- Robot Seguidor de Línea Autónomo con Arduino UNO: Guía Paso a Paso
- Construye un robot controlado por voz con Arduino Nano
- Construye un Robot Cuadrúpedo Inteligente con Arduino: Guía Paso a Paso
- PiBot: Robot Pianista con Arduino para Interpretación Musical de Precisión
- LittleArm 2C: Brazo Robot 3D Imprimible para Educación STEM con Arduino Nano
- Robot Asistente Doméstico Autónomo "O'nine" – Integración ROS, Alexa y Brazo Robótico
- Kit de Robot de Navegación Interior Inteligente para Proyectos Arduino
- Cómo los robots asistentes personales se están convirtiendo en realidad cotidiana