張 龍,周 俊
(上海工程技術(shù)大學(xué) 機(jī)械與汽車工程學(xué)院,上海 201620)
滾動(dòng)軸承在工業(yè)生產(chǎn)機(jī)械設(shè)備中扮演著不可或缺的角色,也是最常見(jiàn)、最易受損的部件之一,在變負(fù)載條件下,其運(yùn)行狀態(tài)復(fù)雜多變,一旦發(fā)生故障,輕則影響機(jī)械設(shè)備的正常運(yùn)行,重則引起嚴(yán)重的安全事故,并造成巨大的經(jīng)濟(jì)損失及人員傷亡。因此對(duì)滾動(dòng)軸承的質(zhì)量檢測(cè)、狀態(tài)監(jiān)測(cè)和故障診斷具有十分重大的意義[1-2]。
隨著機(jī)器學(xué)習(xí)研究的不斷深入,基于人工智能的數(shù)據(jù)驅(qū)動(dòng)方法成為故障診斷領(lǐng)域研究的熱點(diǎn)。工業(yè)生產(chǎn)迫切需要融合智能傳感網(wǎng)絡(luò)、智能診斷算法和智能決策預(yù)示的智能診斷系統(tǒng)[3]。徐統(tǒng)等[4]采用變分模態(tài)分解(Variational Mode Decomposition,VMD)將滾動(dòng)軸承信號(hào)分解成若干個(gè)本征模態(tài)函數(shù)(Intrinsic Mode Function,IMF),然后分別計(jì)算原始信號(hào)和每個(gè)IMF 分量的K-L值,選擇較小K-L值的兩個(gè)IMF分量進(jìn)一步計(jì)算其瞬時(shí)能量并組成特征向量,最后結(jié)合概率神經(jīng)網(wǎng)絡(luò)(Probabilistic Neural Network,PNN)建立故障診斷模型;袁憲鋒等[5]利用棧式稀疏自編碼網(wǎng)絡(luò)(Stacked Sparse Auto Encoder,SSAE)來(lái)提取軸承信號(hào)中的故障特征,再利用改進(jìn)的灰狼智能優(yōu)化算法(Improved Grey Wolf Optimization,IGWO)實(shí)現(xiàn)對(duì)支持向量機(jī)(Support Vector Machine,SVM)的參數(shù)優(yōu)化,最后基于優(yōu)化后的SVM 完成對(duì)軸承故障特征的分類識(shí)別;尹愛(ài)軍等[6]先提取軸承振動(dòng)信號(hào)的小波包能量,構(gòu)建融合特征矩陣,再利用高斯過(guò)程隱變量模型(Gauss Process Latent Variables Model,GP-LVM)提取其隱變量,最后利用K-最近鄰分類算法(K-Nearest Neighbor,KNN)進(jìn)行故障識(shí)別;黃大榮等[7]利用線性判別分析(Linear Discriminant Analysis,LDA)對(duì)軸承多重故障的無(wú)量綱指標(biāo)數(shù)據(jù)進(jìn)行線性映射降維處理,通過(guò)拉格朗日極值法獲得最佳投影向量,最后將處理后的樣本作為BP 神經(jīng)網(wǎng)絡(luò)(Back Propagation)的輸入樣本,實(shí)現(xiàn)對(duì)軸承多重故障的分類。
上述幾種關(guān)于軸承的故障診斷研究方法均只采用了單一的分類器模型,這樣不利于模型診斷性能得到進(jìn)一步的提升。為了得到一個(gè)泛化能力更強(qiáng)、魯棒性更好的診斷模型,本文提出一種基于WELCH 算法的多模型融合的滾動(dòng)軸承故障診斷方法。首先用WELCH功率譜算法對(duì)原始振動(dòng)信號(hào)進(jìn)行預(yù)處理,然后將LDA、SVM、KNN 和PNN 四種分類器與Stacking算法相結(jié)合構(gòu)造Stacking-SVM集成模型;最后驗(yàn)證該集成模型在不同電機(jī)轉(zhuǎn)速下的診斷性能及抗噪性測(cè)試。
WELCH 功率譜是一種有效且實(shí)用的經(jīng)典的譜估計(jì)運(yùn)算,具有很好的信號(hào)分析能力。主要通過(guò)窗函數(shù)在被分析數(shù)據(jù)串上滑動(dòng)截取數(shù)據(jù)并進(jìn)行交疊,使數(shù)據(jù)中被截取的段數(shù)增加,并且對(duì)每一段被截取的數(shù)據(jù)都進(jìn)行求取功率譜轉(zhuǎn)換并平均后疊加,從而使得轉(zhuǎn)換后的信號(hào)數(shù)據(jù)更加平滑。這樣不僅降低了譜估計(jì)方差,還減少了對(duì)信號(hào)分辨率的破壞,對(duì)信號(hào)所蘊(yùn)藏的信息進(jìn)行有效的保留,且計(jì)算量相對(duì)較小,對(duì)故障特征的提取相對(duì)平穩(wěn)[8-9]。
WELCH 算法進(jìn)行功率譜轉(zhuǎn)換主要由參數(shù)及窗函數(shù)的確定、數(shù)據(jù)分段、部分重疊幾個(gè)步驟組成[10]。
其中:x(n)的長(zhǎng)度為N,被分成了L段,每一段包含M個(gè)數(shù)據(jù),ω(n)為窗函數(shù),為歸一化因子,它的存在使得功率譜估計(jì)是漸近無(wú)偏估計(jì)。
Stacking算法是一種著名的集成學(xué)習(xí)算法,也可以看作是一種特殊的集成策略。首先將原始數(shù)據(jù)集按比例分為訓(xùn)練集和測(cè)試集,再用訓(xùn)練集結(jié)合交叉驗(yàn)證訓(xùn)練出初級(jí)學(xué)習(xí)器,然后生成一個(gè)新的數(shù)據(jù)集用來(lái)訓(xùn)練元級(jí)學(xué)習(xí)器。在這個(gè)新的數(shù)據(jù)集中,初級(jí)學(xué)習(xí)器的輸出結(jié)果被當(dāng)作樣本的輸入特征,而初始樣本的標(biāo)記仍被當(dāng)作樣本標(biāo)簽。Stacking 算法原理如圖1所示。
圖1 Stacking算法
集成學(xué)習(xí)是將不同的模型通過(guò)一定的結(jié)合策略組成一個(gè)元模型,可有效解決單一模型效率低、泛化能力差的問(wèn)題。參與集成的模型可以是單一的模型分類器,也可以是多種不同的分類器模型。本文則采用LDA、SVM、KNN和PNN四種不同的分類器通過(guò)結(jié)合Stacking 算法進(jìn)行集成,同時(shí)選取不同的元分類器進(jìn)行對(duì)比選擇最優(yōu)的Stacking 集成學(xué)習(xí)模型。
線性判別分析(LDA),又稱Fisher判別分析,是一種有監(jiān)督學(xué)習(xí)的分類和降維方法,既可以用來(lái)提取樣本特征,又可以用來(lái)進(jìn)行樣本分類識(shí)別。首先給定訓(xùn)練集樣例集,設(shè)法將樣例投影到一條直線上,使得同類樣例的投影點(diǎn)盡可能接近、異類樣例的投影點(diǎn)盡可能遠(yuǎn)離;在對(duì)新樣本進(jìn)行分類時(shí),將其投影到同樣的這條直線上,再根據(jù)投影點(diǎn)的位置來(lái)確定新樣本的類別[11]。
支持向量機(jī)(SVM)是機(jī)器學(xué)習(xí)算法中應(yīng)用很廣的一種分類算法。首先給定一個(gè)訓(xùn)練樣本集D={ (x1,y1),(x2,y2),…,(xm,ym)},y∈{ -1,1 },在包含訓(xùn)練集D的樣本空間中,我們需要找到一個(gè)劃分超平面,將不同種類的樣本數(shù)據(jù)區(qū)分開(kāi),并使其間隔最大化[12]。
在樣本空間中,劃分超平面可由下面的線性方程來(lái)描述:
其中:ωT為權(quán)重向量,b為位移項(xiàng)。
K近鄰算法(KNN)是通過(guò)計(jì)算待分類樣本及其最近的k個(gè)樣本間距作為診斷指標(biāo),對(duì)待測(cè)樣本進(jìn)行分類。KNN無(wú)需估計(jì)參數(shù)及訓(xùn)練,適用于多分類問(wèn)題[13]。樣本間距計(jì)算式為:
式中:xi,yi——樣本點(diǎn)在多維空間中的坐標(biāo)。
概率神經(jīng)網(wǎng)絡(luò)(PNN)是由徑向基函數(shù)網(wǎng)絡(luò)(Radial Basis Function Network,RBF)發(fā)展而來(lái)的一種前饋型神經(jīng)網(wǎng)絡(luò),其理論依據(jù)是貝葉斯最小風(fēng)險(xiǎn)準(zhǔn)則(即貝葉斯決策理論)。與其他類型的神經(jīng)網(wǎng)絡(luò)相比,其優(yōu)勢(shì)在于結(jié)構(gòu)相對(duì)簡(jiǎn)單,訓(xùn)練簡(jiǎn)潔,是一種應(yīng)用廣泛的人工神經(jīng)網(wǎng)絡(luò)。PNN 的層次模型由輸入層、模式層、求和層和輸出層組成[14]。
首先將已知故障狀態(tài)的滾動(dòng)軸承的原始振動(dòng)信號(hào)通過(guò)WELCH 算法進(jìn)行預(yù)處理,然后從功率譜中提取相關(guān)特征參數(shù),作為輸入樣本向量,將訓(xùn)練集結(jié)合5折交叉驗(yàn)證分別訓(xùn)練LDA、SVM、KNN和PNN4種分類器,將其對(duì)應(yīng)的輸出結(jié)果進(jìn)行重組得到一個(gè)新的含有四種特征的數(shù)據(jù)集,再訓(xùn)練元分類器;同時(shí)將測(cè)試集對(duì)單個(gè)分類器的輸出結(jié)果進(jìn)行累加取平均值,作為新的測(cè)試集輸入到元分類器中進(jìn)行測(cè)試。圖2為基于WELCH算法的Stacking集成模型。
圖2 基于WELCH算法的Stacking集成學(xué)習(xí)模型
數(shù)據(jù)集來(lái)自Case Western Reserve University 軸承數(shù)據(jù)中心。選取了電機(jī)轉(zhuǎn)速為1 730 r/min、1 750 r/min、1 772 r/min、1 797 r/min,采樣頻率為12 kHz下的驅(qū)動(dòng)端滾動(dòng)軸承數(shù)據(jù),分成10 種故障類型,分別為正常狀態(tài)以及內(nèi)圈、外圈和滾動(dòng)體故障直徑分別為0.18 mm、0.36 mm、0.53 mm下的故障。每個(gè)樣本包含1 200個(gè)采樣點(diǎn),其中每一種故障狀態(tài)都選取了100個(gè)樣本,總共1 000個(gè)樣本數(shù)據(jù)。每種故障類型選取90個(gè)樣本作為訓(xùn)練集,共900個(gè),剩余的作為測(cè)試集,共100個(gè)。表1為轉(zhuǎn)速為1 772 r/min下的實(shí)驗(yàn)數(shù)據(jù)集。圖3 為滾動(dòng)軸承正常狀態(tài)下的振動(dòng)波形圖。
圖3 正常狀態(tài)下的振動(dòng)波形圖
表1 實(shí)驗(yàn)數(shù)據(jù)集
將滾動(dòng)軸承的原始振動(dòng)信號(hào)通過(guò)WELCH算法進(jìn)行預(yù)處理,選取采樣點(diǎn)數(shù)為1 200,F(xiàn)FT 點(diǎn)數(shù)為600,采用矩形窗,窗函數(shù)長(zhǎng)度設(shè)置為100,重疊樣本數(shù)為25。圖4 為正常狀態(tài)下的軸承信號(hào)經(jīng)WELCH算法預(yù)處理后的功率譜。從功率譜中獲得峭度Xku、偏度Xsk、波形因子X(jué)S、峰值因子X(jué)C、脈沖因子X(jué)Z和裕度因子X(jué)L六個(gè)參數(shù),作為輸入。部分相關(guān)數(shù)據(jù)見(jiàn)表2。
表2 部分特征向量數(shù)據(jù)
圖4 WELCH算法預(yù)處理后的功率譜
信號(hào)處理方法的不同對(duì)于故障特征提取具有很大的影響,選取合適的信號(hào)處理方法可以增強(qiáng)故障特征,進(jìn)而可以大大提升故障診斷準(zhǔn)確率。本文選取周期圖法、希爾伯特變換(Hilbert)、傅里葉變換(FFT)和WELCH功率譜算法進(jìn)行實(shí)驗(yàn)對(duì)比,并選用SVM作為該實(shí)驗(yàn)的故障診斷模型。診斷結(jié)果如圖5所示。
圖5 不同預(yù)處理方法下的診斷準(zhǔn)確率
當(dāng)對(duì)軸承的原始振動(dòng)信號(hào)使用不同的信號(hào)處理方法,均能達(dá)到提高故障診斷準(zhǔn)確率的效果。經(jīng)WELCH算法預(yù)處理后的故障信號(hào)在SVM下能達(dá)到95%的診斷準(zhǔn)確率,高于其余三種信號(hào)處理方法,最大相差了11%。因此,對(duì)原始信號(hào)有必要選用一定的信號(hào)處理方法用來(lái)增強(qiáng)不同信號(hào)的故障特征;但是,不同的信號(hào)處理方法各有優(yōu)勢(shì),選取合適且優(yōu)異的方法將更有利于故障特征的識(shí)別。
Stacking 集成模型第一層采用LDA、SVM、KNN和PNN作為基分類器,首先分別對(duì)這四種單一分類器進(jìn)行實(shí)驗(yàn),其診斷結(jié)果如表3 所示。未進(jìn)行預(yù)處理的數(shù)據(jù)的故障診斷準(zhǔn)確率僅在76%~90%之間,波動(dòng)幅度較大,且準(zhǔn)確率相對(duì)較低,不能對(duì)故障進(jìn)行很好的識(shí)別。經(jīng)WELCH算法預(yù)處理后的故障診斷準(zhǔn)確率明顯優(yōu)于未進(jìn)行預(yù)處理的數(shù)據(jù),故障診斷準(zhǔn)確率能達(dá)到91%~97%,有了很大的提升。由于各個(gè)分類器的診斷機(jī)理不同,診斷結(jié)果存在較大差異,但采用WELCH算法預(yù)處理后,各個(gè)分類器均能對(duì)軸承故障有著一定的識(shí)別能力。
表3 基分類器故障診斷準(zhǔn)確率
Stacking 集成模型第一層選用該四種單一分類器的二種或三種,第二層選用SVM分類器作為元分類器進(jìn)行實(shí)驗(yàn),其診斷結(jié)果如表4 所示。當(dāng)選擇部分分類器進(jìn)行結(jié)合時(shí),即Stacking 集成模型第二層的數(shù)據(jù)集樣本特征會(huì)相對(duì)減少,這會(huì)影響最終的診斷準(zhǔn)確率。因此,在條件允許的情況下,應(yīng)盡量多地選擇分類精度較好的分類器進(jìn)行結(jié)合,增加樣本的特征數(shù),以此來(lái)提升模型的診斷性能。
表4 不同分類器個(gè)數(shù)的集成模型診斷性能
Stacking 集成模型第二層分別采用各個(gè)單一分類器進(jìn)行對(duì)比實(shí)驗(yàn),選擇診斷性能最優(yōu)的一個(gè)集成模型,其診斷結(jié)果如表5所示。
表5 不同結(jié)構(gòu)的Stacking集成模型的診斷性能
當(dāng)Stacking 集成模型選用SVM 分類器作為第二層的時(shí)候,該集成模型的整體性能有了一定的提升;選擇其余3種分類器作為元分類器時(shí),該集成模型的診斷性能有所下降,在選用KNN 時(shí),診斷準(zhǔn)確率僅有93%。因此,選用這種結(jié)構(gòu)簡(jiǎn)單、發(fā)展成熟的SVM分類器作為Stacking集成模型的第2層有利于提高模型的整體性能,診斷準(zhǔn)確率為98%。圖6為4種基分類器和Stacking-SVM集成模型對(duì)不同故障類型的診斷準(zhǔn)確率。
圖6 不同模型下的診斷性能
本文提出的Stacking-SVM 集成模型針對(duì)的是電機(jī)轉(zhuǎn)速為1 772 r/min 下的滾動(dòng)軸承的故障診斷,為驗(yàn)證該模型是否在其他電機(jī)轉(zhuǎn)速下一樣具有良好的診斷性能,故設(shè)定以下實(shí)驗(yàn)。將電機(jī)轉(zhuǎn)速為1 730 r/min,1 750 r/min,1 772 r/min 和1 797 r/min 下的軸承數(shù)據(jù)分別用該集成模型進(jìn)行實(shí)驗(yàn)。診斷結(jié)果如圖7所示。
結(jié)合圖7和表6可知,該集成模型對(duì)于不同電機(jī)轉(zhuǎn)速下的故障診斷效果相對(duì)均衡,診斷準(zhǔn)確率分別為98 %、98 %、98 %和92 %。僅在電機(jī)轉(zhuǎn)速為1 797 r/min,滾動(dòng)體故障直徑在0.36 mm 的情況下,診斷準(zhǔn)確率較低,出現(xiàn)了較多的預(yù)測(cè)錯(cuò)誤。分析其原因,可能與滾動(dòng)體本身的工作原理有關(guān),在轉(zhuǎn)速稍高的情況下,導(dǎo)致所采集的振動(dòng)數(shù)據(jù)不規(guī)則且具有隨機(jī)性,從而導(dǎo)致診斷準(zhǔn)確率偏低。但在大部分情況下,該Stacking-SVM集成模型還是能很好的識(shí)別不同電機(jī)轉(zhuǎn)速下的故障類型,診斷性能穩(wěn)定且具有一定的適應(yīng)性和泛化能力。
圖7 不同電機(jī)轉(zhuǎn)速下的診斷性能
表6 不同電機(jī)轉(zhuǎn)速下的診斷準(zhǔn)確率/(%)
為驗(yàn)證該Stacking-SVM 集成模型在噪聲條件下的診斷性能,在電機(jī)轉(zhuǎn)速為1 772 r/min的工況下,給每類故障的原始信號(hào)中分別加入信噪比(signalto-noise ratio,SNR)為-8 dB~8 dB 的高斯白噪聲構(gòu)成帶有噪聲的數(shù)據(jù)集。實(shí)驗(yàn)結(jié)果如表7所示。
表7 不同信噪比下的模型診斷結(jié)果
SNR的定義如下:
式中:Ps——原始信號(hào)能量大??;
Pn——噪聲信號(hào)能量大小。
由表7 可知,該Stacking-SVM 集成模型具有一定的抗噪性,隨著SNR 值的減少,也就是說(shuō)隨著噪聲干擾的增強(qiáng),故障診斷準(zhǔn)確率也在不斷下降,但下降幅度相對(duì)平緩。在SNR=-6 dB 時(shí)也能達(dá)到70%的準(zhǔn)確率,但是當(dāng)SNR達(dá)到-8 dB時(shí),診斷準(zhǔn)確率僅有61%。因此當(dāng)工作環(huán)境中背景噪聲過(guò)于強(qiáng)大時(shí),則不能完全依靠診斷模型自身的抗噪性能,對(duì)于所采集的原始振動(dòng)信號(hào)也應(yīng)適當(dāng)?shù)剡M(jìn)行一些降噪處理,避免故障信號(hào)的特征丟失,從而影響故障的診斷結(jié)果。
本文對(duì)旋轉(zhuǎn)機(jī)械領(lǐng)域的滾動(dòng)軸承故障診斷進(jìn)行了研究,提出了一種基于WELCH 算法的多模型融合的滾動(dòng)軸承故障診斷方法,得出以下結(jié)論:
(1)經(jīng)過(guò)WELCH 功率譜算法預(yù)處理后的軸承數(shù)據(jù)故障診斷準(zhǔn)確率更高,對(duì)于四種單一分類器模型,預(yù)處理前后的診斷誤差最高能達(dá)到16%;
(2)在Stacking-SVM 集成模型的第一層中,應(yīng)盡可能選擇更多分類精度高的分類器進(jìn)行結(jié)合,增加該模型第二層輸入數(shù)據(jù)集的特征數(shù),來(lái)提升該模型的診斷性能;
(3)相比較各個(gè)單一分類器模型,本文提出的Stacking-SVM 集成模型對(duì)于軸承診斷精度更高,診斷準(zhǔn)確率為98%;并且在不同工況下的診斷性能相對(duì)平穩(wěn),有一定的適用性和泛化能力,并具有一定的抗噪性。