郭文博,石 剛,劉曉松
(1.沈陽理工大學(xué)自動化與電氣工程學(xué)院,沈陽 110180;2.中國科學(xué)院a.網(wǎng)絡(luò)化控制系統(tǒng)重點(diǎn)研究室;b.沈陽自動化研究所;c.機(jī)器人與智能制造創(chuàng)新研究院,沈陽 110016)
旋轉(zhuǎn)機(jī)械作為機(jī)械系統(tǒng)中最關(guān)鍵的部件,其廣泛應(yīng)用于電力、石化、冶金和航空航天工業(yè)[1]。隨著工業(yè)生產(chǎn)的不斷加速,旋轉(zhuǎn)機(jī)械越來越容易發(fā)生各種故障,而滾動軸承作為旋轉(zhuǎn)機(jī)械最核心的零部件,其重要性尤為突出[2]。由于軸承在生產(chǎn)中容易受到損傷,且其振動信號具有非平穩(wěn)、非線性的特點(diǎn),識別起來比較困難,因此針對滾動軸承提出診斷方法具有重要的意義。
由于軸承的振動信號具有時間上的連續(xù)性,因此人們利用長短時記憶網(wǎng)絡(luò)(LSTM)來提取信號的時間依賴特性。莊雨璇等[3]基于LSTM提出了一種端對端軸承故障診斷方法,將原始振動信號直接輸入到LSTM網(wǎng)絡(luò)中進(jìn)行識別,并得到了不錯的結(jié)果;曲星宇等[4]設(shè)計(jì)一種RNN-LSTM網(wǎng)絡(luò),提取信號的時間依賴特性,診斷精度高于自編碼方法;GAO等[5]將CNN與LSTM結(jié)合起來進(jìn)行信號診斷。雖然這些網(wǎng)絡(luò)具有較高的準(zhǔn)確率且保留了信號的原始特性,但是隨著數(shù)據(jù)量的增多,一些無用數(shù)據(jù)也隨之增加,干擾了模型的識別精度,模型訓(xùn)練也要需要花費(fèi)更多的時間,因此往往需要對振動信號進(jìn)行一定的預(yù)處理,實(shí)現(xiàn)數(shù)據(jù)降維和初步特征提取。傳統(tǒng)的信號處理方法包括時域處理、頻域處理以及時頻域處理。而相比于單獨(dú)使用時域或頻域的分析方法,時頻分析能夠更全面的反映非平穩(wěn)、非線性信號的特性。
在模型選擇方面,深度學(xué)習(xí)主要采用卷積神經(jīng)網(wǎng)絡(luò)(CNN)作為診斷模型。WAN等[6]提出了一種基于LeNet-5的CNN模型用來充分提取原始信號特征;SONG等[7]提出了一種基于CNN的分層故障診斷方法,通過層級化識別的方式在一定程度上提高了故障診斷準(zhǔn)確率,但是這些基于CNN的方法忽略了卷積后的信號仍然保留有一些不重要的特征,影響了模型學(xué)習(xí)的準(zhǔn)確率。FU等[8]在YOLOv4中添加了注意力模塊(convolutional block attention module,CBAM),使得神經(jīng)網(wǎng)絡(luò)能夠自主選擇重要通道和空間,驗(yàn)證了算法的有效性;HU等[9]使用squeeze and excition networks(SENet)提高了CNN的性能;LI等[10]使用selective kernel networks(SKNet)對模型進(jìn)行了優(yōu)化,這些都證明了注意力機(jī)制能夠改善卷積神經(jīng)網(wǎng)絡(luò)的性能,提升模型的準(zhǔn)確率。
綜上所述,在對信號的時頻分析方法上,由于小波包變換(WPT)具有相對成熟的理論基礎(chǔ),而小波包能量譜蘊(yùn)含豐富的故障特征信息,因此本文采用小波包能量譜的方法對振動信號進(jìn)行特征提取。能量譜值序列具有時間特性,因此將其作為LSTM的輸入,通過CNN對信號特征進(jìn)一步提取,然后利用CBAM對卷積結(jié)果的重要信息進(jìn)行篩選,最終使得模型輸入數(shù)據(jù)的維數(shù)降低,模型的輸出精度有所提升,在測試數(shù)據(jù)集上有良好的診斷性能。
相對于小波變換只能對信號的低頻部分進(jìn)行分解,小波包變換(WPT)可以對信號的高頻部分進(jìn)行分解,具有更高的分辨率[11],適用于分析非平穩(wěn)信號。小波包變換將原始振動信號分解成高頻和低頻的若干個節(jié)點(diǎn),形成二叉樹結(jié)構(gòu),全面的反映了信號的時頻特性。小波包能量譜是在對信號進(jìn)行小波包變換后,通過計(jì)算每個頻帶子空間的小波包系數(shù),得出對應(yīng)頻帶子空間的能量值。這些能量值中包含了大量故障信息,且這些信息容易區(qū)分開來,便于對故障的進(jìn)一步識別。提取能量譜的算法流程如下:
(1)
(2)
(3)
式中,h、g分別為共軛濾波器的系數(shù);l和k為分解層數(shù);j、n為信號分解后的節(jié)點(diǎn)標(biāo)號。
(4)
(4)將采集到的振動信號進(jìn)行N層分解,得到2N個從低頻到高頻分支頻帶系數(shù)構(gòu)成的信號Si,j,其中i=0,1,2,…,n代表小波包分解的層數(shù),j=0,1,2,…,2n代表第i層的節(jié)點(diǎn);
(5)計(jì)算分支信號對應(yīng)的頻帶能量值Ei,j,其中:
(5)
式中,Ci,j(n)為信號Si,j對應(yīng)的小波包系數(shù);N為每個子空間中小波包系數(shù)的數(shù)量,即每個頻帶子空間中所有的小波包系數(shù)之和等于對應(yīng)頻帶子空間的能量值Ei,j。
(6)對能量譜進(jìn)行歸一化處理,歸一化的能量值為Pi,j,其中:
(6)
式中,E為第i層所有頻帶子空間的能量值之和。
圖1 LSTM神經(jīng)元結(jié)構(gòu)
LSTM是經(jīng)過改進(jìn)的特殊的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)。RNN可以處理較短的時間序列,而當(dāng)時間序列較長時,RNN結(jié)構(gòu)很難對后面的序列進(jìn)行梯度反向傳播,這時就產(chǎn)生了梯度消失問題,也即長期依賴問題,而LSTM可以很好地解決梯度消失或者梯度爆炸等問題[12]。LSTM引入了輸入門、遺忘門和輸出門三種門結(jié)構(gòu)來傳遞信息,其神經(jīng)元結(jié)構(gòu)圖如圖1所示。
(1)首先計(jì)算遺忘門決定丟棄哪些舊信息;
f
(7)
i
(8)
(9)
(10)
(3)最后計(jì)算輸出門o
o
(11)
h
(12)
式中,w為權(quán)重系數(shù)向量;b為偏置值。
圖3 LSTM-CNN-CBAM模型
在圖像處理領(lǐng)域,特征圖(feature map)中包含了各種重要的信息,傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)對特征圖的所有通道采取同樣的方式進(jìn)行卷積,但是事實(shí)上不同通道蘊(yùn)含信息的重要程度是不同的,因此對每個通道以同等方式進(jìn)行處理會使網(wǎng)絡(luò)精度有所降低。針對這個問題,WOO等[13]提出了CBAM結(jié)構(gòu),在Resnet和MobileNet等經(jīng)典網(wǎng)絡(luò)上添加了CBAM模塊并進(jìn)行分析,通過在通道和空間維度上進(jìn)行Attention使網(wǎng)絡(luò)性能更加優(yōu)秀。CBAM包含了通道注意力模塊(channel attention module,CAM)和空間注意力模塊(spartial attention module,SAM)這兩個子模塊:CAM模塊首先分別對輸入特征進(jìn)行最大池化和平均池化操作,得到兩個1×1×C的特征圖,然后將特征圖平鋪展開送入到具有兩層網(wǎng)絡(luò)的多層感知機(jī)(MLP)中,對輸出結(jié)果進(jìn)行加和操作,再經(jīng)過Sigmoid激活函數(shù)進(jìn)行激活,得到通道注意力特征Mc,將Mc與輸入特征相乘,并把其作為SAM模塊的輸入。經(jīng)過SAM模塊得到的是空間注意力特征Ms,其與CAM模塊的輸出相乘得到最終輸出特征。
圖2 CBAM結(jié)構(gòu)
本文模型是基于Python語言編寫的,使用的是Tensorflow框架,安裝管理軟件為Anaconda,計(jì)算機(jī)配置Core(TM)i5-9300H CPU@2.40 GHz,內(nèi)存為8 GB,模型中包含兩個LSTM層、兩個卷積池化層以及兩個Dense層,各個部分的參數(shù)信息如表1所示。
表1 模型各部分參數(shù)
本文提出的LSTM-CNN-CBAM模型結(jié)構(gòu)如圖3所示,原始振動信號經(jīng)過小波包變換提取能量譜處理后,將能量譜序列作為數(shù)據(jù)集輸入到LSTM層中,利用LSTM的記憶功能挖掘能量譜信號的時間依賴性。為了充分提取出信號特征,將LSTM的輸出Reshape為二維向量。利用批歸一化(batch normalization,BN)將卷積后的輸出值規(guī)范化,使其服從(0,1)標(biāo)準(zhǔn)正態(tài)分布,再通過ReLU激活函數(shù)對BN結(jié)果進(jìn)行線性修正,增加網(wǎng)絡(luò)稀疏性,加快模型額訓(xùn)練速度。采用2個卷積池化層進(jìn)行特征提取,將輸出特征圖進(jìn)行Flatten操作后轉(zhuǎn)化為1維向量,輸入到平鋪層中,在平鋪層后設(shè)置Dropout提高模型泛化能力,經(jīng)過softmax分類函數(shù)得到最終分類結(jié)果。
圖4 模型訓(xùn)練方案流程
本文模型的訓(xùn)練方案流程如圖4所示,首先對原始故障信號進(jìn)行特征提取,使原始信號特征更加明顯,將得到的數(shù)據(jù)按照4:1的比例劃分為訓(xùn)練集和測試集。訓(xùn)練集用來訓(xùn)練模型的各層參數(shù),使用BN歸一化,ReLU線性修正以及Dropout的方法減少模型訓(xùn)練時間并提高模型精度,通過Adam優(yōu)化器對參數(shù)進(jìn)行更新優(yōu)化,交叉熵?fù)p失函數(shù)以動態(tài)的速度下降,最后得到優(yōu)化模型;測試集用來驗(yàn)證網(wǎng)絡(luò)是否具有預(yù)期的性能和準(zhǔn)確率,經(jīng)過多次訓(xùn)練和驗(yàn)證后,使得模型能夠輸出具有較高準(zhǔn)確率的識別結(jié)果。
采用某大學(xué)軸承實(shí)驗(yàn)室提供的軸承數(shù)據(jù)集,即CWRU數(shù)據(jù)集進(jìn)行測試[14]。該數(shù)據(jù)集人為制造損傷來模擬軸承的各種故障形式,實(shí)驗(yàn)人員通過電火花點(diǎn)蝕軸承的內(nèi)圈、外圈和滾動體得到3種不同位置的故障形式,在每個故障位置又分別造成7 mils、14 mils和21 mils這3種不同程度的損傷,即一共9種故障狀態(tài)和1種正常狀態(tài)。該數(shù)據(jù)集的工況如表2所示,分為4種工況,每種工況下的負(fù)載和轉(zhuǎn)速不同。
表2 CWRU數(shù)據(jù)集工況
本次實(shí)驗(yàn)中采用驅(qū)動端(DE)的軸承振動數(shù)據(jù),采樣頻率是12 kHz,軸承型號為SKF6205,軸承外圈使用6點(diǎn)鐘(與受載區(qū)正交)方向的故障數(shù)據(jù),劃分的數(shù)據(jù)集結(jié)構(gòu)情況如表3所示,在4種工況下,每種故障分別選取100個樣本,每個故障樣本包含1024個樣本點(diǎn),4種工況下共選取4000個樣本進(jìn)行實(shí)驗(yàn)。在對原始信號進(jìn)行特征處理后,每種工況都按照4:1的比例劃分?jǐn)?shù)據(jù)集。
表3 本文中CWRU數(shù)據(jù)集結(jié)構(gòu)
實(shí)驗(yàn)中選取1024個采樣點(diǎn)為一個樣本,每種故障選擇1個樣本觀察波形。在選擇小波包分解層數(shù)時,使用過少的分解層數(shù)使得特征提取不夠充分,并且在提取能量譜后樣本數(shù)據(jù)量會隨之減少,容易造成過擬合,而使用過多的分解層數(shù)又會造成特征過分提取,增加無用信號從而不利于診斷模型的識別,綜合考慮本文決定使用db3小波進(jìn)行8層分解,使用shannon熵提取頻帶能量。軸承振動的原始信號及處理后的信號波形圖如圖5所示。
(a) 原始時域信號 (b) 能量頻譜信號
由軸承振動信號的時域波形圖可以看出,各類型信號在正負(fù)數(shù)值區(qū)間內(nèi)波動,正常振動信號的波動較小,與故障信號具有明顯的區(qū)別,而故障軸承的振動信號具有較大地波動,軸承同一位置的故障信息并不明顯,故障特征難以區(qū)分。整體來看振動信號呈現(xiàn)出的是噪聲式的波動,故障特征被淹沒在噪聲中,使模型容易產(chǎn)生過擬合。軸承原始振動信號在經(jīng)過8層小波包分解并提取能量譜的處理后,被分成256個從低頻到高頻按順序排列的頻帶信號,并且各頻帶能量值在正的數(shù)值區(qū)間內(nèi)波動,各種故障類型可以被初步區(qū)分開來,不同頻帶的能量譜幅值有著較大地變化。小波包能量譜使得原始信號維度有所降低,特征清晰地展現(xiàn)出來,更有利于診斷模型的訓(xùn)練以及對于故障的特征提取。
為了驗(yàn)證模型各部分進(jìn)行組合的必要性,對模型結(jié)構(gòu)進(jìn)行消融實(shí)驗(yàn),即分別采用LSTM、LSTM-CNN、LSTM-CNN-CBAM三種結(jié)構(gòu),對經(jīng)小波包變換提取能量譜處理的振動信號進(jìn)行故障識別。在對三種結(jié)構(gòu)進(jìn)行測試時,應(yīng)該使除結(jié)構(gòu)變化以外的其它參數(shù)變量保持不變,實(shí)驗(yàn)數(shù)據(jù)均是負(fù)載為0 hp條件下,batch_size大小設(shè)置為10,Adam優(yōu)化器中學(xué)習(xí)率設(shè)置為0.000 1,LSTM均采用兩層結(jié)構(gòu),每層單元數(shù)為64,從圖6中可以看出,雖然三種結(jié)構(gòu)都具有較高的識別準(zhǔn)確率,但是僅采用LSTM的模型隨著迭代次數(shù)收斂的最慢,準(zhǔn)確率也是最低,為98.5%,增加了CNN提取特征以后模型收斂速度有所增加,準(zhǔn)確率提升到了99%,而增加了CBAM注意力模塊的收斂效果更好,準(zhǔn)確率也達(dá)到了99.5%,收斂曲線相對更加平滑。
(a) 損失值變化 (b) 準(zhǔn)確率變化
減少率radio是CBAM中多層感知機(jī)(MLP)的重要參數(shù),radio的選取可能會影響著CBAM模塊性能的好壞,因此需要選擇不同的radio值進(jìn)行驗(yàn)證。由于模型第一層卷積核數(shù)為8,因此radio的取值不能超過8,這里選取2、4、8這3個值進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)是在負(fù)載為1 hp時的數(shù)據(jù)上進(jìn)行的,模型其它參數(shù)和上文LSTM-CNN-CBAM模型的一致。由圖7可以看出,當(dāng)radio=4時,測試集的損失函數(shù)下降的最快,而radio=8時損失函數(shù)下降的最慢,雖然3種情況下模型都能達(dá)到最高為100%的準(zhǔn)確率,但是顯然radio=4時模型收斂性能更優(yōu)。
(a) 損失值變化 (b) 準(zhǔn)確率變化
為了驗(yàn)證模型的泛化性能,在各負(fù)載上進(jìn)行混合測試,由表4可以看到,LSTM-CNN-CBAM模型在測試中的平均準(zhǔn)確率最高,為90.125%,在負(fù)載由0→1 hp和1→2 hp變化時,LSTM和LSTM-CNN模型準(zhǔn)確率比本文模型高,在負(fù)載由2→3 hp和3→0 hp變化時,本文模型準(zhǔn)確率最高,但是LSTM和LSTM-CNN模型的準(zhǔn)確率變動較大。
表4 不同模型變負(fù)載條件下準(zhǔn)確率
分析原因是輸入信號在提取能量譜之后,負(fù)載為0 hp和1 hp下的信號比2 hp和3 hp信號的特征更不明顯,因此在0 hp和1 hp條件下訓(xùn)練好的模型在2 hp和3 hp條件下識別的效果更好,LSTM和LSTM-CNN模型的準(zhǔn)確率會隨著信號特征的變化大幅變動,魯棒性較差,而本文模型在變負(fù)載條件下魯棒性更強(qiáng),總體泛化性能也更好。
為了驗(yàn)證本文方法的優(yōu)越性,將本文方法與其它方法進(jìn)行對比,其中SVM算法選擇“ovo”方式,1D-CNN模型使用BN以及ReLU激活函數(shù)來增加準(zhǔn)確率,核尺寸分別為32×8、64×5、128×3,LSTM是在本文模型的基礎(chǔ)上去除了CNN和CBAM模塊,使用Adam優(yōu)化器優(yōu)化。對于4種負(fù)載,每種方法分別進(jìn)行10次實(shí)驗(yàn),記錄其中準(zhǔn)確率最高的一次進(jìn)行繪圖。
圖8 測試集下不同模型識別準(zhǔn)確率對比
可以看出在增加WPE的條件下,SVM的最高平均識別準(zhǔn)確率有了明顯提升,提升了35.375%,1D-CNN的最高平均識別準(zhǔn)確率提升了28.625%,LSTM的最高平均識別準(zhǔn)確率提升了51.375%,本文模型最高平均識別準(zhǔn)確率提高了36.25%,證明了WPE可以提高模型準(zhǔn)確率,并且WPE與LSTM模型結(jié)合時準(zhǔn)確率提升的更高。同時本文模型在有無WPE條件時準(zhǔn)確率都高于普通的LSTM模型,在各負(fù)載條件下識別準(zhǔn)確率最高,優(yōu)于其它的算法模型。
表5 不同模型訓(xùn)練、識別時間及測試平均準(zhǔn)確率
由表5可知,在增加了WPE后,SVM訓(xùn)練時間加上識別時間共減少了1.15 s,比原來時間縮短了87%,1D-CNN模型時間減少了38.45 s,比原來時間縮短了52%,LSTM模型訓(xùn)練時間減少了42.87 s,比原來時間縮短了49.38%,而本文模型訓(xùn)練時間減少了37.67 s,比原來時間縮短了31%,說明WPE可以縮短模型訓(xùn)練、識別時間。由于本文模型在LSTM結(jié)構(gòu)上增加了CNN和CBAM模塊,因此在訓(xùn)練和識別時比普通LSTM模型的時間稍高。
本文模型在各負(fù)載下的識別結(jié)果如圖9所示,在負(fù)載為0 hp和2 hp時識別準(zhǔn)確率為99.5%,即200個測試樣本分別識別錯誤1個,在負(fù)載為1 hp和3 hp時識別準(zhǔn)確率為100%,所有測試樣本類別被識別出來,4種負(fù)載下平均識別準(zhǔn)確率為99.75%,800個測試樣本僅有2個被錯誤分類,表明該模型具有較高的分類準(zhǔn)確率。
(a) 負(fù)載為0 hp識別結(jié)果 (b) 負(fù)載為1 hp識別結(jié)果
本文通過提取軸承振動信號的能量譜值實(shí)現(xiàn)對原始信號的預(yù)處理,并基于此提出了一種LSTM-CNN-CBAM故障診斷模型,通過在軸承數(shù)據(jù)集上的實(shí)驗(yàn)表明該方法具有較高的準(zhǔn)確率和良好的性能,對本次實(shí)驗(yàn)的總結(jié)如下:
(1)當(dāng)樣本數(shù)量較多時,對樣本提取小波包能量譜可以降低數(shù)據(jù)維度,提取數(shù)據(jù)特征值,從而提高診斷模型的準(zhǔn)確率,減少模型訓(xùn)練時間,并且其與LSTM結(jié)合的效果較好;
(2)CBAM模塊更注意重要信息的選擇,本文中LSTM-CNN網(wǎng)絡(luò)添加CBAM模塊后可以加速模型收斂,并且提高模型準(zhǔn)確率,在收斂能力和準(zhǔn)確率上獲得了比普通LSTM-CNN模型更好的效果;
(3)根據(jù)卷積核通道數(shù)選取合適的radio值可以改善CBAM模塊的作用,從而提高模型的收斂性能;