habitat.articulated_agents.ArticulatedAgentBase class

Generic interface defining standard API functions for a robot with a controllable base.

Methods

def _update_motor_settings_cache(self)
Updates the JointMotorSettings cache for cheaper future updates
def _validate_ctrl_input(self, ctrl: typing.List[float], joints: typing.List[int])
Raises an exception if the control input is NaN or does not match the joint dimensions.
Get a string listing all robot link and joint names for debugging purposes.
def get_robot_sim_id(self) -> int
Get the unique id for referencing the robot.
def reconfigure(self) -> None
Instantiates the robot the scene. Loads the URDF, sets initial state of parameters, joints, motors, etc…
def reset(self) -> None
Set joint positions and motors back to the initial configuration.
def update(self) -> None
def update_base(self, rigid_state, target_rigid_state)

Special methods

def __init__(self, params, urdf_path: str, sim: habitat_sim.simulator.Simulator, limit_robo_joints: bool = True, fixed_based: bool = True, maintain_link_order = False, base_type = 'mobile', sim_obj = None, **kwargs)
Constructor

Properties

base_pos get set
Get the robot base ground position
base_rot: float get set
Returns scalar rotation angle of the agent around the Y axis. Within range (-pi,pi) consistency with setter is tested. Outside that range, an equivalent but distinct rotation angle may be returned (e.g. 2pi == -2pi == 0).
base_transformation get
leg_joint_pos get set
Get the current arm joint positions.
leg_motor_pos get set
Get the current target of the leg joint motors.

Method documentation

def habitat.articulated_agents.ArticulatedAgentBase.__init__(self, params, urdf_path: str, sim: habitat_sim.simulator.Simulator, limit_robo_joints: bool = True, fixed_based: bool = True, maintain_link_order = False, base_type = 'mobile', sim_obj = None, **kwargs)

Constructor

Parameters
params The parameter of the base articulated agent.
urdf_path The path to the articulated agent’s URDF file.
sim The simulator.
limit_robo_joints If true, joint limits of articulated agent are always enforced.
fixed_based
maintain_link_order Whether to to preserve the order of links parsed from URDF files as link indices. Needed for compatibility with PyBullet.
base_type
sim_obj Pointer to the simulated object
kwargs