IsaacHumanoid

Inherits from: RosAgent

A ROS-based humanoid robot interface for Isaac Sim.

This class provides an interface to control a humanoid robot in Isaac Sim through ROS. It supports both locomotion and arm control modes.

IsaacHumanoid

IsaacHumanoid(config, control: str)

Initialize an IsaacHumanoid robot instance.

This initializes either a locomotion-controlled or arm-controlled humanoid robot. For arm control, it sets up left and right arms with appropriate ROS topics. For locomotion control, it initializes a single locomotion controller.

Arguments
config (dict), optional

Configuration dictionary containing ROS topics and settings. Defaults to default_isaac_config.

control (str), optional

Control mode - either “locomotion” or “arm”. Defaults to “locomotion”.

To use actuate this class please use the IsaacHumanoid.locomotion or IsaacHumanoid.larm and IsaacHumanoid.rarm attributes. See IsaacLocomotion and IsaacArm for more information.

For arm control you will need to specify the arm you want to use. For example:

humanoid = IsaacHumanoid(config, control="arm")
humanoid.larm.getPosition() # Get the position of the left arm
humanoid.rarm.getPosition() # Get the position of the right arm

humanoid.larm.moveToDeltaPose(Position(0, 0, .1), Orientation(0, 0, 0, 1))
humanoid.rarm.moveToDeltaPose(Position(0, 0, .1), Orientation(0, 0, 0, 1))

getImage (inherited)

IsaacHumanoid.getImage(name: str, image_type: str)

Get image from named image client.

Arguments
name (str), optional

Name of image client

image_type (str), optional

Unused

Returns

Image

Image object

getPosition (inherited)

IsaacHumanoid.getPosition(name: str)

Get position from named pose client.

Arguments
name (str), optional

Name of pose client

Returns

Position | list: Position object or raw position data

This is only applicable to the locomotion controller.

getOrientation (inherited)

IsaacHumanoid.getOrientation(name: str)

Get orientation from named pose client.

Arguments
name (str), optional

Name of pose client

Returns

Orientation

Orientation of agent as a quaternion

This is only applicable to the locomotion controller.

run (inherited)

IsaacHumanoid.run()

Run all ROS clients

Was this page helpful?