混合动力汽车故障诊断功能的开发
- 格式:pdf
- 大小:274.79 KB
- 文档页数:5
新能源汽车收稿日期:2010-11-15混合动力汽车故障诊断功能的开发张 鹏 张君鸿 张 琳 张 燕 (上海捷能汽车技术有限公司,上海 201804)
【摘要】 主要介绍了混合动力汽车故障诊断开发的主要内容,结合实际混合动力量产开发项目,基于
ISO14229诊断服务的要求,重点论述了故障诊断开发过程中故障监测,诊断数据管理和诊断服务3方面的基本功能及其实现方式。
【Abstract】 Thediagnosisofhybridelectricvehicleisintroducedinthispaper.BasedontherequirementofISO14229,errordetection,diagnosticdatamanagementanddiagnosticservicearede-scribed,especiallythebasicfunctionalityandrealizationofthesethreeaspects.
【关键词】 混合动力 汽车 故障诊断doi:10.3969/j.issn.1007-4554.2011.01.04
0 引言混合动力汽车的开发,正日益受到国内外汽车厂商的关注,“十一五”期间,混合动力汽车可能成作为我国汽车工业自主创新的最佳突破口。相对于传统汽车,混合动力汽车更加复杂,系统中的任何一个器件出了故障,都可能会导致整个系统运行出现问题,轻者致使汽车性能严重下降或不能起动,重者导致重大的安全事故。因此开发高效且适合混合动力系统的故障自诊断功能非常必要。
1 混合动力故障诊断的内容在故障诊断开发过程中,主要包括以下几个方面的内容:诊断通讯协议,诊断服务请求和诊断应用。具体的故障诊断模型见图1所示。在实际开发过程中,考虑到项目的进度和确保软件的可靠性,对于诊断通讯协议部分主要运用Vector公司的工具来自动代码生成,主要包括
图1 故障诊断模型图1中的Networklayer和ApplicationLayer的部分内容,对于诊断应用部分的代码,通过C代码来实现。本文主要结合实际的开发量产混合动力项目来讨论诊断应用层软件的开发。对于混合动力汽车而言,为了实现低油耗和低排放的目标,增加了新的功能,与此相应,也会增加新的传感器,执行器等部件。混合动力故障诊断主要完成对这些新增的传感器和执行器的状态进行实时监测,故障诊断主要包括以下主要内容。
·16·上海汽车 2011.01 新能源汽车(1)能够实时的监测混合动力系统的故障信息。(2)设定故障失效的备份值,在设定一个故障码时,控制器也应该设定一个与该故障信息相对应的默认输入或者输出值,且此默认值必须保证整个系统还能够在一个比较安全的工况下工作。(3)冻结祯信息的存储,为了给随后的维修提供参考,同时能够让维修人员更清楚了解故障发生时刻车辆的相关信息。因此,必须定义并存储故障的冻结祯信息。(4)警告驾驶员,控制器确定了某一个故障后,还必须根据实际情况给驾驶员提供相应的信息,如点亮报警灯,声音提示等。(5)能够实现与外部通信,外部诊断仪可以获取存储的故障信息。为了实现上述功能,在实际开发过程中,将混合动力故障诊断分为3部分,具体为故障监测、诊断数据管理和诊断服务。在整个混合动力控制器中具体关系如图2所示。图2 故障诊断内容2 混合动力故障诊断的实现2.1 故障监测在混合动力故障诊断开发过程中,故障监测部分完成了以下几种类型的故障诊断,主要有控制器相连的传感器、执行器、CAN通信、扭矩检测和控制器本身的故障。(1)传感器故障传感器本身就产生电信号,对传感器的故障诊需要在软件中编制传感器输入信号识别程序或者相应的逻辑判断即可实现对传感器的故障诊断,传感器故障类型主要有对地短路,对电源短路,传感器性能不佳。(2)执行器故障执行器进行的是控制操作,控制信号是输出信号,要对执行器的工作情况进行诊断。一般要增设故障诊断电路,即ECU向执行器发出一个控制信号,执行器要有一条专用回路向ECU反馈其执行情况。当ECU得不到反馈信号或与期望值不符合时便认为该执行器已经不能正常工作。(3)CAN通信故障总线关闭故障:控制器不能和总线进行正常的通信,CAN发送器的故障计数器大于255时,设置CANbusoff故障。数据祯发送超时故障:在特定时间内,对于CAN通讯而言,一般为5倍的CAN发送周期,如果CAN数据祯没有发送出去,此时设置数据祯发送超时故障。信号错误:如果通讯过程中出现信号传输错误,必须要在应用程序中设置默认值,主要的监测方法是通过对每一个信号增加更新位,或者用checksum或者其他方式来间接的判断是否出现信号错误。(4)扭矩检测故障由于混合动力系统控制器本身是对两个动力源之间的进行能量的合理分配,来达到优化排放和油耗的目的,扭矩检测故障主要是用来检测系统的需求扭矩和实际的输出扭矩之差是否能够维持在一个比较合理的范围。(5)控制器本身故障控制器本身故障主要包括RAM、ROM、WATCHDOG等故障,诊断时需在硬件上增加后备回路的同时还需增加独立于电控单元系统之外的监视电路,监视回路中设置计数器。当电控单元正常运行时,由电控单元中的运行程序对计数器定时进行清零处理,此时监视电路中计数器的数值永远不会出现溢出现象。当电控单元出现不正常运行现象时,其将不能对计数器进行定时清零,致使监视计数器发生溢出现象。监视计数器溢出时其输出电平将由低电平变为高电平,计数器输出电平的变化,将直接触发备用回路。2.2 诊断数据管理
·17· 上海汽车 2011.01新能源汽车(1)故障确认:在故障数据管理中主要对来自于故障监测模块的信息进行计数,当计数器达到限值后,即故障确认,并且设置相应的标志位信息。(2)故障清除:在故障数据管理中根据故障监测模块的信息和当前的故障状态对相应的计数器操作,当该计数器达到相应的限值,自动清除存储器中该故障的相关信息。(3)故障数据的存储:在故障数据管理中根据故障的状态将与此故障相关的一些冻结祯及技术器的信息存入存储器中。(4)故障灯的状态管理:在混合动力系统中,由于新增加了部件,因此相对于传统车而言,新增了一些故障灯,像起停功能失效指示灯,充电系统故障指示灯等,故障数据管理中主要实现对这些故障灯的工作模式来进行管理和定义。(5)故障处理模式定义:混合动力汽车相对于传统汽车新增加了许多功能,因此对于不同的故障,定义了不同的故障处理模式,像禁止起停功能、强制进入传统车工作模式、跛行模式等。结合上述功能描述,在混合动力故障诊断软件开发中主要定义了如下数据。故障类型定义:按照故障的产生机理,将故障分为以下4种类型,具体定义见表1。表1 4种故障定义名称定义OBD RETAINED针对EOBD故障中计数器需要跨循环来累加计数OBD NORMAL在一个Cycle中,如果故障发生后,进入故障模式,如果故障消失,相应的的会退出故障模式OBD DRIVE CYCLE故障发生后在当前的Cycle中一直存在直到下次上电OBD SERVICE故障发生后一直存在直到用外部诊断仪清除故障优先级定义:按照故障的严重度,将故障分为以下3种优先级,具体定义见表2。表2 3种故障优先定义名称定义FF LOW PRIORITY低优先级故障FF MEDIUM PRIORITY中优先级故障FF HIGH PRIORITY高优先级故障 故障状态定义:按照故障当前所处的状态,将故障分为以下2种状态,具体定义见表3。
表3 2种故障状态定义名称定义FS PENDING故障没有确认FS CONFIRMED故障已经确认
除了需要定义上述数据以外,在诊断数据管理中还定义了以下3个函数。初始化函数:该函数主要在系统上电后执行一次,主要完成以下任务,根据上述定义的故障类型,从EEPROM中读取上一次存储的数据,针对不同的故障类型对相关计数器置零,其流程见图3。
图3 初始化函数流程图更新函数:该函数主要实现对故障的确认,同时完成对故障灯和故障处理模式等相关信息的设置。并且按照相应的格式和故障的优先级完成对诊断数据的存储,见图4。
图4 更新函数流程图afl update函数主要是完成对故障的debounce
·18·上海汽车 2011.01 新能源汽车处理,以确认是真实故障,并设置相关标志位。aff update函数根据故障的真实性对故障发生频率计数器完成更新。dcc update函数根据本次cycle中故障的发生情况来完成对drivingcycle计数器的更新。下电函数:如果在本次驾驶循环中没有发现故障,此时相应的技术器会累加,当到达限值时,自动清除存储器中与该故障相关的数据,见图5。图5 下电函数流程图2.3 诊断服务诊断服务主要在外部诊断仪和HCU之间的通信,以及控制器程序的刷新。具体内容在ISO14229中有定义,诊断服务主要有6大类,分别为:(1)诊断通信管理功能服务,主要包括数据传输速率控制服务,ECU重新启动服务等;(2)数据传输功能服务,主要包括根据数据标识符和再存储器中的位置来读取写入数据等相关服务;(3)已存储的数据传输功能服务,主要包括清除故障信息和读取已存储的故障状态信息;(4)输入输出控制功能服务,主要完成用故障诊断仪发出的指令来代替输入信号的指令;(5)程序控制功能服务,主要包括进行下线诊断时通过启动、停止服务对相关功能和部件的进行验证;(6)上传下载功能服务,主要进行故障诊断仪和ECU之间的数据传输。根据标准上的规定,所有这些诊断服务需要在不同的会话中来完成,且不同的会话具有不同的数据安全级别以及会话之间可以互现转换,通过诊断服务也可以实现在不同会话中的切换,以下是在开发过程中所定义的3个会话之间的切换流程图,见图6。
图6 诊断会话之间的切换流程图根据上述定义的不同的会话,在不同的会话中,会有相应的诊断服务来执行,具体的诊断服务主要按照以下的流程来执行,见图7。
图7 诊断服务执行流程图对来自于外部诊断仪的数据格式进行判断,判断其是否符合整车厂或者ISO14229中的规定,如果数据格式不正确,则返回相应的提示码,如果数据格式符合要求,则需要再根据要求判断需要执行该请求时的条件是否满足,如果条件不满足,返回相应的提示码说明具体不满足的原因,如果条件满足,则开始执行相应的动作。(下转第27页)
·19· 上海汽车 2011.01