
图 2 预消抖工作过程
Fig.2 Operation process of pre-debouncing
以大气压力信号为例,当大气压力传感器传递来的信号首次超出系统默认值(需标定)时,该信号就被确认为是初级故障,如果这一状态没有超过一定时间(需标定)或者出现故障的次数没有超出预设值(需标定),该信号被认为是无故障的。否则被确认为故障信号。此后,如果故障信号再次消失,信号被认为进行了初级自修复,但是如果信号在自修复后又出现故障,则该信号直接被确认为故障。当初级自修复后故障信号在一定修复时间(需标定)里故障消失或者故障出现的次数减少到预设值(需标定),该信号被认为是修复完毕,也即该信号不是故障信号。
2.2 故障管理
故障管理主要控制故障及相关信息何时被写入故障内存,故障灯何时被点亮。
2.2.1 故障路径处理方式
故障路径处理方式模块对电控柴油机可能出现的故障进行分类,并为不同类分配不同参数。FMS根据应用范围不同,将故障分为20类,其中包括OBD标准故障,OBD跛行回家故障,系统故障,非系统故障等。不同故障类分配到的参数变量主要包括MIL的亮与灭、触发条件、修复条件、是否对外输出、删除条件、冻结数据帧优先级等。
详细故障类参数变量如表1所示。
表 1 故障类参数变量
Tab.1 Definition of fault classes 参数变量 功能 FMS_ClassXXX_Mil 故障灯的状态 FMS_ClassXXX_SysLamp 系统灯的状态 FMS_ClassXXX_Scatt 故障信息是否可被OBDⅡ通用诊断仪读出 FMS_ClassXXX_Prio 冻结数据帧优先级 FMS_ClassXXX_Rediness 为每个故障定义准备就绪类 FMS_ClassXXX_TFlc 故障触发条件 FMS_ClassXXX_Flc 故障计数器初始值 FMS_ClassXXX_THlc 修复触发条件 FMS_ClassXXX_Hlc 修复计数器初始值 FMS_ClassXXX_TDlc 删除故障内存触发条件 FMS_ClassXXX_Dlc 删除故障内存计数器初始值 其中,XXX表示某种故障类型。
2.2.2 故障触发条件计算
故障触发方式计算模块主要计算故障被处理的条件。有三种触发条件:时间循环触发,驾驶循环触发,暖机循环触发。
时间循环触发:如果故障在某一固定时间内连续发生,就完成时间循环Time,将FMS_stcyles(具体比特位分配如表2)第二比特位置1。驾驶循环触发:发动机起动后或经过适当的时间延迟,即开始驾驶循环,并保持一定的时间(时间长短视系统而定),称为完成一个驾驶循环Dcy,此时将变量FMS_stcyles第三比特位置1。暖机循环触发:充分运转汽车后,使得发动机冷却液温度比起动时至少升高22.2℃,且至少达到71℃,系统完成一个暖机循环Wuc,将FMS_stcyles第四比特位置1。
表 2 FMS_stcyles比特位分配
Tab.2 Bit Distribution of MS_stcyles 比特位 含义 0 总是为0(即无循环) 1 Time(时间循环) 2 Dcy(驾驶循环) 3 Wuc(暖机循环) 4-7 不用 2.2.3 故障状态控制器
在ASCET软件中,用状态机(state machine)工具实现状态的控制[8,9]。故障状态控制器状态图如图3所示,操作时序图如图4所示。

图 3 故障状态控制器
Fig.3 Fault state controller

图 4 故障状态控制器操作时序图
Fig.4 Operation timing diagram of Fault state controller
预消抖后仍然存在的故障进入状态0,此时故障灯是熄灭的,故障内存被清空。
当故障通过预消抖首次被确认为最终故障时,转入状态1,并且存储此时故障出现时的环境状况,即冻结数据帧(“快照”)。故障持续存在,并且当前发动机状态满足故障触发条件后,故障计数器开始自减,当计数器减为0时,转入状态3;但如果故障在计数器自减到0之前突然消失,则转入状态2。在状态2中,如果在一定时间内,故障再次出现,故障就转入状态1,如果没有再次出现,故障就转入状态0。
在状态3中,此时的故障是真实的故障,系统会点亮故障指示灯MIL,存储此时的环境状况,并将此故障的故障代码及环境条件、故障指示灯状态写入故障内存[10]。这些故障代码可以根据不同的诊断模式通过通用故障诊断仪从故障内存中获取,如果在状态3中的故障消失,并且此时发动机状态满足故障触发条件时,修复计数器开始自减,当计数器减为0时,转入状态4。
在状态4中,当故障不再出现,并且满足故障触发条件时,删除计数器开始自减,当计数器减为0时,转入状态0,删除故障内存即系统清除存储的故障信息;当在计数器减为0之前,故障再次出现,转入状态3。
2.2.4 故障内存管理
故障内存用于存储故障信息,目前FMS最多可以存储10条故障信息。
1)当故障被判断为真实故障且故障内存中还有空位时,系统将在故障内存的末尾处添加该故障对应的故障新信息,如果故障内存已经用完,系统会在现有的故障内存中寻找一个优先级比当前故障低的故障并将其覆盖。
2)如果故障内存中已经存有该故障,该故障内存中的信息将被更新。
2.3 与其他组件的接口
2.3.1 与驾驶员接口
OBDⅡ规定在装有故障诊断系统的车辆上,必须使用故障指示灯。故障指示灯可以显示出和排放相关的故障,以便提醒驾驶员出现了故障。
发动机正常工作状态下,MIL将根据故障内存的内容决定:处于亮灯、灭灯或闪烁状态。MIL持续点亮,说明与排放有关的组件或电路出现故障,驾驶员应联系维修部门,检查哪里出现故障;MIL点亮很短的一段时间后又熄灭,并再未被点亮,说明只是出现偶然故障,且故障已被修复;MIL闪烁,说明发生一种可能使催化转化器损坏的严重故障。驾驶员应立刻停车,并参考用户手册来决定是继续行驶还是立刻送到维修站。
2.3.2 与通用诊断仪接口
FMS基于ISO15031-5可以满足EOBD法规的要求,规定通用诊断仪可以工作在9种模式下:
模式1:读动力系当前数据;模式2:读冻结数据帧数据;模式3:读确认后的与排放相关的动力系统故障码;模式4:清除和复位排放相关的诊断信息;模式5:读氧传感器监测测试结果(柴油机不支持此模式);模式6:读特定监测的OBD测试结果;模式7:读排放相关的待确认的故障码;模式8:请求控制车载系统,测试或者部件(属建议内容,FMS未引入。);模式9:读车辆和软件识别号。[11]
2.3.3 用户诊断仪接口
除ISO标准规定的故障内存和通用诊断仪之间的接口,一些厂商还会提出特殊的用户数据请求。比如读取故障码,读取故障发生时的冻结数据帧以及读取故障发生时的发动机工作状况。
基于以上原因,FMS开发了基于ISO14230指令的三个读取模块:0x18读取故障码(RDTC)、0x12读取冻结数据帧(RFFM)、0x17读取故障发生时发动机工作情况(RST)。
《上海口腔医学》
《心血管病学进展》
《福建论坛(人文社会科学版)》
《东北大学学报(自然科学版)》
编辑QQ
编辑联络
