Automotive Control Systems -- Note 05
第六章 诊断
引言:
OBD II —— on board diagbostics-II 第二代车载诊断
随着 OBD-II(on-board diagnostics-II ,第二代车载诊断)等相关环境法规的实施,汽车发动机的车载诊断变得越来越重要 [17]。出于可维修性、可用性以及保护车辆方面的考虑,也需要采用车载诊断系统。为满足法规要求,现代发动机控制系统的大部分代码都是关于诊断的。
实际中使用的诊断方法有多种 [124,57] ,具体方法的选择取决于法规要求。最简单的诊断形式是传感器极限检验 (limit checking) 和主动诊断。主动诊断是指将发动机拉制在特定工况下(一般为怠速),以发现可能出现的故障。但这种简单诊断技术已不能满足日趋严格的法规要求。在某些情况下,由于缺乏更好的诊断方案,为适应诊断要求,工程师们只能被迫选择次优的发动机控制方案。因此,需要开发新型诊断技术,功能更强而且不依赖于特定运行工况和主动诊断。针对此种情况,基于模型的诊断应运而生,其用到了更多关于系统对象模型的信息。
本章 6.1 节先介绍发动机诊断的相关背景。然后, 6.2 节对 OBD II 法规实例进行阐述,该法规最先由加利福尼亚州空气资源委员会 (the California air resource board,CARB) 制定 [17]。6.3 节到 6.6 节介绍并讨论了诊断领域一些基本的概念和方法。接着,讨论如何将本书前几章提到的模型运用于先进的诊断技术中。最后, 6.7 节和 6.8 节分别对发动机进气系统诊断与失火检测两个诊断实例进行讨论。
6.1 汽车发动机的诊断
为什么要车载诊断?原因如下
①机械师可根据储存的故障代码迅速更换故障部件,使维修工作更加高效快捷。
②如果在行驶过程中出现故障,诊断系统在检测到故障后,能够将发动机运行工况切换至”跛行回家” (limp home) 模式。将故障部件排除在发动机控制系统外,在维修之前只采用次优的控制策略。
③根据发动机实际状况(而不是保养日程)实施保养,从而节省维修费用。
④诊断系统能将发动机的潜在故障通知驾驶员,使发动机得到及时维修。这也是提高可靠性的方法之一。
⑤发动机发生故障后,通常会导致有害排放物增多。比如,据 1990 年美国环境保护局估计,轻型汽车碳氢排放总量的 60%来源于有严重排放控制系统故障的汽车(这只占所有轻型汽车总数的 20%)[124] 。为使汽车尽快得到修理,类似的故障检测非常重要。
前三点是为了提高汽车的可用性。所有原因中,与环境相关的排放问题最为重要,正是排放问题促使在法律法规中加入了诊断系统方面的要求。这也使汽车发动机成为目前诊断应用的主要领域,在汽车上运用的诊断系统数量要远远超过其他应用场合。此外,由于汽车属于大批量生产商品,即使很小的额外成本也会受到重视,因此在汽车应用中诊断系统的成本限制十分特殊。总的来说,汽车诊断系统是一个充满挑战的领域。
6.2 OBD II
OBDll 于 1994 年开始推行,此后其要求逐步提高,并且对所有乘用车、轻型卡车以及中型车辆都适用。
OBDll 法规主要针对火花点燃式发动机,共分为三个子系统,各自对应于不同的诊断需求。
①进气系统 进气流量计、节气门、进气歧管压力传感器、发动机转速传感器。
②燃油、燃烧系统 喷油器、火花塞、失火。
③排放后处理系统 空燃比传感器、催化转化器。
此外,还有燃油蒸发系统和 EGRo 根据 OBDll 的要求,所有这些部件都需要进行诊断。
主要特点
OBDII 的主要构想是,当发生的故障将导致排放超标幅度超过 50%时,点亮故障指示灯(malfunction indicator light ,MIL) 。当 MIL 点亮时,应该显示“检查发动机” (check engine)或”尽快维修发动机” (service engine soon) 。 OBDII 的内容还包括 Scantool 标准、连接器、通信以及诊断系统数据交换协议。此外,它还要求对软件和数据进行加密,以免发动机控制系统
受到未授权的更改。
制造商必须指定诊断系统能够检测故障的监测工况 (monitoring condition) 。在联邦测试循环 FTP75 的第一部分中,即 phase 1和 Phase II 中,这些监测工况必须至少出现一次。FTP75 是一种在美国等国家使用的标准化测试循环。根据不同车速定义,它包括三个阶段(phase) 。 phase I 和 phase II 如图 6.1 所示。 phase III 的速度与 phase I 相同,但是要在 phase II 后再过 9至11 min 开始。
法规要求中的许多条款都基于”驾驶循环”这个术语。一个驾驶循环包括发动机起动、发动机关机以及正常行驶等部分。当检测到故障时,在下一个有监测工况的驾驶循环之前,必须点亮 MIL,并将故障代码储存到计算机上。储存在计算机内存中的信息称为“故障诊断代码”(diagnostic trouble code ,DTC) 和”冻结帧数据” (freeze frame data) 。冻结帧数据是发动机和控制系统当前状态下所有可获得的信息。在连续三个无故障驾驶循环后,应该熄灭 MIL。 在40 个无故障驾驶循环后, OBD 系统可清除该故障代码和冻结帧数据。
6.3 诊断简介
一般来说,包括医学和工程技术等领域内的诊断都可解释如下:针对一个系统过程,通过变量或系统行为的观测,以了解系统是否按照要求正常运行。如图 6.2 所示,诊断的任务是根据观察结果和相关知识得出故障结论,即判断是否存在故障并找出故障。因此,诊断的基本问题就是考虑如何得出故障决策,找出相关的系统参数和行为,并获得表征”系统正常工作”的知识信息。
基本定义和概念
本节将给出诊断领域的关键定义和概念。下面列出一些基本术语,并给出解释。在术语解释方面,部分参照了 IFAC 技术委员会 SAFEPROCESS 给出的定义。
①故障 (fault) 至少一个系统变量或特性偏离了可接受的(或正常的、标准的、名义上的)行为。
②失效 (failure) 发生某一故障时,导致系统在特定工况下不能继续实现预定功能时,称为失效。
③干扰(disturbance) 作用于系统上的未知或不受控制的输入。
④故障检测 (fault detection) 确定系统是否存在故障,并确定检测时间。
⑤故障隔离 (fault isolation) 找出故障位置,比如确定失效部件。
⑥故障识别 (fault identification) 确定故障大小以及时变特征。
⑦故障调节 (fault accommodation) 重新配置系统,以使系统在发生故障的情况下仍能运转。
⑧故障诊断 (fault diagnosis) 目前,针对”故障诊断”这个术语的定义,文献中有两种常见的观点。第一种观点(例如文献 [31]) 认为,故障诊断应包括故障检测、隔离和识别。第二种观点(例如文献 [54]) 认为,它仅包括故障隔离和识别。通常,将”故障诊断”简称为”诊断”。
⑨虚警 (false alarm) 无故障时警报启动的事件,或称为误报、误警。
⑩漏警 (missed alarm) 发生故障时未能启动警报的事件,或称为漏检 (missed detection) 。
@主动诊断 (active diagnosis) 主动给系统输入一个激励,找出可能的故障。
⑩被动诊断 (passive diagnosis) 在不影响系统运行的情况下,对系统进行研究,从而实现诊断。
6.4 基于模型的诊断
- 为提高发动机诊断系统的性能,可使用基于模型的诊断 (model-based diagnosis, MBD),这种方法中所采用的数学模型可包含系统的知识。
- 另一种传统的诊断方法是硬件复制(两份或三份复制,甚至更多) ,称为硬件冗余 (hardware redundancy) 。使用硬件冗余,会导致硬件成本、额外安装空间以及系统质量增加等问题。另外,额外部件也增加了系统的复杂程度,可能增加额外的诊断需求基于模型诊断的特点研究表明,不同于传统方法,基于模型的诊断作为辅助系统或独立运行都非常有用 [93 ,31 ,26 ,94] 。
在模型形式方面,可以是逻辑运算模型,也可以是基于微分方程的模型。根据不同模型形式,可
使用不同的基于模型诊断方法,例如统计方法[5]、离散系统方法 [110] 、人工智能方法 [102] 以及
基于控制理论的方法。本节重点讨论的是基于控制理论的诊断方法。与传统的极限检验相比,
基于模型的诊断具有以下优点:
①诊断性能更好,比如可检测到更小的故障,检测时间更短。
②可在更广的工况范围内运行。
③可作为被动诊断。
④可隔离不同的故障。
⑤可对干扰进行补偿,因此,在存在干扰的情况下诊断性能仍很好。
与硬件冗余相比,基于模型诊断的优点在于:
①它可适用于更多类别的部件。若用硬件冗余方法,包括设备对象在内的一些硬件并不能
被复制。
②不需要额外的硬件,因此生产成本低。
6.5 故障
如图 6.3 所示,一个设备对象可以分成三个子系统:执行器 (actuator) 、过程 (process) 和传感器 (sensor) 。根据故障发生在哪个子系统,故障被分成执行器故障、过程故障和传感器故障。有时也将过程故障称为系统故障 (system fault) 或部件故障 (component fault) 。
不同的故障通常具有不同的时变特性。图 6.4给出了三种不同类型的基本故障。
①突发性故障(实线) 突变、阶跃性故障,例如-个突然制动的部件。
⑧渐发性故障(点画线) 逐渐发展的故障,例如某个部件慢慢老化或传感器标定误差逐渐增加。
③间歇性故障(虚线) 例如连接器松动。
上述这些典型故障类型也常用于诊断系统的测试或评估过程中。但是在实际应用中,故障的时变特性往往更加复杂。
故障建模
故障建模是基于模型诊断的一个重要概念。故障模型需要描述的内容包括“可能发生的故障信息”、”该故障如何影响系统过程的运行”。一般而言,故障模型越精确,诊断性能越好。例如,能检测出更小的故障,就能隔离出更多的故障类型。
6.6 基于模型诊断的原理
定义 :残差残差 r (t) 是一个标量或者向量信号,在无故障时 r (t) 为零或很小的值,发生故障时 r(t)不为零。
6.6.3 基于模型诊断在汽油机中的应用实例
1.扩展 Kalman 滤波器
2. 检测滤波器
3. 残差
6.9 诊断系统的工程应用
但总体来讲,基于模型诊断系统的设计流程大概为如下几步:
①确定相关诊断要求。要诊断哪些故障,检测时间和隔离时间等时间限制,以及故障识别方面等要求。
②研究并获取与待诊断系统相关的知识,尤其是需诊断的故障。
③建立系统过程模型,对故障和干扰如何影响系统进行建模。这一步包括三个部分,即选择模型结构、参数辨识以及模型验证。
④基于所建模型,设计满足故障隔离要求的残差。
⑤评价残差性能并选择最好的残差万程。若残差性能不能满足要求,则需要对模型进二步完善。
⑥设计残差评价方法,其中包括阙值的选择。
⑦在仿真和实际条件下,测试和验证诊断系统。
⑧诊断系统的实施。
第①步和第②步中,只有依靠试验结果、长期经验积累或者向有关专家请教,相关文献较
少。所有步骤中,第③步中的建模可查文献最多。如前文所述,这也是诊断设计中的主要内容。在特定类型的系统以及一一般型系统的建模方面,都可查到相关文献,例如系统辨识方面的文献。对于第④步,前人己开发了许多方法,但工程师还可选择其他设计思路。在第⑤步和第⑥步中,残差的选择和评价方法也有很多选择方案。作为开发过程中的关键步骤,第④~⑥步中工程师应采用系统化的方法。第⑦步中,己有文献也很少,需要通过实践来掌握技巧。总地来说,在设计开发诊断系统时,需要完成的步骤较多。