Este artículo detalla la concepción, el diseño y la implementación de un fascinante proyecto de robótica básica: una Plataforma Móvil Cuadrúpeda de Cartón que, a pesar de su estructura simple y económica, es controlada con precisión por un joystick a través de una placa Arduino. Este proyecto es una fusión perfecta de electrónica, programación y diseño mecánico con materiales reciclables o de bajo costo.
🔩Funcionamiento
Este proyecto tiene como objetivo diseñar y construir una plataforma móvil, cuya estructura base está hecha de cartón en forma cuadrada. Utilizando una placa Arduino como núcleo de control, la plataforma será capaz de levantarse mediante el movimiento de cuatro servomotores de 5V, los cuales serán controlados por un joystick. Este proyecto combina conceptos de electrónica, programación y diseño mecánico, ideal para aprender y poner en práctica conocimientos de robótica básica.
El proyecto se basa en la réplica simplificada de la locomoción de un organismo cuadrúpedo, utilizando la sencillez del cartón como material estructural y la precisión de los servomotores para la articulación.
El Corazón Estructural: Cartón y Geometría
La elección del cartón como material base no es trivial. El cartón corrugado ofrece una excelente relación entre rigidez y peso, facilitando la construcción rápida y económica de la estructura sin requerir herramientas complejas.
- Estructura Base: Una plataforma cuadrada simple sirve como el “cuerpo” central.
- Articulaciones: Se diseñan y recortan cuatro “patas” que se unen a las esquinas de la base. El diseño se centra en permitir un movimiento vertical básico de elevación.
- Puntos de Pivote: Cada pata se conecta a la base mediante un servomotor, que actúa como la única articulación de la pata, permitiendo un movimiento angular de 90° a 0° para levantar o bajar la plataforma.


Actuadores y Control de Movimiento: Servomotores y Joystick
El movimiento es generado por cuatro servomotores de 5V (típicamente SG90 o MG90S). Estos motores son ideales porque permiten un control angular preciso (no rotación continua), esencial para la robótica de posición.
- Los 4 Servomotores: Cada uno está asignado a una pata y se conecta a un pin PWM digital del Arduino. La librería
Servo.hde Arduino es fundamental para controlar su posición con un ángulo de 90 a 0 grados. - El Joystick: Se utiliza un módulo joystick analógico (por ejemplo, el módulo KY-023 o similar). Este módulo tiene dos potenciómetros internos (uno para el eje X y otro para el eje Y) que proporcionan valores analógicos (de 0 a 1023 en Arduino) que varían según la inclinación de la palanca. Un movimiento en el joystick es la entrada principal que se traduce en el movimiento de las patas.
🔨Componentes
| Componente | Cantidad | Especificación | Función |
|---|---|---|---|
| Placa Arduino | 1 | Arduino Uno, Nano, etc. | Control de componentes(cerebro) |
| Servo | 4 | SG90 5v | Mover la base |
| Joystick | 1 | (KY-023) | Controlar servos |
| Cables de conexión | n | Unir componentes | |
| Fuente de alimentación | 1 | 5v | Suministro de energía |
🔌Conexiones
Conecta los pines del joystick:
- VCC a 5V de la fuente de alimentación.
- GND a GNDde la fuente de alimentación.
- VRx a A0 (para eje X).
- VRy a A1 (para eje Y).
Conecta los servos:
- Conecta todos los sevo motores a la fuente de alimentación, GND a GND y VCC a 5v
- Servo 1(eje Y positivo): pin de señal a pin 5 del arduino.
- Servo 2(eje X positivo): pin de señal a pin 6 del arduino.
- Servo 3(eje Y negativo): pin de señal a pin 9 del arduino.
- Servo 4(eje X negativo): pin de señal a pin 10 del arduino.
Conecta el arduino:
- Pin GND del arduino a GND de la fuente de alimentación
0️⃣Código
La programación requiere la librería Servo.h y la función clave de mapeo (map()) para traducir el rango analógico de 0-1023 del joystick al rango angular de 0-90 de los servomotores.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | #include <Arduino.h> #include <Servo.h> // Importar la librería para controlar el servo const int servoMasYPin = 5; const int servoMasXPin = 6; const int servoMenosYPin = 9; const int servoMenosXPin = 10; // Pines del joystick const int VRx = A0; const int VRy = A1; const int SW = 2; // Creación del objeto servo Servo servoMasY, servoMenosY, servoMasX, servoMenosX; void setup() { // Inicialización del servos servoMasY.attach(servoMasYPin); servoMenosY.attach(servoMenosYPin); servoMasX.attach(servoMasXPin); servoMenosX.attach(servoMenosXPin); // Posición inicial del servo: 90 grados servoMasY.write(90); servoMenosY.write(90); servoMasX.write(90); servoMenosX.write(90); delay(5000); // Inicialización del puerto serie Serial.begin(9600); } void loop() { // Leer valores analógicos del joystick int x = analogRead(VRx); // Eje X int y = analogRead(VRy); // Eje Y Serial.print("x: "); Serial.print(x); Serial.print(" y: "); Serial.println(y); // Mapear valores de 0-1023 a 90-0 int masY = map(y, 512, 1023, 90, 0); int menosY = map(y, 512, 0, 90, 0); int menosX = map(x, 512, 0, 90, 0); int masX = map(x, 512, 1023, 90, 0); // Controlar los servos, se cambiaron los ejes, debido a que en mi caso el josystick está parado //juega un poco con los valoes hasta obtener el movimiento deseado servoMasX.write((y > 562) ? masY : 90); servoMenosX.write((y < 462) ? menosY : 90); servoMasY.write((x > 562) ? masX : 90); servoMenosY.write((x < 462) ? menosX : 90); delay(50); } |
🖌️Diseños

🎬Videos
📑Conclusión
El proyecto de la Plataforma Cuadrúpeda de Cartón ha demostrado ser una excelente convergencia de ingeniería de bajo coste y control de precisión. Al fusionar la simplicidad estructural del cartón con la versatilidad de la placa Arduino y la exactitud de los servomotores, hemos creado un prototipo funcional de robótica cuadrúpeda.
El principal logro del proyecto radica en la implementación exitosa del control de posición a través de una interfaz manual. La traducción de las señales analógicas del joystick (entrada) al control angular (90° a 0°) de los cuatro servomotores (salida) mediante la función map() y la librería Servo.h es la esencia de la programación de actuadores.
Este ejercicio no solo válida los conocimientos en diseño mecánico frugal y electrónica básica, sino que también establece una base crucial para futuros desarrollos robóticos. La limitación del cartón y la necesidad de una fuente de alimentación externa robusta para los servos son lecciones valiosas que preparan al desarrollador para abordar retos más complejos, como la implementación de la cinemática inversa para una marcha real o la adopción de materiales más resistentes. En resumen, este proyecto es un testimonio de que la robótica avanzada comienza con la experimentación creativa y el dominio de los fundamentos de la electrónica.

