Principle:ARISE Initiative Robosuite Gripper Model Design
| Knowledge Sources | |
|---|---|
| Domains | Robotics, Manipulation, MJCF Modeling |
| Last Updated | 2026-02-15 07:00 GMT |
Overview
A base class abstraction for gripper MJCF models that standardizes the definition of finger joints, actuators, contact geometry, initial configurations, and action formatting across diverse gripper morphologies ranging from parallel-jaw to multi-finger designs.
Description
Robotic grippers vary enormously in mechanical design -- from simple two-finger parallel-jaw grippers to complex multi-finger dexterous hands. Despite this diversity, all grippers share common functional requirements when used in simulation: they must define their degrees of freedom, specify which joints correspond to fingers, declare actuators that drive those joints, provide initial open and closed configurations, and format abstract actions (typically a scalar open/close command) into the specific actuator signals required by the gripper mechanism.
The gripper model design principle addresses this by establishing a base class that wraps an MJCF XML file and exposes a uniform interface. The base class computes the gripper rotation offset by compounding the quaternion of the base body with the end-effector frame, ensuring correct alignment when the gripper is mounted to any robot arm. Subclasses declare their specific finger joint names, actuator names, sensor names (for force and torque at the end-effector), and contact geometry groups. The base class also defines properties for degrees of freedom (derived from the number of actuators), grip speed, and collision color.
Concrete gripper implementations range from standard industrial grippers (parallel-jaw, three-finger adaptive) to anthropomorphic dexterous hands. Each implementation provides its own XML model file, initial joint positions for the open state, and an action formatting method that maps a normalized control signal to the appropriate actuator commands -- which may involve coupling multiple finger joints to a single control input or independently controlling each finger.
Usage
Apply this principle when adding new gripper types to a simulation framework. Any gripper that can be described in MJCF and mounted to a robot arm should subclass the gripper model base, implement the required abstract properties (finger joints, actuators, init qpos, important sites/sensors), and provide an action formatting method.
Theoretical Basis
The gripper model follows the Abstract Factory pattern for XML model wrapping:
GripperModel (base)
Properties to implement:
- _important_sites: {"grip_site", "grip_cylinder"} -- reference frames
- _important_sensors: {"force_ee", "torque_ee"} -- F/T sensing
- init_qpos: default open joint configuration
- finger_joint_names: list of joints representing fingers
- format_action(action): maps [-1,1] to actuator commands
Rotation offset computation ensures proper alignment when mounting:
rotation_offset = quat_multiply(eef_relative_quat, base_body_quat)
Where both quaternions are extracted from the XML in (x,y,z,w) convention.
Action formatting typically maps a single scalar to multiple actuator commands:
For a parallel-jaw gripper with 2 coupled fingers:
actuator_commands = [action, -action] (symmetric open/close)
For a multi-finger hand with N independent fingers:
actuator_commands = f(action_vector) (per-finger mapping)
Degrees of freedom are derived directly from the number of declared actuators, not the number of joints, since some joints may be passively coupled.
Related Pages
- Implementation:ARISE_Initiative_Robosuite_GripperModel_Base
- Implementation:ARISE_Initiative_Robosuite_PandaGripper
- Implementation:ARISE_Initiative_Robosuite_RethinkGripper
- Implementation:ARISE_Initiative_Robosuite_Robotiq140Gripper
- Implementation:ARISE_Initiative_Robosuite_Robotiq85Gripper
- Implementation:ARISE_Initiative_Robosuite_RobotiqThreeFingerGripper
- Implementation:ARISE_Initiative_Robosuite_JacoThreeFingerGripper
- Implementation:ARISE_Initiative_Robosuite_FourierHands
- Implementation:ARISE_Initiative_Robosuite_InspireHands