robots_genesis

Classes for robots using simulation in Genesis.

class robotblockset.genesis.robots_genesis.robot_genesis(scene: genesis.Scene = None, robot_entity: genesis.repr_base.RBC = None, robot_name: str = '', **kwargs: Any)[source]

Bases: robot

Create a robot interface backend by a Genesis scene.

__init__(scene: genesis.Scene = None, robot_entity: genesis.repr_base.RBC = None, robot_name: str = '', **kwargs: Any) None[source]

Create a robot interface backend by a Genesis scene.

Init() None[source]

Initializes the robot by setting up the object, state, current target, time, and logging a message.

This method calls the following functions to initialize the robot: 1. InitObject() - Initializes the command and actual states with default values. 2. GetState() - Retrieves the current state of the robot. 3. ResetCurrentTarget() - Resets the current target position. 4. ResetTime() - Resets the robot’s internal time.

Returns:

This method does not return any value. It modifies the robot’s internal state and logs a message.

Return type:

None

simtime() float[source]

Returns the current simulation timefrom Genesis simulator.

Returns:

The current simulation time in seconds since an arbitrary point (see ResetTime).

Return type:

float

GetState() None[source]

Update robot state from Genesis data buffers.

Restart(qpos: ndarray | List[float] | List[int] | Tuple[float, ...] | Tuple[int, ...] | None = None, u: ndarray | List[float] | List[int] | Tuple[float, ...] | Tuple[int, ...] | None = None, reset: bool = True, keyframe: int | None = None) None[source]

Restart the simulation.

Reset the simulation and optionally set joint positions/inputs.

GoTo_q(q: ndarray, qdot: ndarray | None = None, trq: ndarray | None = None, wait: float | None = None, **kwargs: Any) int[source]

Update joint positions and wait

This method sets the commanded joint positions (q), velocities (qdot), and torques (trq), then sends them to the robot and waits for the specified time (wait).

Parameters:
  • q (JointConfigurationType) – Desired joint positions (nj,).

  • qdot (JointVelocityType, optional) – Desired joint velocities (nj,).

  • trq (JointTorqueType, optional) – Desired joint torques (nj,).

  • wait (float, optional) – Time to wait (in seconds) after commanding the robot to move.

Returns:

Status of the move (0 for success, non-zero for error).

Return type:

int

SendRobot_u(u: ndarray) None[source]

Send joint commands to Genesis actuators.

SetRobotPose(x: ndarray) None[source]

Set the robot base pose.

Parameters:

x (Union[Pose3DType, HomogeneousMatrixType]) – The pose of the base (7,) or (4, 4).

Return type:

None

Raises:

ValueError – If the base pose shape is not recognized.

class robotblockset.genesis.robots_genesis.panda(scene: genesis.Scene = None, robot_entity: genesis.repr_base.RBC = None, robot_name: str = 'panda', **kwargs: Any)[source]

Bases: robot_genesis, panda_spec

Create a Panda robot in Genesis.

__init__(scene: genesis.Scene = None, robot_entity: genesis.repr_base.RBC = None, robot_name: str = 'panda', **kwargs: Any) None[source]

Create a Panda robot in Genesis.

class robotblockset.genesis.robots_genesis.fr3(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'fr3', **kwargs: Any)[source]

Bases: robot_genesis, fr3_spec

Create an FR3 robot in Genesis.

__init__(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'fr3', **kwargs: Any) None[source]

Create an FR3 robot in Genesis.

class robotblockset.genesis.robots_genesis.lwr(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'LWR', **kwargs: Any)[source]

Bases: robot_genesis, lwr_spec

Create an LWR robot in Genesis.

__init__(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'LWR', **kwargs: Any) None[source]

Create an LWR robot in Genesis.

class robotblockset.genesis.robots_genesis.iiwa(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'iiwa', **kwargs: Any)[source]

Bases: robot_genesis, iiwa_spec

Create a KUKA iiwa robot in Genesis.

__init__(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'iiwa', **kwargs: Any) None[source]

Create a KUKA iiwa robot in Genesis.

class robotblockset.genesis.robots_genesis.ur10(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'ur10', **kwargs: Any)[source]

Bases: robot_genesis, ur10_spec

Create a UR10 robot in Genesis.

__init__(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'ur10', **kwargs: Any) None[source]

Create a UR10 robot in Genesis.

class robotblockset.genesis.robots_genesis.ur10e(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'ur10e', **kwargs: Any)[source]

Bases: robot_genesis, ur10e_spec

Create a UR10e robot in Genesis.

__init__(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'ur10e', **kwargs: Any) None[source]

Create a UR10e robot in Genesis.

class robotblockset.genesis.robots_genesis.ur5(scene: genesis.Scene = None, robot_entity: genesis.repr_base.RBC = None, robot_name: str = 'ur5', **kwargs: Any)[source]

Bases: robot_genesis, ur5_spec

Create a UR5 robot in Genesis.

__init__(scene: genesis.Scene = None, robot_entity: genesis.repr_base.RBC = None, robot_name: str = 'ur5', **kwargs: Any) None[source]

Create a UR5 robot in Genesis.

class robotblockset.genesis.robots_genesis.ur5e(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'ur5e', **kwargs: Any)[source]

Bases: robot_genesis, ur5e_spec

Create a UR5e robot in Genesis.

__init__(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'ur5e', **kwargs: Any) None[source]

Create a UR5e robot in Genesis.

class robotblockset.genesis.robots_genesis.crx20(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'CRX20', **kwargs: Any)[source]

Bases: robot_genesis, crx20_spec

Create a CRX20 robot in Genesis.

__init__(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'CRX20', **kwargs: Any) None[source]

Create a CRX20 robot in Genesis.

class robotblockset.genesis.robots_genesis.hc20(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'hc20', **kwargs: Any)[source]

Bases: robot_genesis, hc20_spec

Create an HC20 robot in Genesis.

__init__(scene: genesis.Scene, robot_entity: genesis.repr_base.RBC, robot_name: str = 'hc20', **kwargs: Any) None[source]

Create an HC20 robot in Genesis.

Classes

crx20(scene, robot_entity[, robot_name])

Create a CRX20 robot in Genesis.

fr3(scene, robot_entity[, robot_name])

Create an FR3 robot in Genesis.

hc20(scene, robot_entity[, robot_name])

Create an HC20 robot in Genesis.

iiwa(scene, robot_entity[, robot_name])

Create a KUKA iiwa robot in Genesis.

lwr(scene, robot_entity[, robot_name])

Create an LWR robot in Genesis.

panda([scene, robot_entity, robot_name])

Create a Panda robot in Genesis.

robot_genesis([scene, robot_entity, robot_name])

Create a robot interface backend by a Genesis scene.

ur10(scene, robot_entity[, robot_name])

Create a UR10 robot in Genesis.

ur10e(scene, robot_entity[, robot_name])

Create a UR10e robot in Genesis.

ur5([scene, robot_entity, robot_name])

Create a UR5 robot in Genesis.

ur5e(scene, robot_entity[, robot_name])

Create a UR5e robot in Genesis.