Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Implementation:Haosulab ManiSkill XArm6Robotiq

From Leeroopedia
Revision as of 12:55, 16 February 2026 by Admin (talk | contribs) (Auto-imported from implementations/Haosulab_ManiSkill_XArm6Robotiq.md)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Knowledge Sources
Domains Robotics, Simulation, Manipulation
Last Updated 2026-02-15 08:00 GMT

Overview

Concrete tool for simulating the UFactory xArm6 robot with Robotiq 2F-85 gripper in ManiSkill environments.

Description

The XArm6Robotiq combines a 6-DOF xArm6 arm with the Robotiq 2F-85 adaptive gripper. It has 12 active joints: 6 arm joints (joint1-joint6), 2 active finger joints (left/right_outer_knuckle_joint) with mimic control, and 4 passive finger joints (inner knuckle and inner finger joints). The arm uses high stiffness (1e4) and damping (1e3). The gripper uses very high stiffness (1e5) and damping (2000) with a low force limit (0.1). Mechanical constraints for the Robotiq gripper are implemented via SAPIEN drive creation in _after_loading_articulation. Collision groups are disabled among all gripper-related links. The file also defines XArm6RobotiqWristCamera variant with a wrist-mounted camera.

uid: xarm6_robotiq

URDF path: {ASSET_DIR}/robots/xarm6/xarm6_robotiq.urdf

Supported control modes: pd_joint_delta_pos, pd_joint_pos, pd_ee_delta_pos, pd_ee_delta_pose, pd_ee_pose, pd_joint_target_delta_pos, pd_ee_target_delta_pos, pd_ee_target_delta_pose, pd_joint_vel, pd_joint_pos_vel, pd_joint_delta_pos_vel

Usage

Use XArm6Robotiq for manipulation tasks requiring a strong industrial arm with an adaptive parallel gripper. The Robotiq gripper can conform to object shapes for more robust grasping compared to simple parallel-jaw grippers. Suitable for pick-and-place, assembly, and industrial manipulation scenarios.

Code Reference

Source Location

Signature

@register_agent(asset_download_ids=["xarm6"])
class XArm6Robotiq(BaseAgent):
    uid = "xarm6_robotiq"
    urdf_path = f"{ASSET_DIR}/robots/xarm6/xarm6_robotiq.urdf"
    arm_joint_names = ["joint1", ..., "joint6"]
    arm_stiffness = 1e4
    arm_damping = 1e3
    arm_force_limit = 100
    gripper_stiffness = 1e5
    gripper_damping = 2000
    ee_link_name = "eef"
    keyframes = dict(rest=Keyframe(...), zeros=Keyframe(...), ...)

@register_agent(asset_download_ids=["xarm6"])
class XArm6RobotiqWristCamera(XArm6Robotiq):
    uid = "xarm6_robotiq_wristcam"

Import

from mani_skill.agents.robots.xarm6.xarm6_robotiq import XArm6Robotiq

I/O Contract

Inputs

Name Type Required Description
(inherited from BaseAgent)

Outputs

Name Type Description
robot agent XArm6Robotiq Configured 6-DOF arm with Robotiq adaptive gripper controllers

Usage Examples

Creating Environment with Robot

import gymnasium as gym
import mani_skill.envs

env = gym.make("PickCube-v1", robot_uids="xarm6_robotiq")
obs, info = env.reset()

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment