UDS诊断 - DTC状态位

UDS诊断 - DTC状态位

BitValue
0testFailed(测试不合格)
1testFailedThisOperationCycle(本操作循环中测试不合格)
2pendingDTC(待定 DTC)
3confirmedDTC(已确认 DTC)
4testNotCompletedSinceLastClear
5testFailedSinceLastClear(自上次清除后测试不合格)
6testNotCompletedThisOperationCycle(本操作循环中测试未完)
7warningIndicatorRequested(请求警告指示灯)

1. Bit 0:testFailed(测试不合格)

本位指示最近的测试结果。逻辑值 ‘1’ 表明上次测试不合格,即失效已完全成形。如果最近的测试结果显示为 “合格” 表示满足非成熟标准,则应将该逻辑值重置为 ‘0’。其他重置条件均可由车辆制造商 / 实施程序规定。

当发出 0x14 服务请求后,逻辑值重置为 ‘ 0’。

位状态定义:
‘0’ = DTC 测试的最新结果,表示未检测出失效。
‘1’ = DTC 测试的最新结果,表示失效结果已成形。

下图为状态第 0 位 testFailed 的逻辑。

状态第 0 位 testFailed 的逻辑

2. Bit 1:testFailedThisOperationCycle(本操作循环中测试不合格)

本位将说明,在当前操作循环内,诊断测试是否随时报告 testFail(换言之,在当前操作循环期间和最后一次发出 0x14 服务请求后,均报告 testFailed)。初始化全新操作循环时或发出 0x14 服务请求后,将逻辑重置为 ‘0’。

若本位原逻辑值为 ‘1’,则开始全新操作循环前,其逻辑值一直保持为 ‘1’。

发出 0x14 服务请求后,将逻辑值重置为 ‘0’。

位状态定义:
‘0’ = testFailed:当前操作循环期间或在当前操作循环发出 0x14 服务请求后,未报告任何结果。
‘1’ = testFailed:当前操作循环期间至少已报告一个结果。

下图为状态第 1 位 testFailedThisOperationCycle 的逻辑。
状态第 1 位 testFailedThisOperationCycle 的逻辑

3. Bit 2:pendingDTC(待定 DTC)

本位将说明,在当前或上次完成的操作循环内,诊断测试是否随时报告 testFailed。进行测试且完成后才能更新此状态。pendingDTC 位和 testFailedThisOperationCycle 的设置标准相同。二者的区别在于,testFailedThisOperationCycle 状态位在各操作循环开始时即清除,而 pendingDTC 状态位将保留至操作循环结束,其测试结果至少有一次为合格且后续未出现任何不合格结果。

若当前操作循环内测试未完成,则状态位不变。例如,若设定确认 DTC 后监测程序停止运行,则 pendingDTC 须保持为 ‘1’。对于 OBD DTC,在第一个行驶循环检测到故障后,需将其保存为 pendingDTC。

发出 0x14 服务请求后,将逻辑值重置为 ‘0’。

位状态定义:
‘0’ = 第一个操作循环结束后(测试完成)且未检测出任何故障或发出 0x14 服务请求,须将该位设置为 0。
‘1’ = 在当前操作循环内,如果检测出故障,则须将该位设定为 1 保持不变。

下图为状态第 2 位 pendingDTC 的逻辑。
状态第 2 位 pendingDTC 的逻辑

4. Bit 3:confirmedDTC(已确认 DTC)

本位将说明故障被检测次数是否足以确保 DTC 需被存入长期存储器。

confirmedDTC 并非始终表示发出请求时已出现故障(能根据 testFailed 确定请求时是否已存在故障)。

发出 0x14 服务请求或达到老化阈值(例如,发动机暖机 40 次后,未检测出其他故障)后,将逻辑重置为 ‘0’。而且,根据车辆制造商规定故障存储器溢位要求,若本 DTC 相关故障记录被更新 DTC 覆盖,则需重置本位。

DTC确认阈值和老化阈值由车辆制造商规定或由车载诊断法规指定。

发出 0x14 服务请求后,将逻辑值重置为 ‘0’。

位状态定义:
‘0’ = 自上一次发出 0x14 服务请求后或 DTC 满足老化标准(或故障存储器溢位清除 DTC 已被清除)后,未确认 DTC。
‘1’ = 自上一次发出 0x14 服务请求后未满足老化标准前,至少已确认 DTC 一次。

下图为状态第 3 位 confirmedDTC 的逻辑。

状态第 3 位 confirmedDTC 的逻辑

5. Bit 4:testNotCompletedSinceLastClear(自上次清除后测试未完成)

本位将说明,自上一次发出 0x14 服务请求后,是否进行并完成 DTC 测试。‘1’ 表示未完成 DTC 测试。若进行测试,不论是否合格(如,testFailedThisOperationCycle = ‘1’),须将本位设置为 ‘0’(并保持不变)。

发出 0x14 服务请求后,将逻辑值重置为 ‘1’。

位状态定义:
‘0’ = 自清除上一次诊断信息后至少进行一次 DTC 测试,不论是否合格。
‘1’ = 自清除上一次诊断信息后,未完成 DTC 测试。

下图为状态第 4 位 testNotCompletedSinceLastClear 的逻辑。

状态第 4 位 testNotCompletedSinceLastClear 的逻辑

6. Bit 5:testFailedSinceLastClear(自上次清除后测试不合格)

本位将说明,自上一次发出 0x14 服务请求后,是否完成 DTC 测试及测试结果是否为不合格(即保持 testFailedThisOperationCycle = ‘1’)。

‘0’ 表示未进行测试,或已进行 DTC 测试且结果为合格(无任何故障)。若进行 DTC 测试且结果为不合格,则需将本位应保持为 ‘1’ 不变。车辆制造商应规定本位达到老化标准或故障存储器溢位时是否需进行重置。

发出 0x14 服务请求后,将逻辑值重置为 ‘0’。

位状态定义:
‘0’ = 自上一次清除诊断信息后,DTC 测试未显示任何不合格及格。车辆制造商应规定本位达到老化标准或故障存储器溢位时是否需进行重置为 0。
‘1’ = 自上一次清除诊断信息后,至少有一次 DTC 测试结果不合格。

下图为状态第 5 位 testFailedSinceLastClear 的逻辑。

testFailedSinceLastClear 的逻辑

7. Bit 6:testNotCompletedThisOperationCycle(本操作循环中测试未完)

本位将说明,在当前操作循环内,是否已进行并完成 DTC 测试(或在当前操作循环期间上一次发出 0x14 服务请求后完成测试)。

逻辑值 ‘1’ 表示在当前次操作循环内,未完成 DTC 测试。若已进行测试,不论是否合格,进行下一次操作循环开始前须将本位设置(并保持不变)为 ‘0’。

发出 0x14 服务请求后,将逻辑值重置为 ‘1’。

位状态定义:
‘0’ = 在当前行驶循环内(火灾当前操作循环内,清除上一次诊断信息后)重新进行 DTC 测试,不论结果为合格或 testFailedThisOperationCycle = 1。
‘1’ = 在当前操作循环内(或在本次操作循环内,清除上一次诊断信息后)未完成测试。

下图为状态第 6 位 testNotCompletedThisOperationCycle 的逻辑。

状态第 6 位 testNotCompletedThisOperationCycle 的逻辑

8. Bit 7:warningIndicatorRequested(请求警告指示灯)

本位将报告与特定 DTC 相关的各报警指示器状态。报警输出由指示灯、文本信息等构成。若某特定 DTC 无相应报警指示器,则该状态将被默认为逻辑值 ‘0’ 状态。

激活报警指示器的条件须由车辆制造商 / 实施程序规定。但是,若出现某指定 DTC 时报警指示器亮起,需将 confirmedDTC 也设定为 ‘1’(下述情况除外)。

发出 0x14 服务请求后,将逻辑值重置为 ‘0’。某些 ECU 可能保持当前操作循环中与特定确定故障相关的失效保护策略。发出 0x14 服务请求后,若失效保护不变使得该报警指示器仍发送请求,则本位不得复位为 ‘0’。应保持本位逻辑值为 ‘1’,直至失效保护策略失活(如,测试完成且结果合格)。其他重置条件均由车辆制造商 / 实施程序规定。

位状态定义:
‘0’ = 服务器未请求激活报警指示器。
‘1’ = 服务器正在请求激活报警指示器。

下图为状态第 7 位 warningIndicatorRequested 的逻辑。状态第 7 位 warningIndicatorRequested 的逻辑

图例
1. 报警指示灯亮且达到标准要求 = 特定 DTC 有报警指示灯,且(confirmedDTC = 1 或达到车辆制造商或实施程序规定的报警指示灯启用标准)

9. DTC状态位操作示例

该示例概述了两个操作循环中,排放相关 OBD DTC 状态位的操作。该图所示为两个操作循环中,排放相关 OBD DTC 的处理。这种处理同样适用于排放无关 OBD DTC,此图仅供参考。

两个操作循环中,排放相关 OBD DTC 的处理

图例
0   收到 0x14 服务请求 -> DTC 状态字节初始化

1、2   相关诊断监测程序报告合格样本数量满足 DTC 合格要求 -> testNotComplete(未完成测试)位(4 和 6)从 1 转换为 0,表明已完成检测程序且操作循环 1 自上次清除后,DTC 已准备就绪。

3、4、5、6  相关诊断检测程序报告不合格样本数量满足 DTC 不合格要求 -> testFailed、testFailedThisOperationCycle、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   新操作循环开始后(由制造商规定从操作循环 1 过渡至操作循环 2 的过程是否保持 testFailed 状态),相关诊断监测程序报告合格测试数量已达到 DTC 合格要求 -> testFailed 位转换为 0.

12   新操作循环开始后,相关诊断监测程序报告合格样本数量满足 DTC 合格要求 -> testNotCompleteThisOperationCyle 位从 1 转换至 0,表明在新操作循环内至少已完成了一次监测。

13、14   相关诊断监测程序报告不合格样本数量满足 DTC 不合格要求 -> testFailed 和 testFailedThisOperationCycle 位从 0 转换至 1,表明在新操作循环内已检测到故障。

15   confirmedDTC 位从 0 转换至 1,表明上一次操作循环内检测的相关故障仍然存在。

16   DTC 状态切换至 confirmedDTC 时,TripCounter(故障监测诊断器)跳至 ‘2’,并立即重置为 ‘0’。

UDS (Unified Diagnostic Services) 是ISO 14229标准的一部分,用于提供统一的车辆诊断服务接口。它允许各种工具、设备和服务提供商之间通过通用的接口进行通信,以读取车辆故障信息。 UDS诊断涉及到DTC(Diagnostic Trouble Codes,故障诊断代码),即车辆在检测到某个系统出现问题时所生成的特定代码。这些代码通常由一串数字和字母组成,以描述具体的故障源。当使用支持UDS标准的诊断设备连接到汽车上并请求DTC信息时,车辆将返回存储在其ECU(电子控制单元)中的所有当前及历史的故障代码。 以下是关于UDS诊断DTC显示码的一些基本点: ### UDS诊断过程 1. **诊断请求**:诊断工具向车辆发送一个请求,询问有关车辆状态的信息,包括是否有故障存在以及具体的故障代码。 2. **响应**:车辆接收请求,并依据ISO 14229标准的UDS协议返回所需数据。这包括是否发现故障、故障代码列表等。 3. **分析与处理**:诊断工具收到响应后,解析其中包含的故障代码,然后将其转换为人能理解的语言(如英文描述)并显示给用户。这些代码可以帮助技术员快速定问题所在,从而采取相应的维修措施。 ### DTC显示码含义 每个DTC都代表了车辆的一个特定故障或潜在问题。例如,P0446可能是催化转化器效率过低的指示,而B1111则可能表示燃油泵故障。这些代码有助于识别需要关注的具体系统或组件,比如发动机控制系统、排放控制系统、变速箱或车身电器系统等。 ### 使用DTC进行维护的重要性 理解DTC对于进行准确的诊断和修复至关重要。错误地解释DTC可能导致不必要的修理工作或是对问题解决不当,甚至可能会导致更严重的后果。因此,技术人员应熟练掌握如何解读DTC,并结合实际检查结果进行全面分析。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值