ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
The key here is understanding that with /tf
the geometry of your system must be specified as a tree. Importantly, every frame can have unlimited children, but only a single parent. The edges between the nodes in the tree are the transform information from the parent to the child. There is no concept of "world" frame, unless you specifically add a "world" frame to your tree.
For your system, there are several ways you could specify the geometry of your robot:
hokuyo1_frame
as the root. Then you would want to create two static transform publishers; one from hokuyo1_frame
-> hokuyo2_frame
and one from hokuyo1_frame
->Scanner_frame1
(or you could go from hokuyo2_frame
->Scanner_frame1
.base_link
frame, then you could make that the root of your tree, and then specify static transforms from base_link
to all three laser frames./tf
information.2 | No.2 Revision |
The key here is understanding that with /tf
the geometry of your system must be specified as a tree. Importantly, every frame can have unlimited children, but only a single parent. The edges between the nodes in the tree are the transform information from the parent to the child. There is no concept of "world" frame, unless you specifically add a "world" frame to your tree.
For your system, there are several ways you could specify the geometry of your robot:
hokuyo1_frame
as the root. Then you would want to create two static transform publishers; one from hokuyo1_frame
-> hokuyo2_frame
and one from hokuyo1_frame
->Scanner_frame1
hokuyo2_frame
->Scanner_frame1
base_link
frame, then you could make that the root of your tree, and then specify static transforms from base_link
to all three laser frames./tf
information.