null_joint_controller
NullJointController
Bases: JointController
Dummy Controller class for a null-type of joint control (i.e.: no control or constant pass-through control). This class has a zero-size command space, and returns either an empty array for control if dof_idx is None else constant values as specified by @default_command (if not specified, uses zeros)
Source code in omnigibson/controllers/null_joint_controller.py
__init__(control_freq, motor_type, control_limits, dof_idx, command_input_limits='default', command_output_limits='default', default_command=None, kp=None, damping_ratio=None, use_impedances=False)
Parameters:
Name | Type | Description | Default |
---|---|---|---|
control_freq
|
int
|
controller loop frequency |
required |
control_limits
|
Dict[str, Tuple[Array[float], Array[float]]]
|
The min/max limits to the outputted control signal. Should specify per-dof type limits, i.e.: "position": [[min], [max]] "velocity": [[min], [max]] "effort": [[min], [max]] "has_limit": [...bool...] Values outside of this range will be clipped, if the corresponding joint index in has_limit is True. |
required |
dof_idx
|
Array[int]
|
specific dof indices controlled by this robot. Used for inferring controller-relevant values during control computations |
required |
command_input_limits
|
None or default or Tuple[float, float] or Tuple[Array[float], Array[float]]
|
if set, is the min/max acceptable inputted command. Values outside this range will be clipped. If None, no clipping will be used. If "default", range will be set to (-1, 1) |
'default'
|
command_output_limits
|
None or default or Tuple[float, float] or Tuple[Array[float], Array[float]]
|
if set, is the min/max scaled command. If both this value and @command_input_limits is not None, then all inputted command values will be scaled from the input range to the output range. If either is None, no scaling will be used. If "default", then this range will automatically be set to the @control_limits entry corresponding to self.control_type |
'default'
|
default_command
|
None or n - array
|
if specified, should be the same length as @dof_idx, specifying the default control for this controller to output |
None
|
kp
|
None or float
|
If @motor_type is "position" or "velocity" and @use_impedances=True, this is the proportional gain applied to the joint controller. If None, a default value will be used. |
None
|
damping_ratio
|
None or float
|
If @motor_type is "position" and @use_impedances=True, this is the damping ratio applied to the joint controller. If None, a default value will be used. |
None
|
use_impedances
|
bool
|
If True, will use impedances via the mass matrix to modify the desired efforts applied |
False
|
Source code in omnigibson/controllers/null_joint_controller.py
update_default_goal(target)
Updates the internal default command value.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
target
|
n - array
|
New default command values to set for this controller. Should be of dimension @command_dim |
required |