ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

This is because I have been told the URDF axis orientation for the robot I am looking at is different to those you would find in a Denavit Hartenberg analysis

Yes, that is most definitely true, unless the person modelling the robot you are lookin at based it on D-H in the first place. For the KR210 you mention (this one?), that is most likely not the case.

URDF supports an arbitrary axis of rotation, where D-H requires / assumes the Z axis to always be used. Additionally, frames in ROS are supposed / required to follow REP-103 for chirality and axis orientation, and I don't believe that is compatible with D-H conventions necessarily.


But if I understand you correctly, then the "link axes" you are referring to are in fact what you are looking for.

The joint element in a urdf/xacro actually defines the transform from a parent link to a child link. After the transform tree is setup, the transforms of joints that are not of type fixed are used in FK to update the pose of all link frames according to values in JointState messages. But the joint elements themselves are really not used much any more.

link origins in ROS / urdf are not in their 'centre', so the transform from parent to child links actually defines the location of what you call 'joint axes'.

In summary: look at the links in a urdf to find the 'joint axes' you are after.


Some related links: