调试概览
调试是 ROS 2 开发中不可或缺的环节。由于 ROS 2 系统通常由分布在不同进程甚至不同机器上的多个节点组成,问题排查往往涉及网络通信、坐标变换(TF2)、进程崩溃等多个层面。
本节介绍 ROS 2 常用的调试工具和技术,帮助你定位和解决运行时问题。
调试工具与技巧
Section titled “调试工具与技巧”- TF2 问题调试——排查和解决坐标变换(TF2)树中的常见问题,包括坐标系缺失、变换延迟等。
- 获取 Backtrace——当节点崩溃时获取 C++ 程序的 backtrace(回溯信息),帮助定位崩溃位置。
其他调试手段
Section titled “其他调试手段”ROS 2 还支持以下调试方式:
- ROS 2 Tracing:使用 LTTng 对 ROS 2 系统做端到端追踪,分析消息延迟和执行时序。
- IDE 集成:在 VSCode、Eclipse 等 IDE 中配置调试器(如 GDB、LLDB)进行断点调试。
- 日志分析:通过
ros2 topic echo、rqt_console等工具查看和分析节点运行日志。