点击上方蓝字谈思实验室
获取更多汽车网络安全资讯
-
ECU先通过采集这些传感器信号和与其他ECU进行通讯,收发一些信号; -
ECU再使用复杂的控制逻辑算法,计算得到执行器的控制指令;
-
执行器最后驱动执行机构,操控发动机机械部件运动,使得发动机按照期望的方式和效果运行。
3 故障类型
不难发现,在控制器层面可以进一步将各种零部件抽象到传感器,通讯,控制器,执行器和机械系统。这就是汽车实施故障诊断的起点,即针对ECU来做故障诊断,诊断哪些故障。按此思路,通常ECU故障分为5种类型:
-
电压小于4.75V,属于欠压; -
电压大于5.25V,属于过压; -
电压小于1V,属于供电短路到地或开路; -
电压大于6V,属于供电短路到电源。
-
PWM信号占空比的有效范围为[2%, 98%]。如果PWM信号占空比低于2%,或PWM信号占空比高于98%,属于PWM信号占空比无效。 -
PWM信号频率的有效范围为[1kHz, 3kHz]。如果PWM信号频率低于1kHz,或如果PWM信号频率高于3kHz,属于PWM信号频率无效。
4 DTC怎么看
使用DTC指示具体的故障类型,那么通过读取DTC,汽车维修人员就可以确定出现了什么问题,并进行相应的修复。DTC通常由一系列的字母和数字组成,如DTC为P0127,或B0001,或C0031, 或U0105,那它们表示什么意思?
-
P0127代表进气温度过高 -
B0001 代表驾驶员正面第1阶段展开控制(子错误) -
C0031代表左前轮速度传感器(子错误) -
U0105代表与喷油器控制模块通讯丢失
-
00 = P,代表动力总成(引擎和传动系统)故障 -
01 = C,代表底盘故障,如制动系统或底盘控制模块故障 -
10 = B,代表车身故障,如车身电子系统故障。 -
11 = U,代表网络通信故障,表示车辆各系统之间的通信故障
-
00 = 0,代表ISO/SAE标准定义的故障码 -
01 = 1,代表汽车制造商自定义的故障码 -
10 = 2,ISO/SAE预留 -
11 = 3,ISO/SAE预留
-
0 代表网络电器 -
1,2 代表网络通讯 -
3 代表网络软件 -
4,5 代表网络数据
-
U0101,前三个字符按照上述说明解析,后两字符01代表的具体故障对象和类型是与TCM通讯丢失 -
U0302,后两字符02代表的具体故障对象和类型是与变速器控制模块软件不兼容 -
U0405,后两字符05代表的具体故障对象和类型是从巡航控制模块接收到的数据无效
5 DTC格式
-
HighByte和MiddleByte这2个字节与OBD的DTC定义一样,对应5位标准故障码(第一位是字母,后四位是数字); -
LowByte表示故障类型,包含了DTC故障类别和DTC故障子类型,它代表了电路或系统中的故障类型(比如传感器开路,传感器对地短路等),具体可参考ISO15031-6
-
B0039-10 代表第1排右前方阶段部署控制 - 一般电器失效 -
C0031-23 代表左前轮速传感器 – 一般信号故障 - 信号卡在低位
6 DTC的16进制表示
7 DTC的应用
8 什么是DTC状态位
DTC状态位,即StatusOfDTC,是用来指示DTC所对应的故障是否发生,是否被确认等状态。DTC状态位包含1个字节数据长度,每一位都有具体的定义,如下所示:
-
测试,是指在一个操作循环内,在线诊断软件算法去判断一个组件或系统的故障状态的过程,在一个操作循环,有可能只跑一次测试,也有可能周期性循环地跑测试。 -
操作循环,定义了测试的开始和结束条件,车身与底盘域一般由OEM或者供应商自己确定(如上下电、休眠唤醒等),对而动力域还会存在其它标准规定。 -
老化,被所记录的DTC,如果这个故障不再出现,那就不会一直被记录下去,这时需要通过一个过程:当测试结果连续出现多少次Passed,才可将这个DTC清除,这个过程就叫老化。多少次称为老化阈值。
9 为什么需要DTC状态位
-
故障确认:DTC状态位可以用于确认故障是否持续存在。一旦故障被检测到并生成了故障码,相关的DTC状态位可以指示故障是否仍然存在。比如下图所示:
-
故障历史记录:DTC状态位可以记录故障的历史信息。当故障发生时,DTC状态位可以被设置为指示该故障已经发生过,如上情况2的历史故障等。 -
故障清除和重置:DTC状态位还可以用于指示故障码是否已被清除或重置,比如下图所示:
-
故障监控:DTC状态位可以用于监控特定系统或组件的故障状态。通过检查DTC状态位的值,可以实时了解故障的出现和消失情况,以便进行故障排除和维护。
10 DTC状态位说明
-
0 接收到清除故障信息指令 --> 初始化DTC状态位。 -
1,2 测试执行完成,结果为passed --> DTC的状态位bit4和bit6从1变为0,表明测试已执行,自上次DTC清除指令后,在操作循环1DTC已达到准备就绪状态。 -
3,4,5,6 测试执行完成,结果出现failed --> DTC的状态位bit2-bit0和bit5从0变为1,表明故障已被检测到,但未被确认(确认需要经过两个操作循环)。 -
7 测试执行完成,结果又变为passed --> DTC的状态位bit0,从1变为0,表明故障又没出现了。 -
8 测试执行完成,结果出现failed --> DTC的状态位bit0,从0变为1,表明故障在操作循环1重复出现。 -
9,10 操作循环1结束操作循环2开始,那么DTC的状态位bit1由1变为0,DTC的状态位bit6由0变为1,这个切换时机具体取决于OEM如何定义。 -
11 新的操作循环开始,DTC的状态位bit0是否仍然保持上一个操作循环,也取决于OEM如何定义,多次测试执行完成,结果又变为passed --> DTC的状态位bit0,从1变为0,表明故障又没出现了。 -
12 新的操作循环开始,测试执行完成,结果仍为passed,bit6由1变为0,表示在新的操作循环,测试至少被执行了一次。 -
13,14 测试执行完成,结果出现failed --> DTC的状态位bit0和bit1从0变为1,表明在新的操作循环,故障已被检测到。 -
15 DTC的状态位bit3由0变为1,表明故障已经两个操作循环,已被确认。
11 什么是DTC严重程度
-
仅维修(maintenanceOnly):当诊断代码或警告表明一个非紧急问题或一个需要注意的常规维护任务,但不需要立即采取行动时。它表明该问题应在下一次预定的维护或服务预约中解决。 -
在下次停车时检查(checkAtNextHalt):意味着一旦安全,就应该检查或解决某个故障或问题,通常是在下一次停车时。虽然这个问题可能不是一个直接的安全问题,但建议尽早检查,以防止潜在危害或进一步的损害。 -
立即检查(checkImmediately):意味着诊断代码或警告表明有一个关键或严重的问题需要立即关注。它表明在安全的情况下,应尽快停止车辆,并采取必要的措施及时解决这个问题。继续驾驶车辆而不解决这个问题可能会带来安全风险或造成进一步的损害。
12 什么是DTC快照信息
source:ISO14229-1
13 什么是DTC扩展数据
-
故障描述:提供了关于故障的详细描述,例如故障类型、故障位置、故障原因等。这些描述可以帮助技术人员更好地理解故障的性质和特征。 -
故障发生条件:描述了故障发生的条件和环境。这包括诊断条件、车辆状态、传感器数据等。了解故障发生的条件可以帮助技术人员在诊断过程中模拟相似的条件,以便更好地复现和解决故障。 -
故障影响:说明了故障对车辆性能和功能的影响。这包括对安全性、驾驶性能、排放性能等方面的影响。了解故障的影响可以帮助技术人员评估故障的紧急程度和优先级,并采取适当的修复措施。 -
故障解决建议:提供了针对特定故障的解决建议和修复步骤。这些建议可以包括检查项目、维修流程、替换部件等。技术人员可以根据这些建议来进行故障诊断和修复操作。
14 故障诊断系统
1.1 车内在线诊断系统
1.2 车外离线诊断系统
-
诊断和通信管理功能单元,包括10,11,27,28,3E,83,84,85,86,87共10种服务; -
数据传输功能单元,包括22,23,24,2A,2C,2E,3D共7种服务; -
存储数据传输功能单元,包括14,19共2种服务; -
输入输出控制功能单元,包括2F服务; -
例行程序功能单元,包括31服务; -
上传下载控制功能单元,包括34,35,36,37,38共5种服务。
15 为什么需要Debounce
16 Debounce算法
基于计数器的Debounce算法
来源:谦益行
更多文章
华为蔡建永:智能网联汽车的数字安全和功能安全挑战与思考
汽车数据合规要点
车载以太网技术发展与测试方法
车载以太网防火墙设计
SOA:整车架构下一代的升级方向
会员权益: (点击可进入)谈思实验室VIP会员
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论