刘 聪
(上海禾骋科技有限公司,上海 201805)
汽车诊断是指汽车控制器通过对相关传感器、执行器、控制器等电子元件的信号监测,按照系统预设的诊断策略来判定系统是否存在故障,并将故障以故障码的形式记录且可通过诊断仪读取,或在仪表中进行用户提示的过程。随着汽车电子信息技术的发展和进步,越来越多的电子电气设备应用于汽车中,而越来越复杂的汽车电子电气系统需要更加全面、准确的汽车诊断策略[1]。汽车诊断包括诊断需求定义、诊断架构设计、诊断数据库设计等流程,本文主要关注诊断策略定义。
图1 诊断开发整体流程
全面、准确的诊断策略定义便于质保部门进行整车质量检查及问题维修,并在涉及行车安全故障发生后及时提示用户并进入故障模式,降低用户使用风险。而如果诊断策略定义不当,则可能造成有故障而系统无法准确诊断、无故障但系统误诊断,从而导致问题检修困难、引起用户抱怨甚至造成严重质量问题。
本文从诊断策略定义的要素、原则,并结合问题实例分析如何定义诊断策略,并总结汽车诊断策略的工作流程。
完整的诊断策略应该包括如下要素:诊断故障点、诊断检测条件、诊断实现方式、故障判定条件、组合仪表报警条件、故障处理策略、历史故障码清除条件等[2]。
诊断故障点是指诊断的对象,按照信号来源诊断故障点可分为硬件接口诊断、网络信号诊断、系统内部诊断。
1.1.1 硬件接口诊断
硬件接口诊断是指对控制器硬件接口输入输出信号的诊断。硬件接口诊断的故障类别主要包括:开路、短路到电源、短路到地、电源电压过高/过低。
1.1.2 网络信号诊断
网络信号诊断是指控制器对总线信号和通过总线连接的控制器的诊断。网络信号诊断的故障类别主要包括:报文丢失/错误/无效、控制器节点丢失。
1.1.3 系统内部诊断
系统内部诊断是指控制器通过自身诊断策略对自身硬件或软件的诊断。系统内部诊断的故障类别主要包括:内部硬件故障、内部软件故障。
诊断检测条件是指控制器对某个故障点开始进行故障检测应满足的前提条件,进行诊断策略定义时,应根据实车使用工况和控制器负载综合考虑诊断检测条件。例如,车身控制器对左侧近光灯开路的诊断检测条件为:只有车身控制器判断满足近光灯开启条件时,才开始进行开路检测。
诊断实现方式是指控制器对某个故障点进行故障检测的方式。例如,车身控制器对左侧近光灯开路的故障检测实现方式为:车身控制器对左侧近光灯开路的诊断通过判断驱动线的电流实现。
故障判定条件是指控制器判定某个故障所需要满足的条件。例如,车身控制器对左侧近光灯开路的故障判定条件为:车身控制器检测到左侧近光灯驱动线的电流小于20 mA且持续3 s,则记录左侧近光灯开路故障码。
组合仪表报警条件是指针对需要在组合仪表对驾驶员进行报警的故障,组合仪表开始进行报警所需要满足的条件。例如,车身控制器对左侧近光灯开路的报警条件定义为:车身控制器检测到左侧近光灯驱动线的电流小于20 mA且持续5 s,则通过总线发送左侧近光灯故障信号,由组合仪表进行故障提示。
故障处理策略是判断存在某故障后,相关系统的处理策略。例如,车身控制器左前转向灯故障处理策略为:在左侧转向灯开关开启时,左侧转向灯不倍频闪烁,组合仪表左转向指示灯倍频闪烁,组合仪表文字提示“左前转向灯故障”。
根据故障码的状态,故障码可以分为当前故障码和历史故障码。当前故障码是指当前仍然存在的故障码,历史故障码是指控制器已记录但当前故障已解除的故障码。针对历史故障码可以定义清除条件,例如,车身控制器左前转向灯开路历史故障码清除条件定义为:通过诊断仪清除或40个点火周期都没有故障则自动清除。
在诊断策略定义时,应在遵守一些通用性原则的基础上,根据具体的功能场景进行详细诊断策略定义。
“严进宽出”,即故障问题的判定相对严格,故障解除的判定相对宽松。故障问题的判定相对严格,规避了某些故障误判情况;故障解除的判定相对宽松,避免故障原因解决后无法退出故障模式。
例如,某车型出现小批量的组合仪表提示前视摄像头故障的问题,样件返厂后再次进行前视摄像头标定,标定失败,通过诊断仪可读取自标定角度超差故障码。经确认,原诊断策略为:在车速超过80 km/h、持续2 min存在可见道路线时进行自标定,若前后两次自标定的角度值差异超过3度则进入失效模式,在失效模式下无法通过再次标定恢复正常。该定义为“宽进严出”,故障检测条件没有规避不适宜进行前视摄像头自标定的路段进行自标定,且报警限值较低,无法规避自标定角度值受胎压、载荷、道路情况影响的情况,可能会误报故障;而一旦进入失效模式后没有故障解除机制,导致样件一直失效。最终,诊断策略更改为:只有在功能激活时才能进行自标定,报警角度差值更改为5度,同时增加故障解除机制,可以通过重新标定恢复正常功能。
针对需要在组合仪表进行报警的故障,需要对故障检测条件、故障码记录条件、组合仪表报警条件等进行详细分析,在不影响安全的情况下组合仪表报警条件尽量严格,避免出现误报警;同时考虑报警优先级,避免出现组合仪表已经提示但是控制器没有记录历史故障码的情况。
例如,某车型售后车辆出现右后转向灯故障问题,用户拨打右转向开关时,组合仪表提示右后转向灯故障,但实际检测车身控制器返回的样件后,未读取到相关故障码。经确认,原诊断策略定义为若检测转向灯驱动线电流超过报警阀值超过1.5 s则记录一次故障码,并且向组合仪表发送右后转向灯报警信号,组合仪表进行故障提示;而只有用户连续记录三次故障码,才能够存储为历史故障码并可以通过诊断仪进行读取。优化方案为,将诊断报警策略更改为检测到一次故障即存为历史故障码,但不向组合仪表发送报警信号,直到在一个行驶周期内连续检测到5次故障才会向组合仪表发送报警信号,组合仪表进行故障提示。
对于故障判定条件的定义,要收集各相关电气件的参数定义,故障判定条件的定义不能与相关电气件的参数定义冲突;并考虑在用户极端操作情况下,即对于故障诊断的极限情况下能否规避误诊断。
例如,某车辆出现无法起动问题,可读取传动链继电器粘连故障码。经确认,该故障码检出原因为驾驶员在起动成功后较快速挂出P/N挡,控制器会短时检测到传动链继电器接口电压超过报警限值,误判为粘连故障码。最终,通过延长传动链继电器粘连的报警时间解决了此问题。
故障判定条件定义应考虑规避实车不同工况导致的误报警,例如急加速/急减速情况下的液面/油位报警、电机热保护状态下电机状态报警等[3]。
例如,某车辆急刹车时组合仪表报机油压力低故障;在较高车速下急刹车时,有一定几率组合仪表报出机油压力低故障;随着车速提升,故障报出几率越大。故障检出条件是组合仪表通过硬线接收机油压力传感器信号,当连续3 s组 合仪表检测到机油压力低则进行故障提示。实车进行测试,发现在急刹车时由于惯性会出现短时间机油压力低,可能会超过3 s报警限值,如图2所示。
图2 组合仪表机油压力报警信号
针对此问题,增加机油压力报警时间限值,规避短时压力低导致的误报警。
随着汽车功能复杂性的不断提升,准确而全面的诊断设计越来越重要,以保证及时报出重要安全类故障以提示用户,同时规避误诊断。本文总结了汽车诊断设计整体流程,重点介绍了诊断策略定义的要素、设计原则,并结合具体实例进行了说明。