DTC状态变化例子 4

例子1:

此示例概述了两个操作周期排放相关的 OBD DTC 中 DTC 状态位的操作。该图显示了两个操作周期排放相关的 OBD DTC 的处理。该处理也可应用于非排放相关的 OBD DTC,此处显示仅供一般参考。

  • 0 接收到清除诊断信息 → DTC 状态字节初始化。

  • 1, 2 相关诊断监视器报告了足够数量的通过测试样本,满足 DTC 通过标准  testNotCompleted 位(4 和 6)从 1 更改为 0,表明监视器已运行完成并且自上次以来已达到 DTC 就绪状态对于操作周期 1

  • 3、4、5、6,相关诊断监视器报告了足够数量的满足 DTC 失败标准的失败测试样本 → testFailed、testFailedThisMonitoringCycle、pendingDTC 和 testFailedSinceLastClear 位从 0 更改为 1,表示已检测到故障,但在 2 个操作周期内尚未确认故障

  • 7 相关诊断监视器报告了足够数量的通过测试样本,满足 DTC 通过标准  testFailed 位从 1 更改为 0,表明故障当前未激活

  • 8 相关诊断监视器报告了足够数量的测试样本满足 DTC 失败标准的失败测试样本数 → testFailed 位从 0 更改为 1,表示在操作周期 1

  • 9、10 中重复检测到故障 操作周期 1 结束且操作周期 2 开始,testFailedthisOperationCycle 从 1 更改为 0,testNotCompleteThisOperationCycle 更改从0到1;如果在操作周期结束时或在开始新周期后立即执行此复位,则由制造商指定。

  • 11 新操作周期开始后,位 0 的状态将保留前一个操作周期的状态。

  • 12 新操作周期开始后,相关诊断监视器报告足够数量的通过测试样本,满足 DTC 通过标准 → testNotCompleteThisOperationCycle 位从 1 更改为 0,表明监视器在新操作周期内至少运行完成一次

  • 13, 14 相关诊断监视器报告了足够数量的满足 DTC 失败标准的失败测试样本  testFailed、testFailedThisMonitoringCycle 位从 0 更改为 1,表示在新操作周期期间检测到故障

  • 15 确认的 DTC 位从 0 更改为 1,表示已检测到故障上一个操作周期中检测到的相关故障仍然存在 16 当 DTC 状态更改为已确认 DTC 时,TripCounter 峰值为"2",然后根据图 D.4 立即重置为"0"

例子2:

DTCFaultDetectionCounter 操作实现示例 非排放相关服务器的 DTC 故障检测计数器。

  • 1.当故障检测计数器达到最小值 (-128) 或最大值 (127) 时,测试完成,因此 testNotCompleteSinceLastClear 和 testNotCompleteThisOperationCycle 位从 1 更改为 0
  • 2 如果测试的一个测试样本返回失败结果,则始终会导致故障检测计数器递增高于 0(确保通过测试完成后的故障检测时间不会加倍)
  • 3 故障检测计数器达到其最大值 (127),表明故障条件已完全成熟;测试报告了失败结果,因此 testFailed、testFailedThisOperationCycle 和 testFailedSinceLastClear 位从 0 更改为 1
  • 4 确认 DTC 位与待定 DTC 位同时置位(从 0 更改为 1),因为此示例适用于非排放 -确认阈值为 1
  • 5 的相关服务器/ECU 是制造商特定的,如果测试的一个测试样本返回通过的结果,它总是导致故障检测计数器从 0 开始递减(确保测试后通过的检测时间完成与失败不加倍)
  • 6 与测试相关的监视器未运行,因为未满足监视器级别启用条件,因此生成测试样本结果;当再次满足监视器使能条件时,是否将故障检测计数器重置为 0 由制造商指定
  • 7 计数器在当前操作周期中再次达到其最小值 (-128),因此 testFailed 位从 1 更改为 0。
  • 8 新的操作周期开始后,与测试相关的监视器尚未启用,因此除了与操作周期开始相关的位外,DTC 状态位不会改变;这些位最晚在新的操作周期开始时重置。
  • 9 新操作周期开始后,计数器达到最小值 (-128),因此 testNotCompleteThisOperationCycle 位从 1 更改为 0

例子3:

此示例概述了 DTCAgingCounter 的操作,该计数器计算自上次故障发生以来的驾驶周期数。

  • 1 在完成测试未失败的操作周期后,DTCAgingCounter 递增。
  • 2 在测试完成且未失败的操作周期后,pendingDTC 设置为零。如果 ECU 不支持断电序列(即当点火开关关闭时立即关闭),它将无法检测到操作周期的结束。因此,在下一个操作周期开始时将pendingDTC位设置为零也是有效的
  • 3 DTCAgingCounter 在完成测试未失败的操作周期后递增
  • 4 DTCAgingCounter 继续递增,因为测试在这些操作周期期间未失败
  • 5 当完全满足老化标准时,confirmedDTC 设置为零(例如 DTCAgingCounter 达到特定值)
  • 6 DTCAgingCounter 达到最大值(例如 40),此时确认的 DTC 位被清除
  • 7 车辆制造商有责任指定 testFailedSinceLastClear 位是否通过老化标准或由于故障存储器溢出而重置

小结:testFailed实时检测test情况;testFailedThisOperationCycle只要这个周期出现failed就会置1(成熟条件厂商定义 故障并不会被保存;下一个周期会被复位);pending置1条件和testFailed一样,置0条件:一个OC内passed一次;confirm表示上一次周期也出现故障,并且会保存故障码。;testNotCompletedSinceLastClear上次清除后,是否已经测试通过,1表示没有通过;testFailedSinceLastClear,1表示上次清除完,还有故障。testNotCompletedThisOperationCycle,当前OC是否完成测试。

DTC severity and class definition(DTC 严重性和类别定义)

DTCSeverityMask/DTCSeverity 字节包含 DTC 严重性和 DTC 类别信息。 DTCSeverityMask/DTCSeverity 字节以 1 字节值报告,如表 D.11 中所定义。 1 字节值的可选高 3 位(位 7 至 5)用于表示 DTC 严重性信息。如果服务器不支持这些位应设置为"0"。 1Byte 值的强制低 5 位(位 4 至 0)用于表示 DTC 类别信息。

相关推荐
遇见火星2 小时前
Linux 下使用tcpdump进行网络分析原
linux·网络·tcpdump
189228048612 小时前
NV203NV207SSD固态闪存NV208NV213
网络·数据库·oracle
wfsm2 小时前
计算机网络01-网站数据传输过程
网络·计算机网络·智能路由器
Charlotte's diary2 小时前
OSPF路由协议配置
网络·计算机网络·智能路由器
firshman_start3 小时前
第六章,BGP---边界网关协议
开发语言·网络·php
chichengfeng13 小时前
HTTP和HTTPS
网络·http·https
番茄老夫子3 小时前
声纹监测技术在新能源汽车的应用场景解析
人工智能·汽车
小白iP代理3 小时前
深入了解僵尸网络 IP:威胁与防范
网络
z10_143 小时前
什么是静态住宅ip,跨境电商为什么要用静态住宅ip
网络·网络协议·tcp/ip