unilab.envs.locomotion.go2w.base¶
Functions
|
Convert Go2W owner-level controls into motor actuator torques. |
|
Classes
Asset() |
|
ControlConfig(action_scale: 'float' = 0.25, simulate_action_latency: 'bool' = False, Kp: 'float' = 35.0, Kd: 'float' = 0.5, hip_action_scale: 'float | None' = None, wheel_action_scale: 'float' = 10.0, wheel_Kd: 'float' = 0.5, clip_actions: 'float' = 1.0) |
|
Go2WBaseCfg(scene: unilab.base.scene.SceneCfg | None = None, sim_dt: 'float' = 0.005, max_episode_seconds: Optional[float] = None, ctrl_dt: 'float' = 0.02, render_spacing: float = 1.0, render_offset_mode: str = 'grid', motrix_max_iterations: Optional[int] = None, post_step_forward_sensor: bool = False, control_config: 'ControlConfig' = <factory>, noise_config: 'NoiseConfig' = <factory>, sensor: 'Sensor' = <factory>, asset: 'Asset' = <factory>) |
|
NoiseConfig(level: 'float' = 0.0, scale_joint_angle: 'float' = 0.03, scale_joint_vel: 'float' = 0.5, scale_gyro: 'float' = 0.2, scale_gravity: 'float' = 0.05, scale_linvel: 'float' = 0.1, scale_wheel_vel: 'float' = 0.5) |
- class unilab.envs.locomotion.go2w.base.NoiseConfig[source]¶
Bases:
BaseNoiseConfigNoiseConfig(level: ‘float’ = 0.0, scale_joint_angle: ‘float’ = 0.03, scale_joint_vel: ‘float’ = 0.5, scale_gyro: ‘float’ = 0.2, scale_gravity: ‘float’ = 0.05, scale_linvel: ‘float’ = 0.1, scale_wheel_vel: ‘float’ = 0.5)
- Parameters:
- __init__(level=0.0, scale_joint_angle=0.03, scale_joint_vel=0.5, scale_gyro=0.2, scale_gravity=0.05, scale_linvel=0.1, scale_wheel_vel=0.5)¶
- class unilab.envs.locomotion.go2w.base.ControlConfig[source]¶
Bases:
PdControlConfigControlConfig(action_scale: ‘float’ = 0.25, simulate_action_latency: ‘bool’ = False, Kp: ‘float’ = 35.0, Kd: ‘float’ = 0.5, hip_action_scale: ‘float | None’ = None, wheel_action_scale: ‘float’ = 10.0, wheel_Kd: ‘float’ = 0.5, clip_actions: ‘float’ = 1.0)
- Parameters:
- __init__(action_scale=0.25, simulate_action_latency=False, Kp=35.0, Kd=0.5, hip_action_scale=None, wheel_action_scale=10.0, wheel_Kd=0.5, clip_actions=1.0)¶
- class unilab.envs.locomotion.go2w.base.Asset[source]¶
Bases:
objectAsset()
- base_name = 'base_link'¶
- ground = 'floor'¶
- __init__()¶
- class unilab.envs.locomotion.go2w.base.Go2WBaseCfg[source]¶
Bases:
LocomotionBaseCfgGo2WBaseCfg(scene: unilab.base.scene.SceneCfg | None = None, sim_dt: ‘float’ = 0.005, max_episode_seconds: Optional[float] = None, ctrl_dt: ‘float’ = 0.02, render_spacing: float = 1.0, render_offset_mode: str = ‘grid’, motrix_max_iterations: Optional[int] = None, post_step_forward_sensor: bool = False, control_config: ‘ControlConfig’ = <factory>, noise_config: ‘NoiseConfig’ = <factory>, sensor: ‘Sensor’ = <factory>, asset: ‘Asset’ = <factory>)
- Parameters:
- noise_config: NoiseConfig¶
- control_config: ControlConfig¶
- asset: Asset¶
- sim_dt: float = 0.005¶
- ctrl_dt: float = 0.02¶
- __init__(scene=None, sim_dt=0.005, max_episode_seconds=None, ctrl_dt=0.02, render_spacing=1.0, render_offset_mode='grid', motrix_max_iterations=None, post_step_forward_sensor=False, control_config=<factory>, noise_config=<factory>, sensor=<factory>, asset=<factory>)¶
- Parameters:
- unilab.envs.locomotion.go2w.base.compute_go2w_motor_ctrl(policy_ctrl, joint_pos, joint_vel, leg_kp, leg_kd, wheel_kd, ctrl_lower, ctrl_upper, out)[source]¶
Convert Go2W owner-level controls into motor actuator torques.
Hot path: shapes/dtypes are validated by the owning env at init/reset.
- class unilab.envs.locomotion.go2w.base.Go2WBaseEnv[source]¶
Bases:
LocomotionBaseEnv- Parameters:
cfg (
LocomotionBaseCfg)backend (
SimBackend)num_envs (
int)