综合诊断板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"
的形式。
待讨论问题:
- 此类检测误差是否可以通过设置合理的报警阈值进行屏蔽
- 当前异常率(约0.2-0.5%)在实际应用中的可接受程度
- 多路并发情况下异常率升高的原因及优化方案
六. 结论与建议
6.1 主要结论
- 驱动更新后时间戳稳定性得到显著改善,波动范围从
±5ms
缩小到±2ms
- 异常帧率从较高水平降低到0.2%左右,性能提升明显
- 时间戳采集模式从规律性异常转变为随机偶发,表明系统性问题已解决
6.2 建议
- 针对偶发的异常帧,可考虑软件层增加异常过滤机制
- 进一步优化多路并发下的时间戳采集性能
- 建立长期监控机制,持续跟踪时间戳稳定性表现
七. 补充:测试过程记录
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