使用命令行工具进行内省 [17061]
ROS 2 包含一套命令行工具,用于内省 ROS 2 系统。 [17062]
用法 [17063]
工具的主要入口点是命令 ros2,它本身有各种子命令,用于内省和处理节点、主题、服务等。 [17064]
要查看所有可用的子命令,请运行: [17065]
ros2 --help
可用的子命令示例包括: [17066]
action:查看/与ROS动作进行交互 [17067]bag:记录/播放rosbag [17068]component:管理组件容器 [17069]daemon:查看/配置ROS 2守护进程 [17070]doctor:检查ROS设置是否存在潜在问题 [17071]interface:显示有关ROS接口的信息 [17072]launch:运行/查看启动文件 [17073]lifecycle:查看/管理具有受控生命周期的节点 [17074]multicast:多播调试命令 [17075]node:查看ROS节点 [17076]param:查看/配置节点上的参数 [17077]pkg:查看ROS包 [17078]run:运行ROS节点 [17079]security:配置安全设置 [17080]service:查看/调用ROS服务 [17081]test:运行ROS启动测试 [17082]topic:查看/发布ROS主题 [17083]trace:跟踪工具,用于获取有关ROS节点执行的信息(仅在Linux上可用) [17084]
示例 [17086]
要使用命令行工具生成典型的发布者-订阅者示例,可以使用“topic”子命令在主题上发布和回显消息。 [17087]
在一个终端中发布消息: [17088]
$ ros2 topic pub /chatter std_msgs/msg/String "data: Hello world"
publisher: beginning loop
publishing #1: std_msgs.msg.String(data='Hello world')
publishing #2: std_msgs.msg.String(data='Hello world')
在另一个终端中回显接收到的消息: [17089]
$ ros2 topic echo /chatter
data: Hello world
data: Hello world