5.5 坐標(biāo)變換工具
5.5 坐標(biāo)變換工具
在 ROS2 的 TF 框架中除了封裝了坐標(biāo)廣播與訂閱功能外,還提供了一些工具,可以幫助我們提高開發(fā)、調(diào)試效率。本節(jié)主要介紹這些工具的使用,這些工具主要涉及到兩個(gè)功能包:tf2_ros
和tf2_tools
。
tf2_ros
包中提供的常用節(jié)點(diǎn)如下:
static_transform_publisher:該節(jié)點(diǎn)用于廣播靜態(tài)坐標(biāo)變換;
tf2_monitor:該節(jié)點(diǎn)用于打印所有或特定坐標(biāo)系的發(fā)布頻率與網(wǎng)絡(luò)延遲;
tf2_echo:該節(jié)點(diǎn)用于打印特定坐標(biāo)系的平移旋轉(zhuǎn)關(guān)系。
tf2_tools
包中提供的節(jié)點(diǎn)如下:
view_frames:該節(jié)點(diǎn)可以生成顯示坐標(biāo)系關(guān)系的 pdf 文件,該文件包含樹形結(jié)構(gòu)的坐標(biāo)系圖譜。
上述諸多工具中,功能包tf2_ros
中的static_transform_publisher
節(jié)點(diǎn)在?5.3.2 靜態(tài)廣播器(命令)一節(jié)中已有詳細(xì)說明,本節(jié)不再介紹。
準(zhǔn)備工作:
為了更好的演示工具的使用,請(qǐng)先啟動(dòng)若干坐標(biāo)系廣播節(jié)點(diǎn),比如:可以按照5.3.2 靜態(tài)廣播器(命令)和?5.3.5 動(dòng)態(tài)廣播器(C++)廣播一些坐標(biāo)系消息。
1.tf2_monitor
1.1打印所有坐標(biāo)系的發(fā)布頻率與網(wǎng)絡(luò)延遲
終端執(zhí)行命令:
ros2 run tf2_ros tf2_monitor
運(yùn)行結(jié)果:

1.2打印指定坐標(biāo)系的發(fā)布頻率與網(wǎng)絡(luò)延遲
終端執(zhí)行命令:
ros2 run tf2_ros tf2_monitor camera laser
運(yùn)行結(jié)果:

2.tf2_echo
打印兩個(gè)坐標(biāo)系的平移旋轉(zhuǎn)關(guān)系。
終端執(zhí)行命令:
ros2 run tf2_ros tf2_echo world turtle1
運(yùn)行結(jié)果:

3.view_frames
以圖形化的方式顯示坐標(biāo)系關(guān)系。
終端執(zhí)行命令:
ros2 run tf2_tools view_frames
運(yùn)行結(jié)果:將會(huì)生成 frames_xxxx.gv 與 frames_xxxx.pdf 文件,其中 xxxx 為時(shí)間戳。打開 pdf 文件顯示如下內(nèi)容:


B站有完整的ros系列教程視頻,可以觀看完整內(nèi)容ros課程ROS2理論與實(shí)踐
更多內(nèi)容將在猛獅知識(shí)星球社區(qū)更新最新課程,后續(xù)將推出更多優(yōu)質(zhì)內(nèi)容——詳情可關(guān)注猛獅集訓(xùn)營公眾號(hào)和猛獅集訓(xùn)營官方網(wǎng)站。