🧪 Se publican nuevos tutoriales — del brazo robótico al sensor
Saltar al contenido

10 Referencia: modelo, parámetros y licencias ​

10.1 Archivos de referencia del modelo ​

La simulación usa MuJoCo MJCF (.xml + mallas .stl), compartiendo el diseño del propio hardware:

ArchivoDescripción
hardware/v1/robot_v1.xmlModelo principal (geometría/masa ajustadas al hardware)
hardware/v1/meshes/*.stl6 mallas STL que se ensamblan en 4 grupos impresos (placa/carcasa de la base, soporte del hombro, soporte del brazo superior/soporte del codo, antebrazo)
hardware/v1/meshes/print_mass_model.jsonTabla de masas impresas por pieza (15 % de relleno)

No se incluye ningún URDF; para usar ROS, exporta uno desde el CAD/las mallas de arriba.

10.2 Parámetros del firmware (firmware/sr_support_b_ptk/include/config.h) ​

ParámetroValorSignificado
POLICY_DT / CTRL_PERIOD_US0.02 s / 20000 µsPeriodo de control de 50 Hz
MAX_CMD_RATE0.08 rad/tickLímite de giro de la salida (4 rad/s)
FALL_UP_Z0.30Umbral de up_z de la condición de caída
FALL_W_QUIET0.9 rad/sUmbral de velocidad angular de la condición de caída
FALL_CONFIRM_TICKS25Confirmación de la condición de caída (0.5 s)
EXEC_STEPS_PER_WP20Ticks por punto de paso de referencia
EXEC_RETRACT_RATE0.033 rad/tickVelocidad de retracción
EXEC_DONE_TICKS50Ticks consecutivos de pie para terminar
EXEC_TIMEOUT_MS14000Tiempo de espera por referencia
EXEC_COOLDOWN_TICKS75Enfriamiento tras completar o agotar el tiempo de espera (1.5 s)
EXEC_SWITCH_TICKS15Ticks de confirmación de cambio de postura
EXEC_SWITCH_UP0.60up_z máximo para un cambio
EXEC_SWITCH_W0.8 rad/sVelocidad angular máxima para un cambio
EXEC_MIN_SWITCH_AGE25Tick más temprano para un cambio
EXEC_MAX_SWITCHES5Cambios máximos por ejecución
EXEC_NEUTRAL_MAX120Ticks máximos de retracción al neutro
SERVO_SHOULDER_CENTER_US1681Pulso cero del hombro (valor de centro visual grabado en 2026-11; vuelve a poner a cero según la página 05)
SERVO_CENTER_US1456Pulso cero del codo (ídem)
SERVO_US_PER_RAD636.622000 µs / π
Q_SHOULDER_MIN/MAX−1.85 / +1.82 radLímites de los comandos manuales del hombro
Q_ELBOW_MIN/MAX−0.90 / +0.70 radRango manual (el ejecutor usa ±1.55 mecánicamente)
SERVO_SHOULDER_SIGN/ELBOW_SIGN−1 / −1Dirección de los servos
IMU_YAW901IMU montada con 90° de rotación
MAHONY_KP / ACCEL_TRUST_BAND6.0 / 2.5 m/s²Filtro de actitud: ganancia de corrección del acelerómetro / banda de confianza
WIFI_AP_SSID / WIFI_AP_PASSSR-Support / srsupportPunto de acceso (w lo alterna; activo al arrancar)

10.3 Secuencias de referencia (hombro, codo; rad; con valores idénticos a los de training/b_line/getup_reference_b39.py) ​

PosturaSecuencia
roll_pos[1.75,-0.90] → [-0.25,-0.90] → retract
roll_neg[-1.80,0.70] presión directa a velocidad completa (espera ≤40 ticks) → bombeos de cuña [-1.80,0.35] → [-1.80,0.05] ×2 (cada espera ≤30) → respaldo: [0.35,0.70] → [0.35,1.10] → [-1.80,0.05] (latigazo, espera ≤40) → espera final ≤90 → retraer
pitch_pos[-1.32,1.45] → [-0.25,1.45] → retract
pitch_neg[-1.32,-1.65] → [-0.25,-1.65] → retract

10.4 Estado verificado e inspección de fábrica (2026-11-06) ​

  • Inspección de fábrica: cada unidad acabada recibe: ceros de servo definidos y grabados por unidad (página 05), calibración de cero de giroscopio + acelerómetro (NVS), y una prueba de incorporación en las cuatro direcciones antes de enviarse;
  • Las cuatro direcciones verificadas en el robot real, cada una como incorporación directa (sin volcar por encima), unos 1–6 s; sin violaciones de la envolvente de los servos;
  • Receta final de roll_neg: presión directa a recorrido completo + bombeos de cuña de codo ×2, reintento de latigazo como respaldo (el esquema anterior de volcar por encima + replanificar queda retirado);
  • La cadena de actitud se corrigió con la calibración de sesgo del acelerómetro (véase la página 06, 6.2); las posturas tumbadas ahora coinciden con el robot real;
  • roll_neg sigue sin reproducirse en el modelo de simulación de masa 1× (la masa y la fricción del brazo difieren); es una laguna conocida del modelo: el firmware del hardware se valida sobre el hardware.

10.5 Licencias ​

  • Código de firmware/entrenamiento de la línea B: MIT / Apache-2.0;
  • CAD/STL de la línea B: CERN-OHL-S-2.0 (reciprocidad fuerte: revisa las obligaciones antes de un uso comercial);
  • SelfRisingRobot: sin licencia; este tutorial no contiene nada de su código, puntos de paso ni modelos;
  • Patente CN109693729A/B: realiza una revisión FTO antes de un uso comercial.

← Volver al índice del tutorial