综合诊断板CAN时间戳稳定性测试报告8.28

综合诊断板CAN时间戳稳定性测试报告8.28


简介:解决前段时间测试综合诊断版接收时间戳延迟和不规律问题


一、 测试概述

本测试旨在验证综合诊断板在更新CAN驱动后,时间戳采集功能的稳定性和准确性。针对前期测试中发现的时间戳延迟和不规律问题,通过搭建标准测试环境,对比分析驱动更新前后的性能表现。

二. 测试环境

2.1 硬件配置

  • 测试设备:综合诊断板
  • CAN接口:mcp2515_spi0_0
  • 测试模式:USB分析仪单帧测试,发送间隔:100ms

2.2 软件环境

  • 测试工具:读取demo程序 / 综合诊断箱诊断程序
  • 数据生成:IXM6ULL开发板生成12帧固定100ms周期CAN数据

2.3 测试方案

mcp2515_spi0_0接口模拟12帧固定100ms发送周期的CAN数据帧,通过监控程序记录并分析时间戳间隔的稳定性和准确性。

三. 测试过程

3.1 驱动更新前基准测试

更新前驱动存在时间戳不规律问题,表现为:

  • 时间戳间隔波动范围大(95ms-105ms
  • 波动模式呈现规律性交替特征
  • 偶发丢包和连续帧(2ms与200ms
  • 异常帧率较高

3.2 驱动更新实施

更新为新版驱动后,时间戳采集机制得到优化:

  • 时间戳精度从纳秒级调整为毫秒级
  • 时间戳读取逻辑相应调整
  • 重新编译并加载驱动模块

3.3 更新后稳定性测试

使用更新后的驱动进行持续测试:

  • 单路12帧100ms周期数据发送
  • 持续运行3分钟(约1800帧)
  • 记录时间戳间隔偏差超过±2ms的异常帧

四. 测试结果与分析

4.1 时间戳稳定性表现

测试项目 更新前 更新后 改善程度
平均间隔 100ms 100ms 维持正常
波动范围 95ms-105ms 98ms-102ms 显著改善
波动模式 规律性交替,随机偶发200ms与0ms 随机偶发200ms与0ms 根本性改善

4.2 异常帧统计

时间段 总帧数 异常帧数 异常率 备注
3分钟 1800帧 2-4帧 0.17%-0.22% 单路监控
诊断程序运行 12×10帧/秒 10-30帧/60秒 1/600-3/600% 多路并发

4.3 故障注入测试

更新后的驱动在故障注入测试中表现正常:

  • 能够正确识别各类故障注入用例
  • 时间戳采集与故障检测逻辑协调一致
  • 单帧发送频率诊断结果符合预期

关键运行结果:

1、单帧监控

持续运行三分钟,检索超过±2毫秒的帧信息(约1800帧,异常帧3帧,时间戳读取稳定)。

2、综合诊断程序单帧诊断

时间戳信息由纳秒转变为毫秒,修改接收逻辑和检测逻辑之后,对于单帧发送频率诊断结果正常,对于故障注入用例可以正确识别

3、主推模拟程序运行(12×600帧/分钟)

运行can通讯模拟程序,运行正常通信程序。

故障出现特征表现为集中出现,往往2-3个周期时间戳正常后出现一次集中性的故障触发。且所有故障均为200ms/0ms的形式。

此类检测误差是否可以接收,能否使用报警阈值进行合理性屏蔽。需要讨论。

五. 问题与讨论

测试中发现一个特定现象:故障特征表现为集中出现,往往在2-3个正常周期(10S)后出现一次集中性的故障触发,且所有故障均表现为"200ms/0ms"的形式。

待讨论问题
  1. 此类检测误差是否可以通过设置合理的报警阈值进行屏蔽
  2. 当前异常率(约0.2-0.5%)在实际应用中的可接受程度
  3. 多路并发情况下异常率升高的原因及优化方案

六. 结论与建议

6.1 主要结论

  1. 驱动更新后时间戳稳定性得到显著改善,波动范围从±5ms缩小到±2ms
  2. 异常帧率从较高水平降低到0.2%左右,性能提升明显
  3. 时间戳采集模式从规律性异常转变为随机偶发,表明系统性问题已解决

6.2 建议

  1. 针对偶发的异常帧,可考虑软件层增加异常过滤机制
  2. 进一步优化多路并发下的时间戳采集性能
  3. 建立长期监控机制,持续跟踪时间戳稳定性表现

七. 补充:测试过程记录

1、测试环境搭建

诊断can0口搭建12帧固定100ms发送can数据帧

2、运行时间间隔监控程序

针对can0回路诊断监控程序,发现时间接收不规律。经排查,驱动未正确更新。

3、更新新驱动

驱动版本更新成功

4、运行例程

修改监控特定ID(旧驱动)

使用新驱动时间戳。

经检查,新驱动时间戳从纳秒更改为毫秒级别,数量级计算错误。重新运行,效果符合预期。

持续运行三分钟,检索超过±2毫秒的帧信息(约1800帧,异常帧3帧,时间戳读取稳定)。

5、综合诊断程序时序验证

时间戳信息由纳秒转变为毫秒,修改接收逻辑和检测逻辑之后,对于单帧发送频率诊断结果正常,对于故障注入用例可以正确识别

运行can通讯模拟程序,运行正常通信程序。

故障出现特征表现为集中出现,往往2-3个周期时间戳正常后出现一次集中性的故障触发。且所有故障均为200ms/0ms的形式。

此类检测误差是否可以使用报警阈值进行屏蔽,合理性屏蔽。需要讨论。


测试:jjwu

时间:2025-8-28

邮箱:1816387198@qq.com

相关推荐
A尘埃1 天前
线性代数(标量与向量+矩阵与张量+矩阵求导)
python·线性代数·矩阵
WaWaJie_Ngen2 天前
LevOJ P2080 炼金铺 II [矩阵解法]
c++·线性代数·算法·矩阵
天天向上的鹿茸2 天前
用矩阵实现元素绕不定点旋转
前端·线性代数·矩阵
两只程序猿2 天前
数据可视化 | 热力图Heatmap绘制Python代码 相关性矩阵学术可视化
python·信息可视化·矩阵
元基时代3 天前
专业的短视频发布矩阵哪家靠谱
大数据·人工智能·python·矩阵
qq_429879674 天前
如何判断模型矩阵是否做了镜像
线性代数·矩阵
dengzhenyue4 天前
矩阵结构体 图片绘制 超级玛丽demo6
线性代数·矩阵
电力程序小学童4 天前
【复现】一种基于价格弹性矩阵的居民峰谷分时电价激励策略【需求响应】
matlab·矩阵·需求响应·负荷·峰谷电价
lovod4 天前
【视觉SLAM十四讲】视觉里程计 1
人工智能·线性代数·计算机视觉·矩阵·机器人
却道天凉_好个秋4 天前
深度学习(十三):向量化与矩阵化
人工智能·深度学习·矩阵·向量化