UDS ISO 您所在的位置:网站首页 故障码P12C2 UDS ISO

UDS ISO

2024-04-20 16:46| 来源: 网络整理| 查看: 265

DTCStatusMask是关于DTC故障检测核心参数,需要着重了解

DTCStatusMask

DTCStatusMask(DTC状态码)是包含8个DTC状态位(statusOfDTC),每一个状态位都代表着不同的信息。长度位一个字节。主要用于请求消息中。允许客户端为其状态与DTCStatusMask相匹配的DTC请求DTC信息。如果任何一个DTC实际状态掩码被设置为“1”(即如果DTC状态掩码与DTC实际状态进行逻辑匹配,则发生匹配)。如果客户端指定了一个包含服务器不支持的位的状态掩码,则服务器应仅使用它所支持的位来处理DTC信息。

故障码状态码和故障码状态位定义

故障码状态码是一个8位的数据,故障码状态位定义如下表:

位名称位状态定义0testFailed 测试失败该位表示最近一次完成测试的结果。‘0’ = 最近一次故障码测试没有检测出失效(或是测试还在操作循环内没有执行)。‘1’ = 最近一次故障码测试结果为成熟确定的失效结果。1testFailedThisOperationCycle 该操作循环内测试失败该位表示在当前操作循环内任何时刻诊断测试是否出现测试失败。‘0’ =测试失败的结果在当前操作循环内还没有发生或是当前操作循环下调用了清除诊断信息服务。‘1’ = 测试失败的结果在当前操作循环至少被报告了一次。2pendingDTC 未确定的故障码该位表示诊断测试是否在当前操作循环或者上个完整的操作循环任意时刻已经报告测试失败的结果。如果测试运行并完成,该状态位应被更新。将该位置位的规则与“该操作循环内测试失败”置位的规则一致。不同之处在于“该操作循环内测试失败”在每个操作循环开始时被清除,而“未确定的故障码”直到一个操作循环已经完成并且在该操作循环内测试至少通过一次并从未发生失败时才会被清除。‘0’ =该位应在一个操作循环结束且没有失效发生或调用了清除诊断信息服务情况下设为0。‘1’ =该位在当前操作循环检测到失效后设为1并锁定。3confirmedDTC 确定的故障该位表示是否一个故障发生了足够多的次数使故障码存储与长期存储器中。“confirmedDTC”不表示在当前请求时存在的故障(testFailed用于表示在当前请求时存在的故障)‘0’ =从上次清除诊断信息后故障码没有被确定或是满足了故障码老化机制(或是由于故障存储其溢出而擦除了该故障码)。‘1’ =自从上次清除诊断信息后故障码测试没有进行或还没有完成。4testNotCompletedSinceLastClear 在上次清除后测试没有完成该位表示自从调用清除诊断信息服务后一个故障码测试是否进行和是否完成。‘0’ =自从上次清除诊断信息后故障码测试至少返回一次测试是通过还是失效的测试结果。‘1’ =自从上次清除诊断信息后故障码测试没有进行或还没有完成。5testFailedSinceLastClear 在从上次清除后测试失败该为表示自从调用清除诊断信息服务后故障码测试是否返回测试失败的结果‘0’ =自从上次诊断信息清除后故障码测试没有失效的结果发生。‘1’ = 自从上次诊断信息清除后故障码测试返回了测试失效的结果。6testNotCompletedThisOperationCycle 该操作循环内测试没有完成该位表示故障码测试在当前操作循环是否进行和完成(或在当前操作循环从上次清除诊断信息后测试是否完成)。‘0’ =在当前操作循环故障码测试已经返回测试通过或是当前操作循环测试失败的结果(或在当前操作循环从上次清除诊断信息后)。‘1’ =在当前操作循环故障码测试还没有完成(或在当前操作循环从上次清除诊断信息后故障码测试还没有完成)。7warningIndicatorRequested 警报指示请求该位表示对某个特定的故障码进行警告状态的指示。警告输出可能包括警告等、文本信息显示等。‘0’ =电控单元不要求警告指示激活。‘1’ = 电控单元要求警告指示激活。

注意:

如果支持 bit2(未确定的故障码),那么 bit1(该操作循环测试失败)也需要支持。如果不支持 bit2(未确定的故障码),那么 bit1(该操作循环测试失败)为可选项;bit4(自从上次清除后测试没有完成)和 bit5(自从上次清除后测试失败)应同时被支持;排放相关的电控单元应支持所有的 8 个状态位;非排放相关的电控单元必须支持 bit3(确定的故障码)和 bit0(测试失败),其它位为可选择的;通过响应信息中的故障码状态字节(故障码第四个字节)判断当前及历史故障(若控制器不能满足如下规则,需将具体规则体现在控制器诊断参数规范):当前故障:bit3=0,bit0=1;历史故障:bit3=1,bit0=0。简单流程梳理在清除收到的故障信息->初始化DTC信息第一轮检测循环开始->testNotCompleted bits (4 and 6) 从 1 改成 0,表示监测完成,对于操作循环1自上次清除后已达到 DTC 就绪状态。当发现检测失败,testFailed(Bit0), testFailedThisOperationCycle(Bit1), pendingDTC(Bit2), testFailedSinceLastClear (Bit5) 从0 改成1 。(注,可能存在)相关的诊断监测报告足够多次测试通过样本满足DTC通过准则→testFailed从 1改成 0表示故障当前未发生。当前循环操作结束,下一轮循环操作开始,testFailedthisOperationCycle从1改到0。新操作循环开始后,相关的诊断监测报告足够多次通过。

注:具体流程示例在ISO-14229有详细解释。建议阅读原文,加深理解。

DTCNumber

DTCNumber又可以理解为DTCMaskRecord。

DTCMaskRecord是一个3字节的值,包含DTC高字节、DTCDiddle字节和DTC低字节,它们共同代表服务器支持的特定诊断故障代码的唯一标识号。

3字节DTCNumber的定义允许用几种方式编码DTC信息。

它可以同时完成:

——根据ISO 15031- 6规范,使用DTC高字节、DTC中字节、中字节和DTC低字节进行解码。该格式由DTC格式标识符= SAE_J2012-DA_DTCFormat_00标识。

——通过根据本文档使用DTC高字节、中码节和低字节的解码,该文档没有指定任何解码方法,因此允许车辆制造商定义的解码方法。此格式由DTC格式标识符= ISO_14229-1_DTCFormat标识。

——根据SAE J1939- 73规范,对DTC高字节、中间字节和DTC低字节进行解码。此格式由DTC格式标识符= SAE_J1939-73_DTCFormat标识。

——根据ISO 11992- 4规范,使用DTC高字节、DTC中字节、DTC低字节的解码。此格式由DTC格式标识符= ISO_11992-4_DTCFormat标识。

——根据ISO 27145- 2规范,使用DTC高字节、DTC中字节、DTC低字节进行解码。此格式由DTC格式标识符= SAE_J2012-DA_VOBD_DTCFormat标识。

DTCMask记录应只包含单个DTC值。禁止使用DTC值的一组。

总结

后续讲详讲解0x19 服务,0x01,0x02,0x03,0x04,0x06,0x0A服务。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有