Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Environment Configuration — Robot

Set env.robot to select a robot and its components.

srb ls --live robot lists registered robots and categories; srb ls robot shows cached names. -e accepts an environment or category (_manipulation, _ground, _aerial); choose a compatible robot.

Robot Selection

The simplest way to select a robot is by specifying its name:

srb agent rand -e _manipulation env.robot=ur10
srb agent rand -e _ground env.robot=unitree_go1
srb agent rand -e _aerial env.robot=crazyflie

Selecting a robot uses its own defaults for end effector, payload, and fields, not the task’s defaults. For example, env.robot=kinova_gen3n7 selects its gripper. Use base+component to choose a tool or payload; explicit overrides such as env.robot.end_effector=... still apply. Evaluation replays recorded Hydra overrides, so retain .hydra/overrides.yaml with the run. Combined mobile bases and manipulators retain their own sub-assets.

End Effector for Manipulators

You can attach a specific end effector to a manipulator with the base+end_effector syntax. Both the base manipulator and the end effector must be named:

srb agent rand -e _manipulation env.robot=ur10+shadow_hand

Payload for Mobile Robots

Similarly, you can attach a payload to a mobile robot with the base+payload syntax:

srb agent rand -e _ground env.robot=spot+cargo_bay

Payloads may be static geometry or an ActivePayload articulation. Active payload action terms follow the mobile base terms.

srb agent rand -e terrain_landscaping env.robot=raph_rover+raph_shovel

Its three normalized actions map to rover drive [0:2] (linear limit 0.4 m/s; angular scale radians(60), limited to 1.0 rad/s) and shovel velocity [2:3] (limit 0.04 m/s). These are simulator limits, not verified lab facts; see the training workflow.

Combine Mobile Manipulators

Combine a registered mobile base and manipulator in a compatible environment:

srb agent rand -e _ground_manipulation env.robot.mobile_base=unitree_a1 env.robot.manipulator=unitree_z1

Add a payload to the base or an end effector to the manipulator:

srb agent rand -e _ground_manipulation env.robot.mobile_base=anymal_d+cargo_bay env.robot.manipulator=ur10+shadow_hand

Alternatively, compose a ground mobile manipulator in one env.robot value:

srb agent rand -e _ground_manipulation env.robot=unitree_a1+unitree_z1
srb agent rand -e _ground_manipulation env.robot=husky+kinova_gen3n7+robotiq_hand_e

Change Action Modes

Each robot, active payload, and active tool (end-effector) contributes its selected action mode to the action space of the whole system. You can change the selected mode with action_mode on the robot, mobile base, manipulator, or active tool:

srb agent rand -e _manipulation env.robot.action_mode=joint_pos_rel

Robot selection and action mode overrides compose:

srb agent rand -e _manipulation env.robot=ur10 env.robot.action_mode=joint_pos_rel