文章目录
介绍
现在通用的DTC 一般由3个 byte 组成。下图是 DTC 0x923400 的数据组成。前面两个byte 的介绍我在系列文章中已经介绍过了,这里就着重介绍Low byte 的内容。
参数
DTC 故障类型由 16 个不同的故障类别组成,其中每个类别与 16 个子类型故障相关联。 子类型故障按逻辑分组在 DTC 故障类型类别中。 这将简化为 DTC 选择适当的子类型故障。 DTC 故障类别编码在“ DTC Failure Type Byte ”的高半字节中,故障子类型编码在“ DTC Failure Type Byte ”的低半字节中。
如果已经为组件/系统定义了标准 DTC,并且该 DTC 描述已经包含 DTC 故障类型信息,则可以使用标准 DTC 编号,并且 DTC 故障类型字节应设置为值 00 hex。 DTC 故障类型字节值 00 hex 表示 DTC 故障类型字节中不包含子类型信息。以下示例显示了 DTC 和 DTC 故障类型字节的三 (3) 个原则组合。
DTC 不需要包含在 DTC 故障类型字节中的任何附加描述(无 DTC 故障类别名称和无 DTC 故障子类型),例如 与排放相关的 DTC(012700 hex):P0127 进气温度过高;
DTC 需要包含在 DTC 故障类型字节中的附加描述(DTC 故障类别名称和无 DTC 故障子类型),例如 DTC (803910):B0039-10 一般电气故障;
DTC 需要包含在 DTC 故障类型字节(DTC 故障类别名称和 DTC 故障子类型)中的附加描述,例如 DTC (403123):C0031-23 左前轮速度传感器信号低。
DTC Failure Category
DTC Failure Type Byte Category Definitions | ||
---|---|---|
High Nibble | Byte Value(hex) | Description |
0000 | 0X | General Failure Information 此类别包括所有其他类别,并且在该故障类别中的故障是唯一的(不能通过分配新的子类型进行标准化)或当检测到的故障最好由该故障中的两个或多个子类型描述时使用类别 |
0001 | 1X | General Electrical Failures 此类别包括标准接线故障模式(即短路和开路),以及与欧姆定律相关的直流 (DC) 量 |
0010 | 2X | General Signal Failures 此类别包括与幅度、频率或变化率和波形相关的量 |
0011 | 3X | FM (Frequency Modulated)/PWM (Pulse Width Modulated) Failures 此类别包括与控制模块的频率调制 (FM) 和脉宽调制 (PWM) 输入和输出相关的故障 此类别还包括位置由计数确定的故障 |
0100 | 4X | System Internal Failures 此类别包括与内存、软件和内部电路相关的故障,需要更换组件 |
0101 | 5X | System Programming Failures 此类别包括与操作软件、校准和选项相关的故障,这些故障可通过配置/编程系统的一部分来解决 |
0110 | 6X | Algorithm-Based Failures 此类别包括基于比较两个或多个输入参数的合理性或比较单个参数与自身在时间上的故障 |
0111 | 7X | Mechanical Failures 此类别包括响应控制模块相关输入/受控输出的不适当运动检测到的故障 |
1000 | 8X | Bus Signal/Message Failures 此类别包括与总线硬件和信号完整性相关的故障 (当信号的物理输入位于一个控制模块中并且另一个控制模块诊断电路或由于该电路报告的故障而禁止操作时) |
1001 | 9X | Component Failures 此类别包括与组件故障相关的故障(包括参数、性能组装和操作环境故障) |
1010 – 1110 | (A - E)X | ISO/SAE reserved |
1111 | FX | Vehicle Manufacturer/System Supplier specific |
X 的值请从DTC Failure Subtype 中查找 |
DTC Failure Subtype
DTC Failure Category = “0”
DTC Failure Subtype definition for failure category “0” | ||
---|---|---|
Low Nibble | Byte Value(hex) | Subtype Description |
0000 | 00 | No Subtype information 此子类型用于故障,其中基本 DTC 文本字符串提供了故障本身的完整描述 |
0001 | 01 | General Electrical Failure 此子类型用于无法分配给特定子类型的一般电气故障 |
0010 | 02 | General Signal Failure 此子类型用于不能分配给特定子类型的一般信号故障 |
0011 | 03 | FM (Frequency Modulated)/PWM (Pulse Width Modulated) Failures 此子类型用于无法分配给特定子类型的 FM/PWM 故障 |
0100 | 04 | System Internal Failures 此子类型用于无法分配给特定子类型的控制模块内部故障 |
0101 | 05 | System Programming Failures 此子类型用于无法分配给特定子类型的系统编程故障 |
0110 | 06 | Algorithm Based Failures 此子类型用于无法分配给特定子类型的基于算法的故障 |
0111 | 07 | Mechanical Failures 此子类型用于无法分配给特定子类型的机械故障 |
1000 | 08 | Bus Signal/Message Failures 此子类型用于无法分配给特定子类型的总线信号/消息故障 |
1001 | 09 | Component Failures 此子类型用于无法分配给特定子类型的组件故障 |
1010 - 1111 | 0A - 0F | ISO/SAE reserved |
DTC Failure Category = “1”
DTC Failure Subtype definition for failure category “1” | ||
---|---|---|
Low Nibble | Byte Value(hex) | Subtype Description |
0000 | 10 | ISO/SAE reserved |
0001 | 11 | Circuit short to ground 此子类型用于控制模块测量接地(电池负极)电位超过指定时间段或预期某些其他值的故障 |
0010 | 12 | Circuit short to battery 此子类型用于控制模块测量车辆系统(电池正极)电位超过指定时间段或预期其他值时的故障 |
0011 | 13 | Circuit open 此子类型用于控制模块通过缺少偏置电压、低电流、输入状态没有响应输出等变化来确定开路的故障 |
0100 | 14 | Circuit short to ground or open 此子类型用于控制模块检测到的条件与任一指示故障模式相同的故障 |
0101 | 15 | Circuit short to battery or open 此子类型用于控制模块检测到的条件对于任一指示的故障模式相同的故障 |
0110 | 16 | Circuit voltage below threshold 此子类型用于控制模块测量电压低于指定范围的故障,但不一定是接地短路 |
0111 | 17 | Circuit voltage above threshold 此子类型用于控制模块测量电压高于指定范围的故障,但不一定是电池短路 |
1000 | 18 | Circuit current below threshold 此子类型用于控制模块测量电流低于指定范围的故障 |
1001 | 19 | Circuit current above threshold 此子类型用于控制模块测量电流超过指定范围的故障 |
1010 | 1A | Circuit resistance below threshold 此子类型用于控制模块推断电路电阻低于指定范围的故障 |
1011 | 1B | Circuit resistance above threshold 此子类型用于控制模块推断电路电阻高于指定范围的故障 |
1100 | 1C | Circuit voltage out of range 此子类型用于控制模块测量的电压超出预期范围但未识别为过高或过低的故障 |
1101 | 1D | Circuit current out of range 此子类型用于控制模块测量的电流超出预期范围但未识别为过高或过低的故障 |
1110 | 1E | Circuit resistance out of range 此子类型用于控制模块测量的电阻超出预期范围但未识别为过高或过低的故障 |
1111 | 1F | Circuit intermittent 此子类型用于控制模块暂时检测到上面定义的条件之一但时间不足以设置特定子类型的故障 |
DTC Failure Category = “2”
DTC Failure Subtype definition for failure category “2” | ||
---|---|---|
Low Nibble | Byte Value(hex) | Subtype Description |
0000 | 20 | ISO/SAE reserved |
0001 | 21 | Signal amplitude < minimum 子类型用于控制模块测量的信号电压低于指定范围的故障,但不一定是对地短路 |
0010 | 22 | Signal amplitude > maximum 此子类型用于控制模块测量信号电压高于指定范围的故障,但不一定是电池短路的故障 |
0011 | 23 | Signal stuck low 此子类型用于控制模块测量的信号在预期转换时保持低电平的故障 |
0100 | 24 | Signal stuck high 此子类型用于控制模块测量的信号在预期转换时保持高电平的故障 |
0101 | 25 | Signal shape/waveform failure 此子类型用于信号形状(幅度相对于时间的图)不正确的故障 |
0110 | 26 | Signal rate of change below threshold 此子类型用于信号转换比合理允许的慢的故障 |
0111 | 27 | Signal rate of change above threshold 此子类型用于信号转换速度超过合理允许的故障 |
1000 | 28 | Signal bias level out of range/zero adjustment failure 此子类型用于控制模块向叠加有信号电压的电路施加偏置电压的故障 此子类型也用于控制模块将零信号电平施加到电路上叠加信号电压的故障 |
1001 | 29 | Signal invalid 此子类型用于在给定操作条件下信号值不合理的故障 |
1010 - 1110 | 2A - 2E | ISO/SAE reserved |
1111 | 2F | Signal erratic 此子类型用于信号暂时不可信或不连续的故障 |
DTC Failure Category = “3”
DTC Failure Subtype definition for failure category “3” | ||
---|---|---|
Low Nibble | Byte Value(hex) | Subtype Description |
0000 | 30 | ISO/SAE reserved |
0001 | 31 | No signal 此子类型用于控制模块未检测到应该存在的信号的故障 |
0010 | 32 | Signal low time < minimum 此子类型用于控制模块检测到低脉冲相对于时间太窄的故障 |
0011 | 33 | Signal low time > maximum 此子类型用于控制模块检测到低脉冲相对于时间过宽的故障 |
0100 | 34 | Signal high time < minimum 此子类型用于控制模块检测到高脉冲相对于时间太窄的故障 |
0101 | 35 | Signal high time > maximum 此子类型用于控制模块检测到高脉冲相对于时间太宽的故障 |
0110 | 36 | Signal frequency too low 此子类型用于控制模块检测到指定样本大小的一个输出周期的持续时间过长的故障 |
0111 | 37 | Signal frequency too high 此子类型用于控制模块检测到指定样本大小的一个输出周期的持续时间不足的故障 |
1000 | 38 | Signal frequency incorrect 此子类型用于控制模块在给定时间段内测量的周期数不正确的故障 |
1001 | 39 | Signal has too few pulses 此子类型用于控制模块测量的脉冲太少的故障 |
1010 | 3A | Signal has too many pulses 此子类型用于控制模块测量的脉冲过多的故障 |
1011 - 1111 | 3B - 3F | ISO/SAE reserved |
DTC Failure Category = “4”
DTC Failure Subtype definition for failure category “4” | ||
---|---|---|
Low Nibble | Byte Value(hex) | Subtype Description |
0000 | 40 | ISO/SAE reserved |
0001 | 41 | General checksum failure 此子类型来指示未指定内存类型的错误校验和计算 |
0010 | 42 | General memory failure 此子类型来指示未指定内存类型的内存故障 |
0011 | 43 | Special memory failure 此子类型来指示内存故障,其中未在此类别中定义特定内存类型 |
0100 | 44 | Data memory failure 此子类型来指示使用 FLASH 存储器的嵌入式系统的数据(或工作)存储器故障 |
0101 | 45 | Program memory failure 此子类型来指示使用 FLASH 存储器的嵌入式系统的程序存储器故障 |
0110 | 46 | Calibration/parameter memory failure 此子类型来指示使用 FLASH 存储器的嵌入式系统的校准/参数存储器故障 |
0111 | 47 | Watchdog/safety μC failure 此子类型来指示看门狗/安全 μC 故障 |
1000 | 48 | Supervision software failure 子类型来指示监控软件故障 |
1001 | 49 | Internal electronic failure 此子类型来指示检测到内部电路故障 |
1010 | 4A | Incorrect component installed 此子类型来指示连接到控制模块的硬件与控制模块预期的硬件之间的不匹配 |
1011 | 4B | Over temperature 用此子类型来指示检测到内部温度高于预期范围 |
1100 - 1111 | 4C - 4F | ISO/SAE reserved |
DTC Failure Category = “5”
DTC Failure Subtype definition for failure category “5” | ||
---|---|---|
Low Nibble | Byte Value(hex) | Subtype Description |
0000 | 50 | ISO/SAE reserved |
0001 | 51 | Not programmed 此子类型来指示需要编程 |
0010 | 52 | Not activated 此子类型来指示程序的某些部分尚未启用 |
0011 | 53 | Deactivated 此子类型来指示程序的某些部分已被禁用 |
0100 | 54 | Missing calibration 此子类型来指示必须将传感器或执行器的操作范围等传授给控制模块 |
0101 | 55 | Not configured 该子类型由控制模块用于指示需要输入(编程)子系统选项内容或车辆选项内容 |
0110 - 1111 | 56 - 5F | ISO/SAE reserved |
DTC Failure Category = “6”
DTC Failure Subtype definition for failure category “6” | ||
---|---|---|
Low Nibble | Byte Value(hex) | Subtype Description |
0000 | 60 | ISO/SAE reserved |
0001 | 61 | Signal calculation failure 此子类型用于基于算法的计算失败 |
0010 | 62 | Signal compare failure 此子类型用于控制模块比较两个或多个输入参数的合理性的故障 |
0011 | 63 | Circuit/component protection time-out 此子类型用于控制模块检测到功能处于活动状态超过指定时间段的故障 |
0100 | 64 | Signal plausibility failure 此子类型用于控制模块检测到合理性故障的故障 |
0101 | 65 | Signal has too few transitions/events 此子类型用于控制模块在指定限制内随时间监控参数并检测到少于预期转换次数的故障 |
0110 | 66 | Signal has too many transitions/events 此子类型用于控制模块在指定限制内随时间监视参数并检测到超过预期数量的转换的故障 |
0111 | 67 | Signal incorrect after event 此子类型用于控制模块没有看到响应特定事件的参数或参数组的正确变化的故障 |
1000 | 68 | Event information 此子类型来指示检测到不是由控制模块本身引起但强制控制模块存储 DTC 的系统事件 |
1001 - 1111 | 69 - 6F | ISO/SAE reserved |
DTC Failure Category = “7”
DTC Failure Subtype definition for failure category “7" | ||
---|---|---|
Low Nibble | Byte Value(hex) | Subtype Description |
0000 | 70 | ISO/SAE reserved |
0001 | 71 | Actuator stuck 此子类型用于控制模块未检测到任何运动以响应为电机、螺线管、继电器等供电的故障 |
0010 | 72 | Actuator stuck open 此子类型用于控制模块在命令电机、螺线管、继电器等操作以关闭某些设备时未检测到任何运动的故障 |
0011 | 73 | Actuator stuck closed 此子类型用于控制模块在命令电机、螺线管、继电器等操作以打开某些设备时未检测到任何运动的故障 |
0100 | 74 | Actuator slipping 此子类型用于控制模块检测到命令电机、螺线管、继电器等将一件设备移动到所需位置的持续时间过长的故障 |
0101 | 75 | Emergency position not reachable 此子类型用于控制模块无法命令电机、螺线管、继电器等将设备移动到紧急位置的故障 |
0110 | 76 | Wrong mounting position 此子类型用于控制模块检测到未正确安装的组件的故障 |
0111 | 77 | Commanded position not reachable 此子类型用于控制模块由于执行器或其机械环境故障而无法命令电机、螺线管、继电器等将设备移动到命令位置的故障 |
1000 | 78 | Alignment or adjustment incorrect 此子类型用于控制模块检测到未正确调整或对齐的组件的故障 |
1001 | 79 | Mechanical linkage failure 此子类型用于控制模块检测到执行器正在运行但从动设备未运行的故障 |
1010 | 7A | Fluid leak or seal failure 此子类型用于控制模块检测到机械组件有意外的气体或液体流入、流出或通过该组件的故障 |
1011 | 7B | Low fluid level 此子类型用于控制模块检测到液位过低而无法正常运行系统的故障 |
1100 - 1111 | 7C - 7F | ISO/SAE reserved |
DTC Failure Category = “8”
DTC Failure Subtype definition for failure category “8" | ||
---|---|---|
Low Nibble | Byte Value(hex) | Subtype Description |
0000 | 80 | ISO/SAE reserved |
0001 | 81 | Invalid serial data received 此子类型来指示接收到的信号对应的有效位等于“无效”或信号的后处理确定它无效 |
0010 | 82 | Alive/sequence counter incorrect/not updated 此子类型来指示接收到信号而相应的滚动计数值未正确更新 |
0011 | 83 | Value of signal protection calculation incorrect 此子类型来指示使用不正确的保护(校验和)计算处理的消息 |
0100 | 84 | Signal below allowable range 此子类型用于通过串行数据报告的某些电路数量低于指定范围的故障 |
0101 | 85 | Signal above allowable range 此子类型用于通过串行数据报告的某些电路数量高于指定范围的故障 |
0110 | 86 | Signal invalid 此子类型用于通过串行数据报告的某些电路数量在操作条件下不合理的故障 |
0111 | 87 | Missing message 此子类型用于未收到一条(或多条)预期消息的故障 |
1000 | 88 | Bus off 此子类型用于数据总线不可用的故障 |
1001 - 1110 | 89 - 8E | ISO/SAE reserved |
1111 | 8F | Erratic 此子类型用于通过串行数据报告的信号暂时不可信或不连续的故障 |
DTC Failure Category = “9”
DTC Failure Subtype definition for failure category “9" | ||
---|---|---|
Low Nibble | Byte Value(hex) | Subtype Description |
0000 | 90 | ISO/SAE reserved |
0001 | 91 | Parametric 此子类型用于控制模块检测到组件参数的故障 |
0010 | 92 | Performance or incorrect operation 此子类型用于控制模块检测到组件性能超出其预期范围或以不正确的方式运行的故障 |
0011 | 93 | No operation 此子类型用于控制模块检测到组件未运行的故障 |
0100 | 94 | Unexpected operation 此子类型用于控制模块检测到组件以某种方式或在其未被命令运行的时间运行的故障 |
0101 | 95 | Incorrect assembly 此子类型用于控制模块检测到组件安装不正确或极性错误的故障 |
0110 | 96 | Component internal failure 此子类型用于控制模块已收到有关组件的指示的故障 |
0111 | 97 | Component or system operation obstructed or blocked 此子类型用于控制模块检测到组件的操作被障碍物阻止的故障 |
1000 | 98 | Component or system over temperature 此子类型用于控制模块检测到温度过高而无法正确运行组件或系统的故障 |
1001 - 1111 | 99 - 9 | ISO/SAE reserved |