1. 程式人生 > >ROS常用命令列總結

ROS常用命令列總結

Filesystem Management Tools

rospack

獲取程式包的有關資訊。
rospack find [package] 返回程式包的路徑。
rospack list 獲取所有的程式包。

roscd

切換(cd)工作目錄到某個程式包(或其子目錄)。
roscd [package[/subdir]]

rosls

直接按程式包的名稱執行ls命令。
rosls [package[/subdir]]

catkin_create_pkg

建立包

catkin_make

編譯ros工作空間

rosdep

一個能夠下載並安裝ROS packages所需要的系統依賴項的工具。
rosdep install [package]

roswtf

可以檢查你的ROS系統並嘗試發現問題。
roswtf or roswtf [file]
參考:roswtf入門

Start-up and Process Launch Tools

roscore

rosrun

執行ros包中的一個可執行檔案
rosrun package_name executable_name

ruslaunch

啟動roscore,本地節點,遠端節點(通過ssh),設定引數伺服器引數。
roslaunch package_name file_name.launch啟動包中的一個檔案。
roslaunch -p 1234 package_name file_name.launch


roslaunch --local package_name file_name.launch

Logging Tools

記錄和回放ROS topic資料。
rosbag record -a 記錄所有topic資料。
rosbag record topic1 topic2
rosbag record -O subset /turtle1/command_velocity /turtle1/pose命令中的-O引數告訴rosbag record將資料記錄儲存到名為subset.bag的檔案中,同時後面的話題引數告訴rosbag record只能錄製這兩個指定的話題。
rosbag play <your bagfile>

回放bag檔案以再現系統執行過程
rosbag info <your bagfile>檢視bag檔案中的內容而無需回放出來

rqt_console

rqt_console過濾和顯示釋出在rosout上的資訊。

rqt_bag

視覺化、檢查和重放bag檔案。
rqt_bag bag_file.bag 視覺化bag。

rqt_logger_level

改變ros節點的logger等級。

Introspection Command Tools

rosmsg/rossrv

顯示msg/srv資料相關資訊。
rosmsg show [msg/srv] 檢視msg/srv的詳細內容。
rosmsg list顯示所有的msg/srv
rosmsg package [package_name] 列出某個包下所有的msg/srv
rosmsg packages [msg] 列出所有使用msg/srv的程式包。

rosnode

顯示當前執行的節點資訊。
rosnode ping測試到某個節點的連通性。
rosnode list:列出活躍的節點。
rosnode info [node_name]:返回一個特定節點的資訊。
rosnode kill -a殺死所有的節點。

rostopic

獲取topic的相關資訊, 包括髮布者、訂閱者、釋出頻率和messages。
rostopic pub [topic] [msg_type] [args] 釋出資料到topic。參見:http://wiki.ros.org/rostopic#rostopic_pub
rostopic echo [topic]顯示在某個話題上釋出的資料
rostopic findrostopic bw
rostopic hz [topic]檢視資料釋出的頻率。
rostopic info [topic]返回一個特定節點的資訊。
rostopic list列出所有當前訂閱和釋出的話題。
rostopic type [topic]檢視釋出在某個話題上的訊息型別。

rosparam

獲取和設定ros引數伺服器(Parameter Server)上的資料。
rosparam set 設定引數
rosparam get 獲取引數
rosparam get /:顯示引數伺服器上的所有內容。
rosparam load [file_name] [namespace] 從檔案讀取引數
rosparam dump [file_name] 向檔案中寫入引數
rosparam delete 刪除引數
rosparam list 列出引數名

rosservice

rosservice list 輸出可用服務的資訊
rosservice call [service] [args] 呼叫帶引數的服務
rosservice type [service] 輸出服務型別
rosservice find [srv] 列出一個srv型別的所有服務
rosservice uri 輸出服務的ROSRPC uri
rosservice node 列印服務的節點名
rosservice args 列出服務的引數。

rqt_topic

rqt_msg, rqt_srv and rqt_action

rqt_publisher and rqt_service_caller

rqt_graph and rqt_dep

rqt_graph
rqt_dep

rqt_top

rqt_reconfigure

Development Environment

rqt_shell and rqt_py_console

Data Visualization Tools

tf Tree

tf_echo

rosrun tf tf_echo <source_frame> <target_frame>

view_frames

rqt_plot

視覺化topic資料。

rqt_image_view

rqt_image_view

ROS Catkin Workspaces

Create a catkin workspace

source /opt/ros/kinetic/setup.bash
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace

Checkout an existing ROS package

cd ~/catkin ws/src
wstool init
wstool set tutorials --git git://github.com/ros/ros tutorials.git
wstool update

Create a new catkin ROS package

catkin create pkg <package name> [depend1] [depend2]

Build all packageds in a workspace

$ cd ~/catkin_ws
$ catkin_make
$ source devel/setup.bash