开启左侧

汽车控制器(ECU)中DTC的形态位

[复制链接]
在线会员 花落花 发表于 2023-2-25 09:13:37 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
从汽车ECU中读与贮存的DTC(缺陷码)时,除缺陷码自己,借能够读出许多其余的疑息,包罗劣先级、发作次数计数器、发作时的里程战时间,和原文中所道的形状位(DTC status  )。
那个形状位包罗1个byte,那里面的8个bit皆有各自的寄义,可是那8个 bit纷歧建都要使用,各个主机厂能够按照自己的需要使用此中的多少个,固然也能够局部使用。下图是UDS对于DTC status那8个bit的界说。

汽车掌握器(ECU)中DTC的形状位-1.jpg

DTC status中8个形状bit的界说

bit 0 : testFailed
凡是来讲,ECU内部以轮回的方法不竭天针对于事先界说佳的毛病路子截至尝试,假设正在近来的一次尝试中,正在某个毛病路子中发明了缺陷,则响应DTC的那一个形状位快要被置1,表征堕落。此时DTC的testFailed位被置1,可是它纷歧定被ECU保存到non-volatile memory中,只需当pendingDTC或者confirmedDTC被置1时DTC才会被保存。而pendingDTC或者confirmedDTC被置1的前提该当是检测到毛病呈现的次数或者时间满意某个预约义的门限。当毛病磨灭大概诊疗仪施行了消除DTC指令时,testFailed会再次被置为0。
bit 1 :testFailedThisOperationCycle
那个bit用于标记某个DTC正在目前的operation cycle中可否呈现过testFailed置1的情况,即可否呈现不对误。operation cycle的肇端面是ECU颠末收集办理叫醒到ECU颠末收集办理加入就寝,关于不收集办理的ECU,那个肇端面即是KL15通断。颠末bit 0咱们没法鉴别某个DTC可否呈现过,好比,目前testFailed = 0,说明 目前那个DTC不堕落,假设testFailedThisOperationCycle = 1的话,便分析那个DTC正在目前那个operation cycle中出不对,可是目前毛病又磨灭了。
bit 2 : pendingDTC
按照标准的注释,pendingDTC = 1暗示某个DTC正在目前大概上一个operation cycle中可否呈现过。pendingDTC位实际上是位于testFailed战confirmedDTC之间的一个形状,有的DTC被确认的判定前提比力宽苛,需要正在多个operation cycle中呈现才能够被判定为confirmed的形状,此时便需要借帮于pendingDTC位了。pendingDTC = 1的时候,DTC快要被保存下来了,假设交下来的二个operation cycle中那个DTC皆借存留,那末confirmedDTC快要置1了。假设目前operation cycle中,缺陷发作,pendingDTC = 1,可是鄙人一个operation cycle中,缺陷不了,pendingDTC 依旧为 1,再下一个operation cycle中,缺陷依旧没有存留,那末pendingDTC 就能够置0了。
bit 3 : confirmedDTC
当confirmedDTC = 1时,则分析某个DTC已经被保存到ECU的non-volatile memory中,分析那个DTC已经满意了被confirmed的前提。可是请留神,confirmedDTC = 1时,其实不表示着目前那个DTC依旧堕落,假设confirmedDTC = 1,但是testFailed = 0,则分析那个DTC暗示的缺陷今朝已经磨灭了。将confirmedDTC 从头置0的办法只需简略DTC,UDS用0x14效劳,OBD用0x04效劳。
bit 4 : testNotCompletedSinceLastClear
那个bit用于标记,自从前次挪用了清理DTC的效劳(UDS用0x14效劳,OBD用0x04效劳)以后,可否胜利天施行了对于某个DTC的尝试(不论尝试成果是甚么,只关心可否测了)。因为许多DTC的尝试也是需要满意某些鸿沟前提的,并非ECU上电便必然会对于DTC截至检测。
testNotCompletedSinceLastClear = 1 : 自从清理DTC以后尚未完毕过针对于该DTC的尝试。
testNotCompletedSinceLastClear = 0 :  自从清理DTC以后已经完毕过针对于该DTC的尝试。
bit 5 : testFailedSinceLastClear
那个位取bit 1 :testFailedThisOperationCycle有些类似,后者标记某个DTC正在目前的operation cycle中可否呈现过testFailed置1的情况,而testFailedSinceLastClear标记的是正在前次施行过清理DTC以后某个DTC可否出不对。
testFailedSinceLastClear = 0 , 自从清理DTC以后该DTC不出不对。
testFailedSinceLastClear = 1, 自从清理DTC以后该DTC出过最少一次错。
bit 6 : testNotCompletedThisOperationCycle
那个位取bit 4 : testNotCompletedSinceLastClear类似,后者标记自从前次挪用了清理DTC的效劳以后,可否胜利天施行了对于某个DTC的尝试。而testNotCompletedThisOperationCycle则标记正在目前operation cycle中可否胜利天施行了对于某个DTC的尝试。
testNotCompletedThisOperationCycle = 1 : 正在目前operation cycle中借出正在完毕过针对于该DTC的尝试。
testNotCompletedThisOperationCycle = 0 : 正在目前operation cycle中已经完毕过针对于该DTC的尝试。
bit 7 : warningIndicatorRequested
某些比力严峻的DTC会取用户看来的警告唆使相干联,好比仪容上的报警灯,大概是笔墨,大概是声音。那个warningIndicatorRequested便用于此类DTC。
warningIndicatorRequested = 1 : ECU恳求激活警告唆使。
warningIndicatorRequested = 0: ECU没有恳求激活警告唆使。
留神,假设那个DTC没有撑持警告唆使,则那个位永久置0。

归纳来讲,那8个形状位只用笔墨描绘的话会略隐抽象,假设正在事情中瞅到那些形状位的变革,那末便很佳理解它了。

精彩评论20

avatar
在线会员 rnlT 发表于 2023-2-25 09:14:10 | 显示全部楼层
写得很好👍
回复

使用道具 举报

avatar
在线会员 jAwq 发表于 2023-2-25 09:14:55 | 显示全部楼层
所以我去试车那时有时会在路上熄火再重新着车,有些dtc是second trip的,修dtc都是泪
回复

使用道具 举报

avatar
在线会员 hG31PMftg 发表于 2023-2-25 09:15:42 | 显示全部楼层
除了文中列举的条件,对于和排放相关的DTC,40个暖气循环没有出错也可以清除bit3的Conformed异常
回复

使用道具 举报

avatar
在线会员 ECCf2f 发表于 2023-2-25 09:15:50 | 显示全部楼层
👍
回复

使用道具 举报

avatar
在线会员 hG31PMftg 发表于 2023-2-25 09:16:45 | 显示全部楼层
楼主,您好!请问当诊断仪发送一帧数据给ECU时,ECU还没来得及回复(没有超时),诊断仪又发送了一帧数据,此时ECU还需要回复上一帧数据吗?
回复

使用道具 举报

avatar
在线会员 K4xCnwUt 发表于 2023-2-25 09:17:39 | 显示全部楼层
期待您的更新
回复

使用道具 举报

avatar
在线会员 l9Lox 发表于 2023-2-25 09:17:46 | 显示全部楼层
给老哥大大个赞,最近刚转行搞汽车电子这一块,好多东西不清楚,看了作者的文章每天都可以学习一点点,非常感谢,最后提一点小小的建议,不知道可不可以给文章的英文后边带上全称或者简单的中文解释。
回复

使用道具 举报

avatar
在线会员 YYGG9b6gv 发表于 2023-2-25 09:18:28 | 显示全部楼层
我已经尽量把英文全称写上了,因为工作中这些词汇基本都不用中文,我也不知道很多东西怎么准确用中文描述,每个公司都有自己的翻译习惯,然而我们不翻译,。。。你觉得哪里不清楚留言就行,有空我就解答了。
回复

使用道具 举报

avatar
在线会员 gf5WZV 发表于 2023-2-25 09:19:00 | 显示全部楼层
这个问题,我没有仔细注意过ISO标准是如何要求的。根据我们公司的定义,此时ECU终止对上一帧数据的处理,转而处理新收到的这一帧诊断数据。我不知道这个定义是否和ISO一致,也不知道ISO是否有关于这一点的定义。我觉得这就是一个人为规定的事情,不要纠结。从逻辑上来说,我认为这个做法比较合理,因为在诊断通信中,主动权是诊断仪的,ECU应该响应诊断仪最新的请求。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 qq_login

本版积分规则

发布主题
阅读排行更多+
用专业创造成效
400-778-7781
周一至周五 9:00-18:00
意见反馈:server@mailiao.group
紧急联系:181-67184787
ftqrcode

扫一扫关注我们

Powered by 职贝云数A新零售门户 X3.5© 2004-2025 职贝云数 Inc.( 蜀ICP备2024104722号 )