use official unitree motor as default; disable randomized action delay env; update readme.

This commit is contained in:
wertyuilife
2026-05-11 12:26:39 +08:00
parent 928d0fb856
commit 2462c854f7
3 changed files with 10 additions and 12 deletions

View File

@@ -180,17 +180,15 @@ xml_path: "{ROOT_DIR}/resources/go2/your-custom-scene.xml"
## Differences from `go2_rl_gym`
- Different tracking reward formulation (fixed sigma vs. dynamic sigma)
- Different rewards:
- Motor:
- use official unitree motor model instead of simple PD controller
- Rewards:
- different tracking reward form (fixed sigma vs. dynamic sigma)
- lower joint_acc_l2 weight in Lab due to physics-step level implementation and sensitivity to outliers
- extra joint_pos_penalty_l1 reward in Lab due to better performance
- Lack domain_rand: randomize_motor_strength
---
## TODO
- Try replacing ActionManager-level delay with `DelayedPDActuatorCfg` or `UnitreeActuatorCfg_Go2HV`, and make sure the randomization of motor parameters works correctly.
- Domain randomization:
- no randomized action delay, use motor-level delay instead
- no motor strength randomization due to implementation constraints in Lab.
---

View File

@@ -19,8 +19,8 @@ from isaaclab_tasks.utils import import_packages
##
gym.register(
id="RobotLab-Go2-v0",
# entry_point="robot_lab.tasks.go2.env.go2_env:Go2Env",
entry_point="robot_lab.tasks.go2.env.go2_env:ActionDelayGo2Env",
entry_point="robot_lab.tasks.go2.env.go2_env:Go2Env",
# entry_point="robot_lab.tasks.go2.env.go2_env:ActionDelayGo2Env", # using motor-level delay, so disabled env-level delay
disable_env_checker=True,
kwargs={
"env_cfg_entry_point": f"{__name__}.env_cfg:Go2EnvCfg",

View File

@@ -60,7 +60,7 @@ class Go2SceneCfg(InteractiveSceneCfg):
debug_vis=False
)
robot: ArticulationCfg = GO2_CFG_ROBOTLAB.replace(prim_path="{ENV_REGEX_NS}/Robot")
robot: ArticulationCfg = GO2_CFG_UNITREE.replace(prim_path="{ENV_REGEX_NS}/Robot")
height_scanner = RayCasterCfg(
prim_path="{ENV_REGEX_NS}/Robot/base",