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.
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
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.
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
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.
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
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