Implementation:ARISE Initiative Robosuite Robotiq85Gripper
| Knowledge Sources | |
|---|---|
| Domains | Robotics, Simulation, MJCF_Modeling |
| Last Updated | 2026-02-15 07:00 GMT |
Overview
Robotiq85Gripper provides the Robotiq 2F-85 gripper model with 85mm jaw width, offering both base (6-DOF) and simplified (1-DOF) variants.
Description
This module contains two classes for the Robotiq 85mm gripper. Robotiq85GripperBase loads the MJCF XML from grippers/robotiq_gripper_85.xml and defines 6 initial joint positions at [-0.026, -0.267, -0.200, -0.026, -0.267, -0.200], representing the default open configuration. The negative values reflect the specific kinematic linkage of the Robotiq 85 mechanism. The base class provides direct actuator access and defines collision geometries for outer finger, inner finger, fingertip, and fingerpad segments on both sides.
Robotiq85Gripper extends the base to provide 1-DOF synchronized control. Its action mapping differs from the Robotiq 140 model: current_action = clip(current_action * [1, 1] + speed * sign(action), -1, 1). Notably, both actuator channels use the same sign multiplier ([1, 1]), and the current action is preserved multiplicatively before adding the speed increment. This different formulation accounts for the specific joint conventions in the Robotiq 85 XML model. The speed is 0.20 for responsive control.
The Robotiq 2F-85 is a compact industrial parallel jaw gripper with an 85mm stroke. It shares the same collision geometry structure as the Robotiq 140 (four segments per finger: outer, inner, fingertip, fingerpad) but in a more compact form factor suitable for tighter workspaces.
Usage
Use Robotiq85Gripper (1-DOF) for manipulation tasks requiring a compact parallel jaw gripper, particularly with Universal Robots arms. Use Robotiq85GripperBase when direct 6-DOF actuator control of the linkage mechanism is needed.
Code Reference
Source Location
- Repository: ARISE_Initiative_Robosuite
- File: robosuite/models/grippers/robotiq_85_gripper.py
Signature
class Robotiq85GripperBase(GripperModel):
def __init__(self, idn=0):
class Robotiq85Gripper(Robotiq85GripperBase):
# Inherits __init__; overrides format_action, speed, dof
Import
from robosuite.models.grippers.robotiq_85_gripper import Robotiq85Gripper, Robotiq85GripperBase
I/O Contract
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| idn | int or str | No | Unique identification number or string for this gripper instance. Default: 0 |
Outputs
| Name | Type | Description |
|---|---|---|
| Robotiq85GripperBase instance | GripperModel | Base 6-DOF Robotiq 85mm gripper model |
| Robotiq85Gripper instance | GripperModel | 1-DOF synchronized Robotiq 85mm gripper (speed: 0.20) |
| init_qpos | np.array | [-0.026, -0.267, -0.200, -0.026, -0.267, -0.200] default joint positions |
Usage Examples
from robosuite.models.grippers.robotiq_85_gripper import Robotiq85Gripper
import numpy as np
# Create the 1-DOF Robotiq 85 gripper
gripper = Robotiq85Gripper(idn=0)
# Close the gripper
action = np.array([1.0])
formatted = gripper.format_action(action)
# Open the gripper
action = np.array([-1.0])
formatted = gripper.format_action(action)
# Check properties
print(gripper.init_qpos) # [-0.026, -0.267, -0.200, -0.026, -0.267, -0.200]
print(gripper.dof) # 1
print(gripper.speed) # 0.20