ywb 1dc439dc8e fix: AGV位置读取失败 - ROS_DOMAIN_ID环境变量缺失、odom输出管道错误、ANSI转义序列未清理
问题根因:
1. ros2 daemon默认运行在domain 0,AGV节点在domain 1,导致无法通信
2. _run_ros2_cmd通过daemon通信,daemon忽略了shell的ROS_DOMAIN_ID环境变量
3. 修复: 在bash -c内联设置export ROS_DOMAIN_ID=1
4. 修复: 所有ros2 topic echo命令添加--once参数确保只输出一次后退出
5. 修复: 清理ANSI转义序列(\x1b)和RTPS错误信息前缀,避免YAML解析失败
6. 修复: 添加source /opt/ros/humble/setup.bash确保ros2命令可用
7. 修复: get_position和get_battery统一使用_run_ros2_cmd而非独立subprocess调用
2026-05-15 23:44:21 +08:00
2026-05-14 21:43:35 +08:00
2026-05-14 21:43:35 +08:00
2026-05-14 21:43:35 +08:00
2026-05-14 21:43:35 +08:00
2026-05-14 21:43:35 +08:00
S
Description
No description provided
709 KiB
Languages
Python 42.6%
HTML 14.1%
TypeScript 13.9%
JavaScript 13.9%
CSS 6.5%
Other 9%