基于特征快速构造与卷积神经网络的机泵故障识别研究*
2020-09-22焦瀚晖胡明辉石保虎
焦瀚晖,胡明辉,*,王 星,冯 坤,石保虎
(1.北京化工大学 发动机健康监控及网络化教育部重点实验室,北京 100029;2.北京化工大学 高端机械装备健康监控与自愈化北京市重点实验室,北京 100029;3.中国石化销售股份有限公司华南分公司,广东 广州 510180)
0 引 言
机泵是各工业领域的一种关键旋转机械,由于其结构越来越复杂,工作在高温、高速的恶劣条件下,使其比较容易发生各种机械故障,轻则产生巨大的运行噪音,影响泵的工作效率和流程工业正常进行,造成企业经济损失,重则引起设备损坏甚至造成重大事故。因此,研究并发展机泵的故障识别技术是当前科技和工业发展的重要研究课题之一[1]。
传统机泵故障识别方法主要是针对机组振动设置固定报警阈值。当触发报警时,技术人员对现场监测信号进行趋势分析、频谱分析及包络分析等,依靠技术人员的专业知识及经验对机泵运行状态及故障类型作出判断。但这一过程存在如下两个问题:(1)要想实现准确的故障分析,现场技术人员不但要具备全面的故障诊断专业知识和振动信号处理理论,还需要积累足够的现场经验,然而这些要求对大多数现场来说均难以满足;(2)现场测试所得的振动信号往往包含复杂的环境噪声,会对振动报警值设定、信号滤波分析产生极大阻碍。
近年来,随着对深度学习模型研究的深入,越来越多的模型被应用到设备故障智能诊断中。卷积神经网络(CNN)是深度学习方法的典型模型之一,在很多领域有着出色的表现,尤其是在图像处理领域发挥着重要的作用,国内外学者也逐渐将其应用到设备故障诊断中。肖雄[2]利用信号-图像转换技术将振动信号转换为不同维度的信号,并对二维卷积神经网络进行了优化,利用轴承实验数据验证了该方法在轴承故障识别中的有效性。Chen等[3]通过绘制振动信号的特征统计图作为CNN的输入,成功实现了齿轮箱故障诊断。孙伟芳[4]提出了一种采用双树复小波变换(DTCWT)来获取多尺度信号的特征,并利用卷积神经网络(CNN)方法,自动识别了来自多尺度信号特征的故障特征,通过齿轮故障试验数据验证了该方法能有效识别齿轮故障。Lu等[5]将CNN应用到滚动轴承的故障诊断中,并验证了该方法在噪声环境下的鲁棒性。Ma等[6]通过对振动信号进行小波包变换提取频域信息,在此基础上提出了一种基于深度残差卷积网络的轻量级深度学习故障预测方法。Wen等人[7]利用时域振动信号,直接写入二维矩阵中,利用该方法实现了CNN在多种设备故障诊断的应用。李桓[8]利用短时傅里叶变换将振动信号转化为时频图,然后利用CNN实现了轴承故障诊断。熊鹏[9]利用小波包变换,将小波包系数作为二维矩阵输入,利用卷积神经网络实现了行星齿轮箱的故障诊断。陈仁祥等人[10]利用离散小波变换得到了时频图,基于二维卷积神经网络实现了滚动轴承的故障诊断。胡茑庆等人[11]利用经验模态分解和深度卷积神经网络实现了行星轮系齿轮箱故障诊断。
目前,基于卷积神经网络建立故障诊断模型的研究已经初见成效,但以上方法均存在计算量庞大,进而难以实现实际工程应用的问题。由于二维卷积神经网络需要二维输入,需要对振动信号进行繁琐的处理和转化,才能将一维信号转化为二维图片信息,而信号维度转换是导致其计算量庞大的核心因素。
为解决上述问题,基于旋转设备振动信号特点和卷积神经网络,笔者建立机泵故障智能识别模型,提出一种新的快速生成二维输入矩阵的方法。
1 卷积神经网络基本原理
传统卷积神经网络是一种前馈神经网络,对图像有良好的识别性能,现在已经被大规模应用于图形识别等领域。
卷积神经网络的组成结构如图1所示。
图1 卷积神经网络的组成结构
卷积神经网络主要由输入层、卷积层、池化层、全连接层以及输出层构成。卷积层的输入为一系列特征图,每一个特征图都对应卷积层内部一个卷积核。这些卷积核通过一组权重来实现卷积运算,其输出作为下一层的输入。
以最先应用的图像识别为例,CNN中卷积层实现过程如下:从图像某一子块学习得到一些特征后,将这些特征作为探测器,应用到所有子块中去,获取不同子块的激活值。CNN中的卷积就利用了图像的这种固有特性,每个卷积核检测输入特征图所有位置上的特定特征,实现了同一输入特征图上的权值共享。
卷积的计算公式如下:
x=f(∑xåwij+b)
(1)
式中:å—二维离散运算符;b—偏置;wij—卷积核;x—输入特征图;f(·)—激活函数。
池化层的功能有两个:(1)大幅度减少输入卷积层的维度,降低计算成本;(2)可以控制过拟合,使测试集准确度更接近训练集准确度,并提高模型的鲁棒性。
主流的池化方式有最大池化和平均池化。池化的一般公式为:
x=f(βdown(x)+b)
(2)
式中:β—乘性偏置;down()—下采样函数;b—偏置;f(·)—激活函数。
全连接层与上一层输出的所有神经元节点相互相连,最终利用softmax完成分类。其输出如下式所示:
h(x)=f(wx+b)
(3)
式中:x—全连接层的输入;h(x)—全连接层的输出层;w—权值;b—加性偏置;f(·)—激活函数。
2 本文提出的方法
2.1 二维特征集快速构造
频谱分析是机泵振动分析的核心手段。对于机泵故障诊断而言,除了常规的转速一倍频、二倍频等低阶谐波成分需重点关注外,滚动轴承、齿轮所产生的冲击成分以及叶片通过频率等成分亦是故障识别不可忽视的成分。
笔者提出利用转子工频及其倍频之间频带峰值和能量的变化情况来反映设备的运行状态,其具体实现步骤如下:
(1)利用傅里叶变换得到时域振动信号的频谱。傅里叶变换公式如下:
(4)
式中:X(f)—频域波形;x(t)—时域波形;f—频率;e—自然对数的底;j—虚数单位。
(2)以转速频率fr为基准将频谱分割,分割个数为n,其计算如下(即频谱被分割成(0,fr],(fr,2fr],
(2fr,3fr]…(n-1)fr,Fmax]共n个分量):
(5)
式中:Fmax—分析频率;ceil(·)—向上取整数,如ceil(0.2)=1;n—频率分量个数。
(3)求解每个分量的频谱峰值和频谱能量。
频谱峰值的求解公式为:
本文旨在揭示数值格式的适度耗散可由色散-耗散条件确定. 作为演示验证, 将色散-耗散条件用于减弱以往发展的加权基本无振荡格式WENO-CU6-M2[15]所造成的伪波, 通过数值算例给出该格式的两种直接改进并加以对比确认.
(6)
式中:Mi—频谱峰值;i—表示频段序号;j—单个频段内频谱成分的序号;fij—第i个频段内第j个信号分量的幅值。
频谱能量的求解公式为:
(7)
式中:Ei—频谱能量。
(4)构造二维特征矩阵。为使卷积神经网络充分考虑频谱中所有成分的影响,将2n个元素M1,M2…Mn,E1,E2…En均作为特征矩阵的元素;为便于卷积神经网络分析且尽可能减小计算量,上述2n个元素尽量只在特征矩阵中出现一次,同时该特征矩阵形式上应尽可能接近于方阵。
因此,矩阵列数取为s,其计算如下:
(8)
式中:s—特征矩阵维度;2n—所有特征值个数。
将M1,M2…Mn,E1,E2…En等特征值依次从矩阵首行填入特征矩阵中,最后一行未填满元素补0,可得二维特征矩阵T,其表达式如下:
(9)
上述二维特征矩阵即可作为卷积神经网络的输入数据。由于该矩阵元素数远小于原振动波形的点数,导致其计算量小、构造速度快;同时,该矩阵充分考虑了适用于机泵振动信号分析的主要关注成分,即从故障诊断意义上来说,特征集构造过程未造成显著的有效信息丢失,使其能够准确地描绘和反映设备状态,最终用于故障识别。
2.2 故障智能识别模型
笔者提出基于卷积网络的机泵故障智能识别模型,该故障识别模型如图2所示。
具体实现步骤如下:
图2 故障识别模型
(1)二维特征矩阵构造。利用2.1节所述的方法,使用训练样本中设备正常和故障状态下的振动时域信号分别构造特征集,作为卷积神经网络的输入;
(2)初始网络建立。初始化网络参数,给定网络初始化参数,包括:卷积层尺寸、池化方式及尺寸、学习率、批处理个数、最大迭代次数,生成初始网络;
(3)网络模型训练及生成。将训练样本输入至神经网络中,对模型进行训练,当模型Loss函数值α低于0.5%后,保存模型,即建立了该机泵的故障识别模型;
(4)故障识别。将待分析数据(即测试样本)输入模型,即可进行该数据的分类,即实现故障识别。
3 故障识别实例
3.1 设备及数据情况介绍
笔者使用的振动数据均来自石化企业现场的在线监测数据。
具体的样本数据集如表1所示。
表1 样本数据集
本研究共选取两台设备数据:
(1)设备1。某石化催化装置油浆泵为悬臂离心泵,转速为2 890 r/min,运行过程中发生了不平衡故障,选取该泵无故障及不平衡故障数据进行分析;
(2)设备2。某石化常减压装置底油为双支撑离心泵,转速为2 890 r/min,运行过程中发生了轴承故障,选取该泵无故障及轴承故障数据进行分析。
上述信号均为泵轴承座处振动加速度,采样频率为25.6 kHz,每个样本采样时间为0.64 s,样本数据长度均为16 384,4组状态下一半样本作为训练样本,一半作为测试样本。
3.2 二维特征集构造
将训练集中每个样本数据按照本文第2.1节方法构造二维特征集。
设备1无故障和不平衡故障的特征集可视化灰度图如图3所示。
图3 设备1二维特征集可视化
设备2无故障和轴承故障的特征集可视化灰度图如图4所示。
图4 设备2二维特征集可视化
将数据集进行归一化处理,图(3,4)中颜色由白色到黑色数值逐渐变大,最小为0,最大为1。设备1模型中90组生成特征集耗时0.7 s,设备2模型中65组训练样本生成特征集耗时0.6 s,即平均每组样本生成特征集耗时小于10 ms,完全可满足实时化应用需求。
3.3 网络模型训练及生成
参考其对网络参数设置的研究[12],笔者确定本文使用的卷积神经网络结构本文模型参数如表2所示。
表2 模型参数表
本文模型由2个卷积层,2个最大池化层和一个全连接层组成。为保障神经网络具有丰富的感知视野以提取到更多的有效特征,同时避免冗余计算,卷积核的大小和数量须适当。
笔者将表1中训练样本数据生成的二维特征矩阵作为神经网络训练样本,特征集维度分别为24×24。当模型Loss函数值低于0.5%后,保存模型,即分别建立了该机泵的故障识别模型。
模型训练Loss函数曲线如图5所示。
图5 模型训练Loss函数曲线
由图5可知:以二维特征集作为卷积神经网络输入,Loss函数收敛曲线平滑,几乎接近于0,即分类效果较佳。
设备1网络训练时间为34.348 s,设备2网络训练时间为22.341 s。
由于模型训练只需要在刚开始应用或新案例识别效果不好情况下再次开展,并非每组测试数据都需要重新训练,上述训练时间已非常理想。
3.4 故障识别结果分析
将4种状态下的测试样本分别输入对应模型进行计算,测试集信息及结果如表3所示。
表3 测试集信息及结果
主要结果如下:
(1)对于设备1的50组无故障测试样本,模型误识别率为0%;对于设备1的50组不平衡故障测试样本,模型的故障识别准确率为95%;
(2)对于设备2的50组无故障测试样本,模型误识别率为2%;对于设备2的15组轴承故障测试样本,模型的故障识别准确率为100%;
(3)模型1的100组测试样本测试时间0.11 s,设备2的65组测试样本测试时间0.15 s。
由识别结果可以看出,笔者提出的故障诊断识别模型对不平衡、轴承故障都有理想的识别效果。同时,未出现明显的无故障数据误识别问题。此外,每组样本测试时间均小于3 ms,完全可满足工程应用中的实时化要求。
3.5 与其他方法的对比结果分析
为说明该方法在机泵故障识别中的优势,笔者将该方法与文献中的方法进行对比。以轴承故障为例,笔者分别从特征集生成时间、模型训练时间、模型收敛情况和模型识别准确度4个方面进行全面的对比。
方法1。使用振动原始数据作为卷积神经网络的输入,将振动信号直接写入输入矩阵中,利用卷积神经网络对振动信号进行特征提取、滤波和降维,最终实现故障识别[13]。
方法2。利用复杂的算法,将一维振动信号转化为具有故障特征的二维图片特征,利用时频变换的方法将振动信号转化为时频谱图,以时频谱图作为卷积神经网络的输入和检测样本[14]。
在相同的计算条件下,使用石化现场设备2的无故障及轴承故障数据作为训练样本,利用文献中的2种方法和该方法分别搭建模型,不同方法训练和检测结果如表4所示。
表4 不同方法训练和检测结果
以相同的训练样本数量作为输入,文献中两种方法均出现过拟合的现象。
文献方法Loss函数曲线如图6所示。
图6 文献方法Loss函数曲线
由于过拟合现象的出现,导致以上两种方法训练得到的故障识别模型均未能达到训练预期目标,故障识别率低,正常数据误识别率高;同时,训练所需时间远远超过笔者提出的方法。
对比笔者提出的方法可知,在快速生成输入样本的前提下,能够准确识别故障;在特征集生成时间、模型训练时间、模型收敛情况和模型识别准确度等方面均有明显优势。
通过利用现场数据,对不同模型进行的对比结果,证明笔者所提的方法更适用于工程中机泵故障的识别。
4 结束语
基于机泵振动信号特点,笔者提出了一种新的二维特征集快速构造方法。该方法通过对频谱进行截断,利用频谱分量的峰值和能量,快速构造卷积神经网络二维特征集,特征集中全面包含了机泵故障诊断的关注信息,同时特征集构造过程计算简单,实现了快速降维。
该算法每组数据特征值构造不超过8 ms,解决了构造卷积神经网络输入计算量巨大、耗时长,无法实现现场实时化的问题。
基于特征快速构造算法和卷积神经网络,笔者提出了一种机泵故障智能识别模型;利用石化现场机泵的轴承和不平衡故障数据,对故障识别模型进行了测试,识别准确率均达95%以上。从特征集生成时间、训练识别速率及识别准确率四方面,与其他故障模型相比,笔者提出的模型在机泵故障智能识别中具有明显的优势。