王志坚 ,王秀雷 ,赵康荏,史彦晓,帅石金,李国祥
(1. 潍柴动力股份有限公司,山东 潍坊 261061;2. 清华大学 车辆与运载学院,北京 100084;3. 山东大学 能源与动力工程学院,山东 济南 250061)
柴油机匹配选择性催化还原(SCR)技术可满足国Ⅴ、国Ⅵ排放法规,是目前主流的NOx排放控制技术路线.NOx排放故障诊断是排放法规最重要的车载诊断系统(OBD)功能要求之一,对于国Ⅵ重型柴油机,根据GB17691—2018重型柴油车污染物排放限值及测量方法(中国第六阶段),当NOx排放超过限值1.2g/(kW·h)时,在台架的OBD认证过程中,一个冷热态全球瞬态试验循环(WHTC)结束前,OBD系统报NOx排放超标故障,激活转矩限制器.国Ⅵ重型柴油机使用两只NOx传感器分别直接测量发动机的NOx原始排放和SCR下游NOx排放,NOx排放故障诊断受到NOx传感器精度和信号漂移的影响,且车载NOx传感器对NH3有交叉敏感性[1].为此国内外公司和学者做了大量研究,提出了基于MAP映射和基于物理模型的诊断方法,前者需大量的标定试验,成本高且静态条件下标定的MAP无法准确表达瞬态条件下的NOx排放状态[2],基于物理模型的方法需要电控系统很强的计算能力,且部分模型参数难以从实车上获取[3-4],从而限制了其在实际产品上的应用.
由于现有NOx排放故障诊断算法存在准确率偏低的不足,有必要应用智能算法提高准确率.数据驱动模型的方法因在开发成本和时间上的优越性,被广泛应用于柴油机故障诊断模型的建立.戴金池等[5]基于神经网络实现柴油机的瞬态NOx排放数据预测,Pu等[6]基于机器学习实现纳米级的颗粒物分布规律预测,Najafi等[7]基于支持向量机和自适应神经模糊系统实现油耗、烟度、爆发压力和增压器转速等的数据预测.孙立民[8]基于概率神经网络(PNN),对船舶用柴油机高压系统节流阀状态进行故障诊断研究,诊断准确率为95%.文献[9—10]基于神经网络结合缸盖振动和曲轴角加速度信号对柴油机失火进行故障诊断,基于分类的思想诊断准确率高达100%.张永祥等[11]基于加窗和卷积神经网络算法,可以有效地对柴油机拉缸进行故障诊断,Ding等[12]基于小波包能量和深度卷积神经网络实现对机床主轴轴承的智能诊断,Ince等[13]提出一种将数据生成和故障诊断结合起来的算法,该算法能够自动提取故障特征数据,且具有优越的故障诊断能力,但是以上都是将稳态、瞬态分开建模,并应用不同的模型参数进行故障诊断,没有考虑实际道路条件下的模型泛化性能.因此,有必要建立一种模型,能够对瞬态和实际道路过程进行准确的NOx排放故障诊断,更好地适应产品的应用需求.
柴油机的运行是一个连续的过程,之前时刻的NOx排放状态将会影响下一个时刻柴油机的NOx排放状态,NOx排放故障诊断是一个典型的基于时间序列的诊断问题.对NOx排放进行故障诊断是典型的分类问题,受多种因素的影响,鲁棒性要求也较高,支持向量机(SVM)作为一种典型的二分类机制,少数的支持向量将决定最终的分类结果,适合于鲁棒性要求较高的故障诊断问题.基于以上分析,笔者针对实际情况,将NOx排放故障诊断抽象为时间序列的分类问题,提出一种基于时间窗口与SVM的NOx排放故障诊断算法,针对WHTC和实际道路(PEMS)试验数据建立统一的故障诊断模型,结合诊断放行、延迟时间条件,使用时间窗口将特征输入离散化,使用SVM算法将时间窗口分类,分别将WHTC循环作为训练集和测试集;WHTC循环作为训练集,PEMS数据作为测试集;WHTC循环与PEMS数据的集合作为训练集和测试集,模型均具有很高的诊断准确率,说明模型具备良好的泛化性能.同时对比了PNN及长短期记忆神经网络(LSTM)等其他神经网络模型,基于时间窗口与SVM的NOx排放故障诊断模型具有更高的诊断准确率和泛化性能.
表1~表3为柴油发动机、SCR后处理及整车主要技术参数.
表1 发动机主要技术参数Tab.1 Engine main technical parameters
表2 SCR后处理主要技术参数Tab.2 Main technical parameters of SCR aftertreatment
表3 整车主要技术参数Tab.3 Vehicle main technical parameters
发动机试验台架总体布置示意如图1所示.试验采用湘仪动力测试仪器有限公司CAC265交流电力测功机测量转速和转矩,采用AVL公司483微烟度计测量碳烟(soot)排放,且不受颗粒物中的可溶性有机物(SOF)、硫酸盐和矿物质等成分的影响,HORIBA公司MEXA-7200D气体分析仪测量排气中NOx、气态HC等.试验使用国Ⅵ标准柴油.
图1 发动机试验台架示意Fig.1 Schematic of experimental set-up
基于时间窗口和SVM的NOx排放诊断策略,需要兼容WHTC(OBD认证)和整车路谱工况(诊断策略的整车适应性验证),并且区分正常SCR催化消声器和劣化SCR催化消声器(使用热老化方法降低SCR转化效率,使得NOx排放结果控制在1.0~1.2g/(kW·h)).因此,基于台架WHTC和整车路谱工况及正常SCR催化消声器和劣化SCR催化消声器,分别采集试验数据用于模型的训练和验证.
针对台架,运行热态WHTC,采集正常SCR催化消声器的试验数据(图2a),NOx排放为0.35g/(kW·h),满足法规要求,SCR上游NOx排放平均值为453.6×10-6、下游排放平均值为9.2×10-6,SCR上游排气温度平均值为275.0℃.图2b为采集劣化SCR催化消声器的试验数据,NOx排放为1.18g/(kW·h),SCR上游NOx排放平均值为486.0×10-6、下游排放平均值为116.0×10-6,SCR上游排气温度平均值为271.1℃.
图2 热态WHTC循环下的NOx排放Fig.2 NOx emissions during hot WHTC cycle
针对整车,根据GB 17691—2018实际道路行驶测量方法(PEMS),进行整车路谱工况数据采集,发动机台架进行路谱模拟,包括10%负荷和100%负荷两种应用场景.图3为路谱工况,10%负荷的路谱平均转速为1133r/min,平均转矩为416N·m;100%负荷的路谱平均转速为1131r/min,平均转矩为877N·m.整车PEMS虽然只认证整车排放,并不认证NOx排放故障诊断功能,但因为PEMS认证是基于整车的实际道路工况,适合验证NOx排放故障诊断策略的整车适应性.因此,用PEMS认证的整车工况验证NOx排放故障诊断策略的整车适应性.
图3 路谱工况Fig.3 Working condition of road spectrum
采集正常SCR催化消声器的整车路谱试验数据,10%负荷和100%负荷的NOx排放分别为0.34g/(kW·h)、0.59g/(kW·h),满足PEMS法规要求,10%负荷、100%负荷路谱的SCR上游NOx排放平均值分别为501.7×10-6、687.8×10-6,下游NOx排放平均值分别为3.6×10-6、25.7×10-6,SCR上游排气温度平均值分别为274.3℃、314.0℃.
采集劣化SCR催化消声器的整车路谱试验数据,10%负荷和100%负荷的NOx排放分别为1.71g/(kW·h)、1.66g/(kW·h);10%负荷和100%负荷的路谱的SCR上游NOx排放平均值分别为484.5×10-6、755.3×10-6,下游NOx排放平均值分别为100.4×10-6、99.8×10-6;SCR上游排气温度平均值分别为265.2℃、345.1℃.
灰色关联度分析(GRA)是一种用于多因素分析的统计方法,在一个灰色系统中,评价结果受其他诱发因素影响的相对强弱,通过灰色关联度来衡量相似或相异程度[13].相比其他分析方法,灰色关联度分析在样本多少及样本有无规律的情况下同样适用[5],数据处理的流程如下.
(1) 确定灰色关联度分析法的比较矩阵(转速、喷油量、冷却液温度、SCR上/下游NOx排放、SCR上/下游排气温度、废气流量、尿素喷射量、机油压力、中冷后温度、中冷后压力、排气背压和烟度,共14个变量)和参考矩阵(NOx排放,将NOx体积流量转化为NOx排放),将各参数与NOx排放进行关联,来判断不同参数变化对NOx排放的影响,即
通过除以矩阵每列的最大值将量纲归一化为
(2) 计算灰色关联系数为
(3) 计算灰色关联度,比较矩阵和参考矩阵的灰色关联度为
式中:Xi、Y0分别为比较矩阵和参考矩阵;n、i分别为输入特征变量的个数和数据采集的条数;ξ0i(k)为第k个特征输入的关联系数;γ0i[Y0, Xi′(k)]为第k个特征输入的关联度;ρ为分辨系数,设定值为0.5.
根据式(5)可以得到灰色关联度向量,通过大小次序可以判断出各变量对NOx排放的影响程度,图4所示灰色关联度的前8位,都大于0.85,根据关联度分析和工程经验,将转速、喷油量、SCR上/下游NOx排放、SCR上/下游排气温度、废气流量及尿素喷射量共8个变量作为最终的输入特征,特征输入能够很好地描述柴油机的工作状况,且符合比较容易准确获取的原则[7-8].
图4 灰色关联度分析Fig.4 Grey correlation analysis
NOx排放的故障诊断结果为诊断模型的输出结果,NOx排放为参考矩阵,最终确定的8个变量作为诊断模型的特征输入.
图5 为归一化数据处理后的时间窗口持续时间以及间隔时间,为清晰地表达时间动态变化过程,将输入特征进行预处理,取时间窗口的特征平均值、方差值分别代表发动机当前的运行状态与稳定性,作为诊断模型的特征输入.
图5 特征输入的时间窗口Fig.5 Time window for feature input
采用时间窗口法进行NOx排放诊断,测试数据从0s开始,随着测试的进行,累积时间逐渐增加,当累积时间达到系统设定值时停止计算,间隔时间达到设定值后,重新进行时间窗口计算,如图6所示.特征输入计算式为
图6 时间窗口特征输入计算示意Fig.6 Schematic diagram of feature input calculation for time window
发动机在低负荷区,后处理的温度低,转化效率降低,易产生故障诊断的误报错;在高负荷区,后处理温度高,且废气流量较大,后处理的化学反应处在极限条件下,也易产生故障诊断的误报错.基于上述问题,限定发动机NOx排放故障诊断的放行范围如表4所示.其中,SCR排气温度是SCR上/下游排气温度的算术平均值.
表4 诊断放行范围Tab.4 Diagnose release range
满足诊断放行边界后,发动机及SCR系统需要一定的延迟时间进入稳定工作状态,状态稳定后放行故障诊断,提高故障诊断稳定性,避免误诊断,参考文献[2,4—5]放行延迟时间,取值为10s.
对于如何区分正常与劣化的SCR催化消声器,可以抽象为时间序列分类问题,用于数据分类的模型有SVM、PNN和LSTM等.其中,SVM是建立在统计学习理论上,SVM模型将向量映射到一个更高维的空间里,在这个空间里建立一个最大间隔超平面H,在超平面H的两边建有两个互相平行的超平面H1、H2,平行超平面间的距离越大,分类器的总误差越小,SVM遵循结构风险最小化原理,泛化能力强[14-15];PNN是用线性学习算法来完成非线性模式分类工作,能够达到快速分类处理的效果,PNN模型具备结构简洁、训练难度小并且收敛速度快等优点[16-18];LSTM是为了解决长期以来的问题而专门设计出来的,LSTM能够存储并传递长期记忆和短期记忆,并将其用于当前的数据预测中,时间越临近,对当前数据预测的影响权重越大,训练工作量大,学习时间长,特别适合预测复杂的连续时间数据[5,19].
对于NOx排放故障诊断这种复杂的时间序列分类问题,将连续时间数据处理为时间窗口,弱化了窗口之间的时间先后影响,理论上并不能发挥LSTM的优势.考虑到ECU计算能力,不可能做到实时的机器学习和参数优化,只能离线学习,在线使用,因而在考虑准确率的基础上,还要求高泛化性能,即模型要适应WHTC循环和不同的路谱工况,而PNN通常需要更多的数据对网络进行训练才能进一步提高网络模型的故障诊断准确率[16-18],PNN相对不适用于此应用场景.因此,最终选择SVM算法研究NOx排放故障诊断.
3.2.1 SVM模型
使用SVM算法进行分类处理,SVM算法核心思想是在特征空间中找到最优分类面,使带有不同标签的特征向量到最优分类面的距离最大化.图7为SVM模型架构示意,最优分类超平面H的公式为
图7 SVM模型架构示意Fig.7 Architecture diagram of SVM model
式中:m为训练集样本数量;i为样本空间中第i个样本;w为权值矩阵;b为偏置;C为惩罚因子;a为拉格朗日系数,取值为1;iξ为松弛变量.
对样本的输入特征值进行标准化,消除量纲的影响,即
式中:x为标准化前的样本点;x′为标准化后的样本点;μ为样本的均值;σ为样本的标准差.将发动机NOx排放超1.2的状态记作故障状态,输出标定为1;不超1.2的状态记作正常状态,输出标定为0.
3.2.2 核函数选择
常见的核函数主要包括线性核函数、多项式核函数和径向基核函数(RBF)等,采用径向基核函数完成低维特征到高维特征的映射[6,20],径向基核函数通常根据样本数据ix与样本数据中心点xj之间的欧氏距离来定义其在高维特征中的值.通常,样本数据距离样本中心越近将会有更大的特征映射值,距离样本中心越远将会有更小的特征映射值,其表达式为
3.2.3 学习算法
由于SVM是借助二次规划来求解支持向量,当样本数量较大时,特征输入矩阵计算的复杂度较大,针对此问题,采用序列最小优化(SMO)的启发式算法[8-10],ξi的定义是降低了异常点对分类模型的影响,在实际的推导过程中转变为0 ≤ ai≤ C 的约束条件,通过拉格朗日函数,SVM最优超平面的目标函数可优化为
式中:iα为拉格朗日因子;iy为样本观测值.SMO算法通过每次只优化两个变量,将其他的变量都视为常数,通过反复迭代求得权重w与偏置b,使样本点最终满足Karush-Kuhn-Tucker(KKT)条件,KKT的条件为
式中:yi为第i个样本的观测值;wxi+b为第i个样本的预测值;α*i为拉格朗日因子的解.
3.3.1 贝叶斯优化算法
贝叶斯优化算法(Bayesian optimization,BO)是一种基于后验概率的寻优方式[5],其核心思想在于根据高斯先验扩充目标函数的统计学模型,利用统计模型寻找目标函数的最优位置.其优化过程如下.
(1)通过当前样本建立高斯过程回归模型(Gaussian process,GP),即
式中:X、y分别为样本的属性和观测值;X*为待预测的样本集合;,若考虑到输入数据的噪声方差 nσ,则有,I为单位矩阵,K由平方指数协方差函数k(x,x′|θ)所得,一般描述的公式为
(2) 选取目标函数所对应的最优解作为下一个迭代更新的指标,通过扩充样本数据来完成迭代寻优的算法,当前最优解的均值与方差将会决定下次寻优.贝叶斯寻优过程如式(19)所示.
式中:μ、σ分别是样本空间D中点x点的均值与方差;β用于调节平均值和标准差的重要程度,取值为1.为了避免陷入寻优局部最小值,在迭代寻优过程中若当前最优解的方差σ<tσ(设定tσ为0.5),将判定当前寻优陷入局部最优解,此时将修改高斯过程模型中协方差函数 k(x, x′|θ)的核参数θ,将核参数θ乘以当前迭代次数,并更新寻优模型.通过反复迭代直到满足迭代终止条件,获得目标函数的最优解.
3.3.2 参数优化
SVM算法的权重矩阵w与偏置b在训练的过程中能够自动地迭代更新,而模型的径向基因子g和惩罚因子C是超参数,合理地选择超参数能够有效地提升分类模型的准确性[5-6].利用贝叶斯优化算法优化分类模型超参数,设在D维参数空间中,通过扩充满足边界条件内的目标函数最优值,最终到达模型最优位置,如图8所示.贝叶斯优化SVM模型主要包括初始化、目标函数计算、更新寻优模型和迭代寻优等操作[6-7].
图8 故障诊断模型的建模过程示意Fig.8 Modeling process of fault diagnosis model
惩罚因子C与径向基因子g构造寻优参数Xi=(CXi, gXi),CXi的变化范围为[0.0001,100000],gXi的变化范围为[0.0001,100000],最大进化次数为50,损失函数定义为
式中:n为验证集样本数量;yˆj为预测值;yj为实值;I{}为指示函数;wj为样本观测值权重.
利用5折交叉验证进行完成模型寻优[5],损失函数如图9a所示.当时间窗口为105s时,超参数优化过程如图9b所示,经贝叶斯优化后,惩罚因子C为2.94,径向基因子g为1.96,WHTC训练集上诊断准确率从86.63%提高到99.61%.
图9 贝叶斯优化过程Fig.9 Bayesian optimization process
根据式(21)计算NOx排放故障诊断准确率.
式中:η为准确率;rw为诊断正确的窗口数;sw为有效窗口总数.
对比了时间窗口时长对诊断准确率的影响,如图10所示.其中,WHTC-PEMS表示“-”前面数据作为训练集,“-”后面数据作为测试集.随着窗口时间的延长,模型预测准确率逐渐上升并最终趋于稳定,继续延长时间窗口意义不大,甚至准确率反而下降,拐点大约在105s.结合工程应用,推荐时间窗口取值为105s,此时利用WHTC作为模型训练集,在PEMS数据上的故障诊断准确率达到96.99%.其他测试集与训练集的建模组合,其模型故障诊断准确率均可达到99%以上,说明SVM模型具备良好的泛化性能.
图10 时间窗口时长对诊断准确率的影响Fig.10 Influence of time window duration on diagnostic accuracy
WHTC与PEMS工况的数据分布对比如图11所示.对于转速分布规律,WHTC与PEMS工况相比,WHTC、10%负荷PEMS工况和100%负荷PEMS工况在低转速工况区间(1000r/min以下)的数据占比分别为16.7%、6.4%和14.3%;在中间转速工况区间(1000~1300r/min)的数据占比分别为74.4%、92.3%和 65.5%;在高转速工况区间(1300r/min以上)的数据占比分别为8.9%、1.2%和20.2%.WHTC的低转速工况区间数据比较完整,中间、高转速工况区间数据相对不完整.对于喷油量分布(与负荷分布相当),WHTC与PEMS工况相比,WHTC、10%负荷PEMS工况和100%负荷PEMS工况在低喷油量工况区间(75mg/ cyc以下)其数据占比分别为40.5%、57.5%和24.0%;在中间喷油量工况区间(75~150mg/cyc)的数据占比分别为44.2%、42.5%和51.3%;在高喷油量工况区间(150mg/cyc以上)的数据占比分别为15.3%、0.0%和24.7%.WHTC在低、中间喷油量工况区间数据比较完整,高喷油量工况区间数据相对不完整.
图11 WHTC与PEMS工况数据分布对比Fig.11 Comparison of distribution of working condition data between WHTC and PEMS
只利用WHTC数据训练故障诊断模型,在PEMS数据进行验证,由于训练数据在中间、高转速工况区间与高喷油量工况区间的数据相对不完整,会影响模型在对应工况区间的故障诊断准确率.WHTC数据作为训练集,PEMS数据作为测试集,故障诊断模型在10%负荷、100%负荷PEMS工况的故障诊断准确率分别为98.67%和94.81%,如表5所示,高负荷的诊断准确率相对较低,与分析结果相符.不同SCR状态下,故障诊断模型在柴油机PEMS工况数据的诊断准确率分别为97.29%、96.69%,正常与裂化SCR催化消声器的诊断准确率差异不大,见表6.
表5 不同负荷下柴油机PEMS工况数据的故障诊断准确率Tab.5 Fault diagnostic accuracy of diesel engine PEMS operating data under different loads
表6 不同状态下柴油机PEMS工况数据的故障诊断准确率Tab.6 Fault diagnostic accuracy of diesel engine PEMS operating data under different conditions
在Matlab中建立PNN模型[11-13]与LSTM模型[5],PNN拓扑结构为:1层输入层,5层隐藏层,1层分类层;LSTM的拓扑结构为:1层输入层,1层LSTM层,2层全连接层,1层分类输出层.采用相同的方法训练并优化超参数,PNN的超参数主要为隐藏层神经元个数与径向基因子,LSTM的超参数主要为LSTM层神经元个数、批处理尺寸及学习率.表7为不同模型对PEMS试验数据的诊断准确率,说明SVM模型在面对未知输入时,依然能够利用训练集数据,结合时间窗口计算和放行条件,使得SVM模型相对PNN和LSTM具有更高的泛化能力.
表7 不同模型的故障诊断准确率Tab.7 Fault diagnosis accuracy of different models
(1) 建立了基于时间窗口和SVM的NOx排放故障诊断模型,以转速、喷油量、SCR系统上/下游NOx排放、排气流量、SCR系统上/下游排气温度和尿素喷射量作为模型输入特征,利用WHTC循环和PEMS试验数据进行训练和验证,能够取得较高的诊断准确率.
(2) WHTC循环试验数据作为训练集,贝叶斯参数优化后,模型对PEMS试验数据的故障诊断准确率达到96.99%,同时在不同的训练集、验证集组合中都能够保持99%以上的故障诊断准确率,说明模型具有较高的泛化性能.
(3) 对比PNN及LSTM神经网络等其他类型模型,基于时间窗口与SVM的NOx排放故障诊断模型具有更高的诊断准确率和泛化性能.