main
John Lauer UFactory xArm 6: specs, mounting, docs, digital twin, skills 2add613 4d ago
{
 "units": "mm",
 "up": "+Z",
 "angle_units": {
  "origin_rpy": "rad (URDF fixed-axis roll-pitch-yaw, R=Rz(yaw)Ry(pitch)Rx(roll))",
  "limit_deg": "deg"
 },
 "robot": "UFactory xArm 6",
 "links": [
  {
   "name": "link_base",
   "glb": "link_base.glb",
   "parent": null,
   "joint": null
  },
  {
   "name": "link1",
   "glb": "link1.glb",
   "parent": "link_base",
   "joint": {
    "name": "joint1",
    "type": "revolute",
    "origin_xyz_mm": [
     0.0,
     0.0,
     267.0
    ],
    "origin_rpy": [
     0.0,
     0.0,
     0.0
    ],
    "axis": [
     0,
     0,
     1
    ],
    "limit_deg": [
     -178.2,
     178.2
    ]
   }
  },
  {
   "name": "link2",
   "glb": "link2.glb",
   "parent": "link1",
   "joint": {
    "name": "joint2",
    "type": "revolute",
    "origin_xyz_mm": [
     0.0,
     0.0,
     0.0
    ],
    "origin_rpy": [
     -1.5708,
     0.0,
     0.0
    ],
    "axis": [
     0,
     0,
     1
    ],
    "limit_deg": [
     -117.972,
     120.0
    ]
   }
  },
  {
   "name": "link3",
   "glb": "link3.glb",
   "parent": "link2",
   "joint": {
    "name": "joint3",
    "type": "revolute",
    "origin_xyz_mm": [
     53.5,
     -284.5,
     0.0
    ],
    "origin_rpy": [
     0.0,
     0.0,
     0.0
    ],
    "axis": [
     0,
     0,
     1
    ],
    "limit_deg": [
     -178.2,
     11.0
    ]
   }
  },
  {
   "name": "link4",
   "glb": "link4.glb",
   "parent": "link3",
   "joint": {
    "name": "joint4",
    "type": "revolute",
    "origin_xyz_mm": [
     77.5,
     342.5,
     0.0
    ],
    "origin_rpy": [
     -1.5708,
     0.0,
     0.0
    ],
    "axis": [
     0,
     0,
     1
    ],
    "limit_deg": [
     -178.2,
     178.2
    ]
   }
  },
  {
   "name": "link5",
   "glb": "link5.glb",
   "parent": "link4",
   "joint": {
    "name": "joint5",
    "type": "revolute",
    "origin_xyz_mm": [
     0.0,
     0.0,
     0.0
    ],
    "origin_rpy": [
     1.5708,
     0.0,
     0.0
    ],
    "axis": [
     0,
     0,
     1
    ],
    "limit_deg": [
     -97.0,
     178.2
    ]
   }
  },
  {
   "name": "link6",
   "glb": "link6.glb",
   "parent": "link5",
   "joint": {
    "name": "joint6",
    "type": "revolute",
    "origin_xyz_mm": [
     76.0,
     97.0,
     0.0
    ],
    "origin_rpy": [
     -1.5708,
     0.0,
     0.0
    ],
    "axis": [
     0,
     0,
     1
    ],
    "limit_deg": [
     -178.2,
     178.2
    ]
   }
  }
 ],
 "home_deg": [
  0,
  0,
  0,
  0,
  0,
  0
 ],
 "tcp": {
  "parent": "link6",
  "origin_xyz_mm": [
   0,
   0,
   0
  ],
  "note": "flange face = link6 origin; +Z of link6 points out of the flange. Add tool offset here."
 },
 "notes": [
  "Each GLB is in its own URDF link frame, metres*1000 = mm, Z-up, no extra transform needed.",
  "Child link world = parent world * Translate(origin_xyz_mm) * RPY(origin_rpy) * Rot(axis, q).",
  "GLB loaders (Babylon) convert glTF +Y-up to scene space; when parenting under a Z-up root, undo the loader __root__ handedness/rotation so the link frame stays as authored (glTF stores the raw Z-up vertex coords).",
  "Meshes: xarm6_1305 visual DAE set (newer xArm 6 shell, separate white shell + grey joint covers). Kinematics identical to the legacy xarm6 STL set.",
  "home_deg all zeros = UFactory zero pose (upper arm up, forearm forward, flange pointing down), TCP ~ (207, 0, 112) mm.",
  "No gripper included (link6 = flange/end cap)."
 ],
 "source": {
  "repo": "https://github.com/xArm-Developer/xarm_ros2",
  "commit": "62936f7ea1846a85f7350de2c4c18f39e6d19715",
  "files": [
   "https://raw.githubusercontent.com/xArm-Developer/xarm_ros2/62936f7ea1846a85f7350de2c4c18f39e6d19715/xarm_description/config/kinematics/default/xarm6_default_kinematics.yaml",
   "https://raw.githubusercontent.com/xArm-Developer/xarm_ros2/62936f7ea1846a85f7350de2c4c18f39e6d19715/xarm_description/urdf/xarm6/xarm6.urdf.xacro",
   "https://raw.githubusercontent.com/xArm-Developer/xarm_ros2/62936f7ea1846a85f7350de2c4c18f39e6d19715/xarm_description/urdf/xarm6/xarm6_robot_macro.xacro",
   "https://raw.githubusercontent.com/xArm-Developer/xarm_ros2/62936f7ea1846a85f7350de2c4c18f39e6d19715/xarm_description/meshes/xarm6_1305/visual/link_base.dae",
   "https://raw.githubusercontent.com/xArm-Developer/xarm_ros2/62936f7ea1846a85f7350de2c4c18f39e6d19715/xarm_description/meshes/xarm6_1305/visual/link1.dae",
   "https://raw.githubusercontent.com/xArm-Developer/xarm_ros2/62936f7ea1846a85f7350de2c4c18f39e6d19715/xarm_description/meshes/xarm6_1305/visual/link2.dae",
   "https://raw.githubusercontent.com/xArm-Developer/xarm_ros2/62936f7ea1846a85f7350de2c4c18f39e6d19715/xarm_description/meshes/xarm6_1305/visual/link3.dae",
   "https://raw.githubusercontent.com/xArm-Developer/xarm_ros2/62936f7ea1846a85f7350de2c4c18f39e6d19715/xarm_description/meshes/xarm6_1305/visual/link4.dae",
   "https://raw.githubusercontent.com/xArm-Developer/xarm_ros2/62936f7ea1846a85f7350de2c4c18f39e6d19715/xarm_description/meshes/xarm6_1305/visual/link5.dae",
   "https://raw.githubusercontent.com/xArm-Developer/xarm_ros2/62936f7ea1846a85f7350de2c4c18f39e6d19715/xarm_description/meshes/xarm6_1305/visual/link6.dae"
  ],
  "license": "BSD-3-Clause, repo LICENSE, Copyright (c) 2018 UFACTORY Inc."
 }
}