2.0 KiB
Go1 Adaptation
The go1 branch adds the RobotLab-Go1-v0 IsaacLab task and a matching
MuJoCo deployment. It uses the complete Unitree Go1 URDF/MuJoCo model.
Interface
- Policy joint order:
FR, FL, RR, RL, with hip, thigh, calf for each leg. - Single-frame observation: 45 values in this order: body angular velocity (3), projected gravity (3), velocity command (3), relative joint position (12), joint velocity (12), previous action (12).
- Actor history: 10 frames, or 450 values.
- Action: 12 normalized joint-position offsets, scaled by
0.25 radand added to the default joint angles. - Policy frequency: 50 Hz (
0.005 sphysics step and decimation 4). - PD gains:
Kp=28,Kd=0.7; torque is limited to33.5 Nm. - Training randomizes actuator delay over 0-4 physics steps (0-20 ms). The MuJoCo config defaults to zero extra delay because its delay setting is in 20 ms policy steps.
Train
Install the editable packages as described in the main README, then run:
cd go2_rl_robotlab
python scripts/rsl_rl/train.py \
--task=RobotLab-Go1-v0 \
--num_envs=4096 \
--max_iterations=5000 \
--headless
Play And Export
play.py exports both policy.pt and policy.onnx into the checkpoint run's
exported/ directory before starting the rollout.
python scripts/rsl_rl/play.py \
--task=RobotLab-Go1-v0 \
--num_envs=64 \
--checkpoint=/absolute/path/to/model_5000.pt
MuJoCo
Place the exported TorchScript file at
deploy/pre_train/go1/policy.pt, or edit policy_path in
deploy/deploy_mujoco/configs/go1.yaml. Then run:
MUJOCO_GL=glfw python deploy/deploy_mujoco/deploy_go1.py
Set xml_path in go1.yaml to select flat.xml, stairs.xml, boxes.xml,
or stairs_and_slope.xml.
Actuator Assumption
The Go1 asset publishes a 33.5 Nm effort limit but does not include measured
torque-speed knee points. The training actuator therefore uses the known effort
limit with delayed PD control instead of reusing the Go2-HV torque-speed curve.