官术网_书友最值得收藏!

1.4 ROS調試工具

雖然ROS系統很復雜,但其附帶了大量工具用于ROS開發調試。這些調試工具大致分為命令行工具和可視化工具兩種,掌握這些工具能夠大大提高開發效率。

1.4.1 命令行工具

ROS提供了命令行工具,能在shell終端直接輸入命令并使用,其類似于Linux命令。這里對經常用到的命令進行介紹,比如運行、信息顯示、catkin操作和功能包操作。想了解更多ROS命令,可以參考官方wiki教程[1]

運行相關的命令主要有roscore、rosrun和roslaunch。其中roscore是啟動主節點的命令,rosrun是啟動單個節點的命令,roslaunch是同時啟動多個節點的命令。

信息顯示相關的命令主要有rosnode、rostopic、rosservice、rosparam、rosmsg、rossrv和rosbag。rosnode是與節點相關的命令,rostopic是與話題相關的命令,rosservice是與服務相關的命令,rosparam是與參數相關的命令,rosmsg是與消息類型相關的命令,rossrv是與服務類型相關的命令,rosbag是與數據包相關的命令。

catkin操作相關的命令主要有catkin_init_workspace、catkin_create_pkg和catkin_make。catkin_init_workspace是初始化catkin工作空間的命令,catkin_create_pkg是創建功能包的命令,catkin_make是編譯功能包的命令。

功能包操作相關的命令主要有rospack、rosinstall和rosdep。rospack是查詢功能包信息的命令,rosinstall是安裝功能包更新的命令,rosdep是功能包依賴的命令。

1.4.2 可視化工具

除了上面提到的命令行工具,這里的可視化工具是對調試工作很好的補充。下面介紹rviz和rqt兩個開發過程中頻繁使用的可視化工具。

rviz是ROS自帶的三維可視化工具,可以讓用戶通過圖形界面非常方便地開發、調試ROS。比如可視化顯示激光雷達、深度相機、超聲波等傳感器的數據,機器人的三維幾何模型,路徑規劃實時軌跡與發送導航目標點等。啟動rviz的方法很簡單,命令如下。

#在終端先啟動roscore
roscore
#在另一個終端啟動rviz
rviz

除了上面的rviz可視化工具,ROS中還支持用戶自己開發的可視化工具rqt。rqt是基于Qt開發的,因此rqt用戶可以自由添加和編寫插件來實現自己的功能。啟動rqt主界面的方法很簡單,命令如下。

#在終端先啟動roscore
roscore
#在另一個終端啟動rqt
rqt

rqt包含的插件非常豐富,一些很常用的rqt插件包括rqt_graph、rqt_tf_tree、rqt_plot、rqt_reconfigure、rqt_image_view和rqt_bag。rqt_graph用于顯示ROS網絡中節點連接關系圖,rqt_tf_tree用于顯示ROS網絡中tf關系樹狀圖,rqt_plot用于為ROS中的消息數據繪制曲線圖,rqt_reconfigure用于在圖形界面中配置ROS參數,rqt_image_view用于顯示ROS中的圖像數據,rqt_bag用于顯示rosbag文件中的數據結構。除了從rqt主界面啟動rqt的各種插件,還可以在命令行中直接啟動某個rqt插件。以rqt_graph插件為例,啟動方法如下。

#在終端先啟動roscore
roscore
#在另一個終端啟動rqt_graph插件
rqt_graph

[1]參見http://wiki.ros.org/ROS/CommandLineTools

主站蜘蛛池模板: 郑州市| 澄江县| 梁河县| 博野县| 江孜县| 茌平县| 保定市| 邵武市| 化德县| 长武县| 铜陵市| 图木舒克市| 遵义市| 滦平县| 芦溪县| 宁南县| 阜新| 阿拉善盟| 庄河市| 古蔺县| 临颍县| 常德市| 沐川县| 昌吉市| 青田县| 博白县| 荔浦县| 丰顺县| 腾冲县| 达州市| 丰顺县| 奉贤区| 卓资县| 新营市| 卫辉市| 泸西县| 盐边县| 开封市| 合肥市| 马公市| 烟台市|