TF命令行操作
ROS中的TF該如何使用呢?我們先通過兩只小海龜的示例,了解下基于坐標系的一種機器人跟隨算法。
小海龜跟隨例程
這個示例需要我們先安裝相應的功能包,然后就可以通過一個launch文件啟動,之后我們可以控制其中的一只小海龜,另外一只小海龜會自動跟隨運動。
** sudo apt install ros-humble-turtle-tf2-py ros-humble-tf2-tools** sudo pip3 install transforms3d
具體運行的效果如何?我們來試一試。
** ros2 launch turtle_tf2_py turtle_tf2_demo.launch.py** ros2 run turtlesim turtle_teleop_key
當我們控制一只海龜運動時,另外一只海龜也會跟隨運動。
查看TF樹
在當前運行的兩只海龜中,有哪些坐標系呢,我們可以通過這個小工具來做查看。
$ ros2 run tf2_tools view_frames
默認在當前終端路徑下生成了一個frames.pdf文件,打開之后,就可以看到系統中各個坐標系的關系了。
查詢坐標變換信息
只看到坐標系的結構還不行,如果我們想要知道某兩個坐標系之間的具體關系,可以通過tf2_echo這個工具查看:
$ ros2 run tf2_ros tf2_echo turtle2 turtle1
運行成功后,終端中就會循環打印坐標系的變換數值了,由平移和旋轉兩個部分組成,還有旋轉矩陣。
坐標系可視化
看數值還不直觀?可以試試用可視化軟件來做顯示:
** ros2 run rviz2 rviz2 -d **(ros2 pkg prefix --share turtle_tf2_py)/rviz/turtle_rviz.rviz
再讓小海龜動起來,Rviz中的坐標軸就會開始運動,這樣是不是更加直觀了呢!
-
機器人
+關注
關注
211文章
28418瀏覽量
207095 -
控制
+關注
關注
4文章
1011瀏覽量
122666 -
ROS
+關注
關注
1文章
278瀏覽量
17009
發布評論請先 登錄
相關推薦
評論