ROS2 交互式调试工具:告别繁琐的命令行操作
ROS2Tool.sh:ROS 2命令行工具的瑞士军刀
gitee仓库地址: https://gitee.com/futurelei/ros2_tools
概述
ros2tool.sh是一个专为ROS 2开发者设计的综合性命令行工具脚本,旨在简化ROS 2系统的监控、调试和管理工作。- 通过集成ROS 2原生命令行工具的核心功能,并添加友好的交互式界面,它让复杂的ROS 2系统调试变得直观高效。(不必手动记忆和敲下ros2 topic xxx等命令)
- 提供命令行直接调用、以及交互式界面两种方式。
工具定位
在复杂的ROS 2系统(如多机器人协同或自动驾驶感知模块)中,命令行工具是开发者的"瑞士军刀"。ros2tool.sh将这些分散的工具整合到一个统一的交互式界面中,提供比图形化工具更轻量、响应更快的操作体验,特别适合在资源受限的嵌入式设备上使用。
功能特性
- 节点管理:查看、详细信息、发布者/订阅者
- 话题管理:查看、发布、echo、频率/带宽监控
- 服务管理:查看、调用服务
- 参数管理:查看、获取/设置参数值
- 动作管理:查看、发送目标
- 接口查看:消息/服务/动作类型定义
使用方式
交互式模式(推荐)
cd~/ros_workspaces/ros2_ws/src/lyric_acns2 ./ros2tool.sh命令行模式
# 查看帮助./ros2tool.sh-h# 列出所有节点./ros2tool.sh-n# 列出所有话题./ros2tool.sh-t# 查看指定节点信息./ros2tool.sh-i/node_name# 查看指定话题信息./ros2tool.sh --topic-info /topic_name命令行参数
| 参数 | 说明 |
|---|---|
-h, --help | 显示帮助信息 |
-n, --nodes | 列出所有节点 |
-t, --topics | 列出所有话题 |
-s, --services | 列出所有服务 |
-a, --actions | 列出所有动作 |
-p, --params | 列出所有参数 |
-i, --info NODE | 查看节点信息 |
--topic-info TOPIC | 查看话题信息 |
--service-info SERVICE | 查看服务信息 |
--publish TOPIC TYPE DATA | 发布话题消息 |
交互式菜单说明
启动后显示主菜单:
进入子菜单后:
先显示列表(节点/话题/服务等)
选择具体项目后显示操作菜单
选择操作执行相应功能
注:本文档基于实际ROS 2开发经验编写,所有功能均经过实际项目验证。工具持续更新中,最新版本请关注项目仓库。
