Overview
Contents
Overview#
Our codebase offers a variety of robot controllers.
To see a full list of default controller parameters, you can do:
from deoxys.utils.config_utils import get_available_controller_configs
get_available_controller_configs(verbose=True)
And the output should contain dictionaries, each of which has information like this:
{ 'Kp': {'rotation': 250.0, 'translation': 150.0},
'action_scale': {'rotation': 1.0, 'translation': 0.05},
'controller_type': 'OSC_POSE',
'residual_mass_vec': None,
'state_estimator_cfg': { 'alpha_dq': 0.9,
'alpha_eef': 1.0,
'alpha_eef_vel': 1.0,
'alpha_q': 0.9,
'is_estimation': False,
'state_estimator_type': 'EXPONENTIAL_SMOOTHING'},
'traj_interpolator_cfg': { 'time_fraction': 0.3,
'traj_interpolator_type': 'LINEAR_POSE'}}
In this section, we introduces three key components in the implementation of high-frequency robot controllers:
Task / Joint Space Controllers, Trajectory Interpolators, and State Estimators.
Quick overview of type names#
Here are tables that list the implemented controllers, traj interpolators, and state estimators and their corresponding enum types in the codebase.
Important configuration
We recommend is_delta=True
for OSC-family controllers, and is_delta=False
for joint-space controllers.
Controllers | Controller Type Name |
---|---|
6DoF Operational Space Controller | OSC_POSE |
4DoF Operational Space Yaw Controlelr | OSC_YAW |
3DoF Position-only Operational Space Contorller | OSC_POSITION |
Joint Impedance Controller | JOINT_IMPEDANCE |
Joint Positional Controller | JOINT_POSITION |
Cartesian Velocity Controller | CARTESIAN_VELOCITY |
Trajectory Interpolators | Trajectory Interpolator Type Name |
---|---|
Linear Interpolation in Pose | LINEAR_POSE |
Minimal Jerkiness Interpolation in Pose | MIN_JERK_POSE |
Minimal Jerkiness Interpolation in Joint Positions | MIN_JERK_JOINT_POSITION |
Smooth interpolation for the Joint Position Controller | SMOOTH_JOINT_POSITION |
Linear Interpolation of Cartesian Velocities | LINEAR_CARTESIAN_VELOCITY |
Cosine Interpolation of Cartesian Velocities | COSINE_CARTESIAN_VELOCITY |
State Estimators | Estimation Type Name |
---|---|
Exponential Smoothing (Lowpass Filter) | EXPONENTIAL_SMOOTHING |