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、频率/带宽监控
  • 服务管理:查看、调用服务
  • 参数管理:查看、获取/设置参数值
  • 动作管理:查看、发送目标
  • 接口查看:消息/服务/动作类型定义

使用方式

交互式模式(推荐)
bash 复制代码
cd ~/ros_workspaces/ros2_ws/src/lyric_acns2
./ros2tool.sh
命令行模式
bash 复制代码
# 查看帮助
./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 发布话题消息

交互式菜单说明

启动后显示主菜单:

进入子菜单后:

  1. 先显示列表(节点/话题/服务等)


  2. 选择具体项目后显示操作菜单


  3. 选择操作执行相应功能



注:本文档基于实际ROS 2开发经验编写,所有功能均经过实际项目验证。工具持续更新中,最新版本请关注项目仓库。

相关推荐
wdfk_prog1 天前
ROS教程08:从 TransportTCP::connect() 追到 TCPROS Connection Header、序列化与 Socket 数据传输
运维·缓存·docker·容器·ros
wdfk_prog2 天前
ROS教程11.5:roscore源码阅读——从启动脚本到 Master 注册表与控制面
ros
wdfk_prog3 天前
ROS教程10:从 gtest 到 rostest——Unit Test、Node 集成测试、rosbag 与 rqt 验证闭环
运维·缓存·docker·容器·ros
wdfk_prog3 天前
ROS教程07:从 ros::start() 顺着源码读懂 Master、XML-RPC 与 Topic 注册发现
运维·缓存·docker·容器·ros
wdfk_prog4 天前
用 Git Submodule + Sparse Checkout 管理 RT-Thread:内核、BSP、第三方库与业务代码分层实践
运维·缓存·docker·容器·ros
wdfk_prog4 天前
ROS教程06:ROS1 Node 启动与停止流程
运维·缓存·docker·容器·ros
黑马水牛4 天前
Carla仿真系列:17_利用Carla仿真环境跑通3DGS——从采集360张图到高斯泼溅建模
python·ros·colmap·3dgs·新视角合成·carla仿真·三维建图
wdfk_prog5 天前
ROS教程:01 搭建 ROS1 Noetic Docker 开发环境
运维·缓存·docker·容器·ros
wdfk_prog5 天前
ros教程02:创建 catkin Workspace、Package 与第一个 ROS1 C++ Node
运维·缓存·docker·容器·ros
怎么就重名了11 天前
controller_server的cmd_vel_nav
ros