[摘 要]本文通过多联机实验平台采集数据,选取合适的特征变量,利用支持向量机算法建立了多联机气液分离器插反故障诊断模型。采用粒子群算法优化该模型,通过测试集验证模型的分类准确率,并对两种模型下的故障诊断效果进行对比分析。结果表明,制冷工况下的故障诊断准确率高于制热工况下的准确率。模型优化前两种工况下的故障诊断准确率均高于96%,而优化后的准确率均高于97%,优化后制冷工况下的故障诊断准确率更是高达98.4%,可见优化后的模型性能稳步提升。
[关键词]支持向量机;多联式空调系统;气液分离器插反;故障诊断;粒子群算法
0 引言
多联机在中国空调市场中所占的份额[1]越来越大,其产品也日益多样化,而气液分离器是多联机分流装置[2]中的关键部件,其作用主要是将制冷剂的气态与液态分离,分离效果直接影响空调系统的性能。由于气液分离器的入口端和出口端的外形十分相似,在多联机系统的组装、维修等过程中,一些非专业的工作人员易将气液分离器插反,即造成气分插反故障。一般这种故障的发生部位容易被忽略,故障的隐蔽性很高。但发生这种故障后,在长期运行过程中,会导致压缩机发生“液击”现象,严重影响压缩机寿命,甚至影响整个制冷系统的性能。因此迫切需要找出一种更好的故障检测和诊断技术来提升对该故障检测和诊断的准确率。
近年来,针对制冷空调系统的故障检测与诊断技术的研究越来越深入。基于数据的故障检测与诊断方法是主流,HU等[3]提出了用自适应主元分析(Principal Component Analysis,PCA)方法来检测冷水机组传感器故障,提高了冷水机组在低温工况下的故障检测率;XU等[4]采用小波分析和PCA的方法,明显改善了冷水机组的故障诊断效果。LIU等[5]将PCA与指数加权移动平均法(Exponentially- weighted Moving Average,EWMA)相结合的方法应用于检测多联机系统的制冷剂充注量故障,使得在轻微故障工况下的故障检测率明显提高。可见近年来的研究以PCA方法居多[6],此外,神经网络[7-8]、决策树[9]、支持向量机(Support Vector Machine,SVM)[10]等算法也越来越多地应用于制冷系统故障检测与诊断的研究。本文使用的是多联机系统的实验所得数据,由于数据集的样本量较少,而且呈现明显的非线性关系,而支持向量机在解决小样本、非线性问题中具有特殊的优势,故本文利用支持向量机算法对气分插反故障进行检测与诊断。
1 故障诊断模型的构建
1.1 基于支持向量机的故障诊断模型
支持向量机(SVM)是一种基于统计学习理论的机器学习方法,自1995年VAPNIK[11]提出支持向量机以来,由于它在解决小样本、非线性及高维模式识别问题中表现出许多特有的优势,因而得到广泛研究、应用和发展。SVM的基本原理[12]是将低维空间中线性不可分的问题映射到高维空间中,然后在高维空间中最大化不同类之间的间隔来构造最优分类超平面。
对于线性可分情况下的样本:(xi, yi),i=1, 2, …, l,xiÎRn,yiÎ{-1,+1}被最优分类超平面w·x + b = 0完全无误地分为两个类别,并且这个超平面能够使两类分类点的距离最大。离最优超平面最近的两类样本向量称为支持向量,两类支持向量与最优超平面间距之和为2/||w||,因此,构造最优超平面问题就转化为线性约束的凸二次规划问题:
(1)
式中:
w——最优超平面法向量;
b——阈值。
支持向量机使用的核函数主要有高斯核函数、径向基核函数、多项式核函数以及线性核函数等。本文采用应用最为普遍的径向基核函数来建模,其中惩罚参数C和核参数g是影响支持向量机模型的两个重要参数。目前对支持向量机模型参数的选择方法主要有交叉验证法[13]、网格搜索法[14]、遗传算法[15-16]和粒子群算法[17-18]等。由于粒子群算法本身使用迭代的思想去解决问题,算法的精确性比较高,故本文采用粒子群算法来优化模型参数的选择。
1.2 基于粒子群和支持向量机的故障诊断模型
粒子群(PSO)算法是一种模拟鸟类捕食行为的群体智能算法,PSO算法随机地初始化一群粒子,然后通过迭代去解决全局寻优问题。每个粒子有相应的位置和速度,分别用Xi = (xi1, xi2, …, xie)和Vi = (vi1, vi2, …, vie)表示,其中i=1, 2, …, n,n为种群数量,e为搜索空间的维数,每个粒子有一个被优化函数决定的适应值,在每次迭代过程中,速度和位置的更新公式如下:
(2)
(3)
其中,w为惯性权值,c1和c2为学习因子,rand1和rand2为属于[0,1]的随机分布函数,Pi = (pi1, pi2, …, pie)为第i个粒子搜索到的历史最优位置,Pg = (pg1, pg2, …, pge)为整个群体搜索到的历史最优位置,粒子的速度都会被限制在[-Vmax,Vmax]的范围内。速度太大,粒子可能会飞出最优解;速度太小,粒子可能会陷入局部最优。
为了提高算法的收敛速度,对惯性权值w进行线性调整[19],即随着迭代的进行,线性减少w的值,调整公式为:
(4)
其中,iter为当前迭代次数,itermax为最大迭代次数。由于粒子群算法的上述优点,故采用粒子群算法优化支持向量机的模型参数,从而得到基于PSO-SVM的故障诊断模型,并对优化前后的两种模型的故障诊断效果进行对比。
2 多联机系统的实验装置
2.1 实验装置简述
由于多联机系统能够适应多个房间的制冷、制热需求,当这些房间的同时使用系数较高时,与传统空调相比,多联机系统具有减少能源浪费、节省室外空间、降低运行费用的优点[20]。然而当系统发生故障时,会带来能源、经济、安全等方面的问题,因此基于数据挖掘的多联机系统故障检测与诊断的研究也越来越深入。
本文利用了多联机系统实验平台[21]进行数据采集。多联机系统实验装置及主要控制点见图1,该多联机系统有1台室外机和5台室内机,其中全开表示5台室内机全部开启,单开表示1台室内机运行,系统的主要设备有室内机、室外机、压缩机、气液分离器、油分离器等。利用各种温度压力传感器得到众多的运行数据,实际建模过程中需要根据专家知识和构建数据变化模型验证选取合适的建模的特征变量,从而建立更为适用的模型。
图1 多联机系统结构及主要控制点
2.2 实验装置的误差分析
由于搭建的多联机实验平台十分规范,各参数的测得都是在焓差实验室进行的。正常数据就是在正常状态下进行测量得到的。本文提及的故障数据就是在正常状态下停机,然后人为将气液分离器反向,再开机运行得到的。因此实验装置的精确性可以达到99%以上。
2.3 数据与变量选择
实验装置中包含大量的温度、压力等传感器,用于测量相关运行参数,故采集到大量的运行数据。根据专家知识和测量参数的相关性,不考虑逻辑变量[22],选择以下参数进行建模。选择的参数包括室外环境温度(To),压缩机排气、壳顶、模块温度(TD, TS, TC),压缩机目标和运行频率(fCt, fC),电流(IC),过冷器气出、液出温度(TSg, TSl),气液分离器进管、出管温度(TGi, TGo),过冷器电子膨胀阀开度(EXV),化霜温度(Tft),模块高、低压(PH, PL)等15个运行参数。因此,原始数据矩阵为:Y = [TO, TD, TS, TC, fCt, fC, IC, TSg, TSl, TGi, TGo, EXV, Tft, PH, PL]。
3 诊断过程与结果分析
3.1 诊断过程
基于PSO-SVM的故障诊断流程如图2所示,其中数据标准化是为了消除变量间量纲的影响,之后将特征数据集随机分为75%的训练集和25%的测试集,利用训练集对SVM模型进行训练,并通过粒子群算法得到最优的支持向量机模型。最后,利用测试集对模型进行验证,得到不同模型下的混淆矩阵和分类准确率,最后对两种模型的故障诊断效果进行对比分析。其中制冷工况下的测试集共有17,083组数据,制热工况下的测试集共有5,867组实验数据。其中制冷数据集包含6种工况,分别为单开、内27 ℃、外35 ℃;全开、内27 ℃、外35 ℃;单开、内23 ℃、外31 ℃;全开、内23 ℃、外31 ℃;单开、内32 ℃、外40 ℃;全开、内32 ℃、外40 ℃。制热数据集也包含6种工况,分别为单开、内20 ℃、外7 ℃;全开、内20 ℃、外7 ℃;单开、内20 ℃、外-7 ℃;全开、内20 ℃、外-7 ℃;单开、内27 ℃、外24 ℃;全开、内27 ℃、外24 ℃。由于每种工况的故障实验的数据量不是很多,将这些工况下的数据都放入一个数据集,故共有制冷、制热两个数据集。
图2 基于PSO-SVM的故障诊断流程
3.2 基于SVM的故障诊断结果
使用基本的支持向量机方法,将惩罚因子C设置为1,核参数γ设置为0.0666(即1/15),利用训练数据建立支持向量机模型,测试数据对模型进行验证。得到的混淆矩阵如表1所示,其中标签0表示发生气分插反故障,标签1为系统正常运行数据。得到制冷工况下的故障诊断准确率为97.5%,制热工况下的准确率为96.1%。
表1 基于SVM的混淆矩阵
3.3 基于PSO-SVM的故障诊断结果
采用带惯性权值w的粒子群算法对支持向量机的惩罚因子C和核函数的参数γ进行优化,适应度曲线如图3所示。粒子群算法的主要参数:本文中参数C和γ的搜索区间范围设为[0.1,100]和[0.01,10];种群大小N=20,最大进化代数为300;惯性权重w=0.8,加速常数C1=1.6,C2=1.83。得到的最优参数为C=82.352,γ=0.8790,使用粒子群算法优化支持向量机后,得到的混淆矩阵如表2。制冷工况下的故障诊断准确率为98.4%,制热工况下的准确率为97.0%。
图3 PSO寻找最优参数的适应度曲线
表2 基于PSO-SVM的混淆矩阵
3.4 诊断结果对比分析
使用粒子群优化算法优化后的SVM模型与原始SVM模型的分类准确率对比如图4,可见利用PSO-SVM模型的分类准确率高于SVM模型的准确率。在仅利用SVM模型进行故障诊断时,虽然诊断准确率在两种工况条件下均高于96%,但利用PSO-SVM模型进行故障诊断后,在两种工况下的准确率均明显提高至97%以上,可以看到两种模型对制冷工况下的故障诊断效果优于制热工况下的效果。上述结果表明,对该多联机系统,采用粒子群算法优化支持向量机模型来进行故障诊断是可行的,且诊断结果具有较高的准确率,比优化前的SVM模型的诊断性能更好。
图4 优化前后分类准确率对比
4 结论
通过分析制冷、制热两种工况下的多联机平台实验数据,分别建立SVM模型和PSO-SVM模型进行故障诊断,并将两种模型的故障诊断准确率进行对比,得出以下结论:
1)支持向量机方法在制冷工况下的故障诊断准确率高于制热工况下的故障诊断准确率,但在制热工况下的准确率也均高于96%;
2)在使用粒子群算法优化前两种工况下的故障诊断准确率均高于96%,优化后的故障诊断准确率均高于97%,而且优化后的制冷工况下的故障诊断准确率更是高达98.4%;优化后的准确率有稳步的提升。