1 Node
1.1 运行
ros2 run <package_name> <executable_name>
1.2 查看
ros2 node list
ros2 node info <node_name>
1.3 重映射
ros2 run turtlesim turtlesim_node --ros-args --remap __node:=my_turtle
2 Topic
2.1 简介
2.1.1 通信模型
Topic 分为 Publisher 和 Subscriber,多对多模型
2.1.2 消息类型
消息类型为:.msg 文件
适用场景:基于异步流媒体数据
2.2 命令
2.2.1 查看图形化节点
rqt_graph
2.2.2 查看所有 topic
ros2 topic list
2.2.3 查看正在发布的 topic
ros2 topic echo <topic_name>
2.2.4 查看 topic 的具体信息
ros2 topic info <topic_name>
2.2.5 使用 topic 发布数据
ros2 topic pub <topic_name> <msg_type> '<args>'
2.2.6 查看 topic 发布数据的频率
ros2 topic hz <topic_name>
3 Service
3.1 简介
3.1.1 通信模型
Service 分为 Server 和 Client,一对一模型
3.1.2 消息类型
文件类型:.srv 文件
适用场景:基于同步 RPC 样式通信
3.2 命令
3.2.1 查看 service
ros2 service list
ros2 service list -t
3.2.2 判断类型
ros2 service type <service_name>
3.2.3 查找
ros2 service find <type_name>
3.2.4 展示
ros2 interface show <type_name>
3.2.5 回调
ros2 service call <service_name> <service_type> <arguments>
4 Parameters
4.1 简介
4.1.1
4.1.2 数据格式
4.2 命令
4.2.1 增
1.启动时添加参数ros2 run <package_name> <executable_name> --ros-args --params-file <file_name>
2.从文件中添加参数ros2 param load <node_name> <parameter_file>
4.2.2 删
4.2.3 改
1.设置节点的参数ros2 param set <node_name> <parameter_name> <value>
2.将参数转存至文件中,node_name.yamlros2 param dump <node_name>
4.2.4 查
ros2 param list
ros2 param get <node_name> <parameter_name>
5 Actions
5.1 简介
5.1.1 主要用途
用于数据存储
5.1.2 文件格式
.action 结尾
5.1.3 内容格式
# Request
---
# Result
---
# Feedback
5.1.4 相关说明
请求消息:从 action 客户端 -> action 服务端
结果消息:action 服务端 -> action 客户端
反馈消息:定期,action 服务端 -> action 客户端
5.2 命令
1.查
ros2 action list
ros2 action list -t
ros2 action info /turtle1/rotate_absolute
ros2 interface show turtlesim/action/RotateAbsolute
ros2 action send_goal <action_name> <action_type> <values>
6 检查
6.1 系统检查
ros2 doctor
6.2 获取检查报告
ros2 doctor --report