【汽车故障诊断2】一文了解诊断故障码DTC

【汽车故障诊断1】汽车上都有哪些故障?详细介绍了故障的类型,针对这么多的故障,如何进行有效管理?采用诊断故障码(Diagnostic Trouble Code,DTC),即汽车在线诊断系统识别的故障条件的数字通用标识符。

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

Source:ISO15031-6

1 DTC怎么看

使用DTC指示具体的故障类型,那么通过读取DTC,汽车维修人员就可以确定出现了什么问题,并进行相应的修复。DTC通常由一系列的字母和数字组成,如DTC为P0127,或B0001,或C0031, 或U0105,那它们表示什么意思?

  • P0127代表进气温度过高

  • B0001 代表驾驶员正面第1阶段展开控制(子错误)

  • C0031代表左前轮速度传感器(子错误)

  • U0105代表与喷油器控制模块通讯丢失

具体怎么看?根据ISO15031-6的DTC定义,如下所示:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

Source:ISO15031-6

DTC使用5个字符来表示,如上的四个DTC,每个DTC占用2个字节数据长度。其中:

第1个字符占用2位数据长度,表示故障所属系统,每个数值的具体意义如下:

  • 00 = P,代表动力总成(引擎和传动系统)故障

  • 01 = C,代表底盘故障,如制动系统或底盘控制模块故障

  • 10 = B,代表车身故障,如车身电子系统故障。

  • 11 = U,代表网络通信故障,表示车辆各系统之间的通信故障

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

Source:ISO15031-6

第2个字符同样占用2位数据长度,表示故障类型,每个数值的意义如下:

  • 00 = 0,代表ISO/SAE标准定义的故障码

  • 01 = 1,代表汽车制造商自定义的故障码

  • 10 = 2,ISO/SAE预留

  • 11 = 3,ISO/SAE预留

第3个字符占用4位数据长度,表示故障所属的子系统,以网络系统为例,

  • 0 代表网络电器

  • 1,2 代表网络通讯

  • 3 代表网络软件

  • 4,5 代表网络数据

具体可参考:ISO15031-6

第4,5个字符占用1字节数据,表示具体故障对象和类型,继续以网络系统为例,

  • U0101,前三个字符按照上述说明解析,后两字符01代表的具体故障对象和类型是与TCM通讯丢失

  • U0302,后两字符02代表的具体故障对象和类型是与变速器控制模块软件不兼容

  • U0405,后两字符05代表的具体故障对象和类型是从巡航控制模块接收到的数据无效

通过上述对DTC定义的解释,就知道怎么看DTC了。DTC可以说是故障类型的"身份ID",一个DTC映射一个故障类型。

2 DTC格式

DTC格式是根据几个标准协议来定义,比如ISO-14229-1,SAE J2012 OBD DTC和SAE J1939-73等。总的来说,DTC分为non OBD和OBD两种格式,如下所示:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

上面讲的都是OBD格式的DTC(省略了0x00),这里介绍了non OBD的DTC,该类DTC包含3个字节数据,其中:

  • HighByte和MiddleByte这2个字节与OBD的DTC定义一样,对应5位标准故障码(第一位是字母,后四位是数字);

  • LowByte表示故障类型,包含了DTC故障类别和DTC故障子类型,它代表了电路或系统中的故障类型(比如传感器开路,传感器对地短路等),具体可参考ISO15031-6

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

Source:ISO15031-6

其中DTC故障类别的定义如下:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

Source:ISO15031-6

当故障类型为一般故障信息(General failure information)时,DTC故障子类型有如下多种:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

Source:ISO15031-6

当故障类型为一般信号故障(General signal failures)时,DTC故障子类型有如下多种:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

Source:ISO15031-6

为了更好地理解non OBD格式的DTC,再看两个DTC,按照上述的定义说明,如下解释:

  • B0039-10 代表第1排右前方阶段部署控制 - 一般电器失效

  • C0031-23 代表左前轮速传感器 – 一般信号故障 - 信号卡在低位

对于上述两种格式,具体怎么区分,可通过DTC格式标志字来区分解析方式来区分解析方式,DTC格式标志字定义如下:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

Source:ISO15031-6

在OBD诊断当中用的最多的格式是SAE_J2012-DA_DTCFormat_00,即上面的OBD的DTC格式;在UDS诊断当中用的最多的格式是ISO_14229-1_DTCFormat,即上面的non OBD的DTC格式。需要注意的是,虽然OBD-II标准定义了DTC格式,但不同OEM可能会在其标准之上添加自定义的DTC。因此,对于特定车辆的诊断,最好参考该OEM提供的DTC解释表或相关文档。

3 DTC的16进制表示

通过诊断通信获取的DTC通常是16进制数值,而非5个字符形式,需要转换一下。那么上面例子中字符形式的DTC,如果采用16进制表示,将如何计算?先看个例子:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

Source:ISO15031-6

这样不难计算得到文章开头的4个DTC的16进制表示,如下:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

以上其实就是将下表的Code categories转换为Hex value的过程。

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

4 DTC的应用

在故障诊断通信的一些UDS服务中,将会涉及到DTC,比如19服务读取DTC信息:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

source: ISO14229-1

这只是DTC应用的一个简单举例,更多应用可参考ISO14229-1。

以上就是关于DTC的介绍,使用DTC可以表示汽车上会出现的各种故障,因此也更好地管理各种故障。欲了解DTC相关的更多内容,请关注下篇文章。同时也可移步查看个人知乎的ECU故障诊断相关文章。

---------------------------------------------------------------------------------------------------------------------------------

以上就梳理了汽车故障有哪些,为了进一步管理好这些故障,将引用诊断故障码(Diagnostic Trouble Code, DTC),敬请关注下篇文章。

创作不易,欢迎点赞收藏关注。

汽车故障诊断微信群,有兴趣的朋友请添加群主:prOmiseyes,备注:公司+职务入群。仅限汽车行业从业人员。

### 关于DTC快照标识符的定义与用途 #### 定义 DTC(Diagnostic Trouble Code)快照标识符是一种用于存储和检索特定时刻车辆运行数据的技术机制。它通常被设计为在ECU(Electronic Control Unit)检测到某个故障并生成相应的DTC时,捕获一组相关的实时参数值,并将其保存下来以便后续分析[^1]。 这些快照可以提供关于触发该DTC的具体条件的信息,从而帮助技术人员更精确地定位问题的根本原因。例如,在某些情况下,仅知道发生了哪个DTC可能不足以完全理解故障的本质;而通过查看对应的快照数据,则能够获得额外的关键细节来辅助诊断过程。 #### 使用场景 以下是几个典型的使用场景: - **维修车间中的应用** 当汽车送至修理厂进行检修时,技师可以通过读取OBD-II接口上的DTC及其关联的快照数据来进行深入排查工作。这使得他们不仅可以看到有哪些错误存在,还能了解到当时发动机转速、车速以及其他传感器数值等情况如何影响到了系统的正常运作状态[^2]。 - **远程监控系统内的集成** 对于现代车队管理解决方案而言,利用车载通信模块定期上传包括但不限于DTC在内的各类健康指标变得越来越普遍。如果某辆车报告了一个新的DTC事件,那么其伴随产生的快照也可能一并传输回中央数据库供进一步评估处理。这样做的好处在于允许运营方提前采取预防措施以减少意外停机时间的发生概率[^3]。 - **软件开发阶段测试验证环节的应用** 在新车型的研发周期里,工程师们会依赖模拟环境或者真实道路试验收集大量样本数据用作算法优化的基础资料之一。其中涉及到对各种潜在异常状况建模的过程当中,合理运用DTC连同它们各自的快照无疑是非常有价值的参考资料来源。 #### IT术语解释 从信息技术角度来看,“快照”这一概念并不局限于汽车行业领域之外还有广泛适用范围——比如文件系统备份技术里面提到过类似的名词表达方式。“DTC快照标识符”的本质实际上就是一种索引标签或者是地址指针形式的存在物,指向那些由特殊时机下采集所得的数据集合体位置所在之处。因此可以说它是连接抽象意义上的“故障描述对象”以及具体物理层面储存介质之间桥梁作用的重要组成部分。 ```python class DTCSnapshot: def __init__(self, dtc_code, timestamp, parameters): self.dtc_code = dtc_code # 故障编号 self.timestamp = timestamp # 记录的时间戳 self.parameters = parameters # 实时参数列表 def get_snapshot_data(self): return { 'dtc': self.dtc_code, 'time': self.timestamp, 'params': {key:value for key,value in self.parameters.items()} } # 示例实例化一个DTCSnapshot类的对象 snapshot_example = DTCSnapshot( dtc_code="P0420", timestamp="2023-09-15T14:23:45Z", parameters={"EngineSpeed": 2500, "VehicleSpeed": 80} ) print(snapshot_example.get_snapshot_data()) ``` 上述代片段展示了一个简单的Python类`DTCSnapshot`的设计思路,它可以用来表示单个DTC快照的内容结构。此实现方法有助于程序员更好地理解和操作这类复杂的数据实体。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值