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

Is a Joint in URDF a frame in tf?

asked 2018-03-27 11:19:34 -0500

MechLc gravatar image

Hi everyone! I know this might sound silly but I just want to ask simple question to reassure myself. Is a joint in a URDF considered a frame in the TF library? Thanks!

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2018-03-27 11:26:49 -0500

gvdhoorn gravatar image

updated 2018-03-27 11:29:58 -0500

A joint in your urdf defines the transform between two links, which are represented in your TF tree as frames.

So a revolute joint joint_1 between link_1 and link_2 for which JointState messages are being published will cause robot_state_publisher (in this example) to update the relative pose of link_2 wrt link_1 based on the transform specified by the origin tag of joint_1. Rotation will be around the origin of link_1 (plus or minus some offset specified by the joint).

Is a joint in a URDF considered a frame in the TF library?

So I believe the answer would be "no, but links are".

Edit: note that the origin element in your urdf specifies the transform between links with the robot in it's zero pose. Afterwards those transforms are updated based on JointState messages.

edit flag offensive delete link more


Oh! makes sense! Thank you so much!


rosrun tf view_frames

confirms it

MechLc gravatar image MechLc  ( 2018-03-27 11:34:56 -0500 )edit

Question Tools



Asked: 2018-03-27 11:19:34 -0500

Seen: 867 times

Last updated: Mar 27 '18