ROS 1 常用指令列表
1. 工作區管理 (catkin_ws
)
2. 節點與主題 (Nodes and Topics)
3. 服務與參數 (Services and Parameters)
4. 轉換 (Transforms)
5. 調試與啟動 (Debugging and Launch)
雖然 ROS 1 和 ROS 2 的指令語法有些不同,
但它們的核心概念(如節點、主題、服務和參數)是共通的。
熟悉這些指令對於任何 ROS 開發者來說都是基礎。
Artificial Intelligence and Machine Learning , ROS Applications Course Notes created by handel liao
catkin_ws
)指令 | 說明 |
catkin_create_pkg <package_name> [dependencies] | 建立一個新的 ROS 套件。[dependencies] 是該套件所依賴的其他套件,例如 std_msgs roscpp 。 |
catkin_make | 編譯工作區中的所有套件。若要只編譯特定套件,請使用 catkin_make --pkg <package_name> 。 |
source devel/setup.bash | 載入編譯後的環境變數。在每次打開新的終端機時,都必須執行此命令。 |
指令 | 說明 |
rosrun <package_name> <executable_name> | 執行一個可執行檔。例如 rosrun turtlesim turtlesim_node 。 |
rosnode list | 列出所有正在運行的 ROS 節點。 |
rostopic list | 列出所有正在發布的主題。 |
rostopic info <topic_name> | 顯示主題的詳細資訊,包括類型、發布者和訂閱者。 |
rostopic echo <topic_name> | 監聽並顯示主題上發布的訊息。這是最常用的調試工具之一。 |
rostopic pub <topic_name> <msg_type> '<data>' | 手動發布一條訊息到主題上。例如 rostopic pub /turtle1/cmd_vel geometry_msgs/Twist -r 1 '{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0,y: 0.0, z: 1.8}}' 。 |
rostopic hz <topic_name> | 檢查主題的發布頻率。 |
指令 | 說明 |
rosservice list | 列出所有可用的 ROS 服務。 |
rosservice info <service_name> | 顯示服務的訊息類型。 |
rosservice call <service_name> '<data>' | 呼叫服務。 |
rosparam list | 列出所有可用的 ROS 參數。 |
rosparam get <param_name> | 取得參數值。 |
rosparam set <param_name> <value> | 設定參數值。 |
rosparam dump <file_name>.yaml | 將所有參數儲存到一個 YAML 文件。 |
指令 | 說明 |
rosrun tf tf_echo <source_frame> <target_frame> | 監聽並顯示兩個座標系之間的變換(Transform)。 |
rosrun rviz rviz | 啟動 RVIZ,ROS 1 的主要視覺化工具,用於查看機器人模型、感測器數據和 TF 樹。 |
指令 | 說明 |
roslaunch <package_name> <launch_file_name> | 執行一個啟動檔案,這可以一次性啟動多個節點和設定。 |
rqt | 啟動 rqt ,提供圖形化介面來監控和調試 ROS 系統。 |
rviz | 啟動 RVIZ,用於機器人模型的視覺化。 |
雖然 ROS 1 和 ROS 2 的指令語法有些不同,
但它們的核心概念(如節點、主題、服務和參數)是共通的。
熟悉這些指令對於任何 ROS 開發者來說都是基礎。
沒有留言:
張貼留言