自动变速箱控制器诊断模块设计*

2014-06-24 00:47赵智易飞
汽车工程师 2014年7期
关键词:快照安全策略计数器

赵智 易飞

(上海汽车集团股份有限公司技术中心)

现在的控制系统开发,尤其是动力总成相关的控制系统已经不仅仅满足于实现所有的功能模块,还必须考虑各种存在的可能性和潜在的安全风险,并且在控制系统开发中对其采取相应的对策。所以诊断模块已经成为产品电子控制单元(ECU)的标准配置[1],而一些诊断开发协议已经被各大汽车生产厂商所采用,有的已经被各国政府列为行业法规,典型的如基于CAN通讯的UDS 协议,基于通用的GMLAN 的诊断协议等。在基本确定了变速箱的硬件设置之后,诊断管理系统应根据协议要求开发。一个完整的诊断管理模块应包括故障识别逻辑、故障去抖确认、安全策略以及故障相关信息存储管理等模块。文章从软件架构实现的角度对模块的开发进行探讨。

1 故障识别

从广义上来讲,诊断模块可以看作是整个控制系统中监控软件的一个子系统,如图1 所示。监控软件的故障识别从软件开发层面上看,可以分为2 类:1)与控制器本身相关的一系列电气故障。如内部软件逻辑故障、控制器芯片故障、通讯故障及控制执行器的电气故障。这些故障的监控和识别主要通过电气或软件的方法,比如冗余检查、握手确认及看门狗电路等。这一部分工作由电气工程师或软件工程师完成。2)应用功能故障。例如在变速箱控制器开发中,离合器过热保护就需要离合器过热这样一个故障识别。只要离合器温度不超过温度传感器的工作温度范围,从电气故障是无法识别的。这就需要在应用功能中做相应开发,设置对应的判断逻辑和判断阈值,并且设置该阈值可标定。

这些故障的识别逻辑是变速箱应用工程师在功能设计时完成的。目前变速箱控制器采用的故障识别逻辑有2 种:1)传统的传感器信号极限检测。这种方法对变速箱传感器信号设计上下边界值,超出该范围认为产生故障。2)基于模型的诊断(MBD)。该方法把诊断模型当作变速箱控制模型的一部分或一个模块看待,该模块可以是逻辑运算模型,也可以是基于微分方程的模型,或者两者的结合[2-3]。

2 故障去抖确认

故障标志被激活有可能来自电磁干扰,也有可能是故障确实存在。为确认故障是否确实存在,需要对故障标志进行故障去抖确认。去抖机制目前常用的有时间去抖机制和事件去抖机制,两者的区别主要是软件中的去抖计数器使用不一样。时间去抖机制中去抖计数器的使用类似于计时器,如果故障标志激活时间超过时间阈值,则认为故障存在,保存故障码到故障码存储区,以支持离线诊断仪基于诊断协议读取故障码;事件去抖机制中去抖计数器在每次故障标志位的上升沿累加,直至累加和超过某个阈值确认故障,即它计数的对象是故障标志位置位次数。

另外,2 种机制的去抖计数器的计数方法也有不同,常用的有单一队列式计数和上升下降式计数。两者的区别,如图2 所示。

对故障确认而言,单一队列式的计数器在每一次故障标志位激活,但是故障尚未确认的情况下,也就是计数器没达到计数阈值时,故障标志的激活状态消失了,计数器会归位。下一次故障标志位激活,计数器会重新从0 开始计数。相反,对故障消除确认而言,每一次故障标志位激活消失时,计数器开始计数,如果此时计数器没达到阈值而故障标志位激活,计数器会归位,直到下一次故障标志位激活消失,计数器再从0 开始计数。上升下降式计数在计数没有超过阈值而故障标志位发生变化时,并不归位,而是以一定的斜率下降,一旦故障标志位再次变化,计数器又以一定的斜率上升。

变速箱的绝大多数故障确认采用时间去抖机制;少数的如控制器重启故障,看门狗电路故障采用事件去抖机制,而且计数器阈值也设置得非常严格,故障发生1 或2 次就确认故障。还有少数与变速箱性能相关的也设为事件去抖,如变速箱换挡时间太短,偶尔出现一二次并不认为是故障,如果连续出现好多次才确认为故障。去抖计数器的计数方法遵循的原则:需要故障快速确认的,选择上升下降式计数,反之,选择单一队列式计数。这是因为上升下降式计数在计数没有超过阈值而故障标志位发生变化时并不归零,更容易快速达到计数阈值。

3 安全策略

3.1 安全策略的分类

控制器的安全策略开发主要指当系统检测到故障发生时的纠错措施的设计和开发。根据所采取的纠错措施对整个系统功能影响的不同,一般将控制器的安全策略分为3 类[1]。

1)控制系统如果具有紧急关闭的功能,而且一旦进入紧急关闭状态,退出紧急关闭状态的机制完全是可控的(如通过控制器的指令),而不是由于其他故障或失效引起的,具有这样特性的控制系统称之为失效安全系统。目前有些具有紧急关闭功能的自动变速箱属于此类系统。如AMT 和双离合器变速箱,离合器的监控是关键技术,一旦离合器相关故障发生,可以采用紧急关闭,一方面避免变速箱零部件损坏,同时也保证行车安全。

2)在某些情况下,控制器会进入所谓的半功能模式。如变速箱及其控制器进入跛行回家模式,变速箱还是处于工作状态,只是功能或部分功能受到限制。具有这种特性的系统称之为失效降低系统。

3)一旦系统发生故障,出于消除此故障造成的负面效应的考虑,有些系统采用的安全策略是通过某个开关(硬线开关或软件内部开关量)把出现故障的子系统旁路,以备份子系统代替故障子系统。在这种情况下整个系统还是能够工作的。一般来说该备份子系统与发生故障的子系统功能类似,但是又有区别,这种系统被称为失效可操作系统。典型的如发动机转速信号,对于自动变速箱控制器来说这是一个很重要的信号。有些动力总成电器架构中,变速箱控制器通过硬线采集离合器主动边信号作为发动机转速信号,以保证该信号的准确性和实时性。一旦转速传感器信号失效,除报出故障以外,可以采用系统旁路的策略,采用来自CAN网络上的发动机转速信号代替,所以在这种情况下汽车还能行驶。

3.2 故障替换功能

所谓替换功能对变速箱控制器来说就是当故障码报出之后,针对此故障码的产生,控制器所采取的措施。采取的安全策略不同,替换功能也不同。替换功能采用的前提是故障的探测和汇报确认。故障确认的后果是安全策略的使用。

由于软件架构的不同,从故障码到安全替换功能的关联方法也不同。图3 示出一种典型的故障替换功能软件架构。以变速箱内部某传感器开路为例:开路故障发生,故障标志经过去抖过程之后,确认为故障代码(DTC),并且保存在控制器的故障代码保存区,此时通过诊断仪或标定工具这一部分信息是可见的。与DTC对应的替换功能在DTC 出现的时候也被激活,替换功能激活会通过控制器操纵执行器实现相应的动作。

4 故障码快照的实现

按照国际标准UDS 协议(ISO14229:2006(E))开发的汽车电控单元诊断功能中,快照是DTC 的一部分。其功能与OBD 诊断模式2 中的冻结帧的功能类似,用于记录存储故障发生时刻相关的环境变量的值,便于维修工程师分析故障原因并排除故障。

一种可以实现平台化的故障码快照实现的软件架构,如图4 所示。DTC 和快照相关联,而快照则是一组信号的组合。以图4 中DTC A 为例,如果DTC A 出现,那么信号组3 的快照被作为DTC 的一部分被保存,也即信号B,C,E,F,G 在故障码发生瞬间的状态被保存。

这种软件架构数据结构的实现方法比较简单,并且各个项目的兼容性较强,可以通过修改标定量的方法快速实现不同项目之间的切换。

5 结论

诊断模块是汽车电控单元软件的重要组成部分,也是汽车售后维修的基础。文章从故障识别、故障去抖确认、安全策略和故障码快照的实现4 个方面介绍了自动变速箱控制器中诊断模块的软件设计方法,并列举了可以实现平台化的软件结构。这些软件架构已经在实际的研发项目中得到运用,具有软件复用性强及标定功能强大的特点,缩短了电控单元软件研发的周期。

猜你喜欢
快照安全策略计数器
面向Linux 非逻辑卷块设备的快照系统①
EMC存储快照功能分析
采用虚拟计数器的电子式膜式燃气表
基于可视化的安全策略链编排框架
巧破困局,快速恢复本本活力
多媒体教学服务器限制访问的一种措施
浅析涉密信息系统安全策略
基于Multisim10.1的任意进制计数器的设计与实现
地铁客运组织方式及安全分析
SR620型与53230A型计数器的性能测试