2025年9月4日 星期四

ROS 1 常用指令列表

 

ROS 1 常用指令列表

1. 工作區管理 (catkin_ws)

指令說明
catkin_create_pkg <package_name> [dependencies]建立一個新的 ROS 套件。[dependencies] 是該套件所依賴的其他套件,例如 std_msgs roscpp
catkin_make編譯工作區中的所有套件。若要只編譯特定套件,請使用 catkin_make --pkg <package_name>
source devel/setup.bash載入編譯後的環境變數。在每次打開新的終端機時,都必須執行此命令。

2. 節點與主題 (Nodes and Topics)

指令說明
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>檢查主題的發布頻率。

3. 服務與參數 (Services and Parameters)

指令說明
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 文件。

4. 轉換 (Transforms)

指令說明
rosrun tf tf_echo <source_frame> <target_frame>監聽並顯示兩個座標系之間的變換(Transform)。
rosrun rviz rviz啟動 RVIZ,ROS 1 的主要視覺化工具,用於查看機器人模型、感測器數據和 TF 樹。

5. 調試與啟動 (Debugging and Launch)

指令說明
roslaunch <package_name> <launch_file_name>執行一個啟動檔案,這可以一次性啟動多個節點和設定。
rqt啟動 rqt,提供圖形化介面來監控和調試 ROS 系統。
rviz啟動 RVIZ,用於機器人模型的視覺化。

雖然 ROS 1 和 ROS 2 的指令語法有些不同,

但它們的核心概念(如節點、主題、服務和參數)是共通的。

熟悉這些指令對於任何 ROS 開發者來說都是基礎。



沒有留言:

張貼留言