Files
lerobot/mujoco_sim_g1/config.yaml
T
2025-11-21 14:13:05 +01:00

424 lines
12 KiB
YAML

GEAR_WBC_CONFIG: "gr00t_wbc/sim2mujoco/resources/robots/g1/g1_gear_wbc.yaml"
# copy from g1_43dof_hist.yaml
ROBOT_TYPE: 'g1_29dof' # Robot name, "go2", "b2", "b2w", "h1", "go2w", "g1"
ROBOT_SCENE: "assets/scene_43dof.xml" # Robot scene with 3-finger dex hands
DOMAIN_ID: 0 # Domain id
# Network Interface, "lo" for simulation and the one with "192.168.123.222" for real robot
INTERFACE: "lo"
SIMULATOR: "mujoco" # "robocasa"
USE_JOYSTICK: 0 # Simulate Unitree WirelessController using a gamepad (0: disable, 1: enable)
JOYSTICK_TYPE: "xbox" # support "xbox" and "switch" gamepad layout
JOYSTICK_DEVICE: 0 # Joystick number
FREE_BASE: False
enable_waist: False # Enable waist joints control (False = band on torso, True = band on pelvis)
PRINT_SCENE_INFORMATION: True # Print link, joint and sensors information of robot
ENABLE_ELASTIC_BAND: True # Virtual spring band, used for lifting h1
SIMULATE_DT: 0.002 # Simulation timestep (500Hz)
ENABLE_ONSCREEN: true # Show visualization window
ENABLE_OFFSCREEN: false # Offscreen rendering for cameras (set to true to enable camera publishing)
IMAGE_DT: 0.033333 # Image publishing rate ~30Hz
MP_START_METHOD: "spawn" # Multiprocessing start method for image subprocess
VIEWER_DT: 0.02 # Viewer update time
REWARD_DT: 0.02
USE_SENSOR: False
USE_HISTORY: True
USE_HISTORY_LOCO: True
USE_HISTORY_MIMIC: True
GAIT_PERIOD: 0.9 # 1.25
MOTOR2JOINT: [0, 1, 2, 3, 4, 5,
6, 7, 8, 9, 10, 11,
12, 13, 14,
15, 16, 17, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28]
JOINT2MOTOR: [0, 1, 2, 3, 4, 5,
6, 7, 8, 9, 10, 11,
12, 13, 14,
15, 16, 17, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28]
UNITREE_LEGGED_CONST:
HIGHLEVEL: 0xEE
LOWLEVEL: 0xFF
TRIGERLEVEL: 0xF0
PosStopF: 2146000000.0
VelStopF: 16000.0
MODE_MACHINE: 5
MODE_PR: 0
JOINT_KP: [
100, 100, 100, 200, 20, 20,
100, 100, 100, 200, 20, 20,
400, 400, 400,
90, 60, 20, 60, 4, 4, 4,
90, 60, 20, 60, 4, 4, 4
]
JOINT_KD: [
2.5, 2.5, 2.5, 5, 0.2, 0.1,
2.5, 2.5, 2.5, 5, 0.2, 0.1,
5.0, 5.0, 5.0,
2.0, 1.0, 0.4, 1.0, 0.2, 0.2, 0.2,
2.0, 1.0, 0.4, 1.0, 0.2, 0.2, 0.2
]
# arm kp
# soft kp, safe, test it first
# 50, 50, 20, 20, 10, 10, 10
# hard kp, use only if policy is safe
# 200, 200, 80, 80, 50, 50, 50,
# MOTOR_KP: [
# 100, 100, 100, 200, 20, 20,
# 100, 100, 100, 200, 20, 20,
# 400, 400, 400,
# 50, 50, 20, 20, 10, 10, 10,
# 50, 50, 20, 20, 10, 10, 10
# ]
MOTOR_KP: [
150, 150, 150, 200, 40, 40,
150, 150, 150, 200, 40, 40,
800, 250, 800,
100, 100, 40, 40, 100, 100, 100,
100, 100, 40, 40, 100, 100, 100
]
MOTOR_KD: [
2, 2, 2, 4, 2, 2,
2, 2, 2, 4, 2, 2,
10, 5, 10,
5, 5, 2, 2, 5, 5, 5,
5, 5, 2, 2, 5, 5, 5
]
# MOTOR_KP: [
# 100, 100, 100, 200, 20, 20,
# 100, 100, 100, 200, 20, 20,
# 400, 400, 400,
# 90, 60, 20, 60, 4, 4, 4,
# 90, 60, 20, 60, 4, 4, 4
# ]
# MOTOR_KD: [
# 2.5, 2.5, 2.5, 5, 0.2, 0.1,
# 2.5, 2.5, 2.5, 5, 0.2, 0.1,
# 5.0, 5.0, 5.0,
# 2.0, 1.0, 0.4, 1.0, 0.2, 0.2, 0.2,
# 2.0, 1.0, 0.4, 1.0, 0.2, 0.2, 0.2
# ]
WeakMotorJointIndex:
left_hip_yaw_joint: 0
left_hip_roll_joint: 1
left_hip_pitch_joint: 2
left_knee_joint: 3
left_ankle_pitch_joint: 4
left_ankle_roll_joint: 5
right_hip_yaw_joint: 6
right_hip_roll_joint: 7
right_hip_pitch_joint: 8
right_knee_joint: 9
right_ankle_pitch_joint: 10
right_ankle_roll_joint: 11
waist_yaw_joint : 12
waist_roll_joint : 13
waist_pitch_joint : 14
left_shoulder_pitch_joint: 15
left_shoulder_roll_joint: 16
left_shoulder_yaw_joint: 17
left_elbow_joint: 18
left_wrist_roll_joint: 19
left_wrist_pitch_joint: 20
left_wrist_yaw_joint: 21
right_shoulder_pitch_joint: 22
right_shoulder_roll_joint: 23
right_shoulder_yaw_joint: 24
right_elbow_joint: 25
right_wrist_roll_joint: 26
right_wrist_pitch_joint: 27
right_wrist_yaw_joint: 28
NUM_MOTORS: 29
NUM_JOINTS: 29
NUM_HAND_MOTORS: 7
NUM_HAND_JOINTS: 7
NUM_UPPER_BODY_JOINTS: 17
DEFAULT_DOF_ANGLES: [
-0.1, # left_hip_pitch_joint
0.0, # left_hip_roll_joint
0.0, # left_hip_yaw_joint
0.3, # left_knee_joint
-0.2, # left_ankle_pitch_joint
0.0, # left_ankle_roll_joint
-0.1, # right_hip_pitch_joint
0.0, # right_hip_roll_joint
0.0, # right_hip_yaw_joint
0.3, # right_knee_joint
-0.2, # right_ankle_pitch_joint
0.0, # right_ankle_roll_joint
0.0, # waist_yaw_joint
0.0, # waist_roll_joint
0.0, # waist_pitch_joint
0.0, # left_shoulder_pitch_joint
0.0, # left_shoulder_roll_joint
0.0, # left_shoulder_yaw_joint
0.0, # left_elbow_joint
0.0, # left_wrist_roll_joint
0.0, # left_wrist_pitch_joint
0.0, # left_wrist_yaw_joint
0.0, # right_shoulder_pitch_joint
0.0, # right_shoulder_roll_joint
0.0, # right_shoulder_yaw_joint
0.0, # right_elbow_joint
0.0, # right_wrist_roll_joint
0.0, # right_wrist_pitch_joint
0.0 # right_wrist_yaw_joint
]
DEFAULT_MOTOR_ANGLES: [
-0.1, # left_hip_pitch_joint
0.0, # left_hip_roll_joint
0.0, # left_hip_yaw_joint
0.3, # left_knee_joint
-0.2, # left_ankle_pitch_joint
0.0, # left_ankle_roll_joint
-0.1, # right_hip_pitch_joint
0.0, # right_hip_roll_joint
0.0, # right_hip_yaw_joint
0.3, # right_knee_joint
-0.2, # right_ankle_pitch_joint
0.0, # right_ankle_roll_joint
0.0, # waist_yaw_joint
0.0, # waist_roll_joint
0.0, # waist_pitch_joint
0.0, # left_shoulder_pitch_joint
0.0, # left_shoulder_roll_joint
0.0, # left_shoulder_yaw_joint
0.0, # left_elbow_joint
0.0, # left_wrist_roll_joint
0.0, # left_wrist_pitch_joint
0.0, # left_wrist_yaw_joint
0.0, # right_shoulder_pitch_joint
0.0, # right_shoulder_roll_joint
0.0, # right_shoulder_yaw_joint
0.0, # right_elbow_joint
0.0, # right_wrist_roll_joint
0.0, # right_wrist_pitch_joint
0.0 # right_wrist_yaw_joint
]
motor_pos_lower_limit_list: [-2.5307, -0.5236, -2.7576, -0.087267, -0.87267, -0.2618,
-2.5307, -2.9671, -2.7576, -0.087267, -0.87267, -0.2618,
-2.618, -0.52, -0.52,
-3.0892, -1.5882, -2.618, -1.0472,
-1.972222054, -1.61443, -1.61443,
-3.0892, -2.2515, -2.618, -1.0472,
-1.972222054, -1.61443, -1.61443]
motor_pos_upper_limit_list: [2.8798, 2.9671, 2.7576, 2.8798, 0.5236, 0.2618,
2.8798, 0.5236, 2.7576, 2.8798, 0.5236, 0.2618,
2.618, 0.52, 0.52,
2.6704, 2.2515, 2.618, 2.0944,
1.972222054, 1.61443, 1.61443,
2.6704, 1.5882, 2.618, 2.0944,
1.972222054, 1.61443, 1.61443]
motor_vel_limit_list: [32.0, 32.0, 32.0, 20.0, 37.0, 37.0,
32.0, 32.0, 32.0, 20.0, 37.0, 37.0,
32.0, 37.0, 37.0,
37.0, 37.0, 37.0, 37.0,
37.0, 22.0, 22.0,
37.0, 37.0, 37.0, 37.0,
37.0, 22.0, 22.0]
motor_effort_limit_list: [88.0, 88.0, 88.0, 139.0, 50.0, 50.0,
88.0, 88.0, 88.0, 139.0, 50.0, 50.0,
88.0, 50.0, 50.0,
25.0, 25.0, 25.0, 25.0,
25.0, 5.0, 5.0,
2.45, 0.7, 0.7, 0.7, 0.7, 0.7, 0.7,
25.0, 25.0, 25.0, 25.0,
25.0, 5.0, 5.0,
2.45, 0.7, 0.7, 0.7, 0.7, 0.7, 0.7]
history_config: {
base_ang_vel: 4,
projected_gravity: 4,
command_lin_vel: 4,
command_ang_vel: 4,
command_base_height: 4,
command_stand: 4,
ref_upper_dof_pos: 4,
dof_pos: 4,
dof_vel: 4,
actions: 4,
# phase_time: 4,
ref_motion_phase: 4,
sin_phase: 4,
cos_phase: 4
}
history_loco_config: {
base_ang_vel: 4,
projected_gravity: 4,
command_lin_vel: 4,
command_ang_vel: 4,
# command_base_height: 4,
command_stand: 4,
ref_upper_dof_pos: 4,
dof_pos: 4,
dof_vel: 4,
actions: 4,
# phase_time: 4,
sin_phase: 4,
cos_phase: 4
}
history_loco_height_config: {
base_ang_vel: 4,
projected_gravity: 4,
command_lin_vel: 4,
command_ang_vel: 4,
command_base_height: 4,
command_stand: 4,
ref_upper_dof_pos: 4,
dof_pos: 4,
dof_vel: 4,
actions: 4,
# phase_time: 4,
sin_phase: 4,
cos_phase: 4
}
history_mimic_config: {
base_ang_vel: 4,
projected_gravity: 4,
dof_pos: 4,
dof_vel: 4,
actions: 4,
ref_motion_phase: 4,
}
obs_dims: {
base_lin_vel: 3,
base_ang_vel: 3,
projected_gravity: 3,
command_lin_vel: 2,
command_ang_vel: 1,
command_stand: 1,
command_base_height: 1,
ref_upper_dof_pos: 17, # upper body actions
dof_pos: 29,
dof_vel: 29,
# actions: 12, # lower body actions
actions: 29, # full body actions
phase_time: 1,
ref_motion_phase: 1, # mimic motion phase
sin_phase: 1,
cos_phase: 1,
}
obs_loco_dims: {
base_lin_vel: 3,
base_ang_vel: 3,
projected_gravity: 3,
command_lin_vel: 2,
command_ang_vel: 1,
command_stand: 1,
command_base_height: 1,
ref_upper_dof_pos: 17, # upper body actions
dof_pos: 29,
dof_vel: 29,
actions: 12, # lower body actions
phase_time: 1,
sin_phase: 1,
cos_phase: 1,
}
obs_mimic_dims: {
base_lin_vel: 3,
base_ang_vel: 3,
projected_gravity: 3,
dof_pos: 29,
dof_vel: 29,
actions: 29, # full body actions
ref_motion_phase: 1, # mimic motion phase
}
obs_scales: {
base_lin_vel: 2.0,
base_ang_vel: 0.25,
projected_gravity: 1.0,
command_lin_vel: 1,
command_ang_vel: 1,
command_stand: 1,
command_base_height: 2, # Yuanhang: it's 2, not 1!
ref_upper_dof_pos: 1.0,
dof_pos: 1.0,
dof_vel: 0.05,
history: 1.0,
history_loco: 1.0,
history_mimic: 1.0,
actions: 1.0,
phase_time: 1.0,
ref_motion_phase: 1.0,
sin_phase: 1.0,
cos_phase: 1.0
}
loco_upper_body_dof_pos: [
0.0, 0.0, 0.0, # waist
0.0, 0.3, 0.0, 1.0, # left shoulder and elbow
0.0, 0.0, 0.0, # left wrist
0.0, -0.3, 0.0, 1.0, # right shoulder and elbow
0.0, 0.0, 0.0 # right wrist
]
robot_dofs: {
"g1_29dof": [1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1,
1, 1, 1,
1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1],
"g1_29dof_anneal_23dof": [1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1,
1, 1, 1,
1, 1, 1, 1, 0, 0, 0,
1, 1, 1, 1, 0, 0, 0],
}
mimic_robot_types: {
"APT_level1": "g1_29dof_anneal_23dof",
}
# 01281657
mimic_models: {
"APT_level1": "20250116_225127-TairanTestbed_G129dofANNEAL23dof_dm_APT_video_APT_level1_MinimalFriction-0.3_RfiTrue_Far0.325_RESUME_LARGENOISE-motion_tracking-g1_29dof_anneal_23dof/exported/model_176500.onnx",
}
start_upper_body_dof_pos: {
"APT_level1":
[0.19964170455932617, 0.07710712403059006, -0.2882401943206787,
0.21672365069389343, 0.15629297494888306, -0.5167576670646667, 0.5782126784324646,
0.0, 0.0, 0.0,
0.25740593671798706, -0.2504104673862457, 0.22500675916671753, 0.5127624273300171,
0.0, 0.0, 0.0],
}
motion_length_s: {
"APT_level1": 7.66,
}