范波,丁云霄,纪轲,范雨强
(美的集团楼宇科技事业部,广东佛山 528000)
多联机空调系统(Variable Refrigerant Flow,VRF)是通过控制压缩机改变制冷剂充注量和进入室内机的制冷剂流量,实时满足室内冷、热负荷要求的高效制冷剂空调系统[1]。多联机系统管路结构多变、组合形式多样,制冷剂在管路中流动路径复杂,导致系统管道设计的繁复性。在正常运行工况下,多联机系统管路压力远大于大气压力,容易引起制冷剂泄漏[2]。一旦发生制冷剂泄漏故障,不仅造成环境污染,还会使多联机系统能效降低,设备寿命缩短等[3]。正因为制冷剂泄漏故障的多发性和危害性,制冷剂泄漏故障诊断方法非常必要。
故障诊断可分为4个部分:故障检测、故障诊断、故障评价和故障决策。随着故障诊断技术的不断发展,国内外已有一些对制冷剂泄漏故障研究的论文。SUN等[4]提出了一种基于混合ICA-BPNN制冷剂泄漏故障诊断模型,正常数据用于训练独立主成分分析(Independent Component Analysis,ICA),将数据特征维度从12降低至4,同时应用反向传递神经网络(Back Propagation Neural Network,BPNN)进行制冷剂泄漏的诊断,与BPNN比较,ICA-BPNN诊断正确率从82.7%提升至93.8%。ZHANG等[5]运用深度神经网络对压缩机进行故障诊断,对回液故障判断的准确率达到99.86%。SHI等[6]提出贝叶斯人工神经网络对多联机系统制冷剂泄漏进行故障诊断,同时运用ReliefF算法进行特征选择,减少了98.8%的模型训练时间。ZHANG等[7]提出了融合聚类的主元分析统计模型,提升了50%的检测效率。LIU等[8]结合指数加权移动平均法和主元分析法对VRF系统制冷机泄漏进行故障诊断,通过数据降维提升了大批量数据处理效率。徐廷喜等[9]应用支持向量域描述(Support Vector Domain Description,SVDD)算法,通过先网格搜索和遗传算法优化求解过程,开发了制冷剂泄漏检测和诊断方法,其无故障数据诊断准确率提高到93.43%。徐畅等[10]提出了相关特征-支持向量机算法应用于制冷剂充注量故障诊断,应用ReliefF提取出7个特征变量,然后用支持向量机进行故障诊断,准确率达到98.8%。SUN等[11]结合小波去噪法、最小冗余算法和支持向量机进行VRF系统制冷剂充注量故障诊断,将特征量从18个降低到7个,仅降低了2.14%的故障检测精度。WANG等[12]提出一种基于递归特征消除和k最邻近算法的多联机制冷剂充注量故障诊断算法,采用递归特征消除(Recursive Feature Elimination,RFE)算法进行特征选择,再用wkNN算法建立诊断模型,冷剂充注量故障诊断整体准确度98.3%。SHI等[13]提出了基于主成分分析(Principal Component Analysis,PCA)和对偶神经网络的制冷剂充注量故障诊断算法,采用置信空间评估模型性能,采用PCA对特征进行降维并使用对偶神经网络进行模型训练,提升了9%的正确分类率。GUO等[14]应用高斯混合模型结合主成分分析对VRF系统进行故障诊断,通过特征提取和混合模型将多联机多故障诊断耗时从176.78 s降至15.18 s。
以上研究在特征选择上的工作存在一定的局限性,制冷剂泄漏数据不易获得,特征选择过程存在一定偏差。同时,进行制冷剂泄漏实验需要耗费大量的人力和物力。
因此,本文提出了采用Xgboost特征选择方法结合类随机森林的故障诊断方法。基于Modelica语言[15]建立了多联机动态系统仿真模型,基于该仿真模型获取多联机制冷剂泄漏运行数据,采用Xgboost特征选择方法结合类随机森林创建了制冷剂泄漏故障诊断方法。
首先建立多联机制冷剂泄漏动态系统仿真模型,包括压缩机、换热器、连接管路、阀门和油分等部件,仿真得到大量不同程度的制冷剂泄漏数据。采用傅里叶变换对仿真得到的制冷剂泄漏数据进行低通滤波处理,然后对滤波后的数据进行趋势特征提取,最后采用Xgboost进行特征选择。经过特征选择后,采用类随机森林对制冷剂泄漏数据进行故障诊断,并采用现场运行数据进行验证,得到较佳诊断效果。
类随机森林算法由LIU等[16]提出,用于挖掘异常数据,有别于其他诊断算法,类随机森林递归地使用随机超平面分割数据集,并刻画数据疏离程度。异常数据梳理程度较高,用很少的次数即可切分出来并进行分离,因此算法高效且时间复杂度低[17]。类随机森林算法由于简单高效的特点,常用于网络安全中的攻击检测和流量异常等分析[18]。类随机森林算法设计基于异常数据的两个特征[19]:1)异常数据在数据样本占比较少;2)异常数据和样本中大部分数据疏离程度大。
类随机森林与随机森林类似,都是用二叉树对数据进行分割,不同点在于随机森林根据信息增益率、基尼值等对选择特征,而类随机森林使用随机二叉树(iTree)对数据进行随机切割,建树过程更加高效。类随机森林是iTree的总体,给定了数据集D,然后随机采样一部分数据构造每棵iTree,以确保不同树之间的差异性。在测试阶段计算数据的异常分值,估算其在每棵iTree的深度,然后数据路径长度的均值结合异常分数公式计算分值并对数据进行评估。
数据的异常分数公式S(d,n)为:
式中,E(h(d))为数据在iTree路径长度的平均值,C(n)为n个数据平均路径长度。异常分数S(d,n)取值范围为[0, 1],接近1时,数据异常可能性高;接近0时,数据正常可能性高;大部分数据接近0.5时,表示没有明显异常。
XGBoost[20]进行特征选择,计算不同特征的分类效果,从而对特征的重要性进行排序,得到最优子集。XGBoost中有3个指标可以对特征进行评估,FScore表示特征被选作分裂次数,Gain表示特征的平均增益,Cover表示特征在分裂处平均二阶导数。Xgboost进行特征选择的步骤如下:
1)使用XGBoost对所有特性实现分类;2)根据XGBoost模型的评估对特征重要性进行排序;3)选择重要性最高的若干特征生成子集;4)在特征子集中进行分类测试,验证其分类能力;5)重复3-4步骤至特征均被选取;6)评估生成子集的分类效果,选择最佳特征子集。
由于多联机故障数据获取困难,进行故障实验需要大量人力和物力,所以本文基于Modelica语言建立了以R410A为制冷剂的多联机空调系统的动态仿真模型,通过仿真模型模拟系统制冷剂泄漏实验,系统包括1台室外机和8台室内机以及油分离器、过滤器、气液分离器等,以维持系统稳定运行。其中数据包括正常状态无泄漏数据和制冷剂泄漏数据。图2所示为VRF系统仿真平台,用于获取制冷剂泄漏仿真数据。表1所示为10组仿真数据(分为ABC和DEF两大类)。其中ABC数据组为1台室外机7台室内机,DEF数据集为1台外机4台内机。数据集ABC、ABC1、ABC2、A2、DEF和E2为正常数据;数据集B2、C2、D2和F2为制冷剂泄漏15%的故障数据。仿真模型特征参数见表2所示,tddis为排气温度和冷凝器进口温度的差值,tdcond为高压对应饱和温度和环境温度的差值,f1为排气过热度与tddis、tdcond之和的比值。其中仿真数据的室外温度工况90%数据分布在25~35 ℃之间,数据分别来源于10组仿真数据。
表2 多联机动态仿真模型特征参数
图2 原始数据
表1 10组仿真数据
表2所示为10组仿真数据(分为ABC和DEF两大类)。其中ABC数据组为1台室外机7台室内机,DEF数据集为1台外机4台内机。数据集ABC、ABC1、ABC2、A2、DEF和E2为正常数据;数据集B2、C2、D2和F2为制冷剂泄漏的故障数据。
为了使故障诊断正确率提高且减少计算量,特征选择十分必要,本文通过多联机动态仿真模型获得的正常状态和制冷剂泄漏数据含有较大噪音,因此第一步采用傅里叶变换进行低通滤波去除数据中的噪声。图2和图3所示为原始数据和经过傅里叶变换后的去除噪声后的数据,可知特征参数t8、tL、pe和膨胀阀步数的噪声数据得到明显改善。对滤波后的数据进行趋势特征提取,图4所示为经过趋势特征提取后的数据。
图3 经过傅里叶变换经过低通滤波去除噪声后的数据
图4 经过趋势特征提取后的数据
经过处理后的正常数据和故障泄漏数据采用Xgboost进行输入参数敏感度分析,图5所示为输入参数的敏感分析结果,可知特征参数t9、tL、td、tdsh、t8和SC等参数对制冷泄漏故障较为敏感。
图5 输入参数的敏感度分析
进行特征参数敏感度分析后,采用类随机森林方法进行诊断模型的训练,类随机森林关键参数包括 n_estimators、max_samples、Bootstrap 和max_features。图6(a)为异常检测建模流程:1)获取正常运行数据(至少两周以上);2)得到数据后,需要采用滤波、提取趋势和缺失值,利群点进行数据预处理;3)将全部数据放入之前训练好的模型中,判断误报率是否最低,如果此时模型的误报率为最低,则可确认模型使用运行工况范围,如果误报率不是最低,则调整模型参数;4)将预处理后数据分为8:2作为训练集和测试集,采用训练集训练类随机森林异常检测模型以确认正常运行范围,然后重复3的步骤,以达到最佳检测效果。
图6(b)为异常检测模型检测流程图。具体流程为:1)获取当天运行数据;2)对数据采用滤波、提取趋势和缺失值,利群点进行数据预处理;3)提取负荷测试工况时间段数据(至少1 h);4)采用类随机森林提取异常点数据,判断异常点数据比例,如果异常点比例超过标准,则判断为制冷剂泄漏,如果不超过标准,则为运行正常数据。
图6 异常检测建模和检测流程
本文采用90%进行模型训练,10%的数据进行测试和验证,结果如表3所示,训练集包括15 300个正常数据,1 700个异常数据,训练完模型后对验证集(1 731个正常数据,0个异常数据),检测正常正确率为100%;对测试集共检测出248个正常数据和18 473个异常数据,检测异常数据正确率达到98.7%,异常数据测试具有较佳效果。
表3 类随机森林异常检测建模结果
本节将展现不同工况下不同训练集时对制冷剂泄漏诊断结果,将数据分为A2、B2、C2、D2、E2、F2、ABC、ABC1、ABC2、DEF共10个数据集。分别采用ABC数据集组,DEF数据集组,ABC1+ABC2、ABC+DEF、ABC+ABC1+ABC2和ABC+DEF+ABC1+ABC2这6种方案作为训练集生成故障诊断模型,并对表1中10个仿真数据集进行测试,然后计算异常率,设置异常判断阈值:异常率高于40%判为异常。选用的特征参数为敏感度分析中的t9、tsh、tes、tss、t2B_avg、tdsh、tddis和f1这8个特征作为输入参数。
图7所示为将ABC、DEF以及ABC+DEF数据集作为训练集对10组仿真数据进行测试的结果,由图7可知,当ABC数据集作为训练集时,可以准确检测出B2、C2、D2和F2这4组15%制冷剂泄漏的异常数据集,故障检测正确率达到100%,但是对A2、ABC1和E2这3组正常数据集却产生了误报,将正常数据诊断为制冷剂泄漏数据;当DEF数据集作为训练集时,仅能检测出B2、C2和F2这3组15%制冷剂泄漏异常数据,对于D2这组15%制冷剂泄漏数据却无法检测,产生了漏报,对制冷剂泄漏检测率为75%,不仅产生了漏报,还对ABC、A2、E2这3组正常数据集检测为制冷剂泄漏,产生了误报。对比两类模型,ABC作为训练集建立的模型明显优于DEF作为训练集建立的模型,在制冷剂泄漏检测率和误报问题上均优于DEF模型,且未发生漏报现象。当ABC+DEF作为训练集建立模型时,模型能够有效改善ABC模型和DEF模型出现误报的情况,能够准确检测出ABC、A2和ABC为正常数据,但是也出现了将D2制冷剂泄漏数据检测为正常这种漏报情况。所以虽然增加了训练集样本数,但是对制冷剂泄漏诊断效果提升并不明显。
图7 ABC、DEF和ABC+DEF检测结果
图8所示为ABC1+ABC2、ABC+ABC1+ABC2和ABC+DEF+ABC1+ABC2训练集对10组仿真数据集检测结果。由图8可知,对于ABC1+ABC2模型,能够将正常数据检测为正常,仅在E2数据集上,将其检测为制冷剂泄漏故障,仅产生了一个误报集。对于制冷剂泄漏故障数据集,ABC1+ABC2模型将B2故障数据检测为正常数据,产生漏报。其余数据集均正确检测;对于ABC1+ABC2+ABC模型,该模型在ABC1+ABC2模型的基础上增加了ABC数据集为训练集,得到的结果与ABC1+ABC2模型完全相同,不仅无法检测出漏报的B2数据集,对于E2数据集仍然处于误报状态,在ABC1+ABC2模型的基础上增加ABC数据集,对检测效果提升不明显,还会增加计算;对ABC+DEF+ABC1+ABC2模型,在ABC1+ABC2模型的基础上增加了ABC和DEF数据集,但是检测效果并未变好,仍然无法检测B2数据集,对E2正常数据集产生误报,不仅如此,对于ABC1+ABC2模型和ABC1+ABC2+ABC模型均能检测出的D2制冷剂泄漏数据集,却无法检测出,产生了漏报,所以在ABC1+ABC2模型的基础上增加ABC和DEF数据集是没有必要的,不仅无法改善检测结果,还使训练产生冗余。
图8 ABC1+ABC2、ABC+ABC1+ABC2和ABC+DEF+ABC1+ABC2检测结果
图9所示为上文中比较的两种最佳模型ABC和ABC1+ABC2训练集对10组仿真数据集检测结果。图8中,ABC模型对于制冷剂泄漏数据集均能准确检测,但是对于正常状态数据集,却产生较多误报。而ABC1+ABC2模型能够有效改善ABC模型的误报问题,但是对于B2制冷剂泄漏数据集无法检测,产生漏报现象。建立的模型均对DEF组的E2数据无法正确检测,总是将其检测为制冷剂泄漏故障数据,分析可知,由于DEF组数据较为复杂。ABC组数据为1拖7系统长配管,液位影响不显著,ABC组相对更好检测;而DEF组为1拖4系统,液位很显著,且DEF组的tsh均为0,液罐液位可能一直存在,这种情况检测难度较大。
图9 ABC和ABC1+ABC2检测结果
进一步分析tsh对类随机森林检测影响,可以发现ABC组数据大多存在吸气过热度,而DEF组数据的过热度为零,而类随机森林算法对tsh=0的数据检测错误率较高,所以在采用类随机森林模型时,需要采集一段时间tsh不全部为0的数据进行检测。
本文提出一种基于Xgboost-类随机森林的故障诊断方法,建立了以R410A为制冷剂的一拖八多联机空调系统的动态仿真模型,用于仿真动态制冷剂泄漏故障数据,采用Xgboost方法对输入特征参数进行制冷剂泄漏故障的敏感度分析,得到最佳输入参数组合,采用类随机森林对仿真得到的10组数据进行验证,得出如下结论:
1)经过Xgboost敏感度分析后,得到对于制冷剂泄漏故障较为敏感度多联机特征参数分别是t9、tsh、tes、tss、t2B_avg、tdsh、tddis和f1组合,以它们作为输入参数可以较好训练诊断模型;
2)经过6种训练集组成建立的模型比较,可以得到最佳的类随机森林模型为ABC1+ABC2模型,能够对4个制冷剂泄漏训练集诊断出3个,并能很好避免误报以及将正常数据检测正常;
3)通过训练集和验证集得到稳定故障诊断模型,在测试集18 721组数据中,异常检测正确率达到98.7%。