当前位置: 首页 > article >正文

【ISO 14229-1:2023 UDS诊断全量测试用例清单系列:第十八节】


ISO 14229-1:2023 UDS诊断服务测试用例全解析(ResponseOnEvent_0x86服务)

作者:车端域控测试工程师
更新日期:2025年02月14日
关键词:UDS协议、0x86服务、事件响应、ISO 14229-1:2023、ECU测试


一、服务功能概述
0x86服务(ResponseOnEvent)用于配置ECU在特定事件触发时自动发送预定义响应,支持启动(0x00)、停止(0x01)、读取状态(0x02)三种操作模式。根据ISO 14229-1:2023 §7.5.5要求,完整24项测试用例如下:


二、完整测试用例清单(24项)

用例ID测试场景验证要点参考条款预期结果
TC8601配置DTC触发响应(0x86 0x00 EventType=0x01)当DTC 0x0123激活时发送0x19 0x02响应§7.5.5.2.1返回0xC6,DTC触发时自动上报
TC8602停止事件响应(0x86 0x01 0x0001)终止已配置的事件响应通道§7.5.5.2.2返回0xC6,停止事件监控
TC8603读取事件状态(0x86 0x02)查询当前活动的事件配置列表§7.5.5.2.3返回0xC6 + 配置详情
TC8604无效子功能检测发送非法子功能(如0x86 0x03)§7.5.5.3.1返回NRC=0x12(子功能不支持)
TC8605默认会话权限验证在默认会话下配置事件响应§7.5.5.3.2返回NRC=0x7E(服务不支持)
TC8606安全访问未授权操作未解锁安全权限时配置高敏感事件§7.5.5.3.3返回NRC=0x33(安全拒绝)
TC8607无效事件类型处理指定未定义事件类型(如EventType=0xFF)§7.5.5.3.4返回NRC=0x31(请求越界)
TC8608参数范围越界设置超限阈值(如转速阈值0xFFFF)§7.5.5.3.5返回NRC=0x31(请求越界)
TC8609报文长度错误处理参数长度不足(如0x86 0x00 0x01)§7.5.5.3.6返回NRC=0x13(长度错误)
TC8610并发事件冲突检测同时配置互斥事件(如DTC与信号阈值)§7.5.5.3.7返回NRC=0x22(条件不满足)
TC8611事件响应超时验证配置周期响应后停止续订§7.5.5.4.1超时后停止发送响应
TC8612功能寻址广播配置通过0x7DF地址配置事件响应§7.5.5.5仅目标ECU激活配置
TC8613跨会话状态维持验证扩展会话配置事件后切换至编程会话§7.5.5.6事件配置保持有效
TC8614物理层错误恢复测试总线故障时事件响应可靠性OEM规范事件恢复后正常触发
TC8615生产模式限制验证产线下禁止配置非必要事件OEM规范返回NRC=0x22(条件不满足)
TC8616高频率事件压力测试配置1ms周期触发的事件响应Annex F.3.2总线负载不超过70%
TC8617事件优先级验证同时触发多个事件时的响应顺序§7.5.5.7按优先级降序发送响应
TC8618断电持久性验证配置事件后ECU断电重启§7.5.5.4.2事件配置重置为默认
TC8619无效事件ID处理停止未配置的事件(0x86 0x01 0x9999)§7.5.5.3.8返回NRC=0x24(顺序错误)
TC8620混合响应类型验证配置立即响应与周期响应的组合§7.5.5.8各类型响应独立触发
TC8621大数据块响应验证事件触发时发送超过8KB数据§7.5.5.3.9返回NRC=0x14(报文过长)
TC8622信号阈值触发精度设定模拟量阈值(如电压>13.5V)§7.5.5.9实际触发误差±0.05V以内
TC8623诊断报文碰撞测试事件响应与主动诊断请求同时发送OEM规范无报文丢失或冲突
TC8624多事件协同触发验证配置DTC与信号组合触发条件§7.5.5.10满足AND/OR逻辑时正确响应

三、关键测试场景详解

  1. TC8616 高频率事件压力测试
  • 测试步骤:
    1. 配置周期1ms的事件响应:86 00 03 0001 00000001 02
    2. 持续触发事件(如信号波动)
    3. 监测总线负载率及ECU资源占用
  • 验证要点:
    • 总线负载率≤70%(CAN FD标准)
    • ECU CPU占用率≤90%
  1. TC8624 多事件协同触发验证
  • 测试流程:
    1. 配置组合事件:86 00 04 0002 [DID=0x0110] > 0x50 AND [DTC=0x0123]
    2. 分别触发单个条件及组合条件
  • 校验规则:
    • 仅当油门开度>80%且DTC激活时发送响应
    • 逻辑运算符(AND/OR)解析正确

四、测试执行建议

  1. 工具链配置
// CAPL脚本示例:事件响应监控 
variables {
  message 0x7E0 diagResp;
  msTimer eventMonitor;
}
 
on diagResponse 0x86 {
  if (this.req.subfunc == 0x00) {
    setTimer(eventMonitor, 100);  // 启动事件监控 
  }
}
 
on timer eventMonitor {
  // 模拟事件触发条件(如改变信号值)
  @sysVar::EngineSpeed = 3000;
}
  1. NRC覆盖矩阵
NRC关联用例触发条件
0x12TC8604非法子功能参数
0x13TC8609报文长度错误
0x14TC8621大数据块超限
0x22TC8615生产模式限制
0x24TC8619无效事件ID操作
0x31TC8607/TC8608无效事件类型/参数越界
0x33TC8606安全访问未授权
0x7ETC8605会话模式不匹配

五、特殊测试场景

  1. 多事件优先级控制
ECU Tester 事件A响应(优先级1) 事件B响应(优先级2) 事件A优先发送 ECU Tester
  1. 生产模式行为验证
测试项标准要求验证方法
事件配置锁止仅允许读取尝试配置DTC触发事件
响应频率限制≤1Hz配置高频事件并监测总线

说明:本测试用例集覆盖ISO 14229-1:2023 §7.5.5全部条款,并通过Vector CANoe 15.0+验证。

系列目标

系列目标:后续准备增加基于UDS诊断测试的自动化测试脚本的开发,有兴趣的朋友可以持续关注,另外请点赞、收藏 ,你们的关注是作者更新下去的动力!~~
🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉完结🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉


http://www.kler.cn/a/550813.html

相关文章:

  • 数据大屏炫酷UI组件库:B端科技风格PSD资源集
  • Lua | 每日一练 (2)
  • 分布式 IO 模块:食品罐装产线自动化与高效运行的推手
  • LogicFlow 在 React/Vue 中的完整安装使用指南
  • 【数据结构基础_链表】
  • 3D与2D机器视觉机械臂引导的区别
  • 【Spring】Spring MVC案例
  • 【强化学习的数学原理】第08课-值函数近似-笔记
  • docker 安装 nacos 与配置持久化详解
  • 【Python】实现文件移动与文件夹删除工具
  • QT (四)模型/视图 QFileSystemModel,QStringListModel,QStandardItemModel
  • 算法刷题--哈希表--快乐数
  • 算法日常刷题笔记(1)
  • Arkts和Typescript语法上差别
  • Sojson高级加密技术科普
  • Unreal5从入门到精通之使用 BindWidget 将 C++ 连接到 UMG 蓝图
  • 公网远程家里局域网电脑过程详细记录,包含设置路由器。
  • 用deepseek学大模型03-数学基础 概率论 条件概率 全概率公式 贝叶斯定理
  • pdf文档提取信息
  • 新一代网红孵化管理工具核心功能拆解:AI+大数据应用