Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Using tf2 with ROS 2
There is preliminary support for tf2 in ROS 2. We rely heavily on tf2 in ROS 1 to manage data about coordinate transforms, and we expect to continue to use extensively in ROS 2.
Here's how to try it out. In each shell, be sure to start by sourcing the ROS 2 setup file as usual (e.g. on Linux
. ~/ros2_ws/install/setup.bash or on Windows
Publishing transform data
First run the static_transform_publisher to generate
ros2 run tf2_ros static_transform_publisher 1 2 3 0.5 0.1 -1.0 foo bar
That tool will publish a static transform from the parent frame
foo to the child frame
bar with (X, Y, Z) translation (1, 2, 3) and (roll, pitch, yaw) rotation (0.5, 0.1, -1.0).
Receiving transform data
Now we can check whether it's possible to receive that transform data with
ros2 run tf2_ros tf2_echo foo bar
You should see repeated output similar to this:
At time 0.0 - Translation: [1.000, 2.000, 3.000] - Rotation: in Quaternion [-0.475, -0.076, 0.240, 0.843]
tf2_echo is reporting the rotation as a quaternion as opposed to roll, pitch, and yaw.