refactor: merge motor sysid into unified sysid module
Unified the two separate sysid codepaths (motor-only and full-system) into a single module that optimizes all 28 parameters jointly: - 13 motor params (asymmetric gear, damping, friction, deadzone, Stribeck boost, action bias, filter tau, armature, ctrl_limit) - 15 pendulum/arm params (mass, CoM, inertia, joint dynamics) Key changes: - Added stribeck_friction_boost, stribeck_vel, action_bias to ActuatorConfig (robot.py) and MJX runner - Created shared src/sysid/preprocess.py (SG velocity recomputation) - Rewrote src/sysid/rollout.py with unified MOTOR_PARAMS + PENDULUM_PARAMS spec and PARAM_SETS dict for flexible subset optimization - Updated optimize.py, export.py, visualize.py to use unified params (removed all LOCKED_MOTOR_PARAMS references) - Removed src/sysid/motor/ module and scripts/motor_sysid.py Net: -1383 lines, zero code duplication between motor and full-system sysid.
This commit is contained in:
@@ -2,3 +2,12 @@ num_envs: 64
|
||||
device: auto # auto = cuda if available, else cpu
|
||||
dt: 0.002
|
||||
substeps: 10
|
||||
|
||||
# ── Sim2real: domain randomization ───────────────────────────────
|
||||
domain_rand:
|
||||
mass_frac: 0.15 # ±15% body mass randomization
|
||||
friction_frac: 0.3 # ±30% joint friction
|
||||
damping_frac: 0.3 # ±30% joint damping
|
||||
armature_frac: 0.2 # ±20% reflected rotor inertia
|
||||
gear_frac: 0.15 # ±15% actuator gear ratio
|
||||
com_offset: 0.005 # ±5mm center-of-mass shift
|
||||
|
||||
Reference in New Issue
Block a user