Ability Hand
PSYONIC, Inc. · licence MIT · source: github.com/psyonicinc/ability-hand-api @ 89407424e
What you are looking at is RobotDescription.from_urdf(original).to_urdf_string(): the reference implementation's re-serialisation of the original file, not the original file itself.
Loading the model…
drag to orbit · scroll to zoom · right-drag to pan
robot.urdf
<?xml version="1.0" encoding="UTF-8"?>
<!-- generated by bam_robot_descriptions (py backend), content e58c08b626897bae -->
<robot name="ability_hand">
<link name="base">
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/wristmesh.STL" />
</geometry>
</visual>
<inertial>
<origin xyz="-0.00065452 -0.00598838 0.05077265" rpy="0.0 0.0 0.0" />
<mass value="0.37511" />
<inertia ixx="0.000376723021" ixy="2.33895423e-06" ixz="-6.0432515e-06" iyy="0.000467706269" iyz="5.04572725e-05" izz="0.000177650714" />
</inertial>
</link>
<joint name="wrist2thumb" type="fixed">
<origin xyz="0.0240476665 0.00378124745 0.03232964923" rpy="3.14148426 0.08848813 3.14036612" />
<parent link="base" />
<child link="thumb_base" />
</joint>
<link name="thumb_base">
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/FB_palm_ref.STL" />
</geometry>
</visual>
<collision>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/palm_hull.STL" />
</geometry>
</collision>
</link>
<link name="index_L1">
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/idx-F1.STL" />
</geometry>
</visual>
<collision>
<origin xyz="0.0384727 0.0032577 0.0" rpy="0.0 0.0 0.0844739" />
<geometry>
<mesh filename="models/idx-F1-hull.STL" />
</geometry>
</collision>
<inertial>
<origin xyz="0.0177549969 -0.000213867669 -2.02851433e-05" rpy="0.0 0.0 0.0" />
<mass value="0.00636" />
<inertia ixx="2.85169621e-07" ixy="1.21454801e-08" ixz="2.02098452e-09" iyy="9.77683041e-07" iyz="-2.87547802e-10" izz="1.05411544e-06" />
</inertial>
</link>
<link name="index_L2">
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/idx-F2-Lg.STL" />
</geometry>
</visual>
<collision>
<origin xyz="0.0091241 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/idx-F2-Lg-hull.STL" />
</geometry>
</collision>
<inertial>
<origin xyz="0.01527234 -0.0100039197 -3.11063902e-05" rpy="0.0 0.0 0.0" />
<mass value="0.006" />
<inertia ixx="4.06340451e-07" ixy="3.99862338e-07" ixz="-1.91966414e-09" iyy="9.13745257e-07" iyz="8.96846813e-10" izz="1.13382499e-06" />
</inertial>
</link>
<joint name="index_q1" type="revolute">
<origin xyz="0.028 -0.009 0.096" rpy="1.47 -1.317 -1.352" />
<parent link="base" />
<child link="index_L1" />
<axis xyz="0.0 0.0 1.0" />
<limit effort="6.0" velocity="8.0677777442" lower="0.0" upper="2.0943951" />
<dynamics damping="0.001" friction="0.001" />
</joint>
<joint name="index_q2" type="revolute">
<origin xyz="0.038472723 0.003257695 0.0" rpy="0.0 0.0 0.084474" />
<parent link="index_L1" />
<child link="index_L2" />
<axis xyz="0.0 0.0 1.0" />
<limit effort="6.0" velocity="8.0677777442" lower="0.0" upper="2.6586" />
<dynamics damping="0.001" friction="0.001" />
</joint>
<link name="index_anchor" />
<joint name="idx_anchor" type="fixed">
<origin xyz="0.0315541 -0.01044 0.00014" rpy="0.0 0.0 0.0" />
<parent link="index_L2" />
<child link="index_anchor" />
</joint>
<link name="fsr0" />
<joint name="fsr0" type="fixed">
<origin xyz="0.02936 -0.01697 -0.00435" rpy="3.14 0.0 -0.1848" />
<parent link="index_L2" />
<child link="fsr0" />
</joint>
<link name="fsr1" />
<joint name="fsr1" type="fixed">
<origin xyz="0.02961 -0.01394 0.0" rpy="-1.5708 0.0 -0.2316" />
<parent link="index_L2" />
<child link="fsr1" />
</joint>
<link name="fsr2" />
<joint name="fsr2" type="fixed">
<origin xyz="0.02936 -0.01697 0.00435" rpy="0.0 0.0 -0.1848036056311012" />
<parent link="index_L2" />
<child link="fsr2" />
</joint>
<link name="fsr3" />
<joint name="fsr3" type="fixed">
<origin xyz="0.01472 -0.011 -0.00435" rpy="3.14159 0.0 -0.57092" />
<parent link="index_L2" />
<child link="fsr3" />
</joint>
<link name="fsr4" />
<joint name="fsr4" type="fixed">
<origin xyz="0.01472 -0.01099 0.00435" rpy="0.0 0.0 -0.57199" />
<parent link="index_L2" />
<child link="fsr4" />
</joint>
<link name="fsr5" />
<joint name="fsr5" type="fixed">
<origin xyz="0.03704 -0.01785 0.0" rpy="-2.66907 -1.5708 0.0" />
<parent link="index_L2" />
<child link="fsr5" />
</joint>
<link name="middle_L1">
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/idx-F1.STL" />
</geometry>
</visual>
<collision>
<origin xyz="0.0384727 0.0032577 0.0" rpy="0.0 0.0 0.0844739" />
<geometry>
<mesh filename="models/idx-F1-hull.STL" />
</geometry>
</collision>
<inertial>
<origin xyz="0.0177549969 -0.000213867669 -2.02851433e-05" rpy="0.0 0.0 0.0" />
<mass value="0.00636" />
<inertia ixx="2.85169621e-07" ixy="1.21454801e-08" ixz="2.02098452e-09" iyy="9.77683041e-07" iyz="-2.87547802e-10" izz="1.05411544e-06" />
</inertial>
</link>
<link name="middle_L2">
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/idx-F2-Lg.STL" />
</geometry>
</visual>
<collision>
<origin xyz="0.0091241 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/idx-F2-Lg-hull.STL" />
</geometry>
</collision>
<inertial>
<origin xyz="0.01527234 -0.0100039197 -3.11063902e-05" rpy="0.0 0.0 0.0" />
<mass value="0.006" />
<inertia ixx="4.06340451e-07" ixy="3.99862338e-07" ixz="-1.91966414e-09" iyy="9.13745257e-07" iyz="8.96846813e-10" izz="1.13382499e-06" />
</inertial>
</link>
<joint name="middle_q1" type="revolute">
<origin xyz="0.008 -0.012 0.099" rpy="1.629 -1.322 -1.583" />
<parent link="base" />
<child link="middle_L1" />
<axis xyz="0.0 0.0 1.0" />
<limit effort="6.0" velocity="8.0677777442" lower="0.0" upper="2.0943951" />
<dynamics damping="0.001" friction="0.001" />
</joint>
<joint name="middle_q2" type="revolute">
<origin xyz="0.038472723 0.003257695 0.0" rpy="0.0 0.0 0.084474" />
<parent link="middle_L1" />
<child link="middle_L2" />
<axis xyz="0.0 0.0 1.0" />
<limit effort="6.0" velocity="8.0677777442" lower="0.0" upper="2.6586" />
<dynamics damping="0.001" friction="0.001" />
</joint>
<link name="middle_anchor" />
<joint name="mid_anchor" type="fixed">
<origin xyz="0.0315541 -0.01044 0.00014" rpy="0.0 0.0 0.0" />
<parent link="middle_L2" />
<child link="middle_anchor" />
</joint>
<link name="fsr6" />
<joint name="fsr6" type="fixed">
<origin xyz="0.02936 -0.01697 -0.00435" rpy="3.14 0.0 -0.1848" />
<parent link="middle_L2" />
<child link="fsr6" />
</joint>
<link name="fsr7" />
<joint name="fsr7" type="fixed">
<origin xyz="0.02961 -0.01394 0.0" rpy="-1.5708 0.0 -0.2316" />
<parent link="middle_L2" />
<child link="fsr7" />
</joint>
<link name="fsr8" />
<joint name="fsr8" type="fixed">
<origin xyz="0.02936 -0.01697 0.00435" rpy="0.0 0.0 -0.1848036056311012" />
<parent link="middle_L2" />
<child link="fsr8" />
</joint>
<link name="fsr9" />
<joint name="fsr9" type="fixed">
<origin xyz="0.01472 -0.011 -0.00435" rpy="3.14159 0.0 -0.57092" />
<parent link="middle_L2" />
<child link="fsr9" />
</joint>
<link name="fsr10" />
<joint name="fsr10" type="fixed">
<origin xyz="0.01472 -0.01099 0.00435" rpy="0.0 0.0 -0.57199" />
<parent link="middle_L2" />
<child link="fsr10" />
</joint>
<link name="fsr11" />
<joint name="fsr11" type="fixed">
<origin xyz="0.03704 -0.01785 0.0" rpy="-2.66907 -1.5708 0.0" />
<parent link="middle_L2" />
<child link="fsr11" />
</joint>
<link name="ring_L1">
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/idx-F1.STL" />
</geometry>
</visual>
<collision>
<origin xyz="0.0384727 0.0032577 0.0" rpy="0.0 0.0 0.0844739" />
<geometry>
<mesh filename="models/idx-F1-hull.STL" />
</geometry>
</collision>
<inertial>
<origin xyz="0.0177549969 -0.000213867669 -2.02851433e-05" rpy="0.0 0.0 0.0" />
<mass value="0.00636" />
<inertia ixx="2.85169621e-07" ixy="1.21454801e-08" ixz="2.02098452e-09" iyy="9.77683041e-07" iyz="-2.87547802e-10" izz="1.05411544e-06" />
</inertial>
</link>
<link name="ring_L2">
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/idx-F2-Lg.STL" />
</geometry>
</visual>
<collision>
<origin xyz="0.0091241 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/idx-F2-Lg-hull.STL" />
</geometry>
</collision>
<inertial>
<origin xyz="0.01527234 -0.0100039197 -3.11063902e-05" rpy="0.0 0.0 0.0" />
<mass value="0.006" />
<inertia ixx="4.06340451e-07" ixy="3.99862338e-07" ixz="-1.91966414e-09" iyy="9.13745257e-07" iyz="8.96846813e-10" izz="1.13382499e-06" />
</inertial>
</link>
<joint name="ring_q1" type="revolute">
<origin xyz="-0.012 -0.01 0.097" rpy="1.78 -1.315 -1.811" />
<parent link="base" />
<child link="ring_L1" />
<axis xyz="0.0 0.0 1.0" />
<limit effort="6.0" velocity="8.0677777442" lower="0.0" upper="2.0943951" />
<dynamics damping="0.001" friction="0.001" />
</joint>
<joint name="ring_q2" type="revolute">
<origin xyz="0.038472723 0.003257695 0.0" rpy="0.0 0.0 0.084474" />
<parent link="ring_L1" />
<child link="ring_L2" />
<axis xyz="0.0 0.0 1.0" />
<limit effort="6.0" velocity="8.0677777442" lower="0.0" upper="2.6586" />
<dynamics damping="0.001" friction="0.001" />
</joint>
<link name="ring_anchor" />
<joint name="rng_anchor" type="fixed">
<origin xyz="0.0315541 -0.01044 0.00014" rpy="0.0 0.0 0.0" />
<parent link="ring_L2" />
<child link="ring_anchor" />
</joint>
<link name="fsr12" />
<joint name="fsr12" type="fixed">
<origin xyz="0.02936 -0.01697 -0.00435" rpy="3.14 0.0 -0.1848" />
<parent link="ring_L2" />
<child link="fsr12" />
</joint>
<link name="fsr13" />
<joint name="fsr13" type="fixed">
<origin xyz="0.02961 -0.01394 0.0" rpy="-1.5708 0.0 -0.2316" />
<parent link="ring_L2" />
<child link="fsr13" />
</joint>
<link name="fsr14" />
<joint name="fsr14" type="fixed">
<origin xyz="0.02936 -0.01697 0.00435" rpy="0.0 0.0 -0.1848036056311012" />
<parent link="ring_L2" />
<child link="fsr14" />
</joint>
<link name="fsr15" />
<joint name="fsr15" type="fixed">
<origin xyz="0.01472 -0.011 -0.00435" rpy="3.14159 0.0 -0.57092" />
<parent link="ring_L2" />
<child link="fsr15" />
</joint>
<link name="fsr16" />
<joint name="fsr16" type="fixed">
<origin xyz="0.01472 -0.01099 0.00435" rpy="0.0 0.0 -0.57199" />
<parent link="ring_L2" />
<child link="fsr16" />
</joint>
<link name="fsr17" />
<joint name="fsr17" type="fixed">
<origin xyz="0.03704 -0.01785 0.0" rpy="-2.66907 -1.5708 0.0" />
<parent link="ring_L2" />
<child link="fsr17" />
</joint>
<link name="pinky_L1">
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/idx-F1.STL" />
</geometry>
</visual>
<collision>
<origin xyz="0.0384727 0.0032577 0.0" rpy="0.0 0.0 0.0844739" />
<geometry>
<mesh filename="models/idx-F1-hull.STL" />
</geometry>
</collision>
<inertial>
<origin xyz="0.0177549969 -0.000213867669 -2.02851433e-05" rpy="0.0 0.0 0.0" />
<mass value="0.00636" />
<inertia ixx="2.85169621e-07" ixy="1.21454801e-08" ixz="2.02098452e-09" iyy="9.77683041e-07" iyz="-2.87547802e-10" izz="1.05411544e-06" />
</inertial>
</link>
<link name="pinky_L2">
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/idx-F2-Lg.STL" />
</geometry>
</visual>
<collision>
<origin xyz="0.0091241 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/idx-F2-hull.STL" />
</geometry>
</collision>
<inertial>
<origin xyz="0.0133249215 -0.00815894775 -4.07689501e-05" rpy="0.0 0.0 0.0" />
<mass value="0.006" />
<inertia ixx="3.07970159e-07" ixy="2.8092101e-07" ixz="-2.72117073e-09" iyy="7.40775495e-07" iyz="1.08144438e-09" izz="8.93728844e-07" />
</inertial>
</link>
<joint name="pinky_q1" type="revolute">
<origin xyz="-0.031 -0.007 0.091" rpy="1.731 -1.315 -1.828" />
<parent link="base" />
<child link="pinky_L1" />
<axis xyz="0.0 0.0 1.0" />
<limit effort="6.0" velocity="8.0677777442" lower="0.0" upper="2.0943951" />
<dynamics damping="0.001" friction="0.001" />
</joint>
<joint name="pinky_q2" type="revolute">
<origin xyz="0.038472723 0.003257695 0.0" rpy="0.0 0.0 0.084474" />
<parent link="pinky_L1" />
<child link="pinky_L2" />
<axis xyz="0.0 0.0 1.0" />
<limit effort="6.0" velocity="8.0677777442" lower="0.0" upper="2.6586" />
<dynamics damping="0.001" friction="0.001" />
</joint>
<link name="pinky_anchor" />
<joint name="pnky_anchor" type="fixed">
<origin xyz="0.0315541 -0.01044 0.00014" rpy="0.0 0.0 0.0" />
<parent link="pinky_L2" />
<child link="pinky_anchor" />
</joint>
<link name="fsr18" />
<joint name="fsr18" type="fixed">
<origin xyz="0.02556 -0.01391 -0.00435" rpy="3.14 0.0 -0.1848" />
<parent link="pinky_L2" />
<child link="fsr18" />
</joint>
<link name="fsr19" />
<joint name="fsr19" type="fixed">
<origin xyz="0.02517 -0.0111 -0.0" rpy="-1.5708 0.0 -0.2316" />
<parent link="pinky_L2" />
<child link="fsr19" />
</joint>
<link name="fsr20" />
<joint name="fsr20" type="fixed">
<origin xyz="0.02556 -0.01391 0.00435" rpy="0.0 0.0 -0.1848036056311012" />
<parent link="pinky_L2" />
<child link="fsr20" />
</joint>
<link name="fsr21" />
<joint name="fsr21" type="fixed">
<origin xyz="0.0131 -0.00943 -0.00435" rpy="3.14159 0.0 -0.57092" />
<parent link="pinky_L2" />
<child link="fsr21" />
</joint>
<link name="fsr22" />
<joint name="fsr22" type="fixed">
<origin xyz="0.0131 -0.00943 0.00435" rpy="0.0 0.0 -0.57199" />
<parent link="pinky_L2" />
<child link="fsr22" />
</joint>
<link name="fsr23" />
<joint name="fsr23" type="fixed">
<origin xyz="0.03142 -0.01438 0.0" rpy="-2.66907 -1.5708 0.0" />
<parent link="pinky_L2" />
<child link="fsr23" />
</joint>
<link name="thumb_L1">
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/thumb-F1.STL" />
</geometry>
</visual>
<inertial>
<origin xyz="0.01433502 -0.00188501 -0.00504062" rpy="0.0 0.0 0.0" />
<mass value="0.002" />
<inertia ixx="1.18180125e-07" ixy="2.01333778e-08" ixz="6.82164634e-08" iyy="2.49626759e-07" iyz="-8.51306376e-09" izz="2.02510886e-07" />
</inertial>
</link>
<link name="thumb_L2">
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0" />
<geometry>
<mesh filename="models/thumb-F2-left.STL" />
</geometry>
</visual>
<inertial>
<origin xyz="0.02776245 0.00562171 -0.00410855" rpy="0.0 0.0 0.0" />
<mass value="0.06" />
<inertia ixx="8.10858595e-06" ixy="-7.50865361e-06" ixz="-6.23775212e-08" iyy="2.16060962e-05" iyz="-1.00035818e-07" izz="2.58546356e-05" />
</inertial>
</link>
<joint name="thumb_q1" type="revolute">
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 3.330437" />
<parent link="thumb_base" />
<child link="thumb_L1" />
<axis xyz="0.0 0.0 1.0" />
<limit effort="1.2" velocity="40.338888721" lower="-2.0943951" upper="0.0" />
<dynamics damping="0.001" friction="0.001" />
</joint>
<joint name="thumb_q2" type="revolute">
<origin xyz="0.0278283501 0.0 -0.0147507" rpy="4.450589592585541 0.0 0.0" />
<parent link="thumb_L1" />
<child link="thumb_L2" />
<axis xyz="0.0 0.0 1.0" />
<limit effort="6.0" velocity="8.0677777442" lower="0.0" upper="2.0943951" />
<dynamics damping="0.001" friction="0.001" />
</joint>
<link name="thumb_anchor" />
<joint name="thmb_anchor" type="fixed">
<origin xyz="0.0520012259 0.0280086971 -0.000884835778" rpy="0.0 0.0 0.0" />
<parent link="thumb_L2" />
<child link="thumb_anchor" />
</joint>
<link name="fsr24" />
<joint name="fsr24" type="fixed">
<origin xyz="0.04747 0.01988 -0.00874" rpy="-2.29074 1e-05 0.41769" />
<parent link="thumb_L2" />
<child link="fsr24" />
</joint>
<link name="fsr25" />
<joint name="fsr25" type="fixed">
<origin xyz="0.04721 0.02124 -0.00106" rpy="-1.30899 1e-05 0.41769" />
<parent link="thumb_L2" />
<child link="fsr25" />
</joint>
<link name="fsr26" />
<joint name="fsr26" type="fixed">
<origin xyz="0.04896 0.01654 0.00491" rpy="-0.32726 1e-05 0.41769" />
<parent link="thumb_L2" />
<child link="fsr26" />
</joint>
<link name="fsr27" />
<joint name="fsr27" type="fixed">
<origin xyz="0.03739 0.01536 -0.00879" rpy="-2.29074 1e-05 0.41769" />
<parent link="thumb_L2" />
<child link="fsr27" />
</joint>
<link name="fsr28" />
<joint name="fsr28" type="fixed">
<origin xyz="0.03888 0.012 0.00494" rpy="-0.32726 1e-05 0.41769" />
<parent link="thumb_L2" />
<child link="fsr28" />
</joint>
<link name="fsr29" />
<joint name="fsr29" type="fixed">
<origin xyz="0.05591 0.0216 -0.00192" rpy="0.0 0.0 0.0" />
<parent link="thumb_L2" />
<child link="fsr29" />
</joint>
</robot>
robot.xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- generated by bam_robot_descriptions (mjcf backend), content e58c08b626897bae -->
<mujoco model="ability_hand">
<compiler angle="radian" autolimits="true" meshdir="assets/" inertiafromgeom="false" balanceinertia="false" />
<asset>
<mesh name="wristmesh" file="models/wristmesh.STL" />
<mesh name="FB_palm_ref" file="models/FB_palm_ref.STL" />
<mesh name="palm_hull" file="models/palm_hull.STL" />
<mesh name="idx-F1" file="models/idx-F1.STL" />
<mesh name="idx-F1-hull" file="models/idx-F1-hull.STL" />
<mesh name="idx-F2-Lg" file="models/idx-F2-Lg.STL" />
<mesh name="idx-F2-Lg-hull" file="models/idx-F2-Lg-hull.STL" />
<mesh name="idx-F2-hull" file="models/idx-F2-hull.STL" />
<mesh name="thumb-F1" file="models/thumb-F1.STL" />
<mesh name="thumb-F2-left" file="models/thumb-F2-left.STL" />
</asset>
<worldbody>
<body name="base">
<inertial pos="-0.00065452 -0.00598838 0.05077265" mass="0.37511" fullinertia="0.000376723021 0.000467706269 0.000177650714 2.33895423e-06 -6.0432515e-06 5.04572725e-05" />
<geom name="base_vis_0" type="mesh" mesh="wristmesh" contype="0" conaffinity="0" group="2" />
<body name="thumb_base" pos="0.0240476665 0.00378124745 0.03232964923" quat="0.04422965633392243 0.0006102695033793134 0.9990212031492024 2.701918460132315e-05">
<geom name="thumb_base_vis_0" type="mesh" mesh="FB_palm_ref" contype="0" conaffinity="0" group="2" />
<geom name="thumb_base_col_0" type="mesh" mesh="palm_hull" group="3" />
<body name="thumb_L1" quat="-0.09428193151902145 -0.0 0.0 0.9955455375767813">
<joint name="thumb_q1" type="hinge" axis="0.0 0.0 1.0" range="-2.0943951 0.0" damping="0.001" frictionloss="0.001" />
<inertial pos="0.01433502 -0.00188501 -0.00504062" mass="0.002" fullinertia="1.18180125e-07 2.49626759e-07 2.02510886e-07 2.01333778e-08 6.82164634e-08 -8.51306376e-09" />
<geom name="thumb_L1_vis_0" type="mesh" mesh="thumb-F1" contype="0" conaffinity="0" group="2" />
<body name="thumb_L2" pos="0.0278283501 0.0 -0.0147507" quat="-0.608761429008721 0.7933533402912348 0.0 -0.0">
<joint name="thumb_q2" type="hinge" axis="0.0 0.0 1.0" range="0.0 2.0943951" damping="0.001" frictionloss="0.001" />
<inertial pos="0.02776245 0.00562171 -0.00410855" mass="0.06" fullinertia="8.10858595e-06 2.16060962e-05 2.58546356e-05 -7.50865361e-06 -6.23775212e-08 -1.00035818e-07" />
<geom name="thumb_L2_vis_0" type="mesh" mesh="thumb-F2-left" contype="0" conaffinity="0" group="2" />
<body name="thumb_anchor" pos="0.0520012259 0.0280086971 -0.000884835778" />
<body name="fsr24" pos="0.04747 0.01988 -0.00874" quat="0.40374045705614464 -0.8910711858717572 -0.18884730273901776 0.0855714981369008" />
<body name="fsr25" pos="0.04721 0.02124 -0.00106" quat="0.7761160272526845 -0.5955318020024746 -0.12621013819979346 0.16448947097241476" />
<body name="fsr26" pos="0.04896 0.01654 0.00491" quat="0.9652035655202588 -0.1593621412437208 -0.03376941560117024 0.2045615105907054" />
<body name="fsr27" pos="0.03739 0.01536 -0.00879" quat="0.40374045705614464 -0.8910711858717572 -0.18884730273901776 0.0855714981369008" />
<body name="fsr28" pos="0.03888 0.012 0.00494" quat="0.9652035655202588 -0.1593621412437208 -0.03376941560117024 0.2045615105907054" />
<body name="fsr29" pos="0.05591 0.0216 -0.00192" />
</body>
</body>
</body>
<body name="index_L1" pos="0.028 -0.009 0.096" quat="0.7144400063266443 0.12970963360508214 -0.6859612470406294 -0.046989954974272385">
<joint name="index_q1" type="hinge" axis="0.0 0.0 1.0" range="0.0 2.0943951" damping="0.001" frictionloss="0.001" />
<inertial pos="0.0177549969 -0.000213867669 -2.02851433e-05" mass="0.00636" fullinertia="2.85169621e-07 9.77683041e-07 1.05411544e-06 1.21454801e-08 2.02098452e-09 -2.87547802e-10" />
<geom name="index_L1_vis_0" type="mesh" mesh="idx-F1" contype="0" conaffinity="0" group="2" />
<geom name="index_L1_col_0" type="mesh" mesh="idx-F1-hull" pos="0.0384727 0.0032577 0.0" quat="0.9991081526241755 0.0 0.0 0.04222439294894752" group="3" />
<body name="index_L2" pos="0.038472723 0.003257695 0.0" quat="0.9991081505129547 0.0 0.0 0.04222444290435509">
<joint name="index_q2" type="hinge" axis="0.0 0.0 1.0" range="0.0 2.6586" damping="0.001" frictionloss="0.001" />
<inertial pos="0.01527234 -0.0100039197 -3.11063902e-05" mass="0.006" fullinertia="4.06340451e-07 9.13745257e-07 1.13382499e-06 3.99862338e-07 -1.91966414e-09 8.96846813e-10" />
<geom name="index_L2_vis_0" type="mesh" mesh="idx-F2-Lg" contype="0" conaffinity="0" group="2" />
<geom name="index_L2_col_0" type="mesh" mesh="idx-F2-Lg-hull" pos="0.0091241 0.0 0.0" group="3" />
<body name="index_anchor" pos="0.0315541 -0.01044 0.00014" />
<body name="fsr0" pos="0.02936 -0.01697 -0.00435" quat="0.0007929297054977292 0.9957338406429027 -0.09226854535704028 -7.34759305251933e-05" />
<body name="fsr1" pos="0.02961 -0.01394 0.0" quat="0.7023697631044469 -0.7023723430573835 0.08170023445886072 -0.08169993435769374" />
<body name="fsr2" pos="0.02936 -0.01697 0.00435" quat="0.9957339900136656 0.0 0.0 -0.09227036973733936" />
<body name="fsr3" pos="0.01472 -0.011 -0.00435" quat="1.2731024509717032e-06 0.9595322187013208 -0.28159886589324246 -3.736239381776639e-07" />
<body name="fsr4" pos="0.01472 -0.01099 0.00435" quat="0.9593814259950478 0.0 0.0 -0.2821121753056903" />
<body name="fsr5" pos="0.03704 -0.01785 0.0" quat="0.16551179729769272 -0.6874620050248128 -0.16551240525758779 -0.6874645302183958" />
</body>
</body>
<body name="middle_L1" pos="0.008 -0.012 0.099" quat="0.6983690575757557 0.10381808880681137 -0.7045450471021337 -0.07154537344304002">
<joint name="middle_q1" type="hinge" axis="0.0 0.0 1.0" range="0.0 2.0943951" damping="0.001" frictionloss="0.001" />
<inertial pos="0.0177549969 -0.000213867669 -2.02851433e-05" mass="0.00636" fullinertia="2.85169621e-07 9.77683041e-07 1.05411544e-06 1.21454801e-08 2.02098452e-09 -2.87547802e-10" />
<geom name="middle_L1_vis_0" type="mesh" mesh="idx-F1" contype="0" conaffinity="0" group="2" />
<geom name="middle_L1_col_0" type="mesh" mesh="idx-F1-hull" pos="0.0384727 0.0032577 0.0" quat="0.9991081526241755 0.0 0.0 0.04222439294894752" group="3" />
<body name="middle_L2" pos="0.038472723 0.003257695 0.0" quat="0.9991081505129547 0.0 0.0 0.04222444290435509">
<joint name="middle_q2" type="hinge" axis="0.0 0.0 1.0" range="0.0 2.6586" damping="0.001" frictionloss="0.001" />
<inertial pos="0.01527234 -0.0100039197 -3.11063902e-05" mass="0.006" fullinertia="4.06340451e-07 9.13745257e-07 1.13382499e-06 3.99862338e-07 -1.91966414e-09 8.96846813e-10" />
<geom name="middle_L2_vis_0" type="mesh" mesh="idx-F2-Lg" contype="0" conaffinity="0" group="2" />
<geom name="middle_L2_col_0" type="mesh" mesh="idx-F2-Lg-hull" pos="0.0091241 0.0 0.0" group="3" />
<body name="middle_anchor" pos="0.0315541 -0.01044 0.00014" />
<body name="fsr6" pos="0.02936 -0.01697 -0.00435" quat="0.0007929297054977292 0.9957338406429027 -0.09226854535704028 -7.34759305251933e-05" />
<body name="fsr7" pos="0.02961 -0.01394 0.0" quat="0.7023697631044469 -0.7023723430573835 0.08170023445886072 -0.08169993435769374" />
<body name="fsr8" pos="0.02936 -0.01697 0.00435" quat="0.9957339900136656 0.0 0.0 -0.09227036973733936" />
<body name="fsr9" pos="0.01472 -0.011 -0.00435" quat="1.2731024509717032e-06 0.9595322187013208 -0.28159886589324246 -3.736239381776639e-07" />
<body name="fsr10" pos="0.01472 -0.01099 0.00435" quat="0.9593814259950478 0.0 0.0 -0.2821121753056903" />
<body name="fsr11" pos="0.03704 -0.01785 0.0" quat="0.16551179729769272 -0.6874620050248128 -0.16551240525758779 -0.6874645302183958" />
</body>
</body>
<body name="ring_L1" pos="-0.012 -0.01 0.097" quat="0.681150810605037 0.07705370544005541 -0.7213432087032365 -0.09879410381078968">
<joint name="ring_q1" type="hinge" axis="0.0 0.0 1.0" range="0.0 2.0943951" damping="0.001" frictionloss="0.001" />
<inertial pos="0.0177549969 -0.000213867669 -2.02851433e-05" mass="0.00636" fullinertia="2.85169621e-07 9.77683041e-07 1.05411544e-06 1.21454801e-08 2.02098452e-09 -2.87547802e-10" />
<geom name="ring_L1_vis_0" type="mesh" mesh="idx-F1" contype="0" conaffinity="0" group="2" />
<geom name="ring_L1_col_0" type="mesh" mesh="idx-F1-hull" pos="0.0384727 0.0032577 0.0" quat="0.9991081526241755 0.0 0.0 0.04222439294894752" group="3" />
<body name="ring_L2" pos="0.038472723 0.003257695 0.0" quat="0.9991081505129547 0.0 0.0 0.04222444290435509">
<joint name="ring_q2" type="hinge" axis="0.0 0.0 1.0" range="0.0 2.6586" damping="0.001" frictionloss="0.001" />
<inertial pos="0.01527234 -0.0100039197 -3.11063902e-05" mass="0.006" fullinertia="4.06340451e-07 9.13745257e-07 1.13382499e-06 3.99862338e-07 -1.91966414e-09 8.96846813e-10" />
<geom name="ring_L2_vis_0" type="mesh" mesh="idx-F2-Lg" contype="0" conaffinity="0" group="2" />
<geom name="ring_L2_col_0" type="mesh" mesh="idx-F2-Lg-hull" pos="0.0091241 0.0 0.0" group="3" />
<body name="ring_anchor" pos="0.0315541 -0.01044 0.00014" />
<body name="fsr12" pos="0.02936 -0.01697 -0.00435" quat="0.0007929297054977292 0.9957338406429027 -0.09226854535704028 -7.34759305251933e-05" />
<body name="fsr13" pos="0.02961 -0.01394 0.0" quat="0.7023697631044469 -0.7023723430573835 0.08170023445886072 -0.08169993435769374" />
<body name="fsr14" pos="0.02936 -0.01697 0.00435" quat="0.9957339900136656 0.0 0.0 -0.09227036973733936" />
<body name="fsr15" pos="0.01472 -0.011 -0.00435" quat="1.2731024509717032e-06 0.9595322187013208 -0.28159886589324246 -3.736239381776639e-07" />
<body name="fsr16" pos="0.01472 -0.01099 0.00435" quat="0.9593814259950478 0.0 0.0 -0.2821121753056903" />
<body name="fsr17" pos="0.03704 -0.01785 0.0" quat="0.16551179729769272 -0.6874620050248128 -0.16551240525758779 -0.6874645302183958" />
</body>
</body>
<body name="pinky_L1" pos="-0.031 -0.007 0.091" quat="0.6818196594990589 0.05423294374433818 -0.7191934681759405 -0.12223540839901231">
<joint name="pinky_q1" type="hinge" axis="0.0 0.0 1.0" range="0.0 2.0943951" damping="0.001" frictionloss="0.001" />
<inertial pos="0.0177549969 -0.000213867669 -2.02851433e-05" mass="0.00636" fullinertia="2.85169621e-07 9.77683041e-07 1.05411544e-06 1.21454801e-08 2.02098452e-09 -2.87547802e-10" />
<geom name="pinky_L1_vis_0" type="mesh" mesh="idx-F1" contype="0" conaffinity="0" group="2" />
<geom name="pinky_L1_col_0" type="mesh" mesh="idx-F1-hull" pos="0.0384727 0.0032577 0.0" quat="0.9991081526241755 0.0 0.0 0.04222439294894752" group="3" />
<body name="pinky_L2" pos="0.038472723 0.003257695 0.0" quat="0.9991081505129547 0.0 0.0 0.04222444290435509">
<joint name="pinky_q2" type="hinge" axis="0.0 0.0 1.0" range="0.0 2.6586" damping="0.001" frictionloss="0.001" />
<inertial pos="0.0133249215 -0.00815894775 -4.07689501e-05" mass="0.006" fullinertia="3.07970159e-07 7.40775495e-07 8.93728844e-07 2.8092101e-07 -2.72117073e-09 1.08144438e-09" />
<geom name="pinky_L2_vis_0" type="mesh" mesh="idx-F2-Lg" contype="0" conaffinity="0" group="2" />
<geom name="pinky_L2_col_0" type="mesh" mesh="idx-F2-hull" pos="0.0091241 0.0 0.0" group="3" />
<body name="pinky_anchor" pos="0.0315541 -0.01044 0.00014" />
<body name="fsr18" pos="0.02556 -0.01391 -0.00435" quat="0.0007929297054977292 0.9957338406429027 -0.09226854535704028 -7.34759305251933e-05" />
<body name="fsr19" pos="0.02517 -0.0111 -0.0" quat="0.7023697631044469 -0.7023723430573835 0.08170023445886072 -0.08169993435769374" />
<body name="fsr20" pos="0.02556 -0.01391 0.00435" quat="0.9957339900136656 0.0 0.0 -0.09227036973733936" />
<body name="fsr21" pos="0.0131 -0.00943 -0.00435" quat="1.2731024509717032e-06 0.9595322187013208 -0.28159886589324246 -3.736239381776639e-07" />
<body name="fsr22" pos="0.0131 -0.00943 0.00435" quat="0.9593814259950478 0.0 0.0 -0.2821121753056903" />
<body name="fsr23" pos="0.03142 -0.01438 0.0" quat="0.16551179729769272 -0.6874620050248128 -0.16551240525758779 -0.6874645302183958" />
</body>
</body>
</body>
</worldbody>
<contact>
<exclude body1="base" body2="thumb_base" />
<exclude body1="base" body2="index_L1" />
<exclude body1="index_L1" body2="index_L2" />
<exclude body1="index_L2" body2="index_anchor" />
<exclude body1="index_L2" body2="fsr0" />
<exclude body1="index_L2" body2="fsr1" />
<exclude body1="index_L2" body2="fsr2" />
<exclude body1="index_L2" body2="fsr3" />
<exclude body1="index_L2" body2="fsr4" />
<exclude body1="index_L2" body2="fsr5" />
<exclude body1="base" body2="middle_L1" />
<exclude body1="middle_L1" body2="middle_L2" />
<exclude body1="middle_L2" body2="middle_anchor" />
<exclude body1="middle_L2" body2="fsr6" />
<exclude body1="middle_L2" body2="fsr7" />
<exclude body1="middle_L2" body2="fsr8" />
<exclude body1="middle_L2" body2="fsr9" />
<exclude body1="middle_L2" body2="fsr10" />
<exclude body1="middle_L2" body2="fsr11" />
<exclude body1="base" body2="ring_L1" />
<exclude body1="ring_L1" body2="ring_L2" />
<exclude body1="ring_L2" body2="ring_anchor" />
<exclude body1="ring_L2" body2="fsr12" />
<exclude body1="ring_L2" body2="fsr13" />
<exclude body1="ring_L2" body2="fsr14" />
<exclude body1="ring_L2" body2="fsr15" />
<exclude body1="ring_L2" body2="fsr16" />
<exclude body1="ring_L2" body2="fsr17" />
<exclude body1="base" body2="pinky_L1" />
<exclude body1="pinky_L1" body2="pinky_L2" />
<exclude body1="pinky_L2" body2="pinky_anchor" />
<exclude body1="pinky_L2" body2="fsr18" />
<exclude body1="pinky_L2" body2="fsr19" />
<exclude body1="pinky_L2" body2="fsr20" />
<exclude body1="pinky_L2" body2="fsr21" />
<exclude body1="pinky_L2" body2="fsr22" />
<exclude body1="pinky_L2" body2="fsr23" />
<exclude body1="thumb_base" body2="thumb_L1" />
<exclude body1="thumb_L1" body2="thumb_L2" />
<exclude body1="thumb_L2" body2="thumb_anchor" />
<exclude body1="thumb_L2" body2="fsr24" />
<exclude body1="thumb_L2" body2="fsr25" />
<exclude body1="thumb_L2" body2="fsr26" />
<exclude body1="thumb_L2" body2="fsr27" />
<exclude body1="thumb_L2" body2="fsr28" />
<exclude body1="thumb_L2" body2="fsr29" />
</contact>
</mujoco>
Import report
Counts
| Links | 47 |
|---|---|
| Joints | 46 |
| Moving joints | 10 |
| Visuals | 12 |
| Collisions | 9 |
| Materials | 0 |
Meshes
Formats: stl.
Asset size: 2.9 MB.
Dropped on import
| Tag | Count | Why |
|---|---|---|
@name | 21 | visual names are not carried; the geometry is kept |
@rrpy | 1 | attribute 'rrpy' is not part of the URDF subset RobotDescription mirrors |
mimic | 4 | joint coupling (mimic) is not representable yet; the joint imports as independent |
Forward-kinematics check
Forward kinematics of 47 link frames at 20 random joint positions within limits, original URDF against robot.urdf, computed by pinocchio 3.8.0. Worst difference: 0.0e+00 m · 5.9e-16 rad.
MuJoCo
robot.xml compiles in MuJoCo with its meshes (nq = 10).
Source & licence
| Repository | https://github.com/psyonicinc/ability-hand-api |
|---|---|
| Commit | 89407424edfc22faceaedcd7c3ea2b7947cbbb2c |
| Original file | URDF/ability_hand_left_large.urdf |
| Licence | MIT · the upstream LICENSE file |
| Files | robot.urdf · robot.xml |
Meshes are copied verbatim from the repository at the pinned commit and keep their upstream licence.