- ROS 2機器人開發:從入門到實踐
- 桑欣
- 396字
- 2024-10-14 16:11:37
1.3.3 海龜例子的簡單分析
為什么我們在鍵盤控制窗口通過按鍵就可以實現對海龜模擬器窗口的控制呢?其背后肯定是通過某種機制聯系在了一起,通過ROS 2提供的節點關系圖工具可以快速查看其聯系,我們來試試看。
不要關閉模擬器和鍵盤控制終端,再次打開一個新的終端,輸入代碼清單1-8中的命令,就可以打開如圖1-22所示的默認rqt界面。
代碼清單1-8 打開rqt工具的命令


圖1-22 默認rqt界面
接著在rqt工具欄選擇Plugins→Introspection→Node Graph選項,打開后單擊左上角的刷新按鈕,獲取當前系統最新的節點關系,如圖1-23所示。

圖1-23 Node Graph插件界面
從圖1-23可以看出,有一條線從鍵盤控制節點/teleop_turtle指向海龜節點/turtlesim,該線上標記著/turtule1/cmd_vel。這個/turtule1/cmd_vel就是話題名稱,這條線的起點(鍵盤控制節點)就是話題的發布者,終點(海龜節點)就是話題的訂閱者,所以海龜節點和鍵盤控制節點就是通過四大通信機制之一的話題通信進行連接的。
通過rqt這一強大的調試工具,我們很快就完成“斷案”,從這一點你也可以感受到ROS 2的工具之豐富。