Guía de Desarrollo del Robot Bípedo con Ruedas Gigante StackForce
Esta guía está diseñada para desarrolladores profesionales e investigadores, proporcionando una solución completa desde la configuración básica hasta el desarrollo de aplicaciones avanzadas. Si eres principiante, recomendamos comenzar con la versión Mini.
📋 Tabla de Contenidos
- Descripción del Producto
- Lista de Materiales BOM
- Características Principales
- Inicio Rápido
- Guía de Operación del Control Remoto
- Guía de Depuración del Sistema
- Ensamblaje de Hardware
Descripción del Producto
Posicionamiento del Producto
El Robot Bípedo con Ruedas Gigante StackForce es un sistema de robot con patas y ruedas de grado profesional construido sobre la plataforma de desarrollo de robots ligeros StackForce. Comparado con la versión Mini, la versión completa tiene mejoras significativas en configuración de hardware, funcionalidad de software y capacidades de expansión, específicamente diseñado para desarrollo profesional, investigación académica y aplicaciones comerciales.
Arquitectura Técnica Principal
Sistema de Control Colaborativo de Doble Chip
- Chip de Control Principal S1: Responsable del control de motores, ejecución de algoritmos FOC y control de movimiento
- Chip Coprocesador S3: Responsable del control de servos, fusión de sensores y comunicación inalámbrica
Modelo Cinemático Omnidireccional
- Algoritmo de cálculo de actitud basado en cuaterniones
- Solución de cinemática inversa en tiempo real
Algoritmo de Balance Inteligente
- Control PID adaptativo
- Ajuste dinámico del centro de gravedad
- Estabilización adaptativa para terrenos complejos
Lista de Materiales BOM
Lista de Materiales de la Estructura de Pata-Rueda Grande
| Nombre del Artículo | Cantidad | Notas |
|---|---|---|
| Componentes Electrónicos | ||
| Placa de Control Principal StackForce | 1 | |
| Placa de Alta Corriente A StackForce | 1 | |
| Placa de Alta Corriente B StackForce | 1 | |
| Placa de Servo StackForce | 1 | |
| Placa CAN StackForce | 1 | |
| Placa de Expansión IO StackForce | 1 | |
| Placa Hall StackForce | 1 | |
| Partes Estructurales de Fibra de Carbono | ||
| Panel Lateral | 2 | 5mm de espesor |
| Marco Base del Panel Lateral | 2 | 3mm de espesor |
| Guía Frontal | 4 | 5mm de espesor |
| Deflector | 2 | 3mm de espesor |
| Partes Impresas en 3D PLA | ||
| Pata Superior | 4 | |
| Pata Inferior | 4 | |
| Panel Frontal/Trasero | 4 | |
| Conector del Panel Frontal/Trasero | 4 | |
| Conector del Deflector | 4 | |
| Base de Control Principal | 1 | |
| Cubierta del Motor | 4 | |
| Placa de Cubierta V1 | 2 | |
| Placa de Cubierta V2 | 2 | |
| Compartimento de Batería | 1 | |
| Cubierta de Batería | 1 | |
| Partes Mecanizadas CNC | ||
| Conector de Pata 30 | 2 | |
| Conector de Pata 40 | 2 | |
| Perfil de Aluminio | ||
| 4030100 1mm de espesor | 4 | Requiere perforación |
| 6020320mm 1mm de espesor | 2 | Requiere perforación |
| Sujetadores | ||
| M2*10 | 1 | Cabeza redonda negra |
| M3*8 | 4 | Cabeza redonda |
| M3*8 | 32 | Negro, hexagonal |
| M3*10 | 12 | Negro, hexagonal |
| M3*14 | 16 | Negro, hexagonal |
| M3*20 | 12 | Negro, hexagonal |
| M3*25 | 24 | Negro, hexagonal |
| M3*40 | 16 | Negro, hexagonal |
| M3*45 | 8 | Negro, hexagonal |
| M3*50 | 8 | Negro, hexagonal |
| M3*50 | 8 | Negro, cabeza plana |
| M4*30 | 44 | Negro, hexagonal |
| M4*30 | 2 | Cabeza redonda negra |
| Pilar de Cobre | 22 | M3*8+4 |
| Tornillo de Fijación | 4 | 10M830 |
| Tuerca M3 | 10 | Negra |
| Tuerca de Seguridad M3 | 54 | Negra |
| Tuerca de Seguridad M4 | 20 | Negra |
| Tuerca de Seguridad M6 | 4 | |
| Tuerca de Seguridad M8 | 4 | |
| Rodamiento de Rosca Externa | 4 | 9C2L15M6 |
| Rodamiento F6000ZZ | 8 | 10268 |
| Motores | ||
| Motor de Cubo 5.5 pulgadas 24v | 2 | |
| GIM6010-8-Versión Estándar | 4 |
Características Principales
1. 🚀 Plataforma de Hardware de Alto Rendimiento
Sistema de Control Principal
- Arquitectura de Doble Chip: Procesamiento colaborativo S1 + S3
- Rendimiento en Tiempo Real: Tiempo de respuesta a nivel de microsegundos
- Interfaces de Expansión: Interfaces ricas I2C, SPI, PWM
Sistema de Control de Movimiento
- Control Vectorial FOC: Control preciso de torque
2. 🧠 Sistema de Percepción Inteligente
Configuración de Sensores
- IMU de Alta Precisión: Fusión de sensores de 9 ejes
- Codificador Magnético: Retroalimentación de posición de precisión de 14 bits
3. 🌐 Capacidades de Comunicación Potentes
Comunicación Inalámbrica
- WiFi 6: Transmisión de datos de alta velocidad
- Bluetooth 5.2: Conexión de bajo consumo
- Protocolo Personalizado: Pila de protocolos de comunicación eficiente para conexión de control remoto
Interfaces Cableadas
- USB Type-C: Depuración serial
- Bus CAN: Accionamiento de motores
4. 🔧 Soporte de Desarrollo Flexible
Cadena de Herramientas de Desarrollo
- PlatformIO: Entorno de desarrollo embebido profesional
- ROS/ROS2: Compatibilidad con Sistema Operativo de Robots
Ecosistema de Código Abierto
- Completamente de Código Abierto: El código de control es de código abierto
- Diseño Modular: Facilita la expansión de características
Inicio Rápido
Requisitos del Sistema
Requisitos de Hardware
- Kit de Robot StackForce Versión Completa
- Computadora con Ubuntu 20.04+ o Windows 10+ instalado
- Al menos 8GB de RAM, 100GB de espacio de almacenamiento disponible
Requisitos de Software
- Visual Studio Code
- Extensión PlatformIO IDE
Guía de Operación del Control Remoto
1. Cableado del Receptor
El diagrama a continuación muestra la secuencia de cableado de salida del receptor; solo se necesitan los siguientes tres cables: CH1/PPM, GND, VCC.
El receptor emite en orden: CH1/PPM, GND, VCC
La placa de expansión tiene 40 pines, con GND y 3V3 en la fila del medio, como se muestra en el diagrama a continuación.

2. Emparejamiento de Frecuencia del Receptor y Control Remoto
Antes del emparejamiento de frecuencias, primero apaga el control remoto, luego enciende y apaga el receptor tres veces en 10 segundos para entrar en modo de emparejamiento. La luz indicadora del receptor se encenderá y se apagará después de un segundo.

Luego voltea el interruptor de habilitación del control remoto hacia abajo para habilitar la transmisión de señal, voltea el joystick izquierdo del control remoto hacia abajo a la posición más baja, y luego enciende el control remoto. El emparejamiento de frecuencia es exitoso. Después del emparejamiento exitoso de frecuencia, la luz indicadora del receptor se apagará.
3. Instrucciones de Uso Básico del Control Remoto

Funciones del Joystick y Interruptores
| Controlador | Función | Descripción |
|---|---|---|
| Joystick de Habilitación | Si el control remoto envía señal | Debe voltearse antes de controlar el robot |
| Joystick Izquierdo (arriba/abajo) | Controlar altura del robot | Subir arriba, bajar abajo |
| Joystick Izquierdo (izquierda/derecha) | Controlar altura de ambos lados de las patas del robot | Necesita habilitar función de balanceo de hombros |
| Joystick Derecho (arriba/abajo) | Controlar movimiento adelante/atrás del robot | Arriba para avanzar, abajo para retroceder |
| Joystick Derecho (izquierda/derecha) | Controlar giro izquierda/derecha del robot | Girar izquierda, girar derecha |
Uso del Joystick Izquierdo con Perilla Izquierda
- Cuando la perilla izquierda se gira en sentido horario hacia arriba: Voltea el joystick izquierdo hacia abajo para habilitar la función de balanceo de hombros; voltea hacia arriba para deshabilitar
- Cuando la perilla izquierda se gira en sentido antihorario hacia abajo: Voltea hacia abajo para hacer que el robot salte, voltea hacia arriba para deshabilitar el salto

Joystick Derecho y Perilla Derecha
-
El joystick derecho tiene tres posiciones:
- Posición superior: Deshabilitar motor de cubo
- Posición media: Habilitar motor de cubo
- Posición inferior: Activar mecanismo de auto-estabilización
-
Perilla derecha: Ajustar desviación de balance
4. Pasos de Operación de Encendido del Robot
Proceso de Operación Detallado
-
Preparación del Control Remoto
- Voltea el joystick izquierdo del control remoto a la posición más baja, luego enciende el control remoto
- Asegúrate de que las patas del robot estén suspendidas y paralelas al suelo
- Las patas del robot deben colgar naturalmente, asegurando una rotación suave de las ruedas para calibración
-
Encendido del Robot
- Enciende el interruptor de alimentación del robot
- Espera a que se complete la calibración del motor de cubo
-
Reinicio de la Placa de Control Principal
- Voltea el joystick izquierdo completamente hacia arriba para reiniciar el chip S3 en la placa de control principal
- Espera a que se complete la calibración
-
Retracción de Patas
- Voltea el joystick izquierdo completamente hacia abajo para retraer las patas del robot
- Coloca el robot en el suelo
-
Activación del Motor de Cubo
- Voltea el joystick derecho a la posición media para iniciar el motor de cubo
- Si el robot no puede mantener el equilibrio, ajusta finamente la perilla derecha en el control remoto hasta que el robot mantenga el equilibrio
Recordatorios Importantes:
- No sobre-descargar la batería del control remoto
- Puedes usar un multímetro para medir el voltaje de la batería
- El rango normal de descarga es generalmente 25-21V
- Si el voltaje cae por debajo de 21V, por favor carga a tiempo
- Si no entiendes los pasos anteriores, puedes contactar al personal técnico para ver el video de operación de encendido del robot!
Guía de Depuración del Sistema
Esta sección usa el número ID de la placa del motor de articulación como etiqueta para la explicación. Por favor conecta estrictamente según el diagrama de cableado.
1. Guía de Cableado
Diagrama de Cableado - Cablea estrictamente según el diagrama para asegurar que cada conexión sea correcta

1. Cableado del Motor Hub
Cableado de la línea trifásica del motor hub y la línea trifásica Hall:
- Secuencia de soldadura del cable trifásico del motor hub (de izquierda a derecha): Verde, Amarillo, Azul
- Secuencia del cable del encoder (de izquierda a derecha): Amarillo, Verde, Azul, Negro, Rojo
Diagrama de Cableado Detallado:
![]() Figura 1: Cableado de la línea trifásica del motor | ![]() Figura 2: Detalles del cableado del encoder |
Asignación del cableado de los motores hub izquierdo y derecho:
- Motor hub izquierdo:
- Línea trifásica → Placa de Alta Corriente B
- Línea del encoder Hall → Puerto M0 de la Placa Hall
Esquema detallado de cableado de las ruedas izquierda y derecha:
![]() Esquema de cableado del motor hub izquierdo | ![]() Esquema de cableado del motor hub derecho |
2. Flasheo del Firmware S1
Preparación Previa al Flasheo
Recordatorio Importante - La dirección de inserción del cable USB es crucial, una inserción incorrecta puede causar daños al dispositivo
- Inserta la cabeza tipo-c del cable USB con el lado de la costura hacia abajo en la interfaz tipo-c de la placa de control principal
- Verifica la luz indicadora de la placa de control principal:
- Si la placa de control principal se ilumina en amarillo → Normal, puede flashear directamente
- Si la placa de control principal se ilumina en verde → Presiona el botón blanco de auto-bloqueo al lado para cambiar a luz amarilla

⚠️ Nota la dirección de inserción del cable USB
Pasos de Flasheo
Paso 1: Abrir la herramienta de flasheo
- Haz doble clic para abrir la herramienta
flash_download_tool_3.9.2.exe - Después de que se abra la herramienta, aparecerá un diálogo, selecciona ESP32

Paso 2: Seleccionar archivo de firmware
- Haz clic en los tres puntos (icono 📁) en la primera fila
- En la carpeta emergente, selecciona el archivo
target.bin

Paso 3: Configurar parámetros de flasheo
Lista de Verificación de Configuración de Parámetros - Por favor configura según los siguientes parámetros para asegurar un flasheo exitoso
Configura los siguientes parámetros:
- ✅ Seleccionar ruta del archivo (se muestra automáticamente)
- ✅ Marcar selección
- ✅ Dirección de escritura:
0x00 - ✅ Frecuencia de reloj:
80MHz - ✅ Modo flash:
QIO - ✅ Selección de puerto serie: Ver puerto correspondiente CH340 a través del Administrador de Dispositivos
- ✅ Velocidad de baudios:
921600
![]() 📋 Configuración de parámetros paso 1 | ![]() 📋 Configuración de parámetros paso 2 | ![]() 📋 Configuración de parámetros paso 3 |
Paso 4: Verificar resultados del flasheo Después del flasheo exitoso:
- Ensambla la placa y conecta los cables
- Abre el asistente serie (VOFA) y selecciona el puerto correspondiente
- Enciende el robot:
- Primero enciende el control remoto
- Mueve el joystick izquierdo del control remoto hacia arriba
- Mueve la palanca superior derecha hacia arriba (posición L)
- Presiona el botón de reset del chip S1 (posición marcada con cuadro rojo)
Pasos de Verificación - Por favor verifica según los siguientes pasos después de completar el flasheo
![]() ✅ Posición del botón de reset del chip S1 | ![]() 📊 Interfaz del asistente de depuración serie |
Si la información de impresión serie es como se muestra en la figura a continuación, significa que el cableado del motor hub es correcto y el firmware S1 se flasheó exitosamente.

🎉 ¡Flasheo exitoso! Ver este mensaje indica que todo está normal
3. Verificación de la Resistencia Terminal
Números ID de las Placas Controladoras de Motores de Articulación
Las placas controladoras de motores de articulación tienen firmware flasheado antes del envío y están etiquetadas con etiquetas que son los números de ID CAN:
| Posición de la Articulación | Número ID CAN |
|---|---|
| Placa Controladora del Motor de Articulación Frontal Izquierda | 0x04 |
| Placa Controladora del Motor de Articulación Frontal Derecha | 0x03 |
| Placa Controladora del Motor de Articulación Trasera Izquierda | 0x02 |
| Placa Controladora del Motor de Articulación Trasera Derecha | 0x01 |
Conexión y Configuración de Resistencia Terminal
-
Usar conexión de cable XT30 (2+2):
- Conectar las cuatro placas controladoras de motores de articulación en serie
- Solo necesitas abrir la resistencia terminal de una de las placas controladoras de motor en el cableado
- Las otras tres no necesitan abrir la resistencia terminal
-
Verificación de Resistencia Terminal de la Placa CAN:
- Verificar si la resistencia terminal en la placa CAN está abierta
- Usar un multímetro en modo resistencia para medir la resistencia de los terminales H y L de la placa CAN
- La resistencia normal debería ser alrededor de 60Ω
-
Solución de Problemas:
- Si la resistencia es incorrecta, verificar si los interruptores de resistencia terminal en la parte posterior de las otras tres placas controladoras de motores de articulación están cerrados
- Asegurar que solo una resistencia terminal esté en estado abierto
4. Calibración de la Posición Cero
Paso 1: Modificar Configuraciones del Código
En el archivo can.cpp:
- Desplázate hacia abajo para encontrar la función
CAN_control()

📝 Ubicación clave del código en can.cpp
En el archivo main.cpp:

📝 Ubicación clave del código en main.cpp
Paso 2: Preparación del Hardware y Flasheo
-
Preparación del Robot:
- Primero deja que las patas de los motores de articulación cuelguen naturalmente hacia abajo verticalmente
- Inserta el cable USB en la placa de control principal (nota que el lado de la interfaz tipo-c con la costura está hacia abajo, el lado sin costura está hacia arriba)
- Después de la inserción, el puerto serie S3 de la placa de control principal debería encender luz verde
- Si se enciende en amarillo, presiona el botón blanco en la placa de control principal para cambiar al chip S3
-
Flasheo del Programa:
- Flashea el programa modificado

🔧 Estado de preparación del hardware completado
-
Prueba de Encendido:
- Abre el asistente serie después de flashear el programa
- Enciende el robot (mueve la palanca superior derecha del control remoto hacia arriba (L))
- Reinicia el chip S3
- Observa que los ángulos iniciales de los motores de articulación impresos por el puerto serie están todos cerca de 0
-
Verificar Datos de Ángulo:
- Agita uno de los brazos grandes del robot
- Qué datos cambian corresponde a los datos de ángulo de esa posición del brazo grande

📊 Salida serie - verificación de datos de ángulo
Paso 3: Completar Configuraciones de Posición Cero
En el archivo main.cpp:

✅ Configuración de posición cero en main.cpp completada
En el archivo can.cpp:
- Después de comentar
posInit(), necesitas descomentar el envío de comandos CAN en la funciónCAN_Control()en el archivo can.cpp - Comentar la impresión del ángulo eléctrico del motor de articulación

✅ Configuración final de can.cpp completada
Paso 4: Ajuste Final
- Volver a flashear el programa al chip S3
- Prueba de Control:
- Encender el robot
- Controlar el joystick de altura de la pata
- Observar si los cambios de altura de la pata siguen el control del joystick izquierdo
- Ajuste de Balance de Altura:
- Colocar el robot en el suelo
- Retraer las patas del robot al mínimo
- Observar si las alturas en ambos lados del plano del robot son consistentes
- Si no son consistentes, ajustar los valores
leftYyrightYen el archivo robot.cpp
Diagrama de Ajuste de Balance de Altura:
![]() ⚖️ Diagrama de ajuste de altura - antes del ajuste | ![]() ⚖️ Diagrama de ajuste de altura - después del ajuste |
5. Depuración de Valores de Parámetros PID
Preparación para la Depuración
Interfaz de Depuración de Parámetros PID:
![]() 🔧 Pasos de depuración PID - comentarios de función | ![]() 🔧 Pasos de depuración PID - impresión de parámetros |
Pasos de Depuración
Depurar parámetros PID en tres valores de altura:
| Valor de Altura | Posición Correspondiente | Llenar Parámetros |
|---|---|---|
| 0 | Punto más bajo | pid0 |
| 100 | Punto medio | pid1 |
| 200 | Punto más alto | pid2 |
Cada parámetro pid incluye:
- Bucle de velocidad Kp
- Bucle vertical Kp
- Bucle vertical Kd
- Eje X del robot Kp
Proceso de Depuración
-
Depurar cada altura individualmente:
- Depurar los valores de parámetros PID para tres valores de altura diferentes por separado
- Asegurar que el robot pueda mantener el equilibrio en cada altura
-
Llenar parámetros:
- Llenar los parámetros PID depurados de los tres valores de altura en la función de ajuste lineal PID en orden
- Llenar los valores de parámetros PID del punto más bajo en pid0
- Llenar los valores de parámetros PID del punto medio en pid1
- Llenar los valores de parámetros PID del punto más alto en pid2
-
Verificación final:
- Después de completar la depuración, descomentar la función de ajuste lineal PID
- Flashear el programa en el programa S3
- Encender el robot según los pasos de encendido del robot
- Verificar en tierra que los parámetros PID cumplan con los requisitos de equilibrio de movimiento y operación del robot
Si necesitas consultar videos de operación, puedes contactar al personal técnico en el grupo para obtener el video de operación de encendido del robot!
Ensamblaje de Hardware
Guía de Ensamblaje Detallada
Documentos y Videos de Ensamblaje
📄 Documentos de Ensamblaje
- 📗 Manual de Ensamblaje Detallado (Versión en Inglés)
- 📘 Manual de Ensamblaje Detallado (Versión en Chino)
- 📋 Lista de Materiales BOM (Versión en Chino)
- 📋 Lista de Materiales BOM (Versión en Inglés)
🔧 Herramientas de Desarrollo
- ⚙️ Tutorial de Configuración del Entorno VSCode + PIO
- 📦 Kit de Herramientas MingW64
- 🔌 Guía de Instalación del Driver CH340
- 💾 Paquete del Driver CH340
💻 Firmware y Programas
- ⚡ Herramienta de Flasheo de Firmware S1
- 🔧 Programa de Controlador Más Reciente
- 🔧 Programa de Depuración de Articulaciones
- 🖼️ Capturas de Pantalla de Depuración del Programa
📚 Documentación Técnica
- 🔩 Descripción del Control del Motor de Articulación
- 📦 Paquete de Documentación del Motor de Articulación
🗂️ Modelos 3D y Esquemas
- 📐 Modelo 3D del Robot (Formato STP)
- 🔌 Esquema de la Placa de Control Principal
- 🔌 Esquema de la Placa de Expansión CAN/485
- 🔌 Esquema del Módulo IMU del Servo
🎥 Tutoriales en Video
Pasos de Ensamblaje Detallados
Fase 1: Construcción del Marco Mecánico
- Ensamblar estructura base
- Instalar componentes de rueda-pata
- Conectar marco del cuerpo principal
Fase 2: Integración del Sistema Electrónico
- Instalar sistema de control principal (placas S1/S3)
- Configurar módulos de sensores
- Configurar interfaces de comunicación
Fase 3: Depuración del Sistema
- Ejecutar autocomprobación de hardware
- Verificar funcionalidad del sistema
Conclusión
El Robot Bípedo con Ruedas Gigante StackForce representa el último nivel de desarrollo de la tecnología de robots con ruedas y patas. Estamos comprometidos a proporcionar a los desarrolladores las herramientas más potentes y el soporte más completo para avanzar juntos en el desarrollo de la tecnología robótica.
Ya seas estudiante, investigador o ingeniero, StackForce puede proporcionarte una plataforma innovadora con posibilidades ilimitadas. ¡Esperamos ver las aplicaciones increíbles que crees!
Soporte Técnico y Discusión de Productos
¡Gracias por elegir nuestros productos! Estamos aquí para brindarte diferentes tipos de soporte para asegurar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para satisfacer diferentes preferencias y necesidades.












