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