mdp
Modules:
| Name | Description |
|---|---|
actions |
|
Classes:
| Name | Description |
|---|---|
DifferentialDriveController |
PX4-style position/heading cascade with differential speed allocation. |
DifferentialDriveActionMapper |
Map normalized ground actions into differential controller targets. |
DifferentialDriveMappingConfig |
Policy-facing scaling for differential-drive controller modes. |
DifferentialDriveControlAction |
Map selectable ground-control actions to drive-joint velocity targets. |
DifferentialDriveControlActionCfg |
Configuration for selectable differential-drive control. |
Attributes:
| Name | Type | Description |
|---|---|---|
ACTION_KEY_ORDER |
Stable policy-action field order derived from the shared controller schema. |
ACTION_KEY_ORDER
module-attribute
ACTION_KEY_ORDER = tuple(ControllerState.__annotations__)
Stable policy-action field order derived from the shared controller schema.
Only fields present in the active control mask consume action slices.
DifferentialDriveController
DifferentialDriveController(params: VehicleParams, control_mask: dict | None = None, gains: dict | None = None, limits: dict | None = None, num_envs: int = 1, device=None, *, backend: BackendName | None = None, xp: ModuleType | None = None)
Bases: ControllerBase
PX4-style position/heading cascade with differential speed allocation.
The output is [left, right] drive-shaft angular velocity in rad/s. The
controller is independent of wheel count: a platform adapter commands one
physical drive joint per side, while backend mechanical constraints
synchronize any follower road wheels or wheel shells.
Initialize the batched differential-drive controller.
Methods:
| Name | Description |
|---|---|
randomize |
Randomize gains and limits for selected environments. |
reset |
Reset all PID state for selected environments. |
update |
Compute left/right drive-shaft angular-velocity targets in rad/s. |
Attributes:
| Name | Type | Description |
|---|---|---|
params |
VehicleParams
|
Vehicle parameters for the controller. |
params
instance-attribute
params: VehicleParams = params
Vehicle parameters for the controller.
randomize
randomize(env_ids=None, gains: dict[str, Any] | None = None, limits: dict[str, Any] | None = None)
Randomize gains and limits for selected environments.
reset
reset(env_ids=None)
Reset all PID state for selected environments.
update
update(target: ControllerTarget, state: ControllerState) -> ArrayLike
Compute left/right drive-shaft angular-velocity targets in rad/s.
DifferentialDriveActionMapper
DifferentialDriveActionMapper(control_mode: str, params: VehicleParams, mapping: DifferentialDriveMappingConfig | None = None, control_mask: dict | None = None, num_envs: int = 1, device=None, *, backend: BackendName | None = None, xp: ModuleType | None = None)
Map normalized ground actions into differential controller targets.
Initialize the ground mapper and stable action-field indices.
Methods:
| Name | Description |
|---|---|
decode_action |
Decode a policy action into side speed or a controller target. |
map_action |
Resolve an action into left/right output-shaft speed targets. |
Attributes:
| Name | Type | Description |
|---|---|---|
requires_controller |
bool
|
Whether this mode passes through the differential controller. |
requires_controller
property
requires_controller: bool
Whether this mode passes through the differential controller.
decode_action
decode_action(action: ArrayLike, *, state: ControllerState | None = None) -> DifferentialDriveMapping
Decode a policy action into side speed or a controller target.
map_action
map_action(action: ArrayLike, *, state: ControllerState | None = None, controller: ControllerBase | None = None) -> DifferentialDriveMapping
Resolve an action into left/right output-shaft speed targets.
DifferentialDriveMappingConfig
dataclass
DifferentialDriveMappingConfig(forward_speed_range: float | None = None, yaw_rate_range: float | None = None, heading_range: float = pi, side_speed_range: float | None = None)
Policy-facing scaling for differential-drive controller modes.
Methods:
| Name | Description |
|---|---|
from_params |
Build mapping ranges from track or wheel platform parameters. |
resolve |
Resolve explicit overrides against platform-derived defaults. |
from_params
classmethod
from_params(params: VehicleParams) -> DifferentialDriveMappingConfig
Build mapping ranges from track or wheel platform parameters.
resolve
resolve(params: VehicleParams) -> DifferentialDriveMappingConfig
Resolve explicit overrides against platform-derived defaults.
DifferentialDriveControlAction
DifferentialDriveControlAction(cfg: DifferentialDriveControlActionCfg, env: ManagerBasedRLEnv)
Bases: ActionTerm
Map selectable ground-control actions to drive-joint velocity targets.
Attributes:
| Name | Type | Description |
|---|---|---|
IO_descriptor |
GenericActionIODescriptor
|
Describe policy channels for the selected ground-control mode. |
IO_descriptor
property
IO_descriptor: GenericActionIODescriptor
Describe policy channels for the selected ground-control mode.
DifferentialDriveControlActionCfg
Bases: ActionTermCfg
Configuration for selectable differential-drive control.