前提

当 《X30 感知系统检查 SOP 》的检查工具 分析出 定位模块输出异常 后,进一步排查

⚠️定位模块输出话题/odom <10 Hz

⚠️定位模块输出话题/location\_status <2 Hz

⚠️定位模块输出话题/location\_status.data != 0 (0表示定位正常)

SOP

定位异常状态监测

异常时,自动存储定位数据(jy\_cog/system/record/localization\_data下程序启动时间开头文件夹中的数据文件,文件名在日志中对应)

增加了一个定位状态显示脚本(执行命令:bash ~/jy\_cog/localization/scripts/show\_status.sh),可解析当前定位状态并在终端中展示,同时会给出异常情况对应的建议处理措施

整个终端打印自上而下分为6部分,第一段打印实时时间(在程序启动时刷新),可用来确认程序是否在运行。

第二段为总体状态栏,可能显示“正常”、“异常”、“丢失”,在显示“丢失”时需立即处理,显示“异常”时可暂时忽略。

第三段给出了各传感器的状态,会有“正常”、“无数据”、“不使用”等显示信息。

第四段给出定位丢失相关的判断,会有“正常”、“警告”、“丢失”等显示信息,当显示“丢失”时需进行处理,显示“警告”时可暂时忽略。

第五段给出程序中的一些其它信息,如计算超时等。

第六段给出相关的处理建议。

排查工具

按照提示执行show\_status.sh工具

bash ~/jy\_cog/localization/scripts/show\_status.sh

怎么看日志

如果有乱码需要操作encoding - Unicode(UTF8)

“定位正常”,十秒打一次

[2025-11-07 16:05:22.427.165\] \[INFO \] \[monitor\] 定位正常运行中 
[2025-11-07 16:05:32.434.529\] \[INFO \] \[monitor\] 定位正常运行中 
[2025-11-07 16:05:42.446.014\] \[INFO \] \[monitor\] 定位正常运行中

雷达(或其它传感器)丢失(重点,问题最多)


\[2025-10-29 19:16:15.518.425\] \[ERROR \] \[monitor\] \[8b0a\] 定位值超时0.409s未更新 

\[2025-10-29 19:16:15.518.457\] \[ERROR \] \[monitor\] \[8b00\] 定位丢失 

\[2025-10-29 19:16:15.518.466\] \[INFO \] \[monitor\] Pose data is saved in 390.csv 

\[2025-10-29 19:16:16.018.789\] \[ERROR \] \[monitor\] \[8b0a\] 定位值超时0.910s未更新 

\[2025-10-29 19:16:16.018.838\] \[WARN \] \[monitor\] \[8b01\] 输入源:激光雷达数据超时0.921s未更新 

打印丢失同时打印激光雷达数据超时未更新,需检查雷达是否在线,详细请参考雷达问题排查流程。

其它传感器同理。

“ERROR” - 监测窗口中,共20帧匹配误差数据,其中20帧匹配误差超出阈值


\[2025-10-31 09:56:02.190.248\] \[ERROR \] \[monitor\] \[8b00\] 定位丢失

\[2025-10-31 09:56:02.231.629\] \[ERROR \] \[monitor\] \[8b09\] 监测窗口中,共20帧匹配误差数据,其中20帧匹配误差超出阈值。

检查雷达外参是否正确。

检查当前环境场景是否有变动和地图不一致。如果不一致,需要重新建图。

“ERROR” - 监测窗口内共10帧状态值,其中9帧前后位姿平移与旋转偏差速度超出阈值

\[2025-10-31 09:56:02.732.619\] \[ERROR \] 监测窗口内共10帧状态值,其中9帧前后位姿平移与旋转偏差速度超出阈值。

需要查看rviz,观察实时位置是否正确

----有可能定位是错的,需要重新拉定位

如果反复出现该log,需要同步查看有无传感器的错误,雷达,IMU的错误。

如果日志没有其他的原因,需要判断当前的环境是否没有特征。