Dynamic Control [omni.isaac.dynamic_control]

The Dynamic Control extension provides a set of utilities to control physics objects. It provides opaque handles for different physics objects that remain valid between PhysX scene resets, which occur whenever play or stop is pressed.

Basic Usage

Start physics simulation, at least one frame of simulation must occur before the Dynamic Control interface will become fully active.

1import omni
2omni.timeline.get_timeline_interface().play()

Acquire the Dynamic Control interface and interact with an articulation. The code block below assumes a Franka Emika Panda robot is in the stage with a base path of /Franka

 1from omni.isaac.dynamic_control import _dynamic_control
 2dc = _dynamic_control.acquire_dynamic_control_interface()
 3
 4# Get a handle to the Franka articulation
 5# This handle will automatically update if simulation is stopped and restarted
 6art = dc.get_articulation("/Franka")
 7
 8# Get information about the structure of the articulation
 9num_joints = dc.get_articulation_joint_count(art)
10num_dofs = dc.get_articulation_dof_count(art)
11num_bodies = dc.get_articulation_body_count(art)
12
13# Get a specific degree of freedom on an articulation
14dof_ptr = dc.find_articulation_dof(art, "panda_joint2")
15
16dof_state = dc.get_dof_state(dof_ptr)
17# print position for the degree of freedom
18print(dof_state.pos)
19
20# This should be called each frame of simulation if state on the articulation is being changed.
21dc.wake_up_articulation(art)
22dc.set_dof_position_target(dof_ptr, -1.5)

Acquiring Extension Interface

_dynamic_control.acquire_dynamic_control_interface(plugin_name: str = None, library_path: str = None) omni::isaac::dynamic_control::DynamicControl

Acquire dynamic control interface. This is the base object that all of the dynamic control functions are defined on

_dynamic_control.release_dynamic_control_interface(arg0: omni::isaac::dynamic_control::DynamicControl) None

Release dynamic control interface. Generally this does not need to be called, the dynamic control interface is released on extension shutdown

Dynamic Control API

class DynamicControl

The following functions are provided on the dynamic control interface

apply_body_force(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: carb._carb.Float3, arg2: carb._carb.Float3, arg3: bool) bool

Apply a force to a rigid body at a position, coordinates can be specified in global or local coordinates

apply_body_torque(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: carb._carb.Float3, arg2: bool) bool

Apply a torque to a rigid body, can be specified in global or local coordinates

create_d6_joint(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: omni.isaac.dynamic_control._dynamic_control.D6JointProperties) int

Create a D6 joint

create_rigid_body_attractor(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: omni.isaac.dynamic_control._dynamic_control.AttractorProperties) int

Greate an attractor for ridig body

destroy_d6_joint(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) bool

Destroy D6 joint

destroy_rigid_body_attractor(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) bool

Destroy attractor

find_articulation_body(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: str) int

Finds actor rigid body given its name

find_articulation_body_index(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: str) int

Find index in articulation body array, -1 on error

find_articulation_dof(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: str) int

Finds actor degree-of-freedom given its name

find_articulation_dof_index(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: str) int

get index in articulation DOF array, -1 on error

find_articulation_joint(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: str) int

Get the joint from an atriculation given their name

get_articulation(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: str) int
Returns

Handle to the articulation, INVALID_HANDLE otherwise

Return type

handle

get_articulation_body(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: int) int

Gets actor rigid body given its index

get_articulation_body_count(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) int

Gets number of rigid bodies for an actor

get_articulation_body_states(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: int) object

Get array of an actor’s rigid body states

get_articulation_dof(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: int) int

Gets actor degree-of-freedom given its index

get_articulation_dof_count(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) int

Gets number of degrees-of-freedom for an actor

get_articulation_dof_efforts(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) object

Get array of efforts for articulation

get_articulation_dof_masses(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) object

Get array of an actor’s degree-of-freedom effective masses

get_articulation_dof_position_targets(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) object

Get array of position targets for articulation

get_articulation_dof_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) object

Get array of an actor’s degree-of-freedom properties

get_articulation_dof_states(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: int) object

Get array of an actor’s degree-of-freedom states

get_articulation_dof_velocity_targets(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) object

Get array of velocity targets for articulation

get_articulation_joint(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: int) int

Gets the joint from an articulation given an index

get_articulation_joint_count(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) int

Get the number of joints in an articulation

get_articulation_name(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) str
Returns

The name of the articulation

Return type

string

get_articulation_path(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) str
Returns

The path to the articulation

Return type

string

get_articulation_properties(*args, **kwargs)

Overloaded function.

  1. get_articulation_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: omni.isaac.dynamic_control._dynamic_control.ArticulationProperties) -> bool

Get Properties for an articulation

  1. get_articulation_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) -> object

Get Properties for an articulation

get_articulation_root_body(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) int

Get the root rigid body of an actor

get_attractor_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) object

Get properties for attractor

get_d6_joint(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: str) int
Returns

Handle to the d6 joint, INVALID_HANDLE otherwise

Return type

handle

get_dof(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: str) int
Returns

Handle to the degree of freedom, INVALID_HANDLE otherwise

Return type

handle

get_dof_child_body(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) int

Get child rigid body for degree of freedom

get_dof_effort(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) float

Get effort applied to degree of freedom

get_dof_joint(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) int

Get joint associated with the degree of freedom

get_dof_name(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) str

Get Name of this degree of freedom

get_dof_parent_body(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) int

Get parent rigid body for degree of freedom

get_dof_path(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) str

Get path to degree of freedom

get_dof_position(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) float

Get position/rotation for this degree of freedom

get_dof_position_target(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) float

Get position target for degree of freedom

get_dof_properties(*args, **kwargs)

Overloaded function.

  1. get_dof_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: omni.isaac.dynamic_control._dynamic_control.DofProperties) -> bool

Get degree of freedom properties

  1. get_dof_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) -> object

Get degree of freedom properties

get_dof_state(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: int) omni.isaac.dynamic_control._dynamic_control.DofState

Get current state for degree of freedom

get_dof_type(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) omni.isaac.dynamic_control._dynamic_control.DofType

Get type of degree of freedom

get_dof_velocity(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) float

Get linear/angular velocity of degree of freedom

get_dof_velocity_target(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) float

Get velocity target for degree of freedom

get_joint(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: str) int
Returns

Handle to the joint, INVALID_HANDLE otherwise

Return type

handle

get_joint_child_body(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) int

Get child rigid body for joint

get_joint_dof(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: int) int

Get a degree of freedom for joint give its index

get_joint_dof_count(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) int

Get number of degrees of freedon constrained by joint

get_joint_name(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) str

Get name of joint

get_joint_parent_body(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) int

Get parent rigid body for joint

get_joint_path(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) str

Get path for joint

get_joint_type(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) omni.isaac.dynamic_control._dynamic_control.JointType

Get joint type

get_object(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: str) int
Returns

Handle to the physics object defined by the usd path, INVALID_HANDLE otherwise

Return type

handle

get_object_type(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) omni.isaac.dynamic_control._dynamic_control.ObjectType
Returns:

omni.isaac.dynamic_control._dynamic_control.ObjectType: Type of object returned by get_object

get_object_type_name(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) str
Returns

The object type name as a string

Return type

string

get_relative_body_poses(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: List[int]) List[omni.isaac.dynamic_control._dynamic_control.Transform]

given a list of body handles, return poses relative to the parent

get_rigid_body(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: str) int
Returns

Handle to the rigid body, INVALID_HANDLE otherwise

Return type

handle

get_rigid_body_angular_velocity(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) carb._carb.Float3

Get the angular velocity of this rigid body

get_rigid_body_child_joint(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: int) int

Get the child joint of a rigid body given its index

get_rigid_body_child_joint_count(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) int

Gets the number of joints that are children to this rigid body

get_rigid_body_linear_velocity(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) carb._carb.Float3

Get the linear velocity of this rigid body in global coordinates

get_rigid_body_local_linear_velocity(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) carb._carb.Float3

Get the linear velocity of this rigid body in local coordinates

get_rigid_body_name(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) str

Gets the rigid body name given a handle

get_rigid_body_parent_joint(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) int

Gets parent joint to a rigid body

get_rigid_body_path(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) str

Gets the path to a rigid body given its handle

get_rigid_body_pose(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) omni.isaac.dynamic_control._dynamic_control.Transform

Get the pose of a rigid body

get_rigid_body_properties(*args, **kwargs)

Overloaded function.

  1. get_rigid_body_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: omni.isaac.dynamic_control._dynamic_control.RigidBodyProperties) -> bool

Get Properties for a rigid body

  1. get_rigid_body_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) -> object

Get Properties for a rigid body

is_simulating(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl) bool
Returns

True if simulating, False otherwise

Return type

bool

peek_object_type(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: str) omni.isaac.dynamic_control._dynamic_control.ObjectType
Returns

The object type name as a string

Return type

string

set_articulation_dof_efforts(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: numpy.ndarray[numpy.float32]) bool

Sets efforts on an actor’s degrees-of-freedom.

set_articulation_dof_position_targets(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: numpy.ndarray[numpy.float32]) bool

Sets an actor’s degree-of-freedom position targets.

set_articulation_dof_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: numpy.ndarray[omni.isaac.dynamic_control._dynamic_control.DofProperties]) bool

Sets properties for an actor’s degrees-of-freedom.

set_articulation_dof_states(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: numpy.ndarray[omni.isaac.dynamic_control._dynamic_control.DofState], arg2: int) bool

Sets states for an actor’s degrees-of-freedom.

set_articulation_dof_velocity_targets(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: numpy.ndarray[numpy.float32]) bool

Sets an actor’s degree-of-freedom velocity targets.

set_articulation_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: omni.isaac.dynamic_control._dynamic_control.ArticulationProperties) bool

Sets properties for articulation

set_attractor_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: omni.isaac.dynamic_control._dynamic_control.AttractorProperties) bool

Set properties for this attractor

set_attractor_target(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: omni.isaac.dynamic_control._dynamic_control.Transform) bool

Set target pose for attractor

set_d6_joint_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: omni.isaac.dynamic_control._dynamic_control.D6JointProperties) bool

Modifies properties of the selected joint.

set_dof_effort(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: float) bool

Set effort on degree of freedom

set_dof_position(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: float) bool

Set position/rotation for this degree of freedom

set_dof_position_target(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: float) bool

Set position target for degree of freedom

set_dof_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: omni.isaac.dynamic_control._dynamic_control.DofProperties) bool

Set degree of freedom properties

set_dof_state(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: omni.isaac.dynamic_control._dynamic_control.DofState, arg2: int) bool

Set degree of freedom state

set_dof_velocity(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: float) bool

Set linear angular velocity of degree of freedom

set_dof_velocity_target(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: float) bool

Set velocity target for degree of freedom

set_origin_offset(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: carb._carb.Float3) bool

Offset origin for a rigid body

set_rigid_body_angular_velocity(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: carb._carb.Float3) bool

Set the angular velocity of this rigid body

set_rigid_body_disable_gravity(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: bool) bool

enables or disables the force of gravity from the given body

set_rigid_body_disable_simulation(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: bool) bool

enables or disables Simulation of a given rigid body

set_rigid_body_linear_velocity(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: carb._carb.Float3) bool

Set the linear velocity of the rigid body

set_rigid_body_pose(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: omni.isaac.dynamic_control._dynamic_control.Transform) bool

Set the pose of a rigid body

set_rigid_body_properties(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int, arg1: omni.isaac.dynamic_control._dynamic_control.RigidBodyProperties) bool

Set Properties for a rigid body

sleep_articulation(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) bool

Put articulation to sleep

sleep_rigid_body(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) bool

Put rigid body to sleep

wake_up_articulation(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) bool

Enable physics for a articulation

wake_up_rigid_body(self: omni.isaac.dynamic_control._dynamic_control.DynamicControl, arg0: int) bool

Enable physics for a rigid body

Transform and Velocity

class Transform

Bases: pybind11_builtins.pybind11_object

Represents a 3D transform in the system

dtype = dtype([('p', [('x', '<f4'), ('y', '<f4'), ('z', '<f4')]), ('r', [('x', '<f4'), ('y', '<f4'), ('z', '<f4'), ('w', '<f4')])])
static from_buffer(arg0: buffer) object

assign a transform from an array of 7 values [p.x, p.y, p.z, r.x, r.y, r.z, r.w]

property p

Position as a tuple of (x,y,z) (carb._carb.Float3)

property r

Rotation Quaternion, represented in the format \(x\hat{i} + y\hat{j} + z\hat{k} + w\) (carb._carb.Float4)

class Velocity

Bases: pybind11_builtins.pybind11_object

Linear and angular velocity

property angular

Angular 3D velocity as a tuple (x,y,z), (carb._carb.Float3)

dtype = dtype([('linear', [('x', '<f4'), ('y', '<f4'), ('z', '<f4')]), ('angular', [('x', '<f4'), ('y', '<f4'), ('z', '<f4')])])
property linear

Linear 3D velocity as a tuple (x,y,z) , (carb._carb.Float3)

Types

class ObjectType

Bases: pybind11_builtins.pybind11_object

Types of Objects

Members:

OBJECT_NONE : Invalid/unknown/uninitialized object type

OBJECT_RIGIDBODY : The object is a rigid body or a link on an articulation

OBJECT_JOINT : The object is a joint

OBJECT_DOF : The object is a degree of freedon

OBJECT_ARTICULATION : The object is an articulation

OBJECT_ATTRACTOR : The object is an attractor

OBJECT_D6JOINT : The object is a generic D6 joint

class DofType

Bases: pybind11_builtins.pybind11_object

Types of degree of freedom

Members:

DOF_NONE : invalid/unknown/uninitialized DOF type

DOF_ROTATION : The degrees of freedom correspond to a rotation between bodies

DOF_TRANSLATION : The degrees of freedom correspond to a translation between bodies.

class JointType

Bases: pybind11_builtins.pybind11_object

Joint Types that can be specified

Members:

JOINT_NONE : invalid/unknown/uninitialized joint type

JOINT_FIXED : Fixed Joint

JOINT_REVOLUTE : Revolute Joint

JOINT_PRISMATIC : Prismatic Joint

JOINT_SPHERICAL : Spherical Joint

class DriveMode

Bases: pybind11_builtins.pybind11_object

DOF drive mode

Members:

DRIVE_FORCE : Use Force Based Drive Controller

DRIVE_ACCELERATION : Use Acceleration Based Drive Controller

Properties

class ArticulationProperties

Bases: pybind11_builtins.pybind11_object

Articulation Properties

property enable_self_collisions

Allow links in articulation to collide with each other (bool)

property solver_position_iteration_count

Position solver iterations (int)

property solver_velocity_iteration_count

Velocity solver iterations (int)

class RigidBodyProperties

Bases: pybind11_builtins.pybind11_object

Rigid Body Properties

property cMassLocalPose

Local center of mass position (carb._carb.Float3)

property mass

Mass of rigid body (float)

property max_contact_impulse

Sets a limit on the impulse that may be applied at a contact. (float)

property max_depeneration_velocity

This value controls how much velocity the solver can introduce to correct for penetrations in contacts. (float)

property moment

Diagonal moment of inertia (carb._carb.Float3)

property solver_position_iteration_count

Position solver iterations (int)

property solver_velocity_iteration_count

Velocity solver iterations (int)

class DofProperties

Bases: pybind11_builtins.pybind11_object

Properties of a degree-of-freedom (DOF)

property damping

Damping of DOF (float)

property drive_mode

Drive mode for the DOF (omni.isaac.dynamic_control._dynamic_control.DriveMode)

property has_limits

Flags whether the DOF has limits (read only) (bool)

property lower

lower limit of DOF. In radians or meters (read only) (float)

property max_effort

Maximum effort of DOF. in N or N*stage_units (float)

property max_velocity

Maximum velocity of DOF. In Radians/s, or stage_units/s (float)

property stiffness

Stiffness of DOF (float)

property type

Type of joint (read only) (omni.isaac.dynamic_control._dynamic_control.DofType)

property upper

upper limit of DOF. In radians or meters (read only) (float)

class AttractorProperties

Bases: pybind11_builtins.pybind11_object

The Attractor is used to pull a rigid body towards a pose. Each pose axis can be individually selected.

property axes

Axes to set the attractor, using DcAxisFlags. Multiple axes can be selected using bitwise combination of each axis flag. if axis flag is set to zero, the attractor will be disabled and won’t impact in solver computational complexity.

property body

Rigid body to set the attractor to

property damping

Damping to be used on attraction solver. (float)

property force_limit

Maximum force to be applied by drive. (float)

property offset

Offset from rigid body origin to set the attractor pose. (omni.isaac.dynamic_control._dynamic_control.Transform)

property stiffness

Stiffness to be used on attraction for solver. Stiffness value should be larger than the largest agent kinematic chain stifness (float)

property target

Target pose to attract to. (omni.isaac.dynamic_control._dynamic_control.Transform)

class D6JointProperties

Bases: pybind11_builtins.pybind11_object

Creates a general D6 Joint between two rigid Bodies.

property axes

Axes to set the attractor, using DcAxisFlags. Multiple axes can be selected using bitwise combination of each axis flag. if axis flag is set to zero, the attractor will be disabled and won’t impact in solver computational complexity.

property body0

parent body

property body1

child body

property damping

Joint Damping. (float)

property force_limit

Joint Breaking Force. (float)

property name

Joint Name (str)

property pose0

Transform from body 0 to joint. (omni.isaac.dynamic_control._dynamic_control.Transform)

property pose1

Transform from body 1 to joint. (omni.isaac.dynamic_control._dynamic_control.Transform)

property stiffness

Joint Stiffness. Stiffness value should be larger than the largest agent kinematic chain stifness (float)

property torque_limit

Joint Breaking torque. (float)

States

class RigidBodyState

Bases: pybind11_builtins.pybind11_object

Containing states to get/set for a rigid body in the simulation

dtype = dtype([('pose', [('p', [('x', '<f4'), ('y', '<f4'), ('z', '<f4')]), ('r', [('x', '<f4'), ('y', '<f4'), ('z', '<f4'), ('w', '<f4')])]), ('vel', [('linear', [('x', '<f4'), ('y', '<f4'), ('z', '<f4')]), ('angular', [('x', '<f4'), ('y', '<f4'), ('z', '<f4')])])])
property pose

Transform with position and orientation of rigid body (omni.isaac.dynamic_control._dynamic_control.Transform)

property vel

Linear and angular velocities of rigid body (omni.isaac.dynamic_control._dynamic_control.Velocity)

class DofState

Bases: pybind11_builtins.pybind11_object

States of a Degree of Freedom in the Asset architecture

dtype = dtype([('pos', '<f4'), ('vel', '<f4'), ('effort', '<f4')])
property effort

DOF effort due to gravity, torque if it’s a revolute DOF, or force if it’s a prismatic DOF (float)

property pos

DOF position, in radians if it’s a revolute DOF, or stage_units (m, cm, etc), if it’s a prismatic DOF (float)

property vel

DOF velocity, in radians/s if it’s a revolute DOF, or stage_units/s (m/s, cm/s, etc), if it’s a prismatic DOF (float)

Constants

Object handles

_dynamic_control.INVALID_HANDLE = 0

State Flags

_dynamic_control.STATE_NONE = 0
_dynamic_control.STATE_POS = 1
_dynamic_control.STATE_VEL = 2
_dynamic_control.STATE_EFFORT = 4
_dynamic_control.STATE_ALL = 7

Axis Flags

_dynamic_control.AXIS_NONE = 0
_dynamic_control.AXIS_X = 1
_dynamic_control.AXIS_Y = 2
_dynamic_control.AXIS_Z = 4
_dynamic_control.AXIS_TWIST = 8
_dynamic_control.AXIS_SWING_1 = 16
_dynamic_control.AXIS_SWING_2 = 32
_dynamic_control.AXIS_ALL_TRANSLATION = 7
_dynamic_control.AXIS_ALL_ROTATION = 56
_dynamic_control.AXIS_ALL = 63