ros2 常用命令
编译
colcon build [--packages-select] <package_name>
如果当前工作空间(src)缺失所需的系统依赖包,可以通过如下命令安装:
rosdep install -i --from-path src --rosdistro galactic -y
参数说明:
-i:忽略缺失的依赖项(即使某些依赖未找到也不报错)
--from-path src:从src目录下的包中查找依赖
--rosdistro galactic:指定ROS发行版为Galactic
-y:自动回答yes,无需确认
首次运行,可能需要先执行:
sudo rosdep init
rosdep update
ros2 run
启动一个package中的可执行程序
ros2 run <package_name> <executable_name>
node
- 列出所有正在运行的node name
ros2 node list
- 查看node 的详细信息
ros2 node info <node_name> #如: ros2 node info /turtlesim
topic
- 列出系统中所有活跃的topic
ros2 topic list
ros2 topic list -t #多返回topic 的消息类型
- 查看topic上发布的数据
ros2 topic echo <topic_name> #如:ros2 topic echo /turtle1/cmd_vel
- 查看topic的详细信息
ros2 topic info <topic_name>
#如: ros2 topic info /turtle1/cmd_vel
会返回:
Type: geometry_msgs/msg/Twist
Publisher count: 1
Subscription count: 2
- 查看topic 频率
ros2 topic hz <topic_name>
- topic 发布数据
如果知道topic发布消息的数据类型, 可以通过命令行发布数据,格式:
ros2 topic pub <topic_name> <msg_type> '<args>'
#如:ros2 topic pub --once /turtle1/cmd_vel geometry_msgs/msg/Twist "{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 1.8}}"
service
- 列出所有的活跃的service
ros2 service list
ros2 service list -t
- 查看service的类型
ros2 service type <service_name>
- 列出某个类型的所有service
ros2 service find <type_name>
- call service
ros2 service call <service_name> <service_type> <arguments>
查看某个消息类型的数据结构
ros2 interface show <msg_type> # 如:ros2 interface show geometry_msgs/msg/Twist
可视化工具
- rqt
- rqt_graph
- rqt_console
启动: ros2 run rqt_console rqt_console
浙公网安备 33010602011771号