使用命令行工具进行自省
ROS 2 包含一套用于反观 ROS 2 系统的命令行工具。
使用方法
工具的主要入口是命令 玫瑰2
,它本身有各种子命令,用于内省和处理节点、主题、服务等。
要查看所有可用的子命令,请运行
玫瑰2 --帮助
可用的子命令示例包括
行动
:自省/与 ROS 行动互动背包
:录制/播放一个咆哮包组成部分
:管理组件容器守护进程
:自省/配置 ROS 2 守护进程医生
:检查 ROS 设置是否存在潜在问题界面
:显示有关 ROS 接口的信息启动
:运行/检查启动文件周期
:内视/管理具有受管生命周期的节点组播
:组播调试命令网站
:内视 ROS 节点停止
:内视/配置节点上的参数包
:自省 ROS 软件包运行
:运行 ROS 节点安全
:配置安全设置服务
:内视/调用 ROS 服务测试
:运行 ROS 启动测试主题
:自省/发布 ROS 主题踪影
:用于获取 ROS 节点执行信息的跟踪工具(仅适用于 Linux 系统)哇靠
:的别名医生
示例
要使用命令行工具生成典型的 "通话者-监听者 "示例,可使用 主题
子命令可用于发布和回显主题上的信息。
在一个终端机上发布信息:
$ 玫瑰2 主题 酒吧 /chatter std_msgs/msg/String 数据:Hello world";
出版商 开头 循环出版 #1: std_msgs.msg.String(data='Hello world')
出版 #2: std_msgs.msg.String(data='Hello world')
用
$ 玫瑰2 主题 回响 /chatter 数据: 您好 世界数据: 您好 世界
幕后花絮
ROS 2 采用分布式发现流程让节点相互连接。由于该进程故意不使用集中式发现机制,因此 ROS 节点可能需要一段时间才能发现 ROS 图中的所有其他参与者。因此,后台有一个长期运行的守护进程,负责存储有关 ROS 图形的信息,以便更快地响应查询,例如节点名称列表。
首次使用相关命令行工具时,守护进程会自动启动。您可以运行 玫瑰2 守护进程 --帮助
以获取与守护进程交互的更多选项。
实施情况
的源代码 玫瑰2
命令可在 https://github.com/ros2/ros2cli.
"(《世界人权宣言》) 玫瑰2
该工具是作为一个框架实施的,可以通过插件进行扩展。例如 sros2 软件包提供了一个 安全
自动检测到的子命令。 玫瑰2
工具,如果 sros2
软件包已安装。