唐紀(jì)凱, 盧一相,2, 柏壯壯, 高清維,2
(1.安徽大學(xué) 電氣工程與自動(dòng)化學(xué)院,安徽 合肥 230601;2.安徽大學(xué) 計(jì)算智能與信號(hào)處理教育部重點(diǎn)實(shí)驗(yàn)室,安徽 合肥 230601)
滾動(dòng)軸承在工業(yè)生產(chǎn)設(shè)備中擁有重要的地位,因此,有必要提前預(yù)測(cè)軸承運(yùn)行狀態(tài),減少軸承發(fā)生重大事故的可能性。滾動(dòng)軸承的振動(dòng)信號(hào)容易通過(guò)傳感器獲取且攜帶重要的故障特征而成為首選,即振動(dòng)檢測(cè)法[1,2]。軸承振動(dòng)信號(hào)特征是可區(qū)分的,具有非線性和非平穩(wěn)性特點(diǎn),當(dāng)存在噪聲、相鄰部件干擾傳感器的信號(hào)采集時(shí),很難對(duì)信號(hào)進(jìn)行特征提取并精確診斷[3]。
早期的故障診斷主要提取振動(dòng)信號(hào)的時(shí)域、頻域和時(shí)頻域特征。Yang Y等人[4]利用經(jīng)驗(yàn)?zāi)B(tài)分解(empirical mode decomposition,EMD)方法檢測(cè)故障,將復(fù)雜的振動(dòng)信號(hào)分解為有限的固有模式函數(shù)(intrinsic mode function,IMF),各IMF分量包含的不同的頻率成分,代表了不同時(shí)間尺度的特征。文獻(xiàn)[5]采用EMD提取電力系統(tǒng)故障特征,采用支持向量機(jī)(support vector machine,SVM)對(duì)特征進(jìn)行分類。
小波分析是信號(hào)特征提取方法中的經(jīng)典算法。同步壓縮小波變換(synchrosqueezed wavelet transform,SWT)[6]是一種類似于EMD原理的新方法。SWT對(duì)小波變換之后的頻譜圖進(jìn)行再分配,應(yīng)用小波變換后信號(hào)的相位不受尺度變化影響的原理,將相同頻率下的尺度求和,將相同頻率周圍的系數(shù)壓縮至此頻率;最后通過(guò)特殊的映射關(guān)系將時(shí)間—尺度平面轉(zhuǎn)化為時(shí)間—頻率平面,得到系數(shù)集中的頻譜圖。
卷積神經(jīng)網(wǎng)絡(luò)(convolution neural network,CNN)是深度學(xué)習(xí)中的一個(gè)重要模型結(jié)構(gòu),在人臉識(shí)別[7]和目標(biāo)識(shí)別[8]等方面有很好的表現(xiàn)。CNN是一種前饋神經(jīng)網(wǎng)絡(luò),可以自動(dòng)提取特征。文獻(xiàn)[9]將一維信號(hào)輸入到一維CNN中,通過(guò)特征提取和分類功能實(shí)現(xiàn)了實(shí)時(shí)電機(jī)故障檢測(cè)。
文獻(xiàn)[10]首先將振動(dòng)信號(hào)進(jìn)行短時(shí)傅里葉變換,得到二維時(shí)頻分布圖并縮小到64×64 大小,輸入CNN中實(shí)現(xiàn)對(duì)軸承的故障診斷。
本文提出一種基于SWT和CNN的故障診斷方法。首先,通過(guò)CWT(continue wavelet transform)方法獲得振動(dòng)信號(hào)時(shí)頻圖;然后,用同步壓縮方法對(duì)小波系數(shù)進(jìn)行提取小波脊線,獲得清晰的時(shí)頻表達(dá)結(jié)果圖;最后,用CNN實(shí)現(xiàn)振動(dòng)信號(hào)的分類診斷。實(shí)驗(yàn)結(jié)果表明,本文方法能夠有效檢測(cè)出振動(dòng)信號(hào)類別。
SWT是一種重新再分配方法,通過(guò)分配平面上的值到不同的時(shí)間—頻率點(diǎn),其目的是“銳化”時(shí)間—頻率表示,將頻譜圖的能量集中起來(lái)使得頻譜圖稀疏化。它改變了小波變換結(jié)果的模糊化,得到更加清晰的時(shí)頻分布,有著比小波變換更高的視頻分辨率,SWT過(guò)程如下。
給定時(shí)間函數(shù)s(t),首先定義連續(xù)小波變換
Ws(a,τ)=〈s(t),ψa,τ(t)〉
(1)
得到離散小波基為
(2)
信號(hào)s(t)的DWT可以表示為
(3)
由于采樣誤差、噪聲等問(wèn)題,對(duì)于|Ws|≈0,計(jì)算Ws的相是不穩(wěn)定的,因此需要去除DWT系數(shù)較小的點(diǎn),即去除Ws≤λ的點(diǎn)。λ是和噪聲有關(guān)的閾值
(4)
式中n為信號(hào)長(zhǎng)度,σ2為噪聲功率。
對(duì)于任何|Ws(m,n)|≠0的任何(m,n),信號(hào)s(t)的瞬時(shí)頻率ws(m,n)可由下式計(jì)算
(5)
ak:|w(am,n)-wl|≤Δw/2
(6)
CNN是一個(gè)典型的深度學(xué)習(xí)模型,它學(xué)習(xí)從低級(jí)到高級(jí)不同抽象級(jí)別的數(shù)據(jù)分層特征表示機(jī)制。本文使用的CNN模型是經(jīng)典的LeNet—5模型[11]。CNN主要由三部分組成:卷積層、池化層和全連接層。
(7)
CNN的訓(xùn)練目標(biāo)是最小化損失函數(shù)L(W;b),利用隨機(jī)梯度下降(stochastic gradient descent,SGD)法逐層調(diào)整權(quán)值W和偏置b以最小化式(7)。采用塊歸一化提高CNN的訓(xùn)練速度,提高網(wǎng)絡(luò)的泛化能力。SGD采用迷你塊模式,將樣本隨機(jī)分成若干大小為(N=20)的塊,然后逐個(gè)計(jì)算每塊對(duì)梯度的貢獻(xiàn)來(lái)更新參數(shù)
(8)
(9)
式中α為學(xué)習(xí)速率用來(lái)控制殘差反向傳播的強(qiáng)度,本文設(shè)置α=0.001。利用Xavier算法初始化參數(shù),它根據(jù)輸入輸出神經(jīng)元的數(shù)量自適應(yīng)地確定初始化的規(guī)模,偏置b均初始化為0。
本文故障診斷流程如圖1所示。
圖1 故障診斷流程圖
整個(gè)過(guò)程分為三步進(jìn)行:1)采集振動(dòng)信號(hào),對(duì)信號(hào)進(jìn)行重疊截取,獲取時(shí)頻圖并縮放為32×32大小的圖像,歸一化到[0,1],添加標(biāo)簽并隨機(jī)劃分為訓(xùn)練集和測(cè)試集。2)設(shè)置CNN結(jié)構(gòu),初始化參數(shù)(W,b),用訓(xùn)練集對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,采用小批量模式,對(duì)CNN隱含層采用塊歸一化方法加速訓(xùn)練;先進(jìn)行前向傳播過(guò)程獲得誤差函數(shù),然后反向傳播逐層按式(8)和式(9)更新參數(shù)(W,b)。重復(fù)上述過(guò)程,直到達(dá)到最大訓(xùn)練輪次。3)將訓(xùn)練好的CNN模型用于測(cè)試集,得到測(cè)試集診斷正確率,完成軸承故障診斷工作。
通過(guò)選擇軸承不同的運(yùn)行工況,驗(yàn)證了本文方法的有效性。
本文使用美國(guó)凱斯西儲(chǔ)大學(xué)軸承數(shù)據(jù)中心的振動(dòng)數(shù)據(jù)庫(kù)作為數(shù)據(jù)集。選擇軸承轉(zhuǎn)速為1 797 r/min,采樣率為12 kHz的DE端信號(hào)。振動(dòng)信號(hào)分別為正常狀態(tài)(N)、內(nèi)圈故障(I)、滾動(dòng)體故障(B)和外圈故障(O);故障直徑選為0.007 in,0.014 in和0.021 in(1in=2.54 cm)。每類信號(hào)選擇1 000個(gè)樣本。通過(guò)10種不同工作條件下的軸承振動(dòng)數(shù)據(jù)驗(yàn)證了本文方法的有效性,數(shù)據(jù)信息如表1所示。
表1 振動(dòng)信號(hào)樣本描述
圖2為10種狀態(tài)下的時(shí)域信號(hào),信號(hào)長(zhǎng)度為1 024,包含2個(gè)周期以上的振動(dòng)信號(hào);由于Morlet小波與故障信號(hào)的沖擊響應(yīng)波形相似,故選其作為本文的小波基。
圖2 不同工況下的時(shí)域信號(hào)
在CNN模型中,卷積核的大小和數(shù)量對(duì)分類結(jié)果影響較大。表2是對(duì)數(shù)據(jù)集進(jìn)行10次實(shí)驗(yàn)獲得的平均值,隨著卷積核尺寸的增加,診斷正確率大多處于增加狀態(tài),說(shuō)明更多的參數(shù)會(huì)提高正確率;但隨著卷積核的數(shù)量繼續(xù)增加,正確率出現(xiàn)了下降的情況,可能原因是初始參數(shù)的影響或者過(guò)擬合。綜合考慮,本文選擇卷積核的數(shù)量為(5-10),尺寸為5×5。
表2 CNN卷積核的數(shù)量(N)和大小(S)對(duì)診斷結(jié)果影響 %
本文方法(簡(jiǎn)稱CNN+SWT)與使用相同CNN的方法進(jìn)行對(duì)比,分別為文獻(xiàn)[9]直接使用一維振動(dòng)信號(hào)作為CNN的輸入(簡(jiǎn)稱CNN+1D);文獻(xiàn)[12]利用DWT獲得時(shí)頻圖輸入CNN(簡(jiǎn)稱CNN+DWT);文獻(xiàn)[13]使用S變換作為CNN的輸入(簡(jiǎn)稱CNN+ST)。CNN+1D方法被重疊截取784長(zhǎng)度的振動(dòng)信號(hào)轉(zhuǎn)換成28×28的圖像,其余三種方法都重疊截取1 024長(zhǎng)度的振動(dòng)信號(hào)轉(zhuǎn)換為時(shí)頻圖后變換為32×32的圖像,所有方法均使用本文所描述CNN結(jié)構(gòu)。
圖3是訓(xùn)練集以及驗(yàn)證集的誤差損失隨迭代次數(shù)變化的過(guò)程。圖4是訓(xùn)練集和驗(yàn)證集正確率之間的比較。由圖3(a)可知,4種方法都在20次左右的迭代趨于穩(wěn)定,但CNN+1D方法的誤差明顯較大,并且從圖4(a)中看出隨著訓(xùn)練過(guò)程的進(jìn)行,正確率較其他幾種方法低,最終只能有80 %的正確率。而本文CNN+SWT方法略好于CNN+ST和CNN+CWT方法,本文方法僅在20次訓(xùn)練之后就可以接近0的損失。在正確率方面,本文方法效果好于CNN+ST和CNN+CWT方法,且訓(xùn)練集(驗(yàn)證集)的正確率在第十次訓(xùn)練時(shí)就達(dá)到80 %以上,最終的正確率接近100 %。
圖3 不同方法訓(xùn)練集和測(cè)試集損失
圖4 不同方法訓(xùn)練集和測(cè)試集正確率
CNN+1D僅使用一維振動(dòng)信號(hào),未提取時(shí)頻特征而正確率較低。雖然CNN可以用更多的卷積核提取更多的特征,但本文方法僅需要更精簡(jiǎn)的CNN結(jié)構(gòu)、更少的訓(xùn)練參數(shù)得到很高的正確率。圖5是本文方法經(jīng)過(guò)5輪訓(xùn)練得到的測(cè)試集混淆矩陣,可以用來(lái)可視化分類結(jié)果,如圖5所示僅有少量的樣本分類錯(cuò)誤,例如有5個(gè)B2樣本錯(cuò)分類到B1類別??傮w來(lái)說(shuō),每種樣本得到100 %或接近100 %的正確率。因此,本文提出的方法可以很好地診斷軸承故障。
圖5 測(cè)試集混淆矩陣
本文提出了一種使用SWT和CNN的軸承故障診斷方法,首先對(duì)振動(dòng)信號(hào)進(jìn)行變換獲得時(shí)頻圖,利用CNN對(duì)其進(jìn)行訓(xùn)練與診斷,解決了特征提取并分類的困難,實(shí)驗(yàn)結(jié)果驗(yàn)證了該方法在軸承故障診斷中的有效性和可行性。