韩耀辉,刘波澜,王文泰,刘凡硕,张俊伟
(北京理工大学机械与车辆学院,北京100081)
由于混合动力汽车较传统汽车系统结构复杂,可能发生的故障种类和形式更多,故障的表现和故障的成因之间的关系也更加错综复杂。混合动力汽车与传统汽车相比新增了高压元器件及附属设备,这也提高了原车上弱电设备出现故障的可能性。同时,从控制层面而言,新增的电机控制器单元(motor control unit,MCU)和电池管理系统(battery management system,BMS)提高了控制系统的复杂度,也提高了故障发生的可能性。多种因素使得传统汽车的故障诊断技术在面对混合动力汽车时捉襟见肘。虽然应用于传统汽车上的发动机、变速器等系统的诊断技术可移植到混动汽车的相应部件上[1-3],但混合动力汽车相比传统汽车新增的部件也需新的诊断方案。针对动力电池故障,目前有用基于密度空间的聚类算法[4]、遗传算法[5]、基于随机森林分类器的算法[6]、人工神经网络[7]、模糊算法[8]等;针对电机故障,目前有基于短时傅里叶变换和卷积神经网络的故障诊断算法[9]、基于支持向量机的故障诊断算法[10]、基于电机电流频谱分析和支持向量机结合的故障诊断算法[11]。这些故障诊断算法被广泛应用于发动机、电池及电机的故障诊断。然而,针对单一部件的故障诊断并不是完整的混合动力系统故障诊断解决方案,在实际系统运行时各部件作为一个整体互相影响,从单一部件出发的故障诊断可能不足以准确地定位故障。如并联模式时,由于电机欠功率而引发的发动机输出功率提高从而导致油耗增加,单从发动机故障诊断而言难以定位故障。综上,需要研究一种能对动力系统所有部件同时进行故障诊断的诊断算法。
本文中提出了一种基于支持向量机的故障诊断方案。通过搭建整车实时仿真模型,从系统级出发,融合混合动力系统中各个部件的特征信号,构建了基于支持向量机(support vector machine,SVM)柴电混合动力系统的诊断框架,进行了单故障注入和多故障注入的离线和实时仿真。该故障诊断算法能够实现在实时环境下对不同故障形式的辨识,相较只针对单一部件的故障诊断,该故障诊断算法能综合考虑系统的运行状态,更加准确地对动力系统所有部件同时进行故障诊断。
基于单轴并联式的混合动力系统的整车和各部件参数如表1 所示,运用发动机仿真软件GT-Suite利用整车及各部件参数搭建了物理模型与MAP 模型混合的柴油机实时模型、基于MAP 的电机模型及基于等效电路的动力电池组组成的电驱动系统模型,如图1 所示。
表1 整车及各部件技术参数表
图1 整车实时模型
为验证本文建立的仿真模型的准确性,首先需要对该柴油机全转速工况进行仿真计算,得到最高燃烧压力、制动比油耗(brake specific fuel consumption,BSFC)和转矩的试验值与仿真值的对比,如图2 所示。可以看出,仿真获得的数据和试验获得的数据相吻合,最大误差均小于5%,较为准确地模拟了柴油机运行特性,基本满足性能仿真的需要。
图2 仿真模型的最高燃烧压力、BSFC 和转矩校核结果
在GT-Suite 平台完成车辆建模后,选定中国典型城市公交循环(China typical urban driving cycle,CTUDC)工况进行仿真,模型的车速跟随效果如图3 所示。车速误差基本保持在±3 km/h 内,考虑到车速跟随误差较大处基本为当前车速较高时,认为模型具备后续进行诊断算法研究所需精度。
图3 速度跟随效果图
本文中针对柴油机、电机和动力电池组故障进行诊断算法研究,故障数据来源于仿真结果,选定CTUDC中含有电机单独驱动及电机与发动机混合驱动的1 228 s至1 277 s 段为整车模型的目标工况,如图4 所示。
图4 仿真循环工况
针对柴电混合动力系统常见故障,选取柴油机配气系统故障、电机机械故障及动力电池组电池内阻故障进行模拟分析,故障模拟方案见表2。
表2 故障数据样本
数据样本作为诊断模型的输入,是由多个特征信号构成的,而特征信号的选取应遵循以下依据:由于所有的特征信号来源都是搭建模型的仿真结果,所有选取的特征信号必须包含在混动模型中;此外,为了兼顾诊断算法在整车控制器上的可兼容性,所选的特征信号应尽量为车辆控制器的输入信号,即实车上可通过传感器采集到的信号。采集信号如表3 所示。
表3 特征信号选取
20 世纪90年代,科研人员在统计学习理论的基础上提出了SVM 算法[12-15]。该算法具有小样本、非线性和高维模式识别的特点,具有很强的泛化能力。
民乐铜矿的矿石结构以交代结构为主,其次为共结边结构、假像结构、包含结构。交代结构中,可进一步划分为脉状穿插结构、交代残余结构、骸晶结构、交代港湾结构等。
使用SVM 进行诊断研究,故障定位实际上是通过分类实现的。SVM 本质上是二分类算法,而二分类对于可能出现多种需要一一识别的故障模式的复杂系统显然不够,需要构建SVM 多分类器。构建SVM 多分类器的方法中,根据是否对目标函数进行改动可分为直接法和间接法两类。本节采用间接法实现多分类器的构建,间接法是通过组合多个二分类器实现多分类的,主要有一对一(one-verseone,OVO)和一对多(one-verse-all,OVA)两种构建方式。文献[16]表明,相较于OVA,OVO 是最适用的多分类算法,有着最好的分类性能。
针对无故障、柴油机故障、电机故障和动力电池故障4 种类别,构建6 个不同的二分类器,依次为无故障—动力电池故障分类器SVM0-1、无故障—电机故障分类器SVM0-2、无故障—柴油机故障分类器SVM0-3、动力电池故障—电机故障分类器SVM1-2、动力电池故障—柴油机故障分类器SVM1-3和电机故障—柴油机故障分类器SVM2-3。在二分类器构建完成后,采用OVO 方法的OVO-SVM 多分类器,标签0、1、2、3 分别表示无故障、动力电池故障、电机故障和柴油机故障。图5 为OVO-SVM 预测结果,可以看出,有较多实际类别为无故障的样本被预测成了电机故障样本,同时较多电机故障样本被预测成无故障类别。
图5 OVO-SVM 多分类器预测结果
表4 为上述6 个SVM 二分类和OVO-SVM 多分类器的预测准确率,虽然OVO-SVM 较部分二分类器的准确率低,但OVO-SVM 的误判明显小于6个二分类器的误判总和,这也进一步验证了OVOSVM 构造方式可以增加故障诊断的准确率。因此本文中选定OVO 构建方法进行故障诊断多分类器构建。
表4 二分类和多分类器准确率
确定了需要柴电混合动力系统故障模拟的方案后,搭建了基于SVM 的柴电混合动力系统故障部位识别诊断框架。基于SVM 的故障诊断主要分为数据样本获得与处理、SVM 多分类器的构建和对样本故障类别的辨识三部分,如图6 所示。
图6 故障部位识别诊断框架
数据样本的获取来源为所建立的整车模型,而整车模型在GT-Suite 中搭建,诊断算法模型在MATLAB/Simulink 中搭建,特征信号需通过Simulink harness 模块和GT S-function 传递到故障诊断模型中,经过数据处理后将样本输入SVM 多分类器。而SVM 多分类器采用OVO 的方法进行构建,首先拆分训练样本依次构建了6 个二分类器,再组合6 个二分类器构建SVM 多分类器。SVM多分类器输出样本类别,从而确认故障部位。
时域中的柴电混合动力系统故障诊断主要包括数据采集传输和故障诊断两部分。数据采集和传输部分实现对柴电混合动力系统注入故障,然后将柴油机特征信号、电机特征信号和电池特征信号传递到数据交互接口。故障诊断部分包括对特征信号进行处理,然后经过SVM 多分类器的故障识别,最后经过故障确认模块得到故障类别。故障诊断流程如图7 所示,联合仿真的软件保持步长一致,确保故障诊断部分不会遗失或者增加包含故障信息的样本点。
图7 故障诊断流程
在进行故障确认时,期望的效果是综合考虑故障持续时间和间隔来进行故障确认,于是采用基于计数的故障确认,原理是依据当前故障状态来进行计数,最后根据计数值来确认故障的状态。具体计数规则如下:当故障状态非0(默认)时计数器加1,当故障状态为0(非默认)时计数器减1。当计数器值在给定计数器上限(the given counter upper limit,TUL)和计数器下限(the given counter lower limit,TLL)之间时输出实际的计数器值,当计数器值超过TUL 时输出TUL;当计数器值等于TLL 且当前输入故障状态为0 时输出TLL;当计数器值等于TLL且当前输入故障状态为1 时输出0。当计数器值达到计数上限时,确认该故障,输出故障状态确认标签。TUL 根据汽车安全完整性水平国际标准取值为127,TLL 根据国际标准取值为-128。基于计数的故障确认效果如图8 所示。
图8 基于计数的故障确认
图9 实时故障诊断仿真平台架构
模型加载到实时仿真平台后,采用CTUDC 工况进行了模拟。图10 为离线仿真与实时仿真的车速和电机转速对比结果。从仿真结果中可以看出,离线和实时的仿真中车速和电机转速有相似的运行轨迹。结果说明在两种不同的仿真模式下,全局的运行结果相似,实时和离线仿真的结果没有明显区别。但在一些瞬态工况下,实时仿真和离线仿真结果有所不同。图11 为CTUDC 中200 s—250 s 段离线仿真与实时仿真的对比结果。从图中可以看出,随着车速不断提高,电机转速不断提高,230 s 左右车辆进入联合驱动模式,此时发动机起动,实时仿真结果的发动机转速相较离线仿真有一个剧烈的上升。由于车辆从纯电驱动切换至联合驱动,离合器接合时转矩冲击会导致转速较大的瞬态变化。实时仿真在瞬态工况时相较于离线仿真更能还原真实的情况,因此进行故障诊断实时仿真能进一步验证诊断算法对故障的辨识能力,能更好地模拟真实控制器上故障诊断的环境。
图10 离线仿真与实时仿真车速和电机转速对比
图11 离线仿真与实时仿真瞬态工况对比
完成实时仿真平台搭建后,在实时环境下进行故障诊断仿真,验证基于SVM 的故障诊断算法的可行性。单故障注入诊断是在第25 s 时分别对柴油机、电机和动力电池进行故障注入;多故障注入诊断是在第10 s 至第18 s 注入电池故障,在第10 s 至第21 s 注入电机故障,在第25 s 至第50 s 注入柴油机故障。
采用上述实时仿真平台,分别进行了电池、电机和柴油机的实时故障诊断仿真。车辆行驶工况与上文相同,在第25 s 时分别注入3 种故障。电池故障诊断实时仿真结果如图12 所示。相比无故障注入时,第25 s 电池故障注入后车速提升略变慢,较正常情况下晚3 s 左右到达最高车速,同时电池荷电状态(state of charge,SOC)也因内阻变大而下降更快。由于故障刚注入几秒内特征参数变化较小,故障诊断模块在29 s 左右辨识到故障发生,计数器的值开始增加,相较离线仿真时慢1 s 左右,在故障辨识模块识别到故障发生后,大约6 s 左右确认故障发生,输出故障标签1,即确认为电池故障,完成在实时环境下对电池故障的识别和确认。
图12 电池故障诊断实时仿真
电机实时故障诊断仿真结果如图13 所示。25 s电机故障注入后,由于电机机械效率降低,电机驱动能力下降,车速的跟随能力下降。同时从电机的转矩图中也能直观看出25 s 后电机的转矩较正常情况时有所下降,影响到整车的加速性能。车辆在49 s 左右加速到最高车速,较正常情况下晚6 s 左右。故障诊断模块对电机故障的诊断同样会有延迟,在28 s 左右识别到电机故障发生,计数器值开始增加,大约6 s 后确认电机故障发生,输出故障标签2,完成在实时环境下对电机故障的识别和确认。
图13 电机故障诊断实时仿真
柴油机实时故障诊断仿真结果如图14 所示。从进气压力和排气温度这两个特征信号可以看出,车辆在第16 s 左右进入联合驱动模式,柴油机起动。第25 s 时注入故障,进气压力降低0.025 MPa 后,随着转速和负荷的变化,进气压力的最高值也低于无故障注入时的最高值。而由于进气压力下降,进气量减小,空燃比变小,排气温度上升,从图中可以看出故障注入后的排气温度一直高于正常情况下的排气温度。由于对柴油机故障注入的形式不同,特征信号发生突变,变化的值较大,因此故障诊断模块马上识别到故障的发生,同样经过6 s 后故障确认模块输出故障标签3,即确认柴油机故障发生,完成在实时环境下对柴油机故障的识别和确认。
图14 柴油机故障诊断实时仿真
电池+柴油机故障诊断实时仿真结果如图15所示。电池故障在第10 s 注入后,由于电池的输出能力下降,车速跟随能力降低,同时由于内阻变大,SOC 下降速度更快。由于加速过程变慢,达到混合动力模式切换条件时间变长,发动机起动延迟2 s 左右,较离线仿真时延迟时间更短,因为实时仿真时相同属性的电池故障注入后对整车的影响相对较小,车速的跟随能力在实时仿真中下降得相对较小。在25 s 时注入柴油机故障,进气压力下降0.025 MPa,与单独注入柴油机故障相似,而由于进气压力下降,进气量减小,空燃比变小,排气温度上升。同理,进气压力曲线和排气温度曲线也会较无故障时延迟2 s 左右。
图15 电池+柴油机故障诊断实时仿真
故障识别模块对电池+柴油机故障注入的识别结果如图16 所示。从图中可以看出电池故障计数器值从11 s 左右开始增加,较故障注入时间延迟1 s左右,6 s 之后故障标签变成1,确认电池故障发生。第18 s 后,电池故障停止注入,0.5 s 左右后故障标签变为0,电池故障计数器值逐渐递减到-128。柴油机故障计数器的值从25 s 开始递增,第31 s 左右确认柴油机故障发生,故障标签变成3。总故障状态在第17 s 至第18 s 和第31 s 至第50 s 两个时间段都为1,能准确识别和确认电池和柴油机故障状态。
图16 电池+柴油机故障识别结果
电机+柴油机故障诊断实时仿真结果如图17 所示。纯电驱动模式时电机是唯一动力输出源,第10 s电机故障注入后电机转矩下降,车速跟随能力降低,相较无故障时晚5 s 左右达到最高车速。无故障注入时,第16 s 左右发动机起动,电机转矩下降较快,而由于切换到联合驱动模式的时间推迟,电机转矩的下降速度变慢。第25 s 时柴油机故障注入,进气压力降低0.025 MPa,而由于进气压力下降,进气量减小,空燃比变小,排气温度上升。进气压力较无故障注入时峰值减小,排气温度高于无故障注入时排气温度。
图17 电机+柴油机故障诊断实时仿真
电机+柴油机故障识别结果如图18 所示。电机故障的计数器从第10 s 开始累加,6 s 后电机故障标签输出2,确认电机故障发生,第21 s 后电机故障停止注入,计数器值开始递减至-128,同时故障标签输出0。柴油机故障计数器从第25 s 开始累加,第31 s 左右故障标签输出3,确认柴油机故障发生。总故障状态计数器值从第21 s 开始递减,第25 s 时计数器值又由于柴油机故障注入开始递增,因此总故障状态标签在第28 s 左右又会输出1,较柴油机故障标签变成3 早3 s 左右。从图中可以看出,故障识别模块能准确识别和确认电机和柴油机故障状态。
图18 电机+柴油机故障识别结果
(1)经验证,所建立的单轴并联柴电混合动力系统模型的转矩、油耗及最高燃烧压力的仿真值与试验值间的误差均在5% 之内,满足准确性要求。
(2)采用基于OVO 方法的构建混合动力系统多分类器的故障识别准确率达到98%。
(3)单故障注入和多故障注入的故障诊断实时仿真结果表明,在实时环境下,基于SVM 的故障诊断算法对混合动力系统级别故障具有良好的辨识能力。