Implementation:ARISE Initiative Robosuite Robotiq140Gripper
| Knowledge Sources | |
|---|---|
| Domains | Robotics, Simulation, MJCF_Modeling |
| Last Updated | 2026-02-15 07:00 GMT |
Overview
Robotiq140Gripper provides the Robotiq 2F-140 gripper model with 140mm jaw width, offering both base (6-DOF) and simplified (1-DOF) variants.
Description
This module contains two classes for the Robotiq 140mm gripper. Robotiq140GripperBase loads the MJCF XML from grippers/robotiq_gripper_140.xml and defines 6 initial joint positions at [0.012, 0.065, 0.065, -0.012, 0.065, 0.065], representing the default open configuration of this underactuated linkage mechanism. The base class provides direct actuator access and defines collision geometries for outer finger, inner finger, fingertip, and fingerpad segments on both left and right sides.
Robotiq140Gripper extends the base to provide 1-DOF synchronized control. The action mapping uses the formula: current_action = clip(current_action + [1, -1] * speed * sign(action), -1, 1), where the [1, -1] multiplier coordinates the two-finger parallel jaw motion. The speed is set to 0.2 for responsive open/close behavior. The single action input controls all six underlying joints in a coordinated manner.
The Robotiq 2F-140 is a widely used industrial gripper known for its wide jaw opening (140mm) and robust parallel jaw mechanism. The model includes detailed collision geometry with four segments per finger (outer finger, inner finger, fingertip, and fingerpad), enabling accurate contact simulation for industrial manipulation tasks.
Usage
Use Robotiq140Gripper (1-DOF) for standard manipulation tasks requiring a wide-opening parallel jaw gripper, particularly with Universal Robots arms. Use Robotiq140GripperBase when direct 6-DOF actuator control is needed for specialized grasping strategies.
Code Reference
Source Location
- Repository: ARISE_Initiative_Robosuite
- File: robosuite/models/grippers/robotiq_140_gripper.py
Signature
class Robotiq140GripperBase(GripperModel):
def __init__(self, idn=0):
class Robotiq140Gripper(Robotiq140GripperBase):
# Inherits __init__; overrides format_action, speed, dof
Import
from robosuite.models.grippers.robotiq_140_gripper import Robotiq140Gripper, Robotiq140GripperBase
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 |
|---|---|---|
| Robotiq140GripperBase instance | GripperModel | Base 6-DOF Robotiq 140mm gripper model |
| Robotiq140Gripper instance | GripperModel | 1-DOF synchronized Robotiq 140mm gripper (speed: 0.2) |
| init_qpos | np.array | [0.012, 0.065, 0.065, -0.012, 0.065, 0.065] default joint positions |
Usage Examples
from robosuite.models.grippers.robotiq_140_gripper import Robotiq140Gripper
import numpy as np
# Create the 1-DOF Robotiq 140 gripper
gripper = Robotiq140Gripper(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.012, 0.065, 0.065, -0.012, 0.065, 0.065]
print(gripper.dof) # 1
print(gripper.speed) # 0.2