警告

您正在阅读的 ROS 2 文档版本已达到 EOL(生命周期结束),不再受官方支持。如果您想了解最新信息,请访问 Jazzy.

将 tf2 与 ROS 2 结合使用

初步支持 tf2 我们在 ROS 1 中非常依赖 tf2 来管理坐标变换数据,预计在 ROS 2 中也会继续广泛使用。

下面是试用方法。在每个 shell 中,请务必像往常一样从 ROS 2 的设置文件(例如,在 Linux 下 . ~/ros2_ws/install/setup.bash 或在 Windows 致电 C:/dev\ros2\install\setup.bat).

发布转换数据

首先运行 静态转换发布者 以产生 tf2 数据

玫瑰2 运行 tf2_ros 静态转换发布者 1 2 3 0.5 0.1 -1.0 动物 酒吧

该工具将从父框架发布静态变换 动物 到子帧 酒吧 X、Y、Z)平移(1、2、3)和(偏航、俯仰、滚动)身体固定轴旋转序列(0.5、0.1、-1.0)。

接收转换数据

现在,我们可以用 tf2_echo:

玫瑰2 运行 tf2_ros tf2_echo 动物 酒吧

您应该会看到类似下面的重复输出:

 时间 0.0 - 翻译: [1.000, 2.000, 3.000]
- 轮换:  四元数 [-0.475, -0.076, 0.240, 0.843]

请注意 tf2_echo 是以四元数报告旋转,而不是滚动、俯仰和偏航。