visualizers.mujoco_helpers.kinematics#

Module Contents#

class visualizers.mujoco_helpers.kinematics.IkSolver#

Simplistic inverse kinematics solver .. py:property:: posture_task

type:

Any

Posture task

property configuration: Any#

Configuration

Return type:

Any

property configuration_limit: Any#

Configuration limits

Return type:

Any

model: mujoco.MjModel#
frame_names: list[str]#
frame_type: str = 'site'#
solver: str = 'quadprog'#
position_cost: numpy.ndarray#
orientation_cost: numpy.ndarray#
posture_cost: numpy.ndarray#
pos_threshold: float = 0.01#
ori_threshold: float = 1.0#
max_iters: int = 20#
dt: float = 0.002#
damping: float = 0.001#
frame_tasks_damping: numpy.ndarray#
__post_init__() None#

Initialize tasks and configuration after the dataclass is initialized.

Return type:

None

set_target_pose(target_poses: list[numpy.ndarray | None]) None#

Set the target pose for the frame tasks.

Parameters:

target_poses (list[numpy.ndarray | None]) –

Return type:

None

solve(q_ref: numpy.ndarray, target_poses: list[numpy.ndarray | None], use_configuration_limit: bool = True, logging_level: int = logging.INFO) numpy.ndarray#

Solve inverse kinematics to reach the target pose.

Parameters:
  • q_ref (numpy.ndarray) –

  • target_poses (list[numpy.ndarray | None]) –

  • use_configuration_limit (bool) –

  • logging_level (int) –

Return type:

numpy.ndarray