魏永合,李宗霖,唐英瀚,李宏林,馬步芳
(1.沈陽理工大學(xué) 機(jī)械工程學(xué)院,沈陽 110159;2.加州大學(xué)河濱分校 馬蘭和羅斯瑪麗·伯恩斯工程學(xué)院,美國(guó) 加州)
機(jī)械設(shè)備在使用過程中,如果出現(xiàn)故障,很容易造成重大事故和損失。齒輪作為廣泛使用在機(jī)械設(shè)備中的零件,其故障也是機(jī)械設(shè)備普遍存在的問題[1]。如能及時(shí)判斷出故障的類型或程度,則可挽回較多不必要的損失。
機(jī)械設(shè)備故障診斷技術(shù)首先通過實(shí)驗(yàn)設(shè)備采集機(jī)械設(shè)備的信號(hào);再通過特征提取的方式,提取出反應(yīng)故障特征的信號(hào);最后由模式識(shí)別算法依據(jù)故障特征信號(hào),判別出設(shè)備的故障類型、程度等[2]。其中,特征提取和模式識(shí)別是該技術(shù)的關(guān)鍵。
對(duì)于軸承前期故障,難以明顯的在其時(shí)域、頻域中觀察到故障信息。由此,余發(fā)軍等[3]通過改進(jìn)型的K-SVD(K-Means Singular Value Decomposition)[4]和在稀疏分解過程中找出逼近信號(hào)以判斷出軸承故障類別。張兆珩等[5]利用移不變字典學(xué)習(xí)特征成分的字典,有效提取了故障信息,且分辨出了其故障類型。這兩種方法都解決了對(duì)軸承微弱信號(hào)的特征提取,并判別出了其故障類型。由此,可以借鑒其采用的算法,將齒輪箱中的故障信號(hào)提取出來。
模式識(shí)別是判別故障類型或故障程度的機(jī)制,對(duì)于小樣本問題,在現(xiàn)有模式識(shí)別方法中,支持向量機(jī)(Support Vector Machine,SVM)具有更好的識(shí)別效果[6]。潘禮正等[7]通過小波包和獨(dú)立成分分析的特征提取方法,采用SVM算法識(shí)別齒輪的四種故障類型,具有良好的識(shí)別效果。韓霞等[8]采用遺傳算法,優(yōu)化了SVM分類模型,并通過實(shí)驗(yàn)表明優(yōu)化后的SVM模型具有較高的分類正確率。
針對(duì)傳統(tǒng)K-SVD存在的問題,即字典原子間具有較高相干性導(dǎo)致構(gòu)建出的字典不足以準(zhǔn)確匹配信號(hào)特征,本文提出了低相干K-SVD結(jié)合SVM的齒輪故障診斷模型,用以提高齒輪信號(hào)的重構(gòu)性能以及齒輪故障狀態(tài)識(shí)別的準(zhǔn)確率。
K-SVD算法試圖將樣本集分解成字典D與稀疏編碼α相乘的形式。K-SVD算法結(jié)合了K-Means與奇異值分解(Singular Value Decomposition,SVD)的思想,分別固定字典D或稀疏編碼α,采用SVD不斷更新字典的每一列,并用正交匹配追蹤(Orthogonal Matching Pursuit,OMP)算法[9]對(duì)α進(jìn)行更新,直至達(dá)成終止條件為止。
K-SVD的目標(biāo)函數(shù)可構(gòu)造為
(1)
式中:D表示N行K列的字典;α表示稀疏編碼;αi表示第i行稀疏編碼;ε表示閾值;F表示F-范數(shù);0表示0-范數(shù);X表示樣本矩陣。
K-SVD對(duì)字典D的更新見式(2)。
(2)
當(dāng)固定稀疏編碼α后,從字典D中挑出某一列,構(gòu)成該列的殘差矩陣E,再由SVD對(duì)其進(jìn)行分解并構(gòu)造原子。然而,如果得到的字典原子間有著過高的相干性,則會(huì)導(dǎo)致重構(gòu)信號(hào)不能很好的顯示出原始信號(hào)的內(nèi)部結(jié)構(gòu)特征。低相干K-SVD算法就是在傳統(tǒng)K-SVD算法的目標(biāo)函數(shù)上加入約束項(xiàng),從而使得字典具有稀疏性以及低相干性[10]。
字典各原子間的相干性指標(biāo)采用互相關(guān)來定義,如式(3)所示。
(3)
需要指出,對(duì)于過完備字典D∈RN×M,其相干性滿足式(4)。
(4)
式中N和M表示過完備字典的行和列。
Tropp等[11]指出,僅在字典滿足等角緊框架且M≤N(N+1)/2時(shí),式(4)的等號(hào)成立[12]。
由此,低相干K-SVD的目標(biāo)函數(shù)可構(gòu)造為
(5)
式中:I表示單位矩陣;λ0為拉格朗日乘子。
即:在滿足α足夠稀疏的同時(shí),也要滿足字典間相干性最低,其更新過程與原始的K-SVD同理,區(qū)別在于對(duì)殘差矩陣進(jìn)行SVD分解后,采用能滿足式(5)的左奇異向量與其對(duì)應(yīng)的奇異值更新原子。
20世紀(jì)60年代,Vapnik等[13]發(fā)現(xiàn)了SVM,其試圖在樣本集中依據(jù)支持向量確定一個(gè)決策平面,并利用核函數(shù)的特性,將在高維空間中難以計(jì)算的內(nèi)積簡(jiǎn)單有效地計(jì)算出來,避免維數(shù)災(zāi)難對(duì)SVM造成的影響。如此,可將非線性問題轉(zhuǎn)換成線性問題并解決。同時(shí),SVM采用小樣本即可得出全局最優(yōu)解的機(jī)器學(xué)習(xí)模型,其基本原理如下。
給定{(x1,y1),(x2,y2),…,(xn,yn)}樣本集,xi∈Rn為特征向量,R表示實(shí)數(shù)域;n表示總樣本的個(gè)數(shù)。為找到合適的決策平面,依據(jù)其支持向量,可構(gòu)造如下目標(biāo)函數(shù)
(6)
式中:w表示權(quán)重;wT表示權(quán)重的轉(zhuǎn)置;xi表示第i個(gè)樣本;ξi表示閾值;b表示截距;yi為第i個(gè)決策平面;n表示樣本個(gè)數(shù)。
式(6)表示,在樣本集中希望找到最大間隔的分類超平面。為能更有效地求解,可將式(6)轉(zhuǎn)變?yōu)槠鋵?duì)偶形式,即選取適當(dāng)?shù)暮撕瘮?shù)K(xi·xj)以及懲罰因子C,其優(yōu)化問題變?yōu)?/p>
(7)
式中λ1i為拉格朗日乘子向量,λ1i和λ1j分別對(duì)應(yīng)其中不同的值。由此,可以通過式(7)的解,得出式(6)的解。通過式(7)可得出其決策函數(shù),如式(8)所示。
(8)
在SVM的數(shù)學(xué)模型中可以發(fā)現(xiàn),SVM模型的泛化性能主要受核函數(shù)和懲罰因子的影響。為了能夠自適應(yīng)地找到適合樣本數(shù)據(jù)的參數(shù),選用遺傳算法優(yōu)化這兩個(gè)參數(shù),以求其自適應(yīng)地找到最優(yōu)解。
原始的K-SVD算法在計(jì)算得出的字典中,其各原子之間具有很強(qiáng)的干擾性,為解決這個(gè)問題,可采用低相干K-SVD算法,降低各個(gè)原子之間的相干性[15]。為進(jìn)一步提高信噪比,再聯(lián)合經(jīng)驗(yàn)?zāi)B(tài)分解(Ensemble Empirical Mode Decomposition,EEMD)算法,其具體實(shí)現(xiàn)步驟如下。
(1)將信號(hào)EEMD分解,依據(jù)峭度值選取本征模態(tài)分量(Intrinsic Mode Fuction,IMF)作為樣本,并將其矩陣化。
(2)初始化字典D以及樣本矩陣都輸入到正交匹配追蹤算法中,以獲得稀疏系數(shù)矩陣,再通過低相干的K-SVD得到更新后的字典。
(3)將樣本矩陣化后,通過OMP算法得到稀疏系數(shù)矩陣。與(2)得到的字典重構(gòu),得到稀疏信號(hào)矩陣,并將其展開成一維信號(hào)。
(4)由其時(shí)域、頻域特征指標(biāo)計(jì)算構(gòu)建故障信號(hào)特征矩陣,最終得到機(jī)械設(shè)備的故障信息。
遺傳算法優(yōu)化SVM分類模型,實(shí)現(xiàn)步驟如下。
活動(dòng)二:尋找物質(zhì)變化的規(guī)律。教師引導(dǎo)學(xué)生回顧生態(tài)系統(tǒng)中的學(xué)習(xí),先組織各小組討論圖3并交流。學(xué)生得出規(guī)律1:物質(zhì)在食物鏈的生物間進(jìn)行循環(huán)。學(xué)生再通過觀察池塘中魚類餓食物鏈,推理食物鏈中有毒物質(zhì)的傳遞規(guī)律:有毒物質(zhì)沿食物鏈富集。
(1)初始化種群數(shù),將SVM中兩個(gè)必要優(yōu)化的參數(shù)采取二進(jìn)制編碼,種群數(shù)設(shè)置為20。
(2)以SVM分類的準(zhǔn)確率為個(gè)體適應(yīng)度,判斷其是否收斂或達(dá)到迭代次數(shù),若滿足則輸出最優(yōu)解;否則進(jìn)行下一步。
(3)采取遺傳算子對(duì)當(dāng)前一代種群作出處理,本文中交叉概率pc=0.7,變異概率pm=0.05。對(duì)新的群體轉(zhuǎn)到(2),重新計(jì)算其適應(yīng)度。
(4)不斷循環(huán)(2)和(3),直到滿足終止條件為止。
將得出的參數(shù)輸入到SVM,最后獲得故障診斷的效果。
本文采用旋轉(zhuǎn)機(jī)械故障模擬實(shí)驗(yàn)臺(tái),模擬齒輪故障,齒輪的特征參數(shù)如表1所示。
表1 齒輪特征參數(shù)
電機(jī)轉(zhuǎn)速為880r/min,采樣頻率為5120Hz。利用加速度傳感器分別采集在大齒輪正常、斷齒和點(diǎn)蝕情況下的振動(dòng)信號(hào)。圖1為三種情況下振動(dòng)信號(hào)波形圖。
由圖1可知,用加速度傳感器采集的信號(hào)存在明顯的噪聲。對(duì)采集好的信號(hào)分別采用EEMD分解,以峭度為依據(jù)提取峭度最大對(duì)應(yīng)的IMF分量。在圖1b和圖1c中,大齒輪點(diǎn)蝕與斷齒信號(hào)中帶有大量噪音,而經(jīng)過EEMD與低相干K-SVD結(jié)合的算法后得出的信號(hào),相比之下信噪比得到了提高。其經(jīng)過EEMD分解的IMF分量各狀態(tài)的峭度值見表2所示。
表2 IMF分量的峭度值
從表2中可以看出,當(dāng)齒輪出現(xiàn)點(diǎn)蝕時(shí),最大峭度對(duì)應(yīng)第一個(gè)IMF分量。斷齒情況下對(duì)應(yīng)第二個(gè)IMF分量,。
以步長(zhǎng)為1,分別選取最大峭度值對(duì)應(yīng)的IMF分量進(jìn)行矩陣化。通過低相干K-SVD算法,求解出稀疏信號(hào)矩陣并將其展開成一維信號(hào),如圖2所示。
從圖2中可以看出,相比原始信號(hào),其信噪比有了很大的提升。
對(duì)重構(gòu)的一維信號(hào),計(jì)算其在時(shí)域、頻域上的特征,形成特征矩陣。將通過采樣得到的樣本集分成訓(xùn)練集與測(cè)試集。本實(shí)驗(yàn)對(duì)三種情況下的齒輪分別采集50組數(shù)據(jù),其中每類選取30組樣本作為訓(xùn)練集,余下構(gòu)成測(cè)試集。采用1,2,3對(duì)應(yīng)三種情況下齒輪狀況,為數(shù)據(jù)添加標(biāo)簽。通過上述方法構(gòu)造特征矩陣,采用遺傳算法優(yōu)化SVM。設(shè)置遺傳算法參數(shù)如表3所示。
表3 遺傳算法參數(shù)
遺傳算法優(yōu)化的SVM適應(yīng)度曲線如圖3所示。
圖3表示,遺傳算法優(yōu)化SVM得出的最優(yōu)值所對(duì)應(yīng)的準(zhǔn)確率為92.222%,其油畫的高斯核函數(shù)參數(shù)和懲罰因子的值分別為15.0505和19.5324。
將這兩個(gè)參數(shù)用于SVM中,并在訓(xùn)練集中使SVM訓(xùn)練出最大間隔超平面,最后由測(cè)試集衡量該分類模型的準(zhǔn)確率,如圖4所示。
在圖4中,可以看出該模型的準(zhǔn)確率達(dá)到90%(54/60)。
提出一種基于低相干K-SVD和SVM算法的齒輪故障診斷模型,改良了原始K-SVD算法中字典間干擾較強(qiáng)的問題;并采用EEMD算法結(jié)合低相干K-SVD的方式進(jìn)一步提高了振動(dòng)信號(hào)的信噪比;為提高SVM模型分類的準(zhǔn)確率,采取遺傳算法對(duì)其優(yōu)化。實(shí)驗(yàn)表明,該方法可有效提高信號(hào)的信噪比及準(zhǔn)確分辨出信號(hào)的故障類型。