羅家文,錢曉明,屠嘉晨,樓佩煌
(南京航空航天大學(xué)機電學(xué)院,江蘇 南京 210016)
設(shè)備故障診斷自工業(yè)生產(chǎn)出現(xiàn)以來就已存在,在經(jīng)歷了原始手工診斷和近代儀表診斷后,20世紀60年代現(xiàn)代故障診斷技術(shù)進入了基于傳感器和計算機技術(shù)的診斷階段,診斷設(shè)備逐步實現(xiàn)自動化,涌現(xiàn)出多種基于信息檢測和數(shù)據(jù)處理的診斷方法。20世紀80年代,設(shè)備診斷技術(shù)進入智能化階段,專家系統(tǒng)、人工神經(jīng)網(wǎng)絡(luò)、關(guān)聯(lián)規(guī)則分析等多種人工智能和數(shù)據(jù)挖掘技術(shù)成果應(yīng)用于設(shè)備診斷領(lǐng)域,形成了多種故障診斷、故障預(yù)測和健康管理系統(tǒng),實現(xiàn)了具有自適應(yīng)、自學(xué)習(xí)、自診斷能力的智能化診斷。
在故障診斷方法的研究和應(yīng)用中,夏穎怡[1]提出了一種將雙樹復(fù)小波變換(DT-CWT)和經(jīng)驗?zāi)B(tài)分解相結(jié)合的軸承故障診斷方法,有效提取強背景噪聲下的故障特征信號,并識別出軸承中的不同故障類型。唐立力等[2]提出了一種基于遺傳算法的BP神經(jīng)網(wǎng)絡(luò)滾動軸承故障診斷方法, 利用遺傳算法進行 BP 神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值優(yōu)化,并用優(yōu)化后的 BP 神經(jīng)網(wǎng)絡(luò)進行故障診斷。袁海文等[3]將RBF神經(jīng)網(wǎng)絡(luò)應(yīng)用于故障診斷,提高了網(wǎng)絡(luò)訓(xùn)練速度,克服了網(wǎng)絡(luò)訓(xùn)練易陷入局部極小的缺點。程進軍等[4]對神經(jīng)網(wǎng)絡(luò)算法進行了改進,在神經(jīng)網(wǎng)絡(luò)的權(quán)重學(xué)習(xí)中運用了改進遺傳算法,從而提高了BP神經(jīng)網(wǎng)絡(luò)的計算精度。畢鳳榮等[5]通過對小波包變換(WPT)、遺傳算法(GA)、BP神經(jīng)網(wǎng)絡(luò)(BPNN)和支持向量機(SVM)的綜合利用,提出了一種柴油機氣門間隙故障診斷方法,其提出的特征分類算法準確度達到了100%。不同于以上方法,本文提出了一種基于多種基分類器的多分類改進Adaboost提升算法,該算法以BP神經(jīng)網(wǎng)絡(luò)、支持向量機和k-最近鄰分類[6]3種算法作為基分類器,通過Adaboost提升算法來進行基分類器的組合,從而構(gòu)建二分類的Adaboost組合分類器,再通過組合多個Adaboost組合分類器來實現(xiàn)多故障類型的故障診斷。
汽車總裝輸送線上有眾多設(shè)備,包括旋轉(zhuǎn)臺、叉式移載機、皮帶提升機、側(cè)頂機、軌道系統(tǒng)等。但是大多數(shù)設(shè)備都具有相同的關(guān)鍵零部件,如減速箱、電機、軸承等,而這些零部件能否正常工作往往決定了整個設(shè)備的性能。因此,對于汽車總裝輸送裝備的故障診斷主要是基于對這些關(guān)鍵零部件的故障診斷。為了實現(xiàn)對主要零部件的故障診斷,建立了如圖1所示的故障診斷框架。
圖1 汽車總裝輸送裝備零件故障診斷框架圖
首先采集能夠反映零件狀態(tài)特征的傳感器數(shù)據(jù)信號,然后通過對傳感器數(shù)據(jù)信號的處理提取零件的信號特征,從而構(gòu)成零件狀態(tài)的特征參數(shù)。以特征參數(shù)作為輸入,通過故障診斷算法對故障診斷模型進行訓(xùn)練。由于算法復(fù)雜,且需要花費一定時間,故將模型的訓(xùn)練做成離線式,這樣有助于減輕在線系統(tǒng)的壓力。
信號特征提取方法的核心部分是將信號分解成稀疏的信號,其目的是剔除無用信息,構(gòu)建一種將有用信號包含在內(nèi)的正交基。將經(jīng)驗小波變換(empirical wavelet transform,EWT)和奇異值分解(singular value decomposition,SVD)兩種方法相結(jié)合來提取信號的特征,為下一步故障分類作準備。
EWT[7]是由Gilles在2013年將小波變換的科學(xué)性與經(jīng)驗?zāi)J椒纸?EMD)[8]的自適應(yīng)優(yōu)勢結(jié)合起來而提出的一種用于信號自適應(yīng)的分析方法,該方法通過分割傅里葉頻譜構(gòu)造適當(dāng)?shù)恼恍〔V波器組,通過Hilbert變換獲取所有分信號的頻譜特征。矩陣的奇異值分解是信號處理領(lǐng)域重要的工具之一,它把離散信號根據(jù)特定的排列方式構(gòu)造成矩陣,然后再進行加工處理,從而通過與眾不同的處理方法完成對復(fù)雜信號的有效分析。
首先對采集來的原始信號進行經(jīng)驗小波變換,將原信號分解為多個不同頻率的模態(tài)分量。對于非平穩(wěn)信號,通常得到的模態(tài)分量數(shù)量較多。為了方便后續(xù)處理,根據(jù)模態(tài)分量和原始信號的相關(guān)性,選取相關(guān)性最高的幾個模態(tài)分量進行下一步的奇異值分解。由文獻[9]可知,模態(tài)分量和原始信號之間的相關(guān)性與各模態(tài)分量相互之間的相關(guān)性有關(guān),因此可以建立各模態(tài)分量與原始信號的相關(guān)系數(shù),其衡量了各模態(tài)分量與原始信號的相關(guān)程度,相關(guān)系數(shù)公式如下:
(1)
式中:fk(t)為各模態(tài)分量;f(t)為原始信號;μfk,μf分別為時域各模態(tài)分量和原始信號的均值;σfk,σf分別為時域各模態(tài)分量和原始信號的標準差;E為期望;ρf,fk反映了EWT的模態(tài)分量與原始信號在時域中的相關(guān)性,其數(shù)值越大,表明分量與原始信號越相關(guān),即自相關(guān)性越大。因此選相關(guān)性最大的多個模態(tài)作為經(jīng)驗小波變換的最優(yōu)模態(tài),然后對最優(yōu)模態(tài)進行奇異值分解。
經(jīng)過奇異值分解后,若干個最優(yōu)模態(tài)都分解為了許多個特征值,為了把這些特征值作為特征屬性代入分類器進行分類,還需要對特征屬性降維,去掉相關(guān)性低的特征屬性。通過采用主成分分析(PCA)對特征屬性進行降維,然后對每個模態(tài)選取合適數(shù)量的特征屬性,最終組成特征向量,作為故障分類器的輸入。
BP神經(jīng)網(wǎng)絡(luò)、k-最近鄰分類和支持向量機等均可以用于故障診斷,但是不同的分類算法對于不同的研究案例所得出的分類結(jié)果會有所差別。有的算法對于某一數(shù)據(jù)集A的分類結(jié)果較好,卻對另一類數(shù)據(jù)集B的分類結(jié)果不好。為了提高分類準確率,引入了數(shù)據(jù)挖掘中的組合分類算法,以此來改善單一分類算法的不足,達到提升分類精度的目的。
Adaboost(adaptive boosting)算法是一種提升算法。對于數(shù)據(jù)集D,它包含d個類標記的數(shù)據(jù)組(X1,Y1),(X2,Y2),…,(Xd,Yd),其中Xi是數(shù)據(jù)組,Yi是類標號。Adaboost算法歸納如下。
輸入:訓(xùn)練數(shù)據(jù)集D,分類器個數(shù)k。
輸出:一個復(fù)合模型。
步驟:
1)將D中每個數(shù)據(jù)組的權(quán)重初始化為1/d;
2)fori=1 tokdo;
3)根據(jù)每個數(shù)據(jù)組的權(quán)重進行有放回抽樣,抽樣得到的數(shù)據(jù)形成訓(xùn)練集Di;
4)根據(jù)訓(xùn)練集Di得到基分類器Ti;
5)計算Ti的錯誤率error(Ti);
6)iferror(Ti)>0.5 then轉(zhuǎn)步驟3;
7) end if;
8) forDi的每個被正確分類的數(shù)據(jù)組do;
9)數(shù)據(jù)組的權(quán)重乘error(Ti)/(1-error(Ti));
10)規(guī)范化每個數(shù)據(jù)組的權(quán)重;
11)end for。
組合分類器訓(xùn)練完成后,使用該組合分類器對數(shù)據(jù)x分類:
1)將每個類的權(quán)重初始化為0;
2)fori=1 tokdo;
3)計算基分類器Ti的表決權(quán)重wi;
4)c=Ti(x);
5)將wi加到類c的權(quán)重上;
6)end for;
7)返回具有最大權(quán)重的類。
模型Ti的錯誤率error(Ti)可以根據(jù)式(2)得到,即訓(xùn)練集Di中每個數(shù)據(jù)組xj誤分類誤差的加權(quán)和。
(2)
式中:err(xj)為數(shù)據(jù)組xj的誤分類誤差,如果xj被誤分類,則err(xj)等于1,否則等于0。如果基分類器的性能太差,錯誤率超過0.5,則丟棄,并且重新產(chǎn)生新的訓(xùn)練集Di和基分類器Ti。
根據(jù)Ti的錯誤率來對訓(xùn)練數(shù)據(jù)的權(quán)重更新,對于被正確分類的數(shù)據(jù)組,其權(quán)重乘上error(Ti)/(1-error(Ti))。最后,當(dāng)權(quán)重都更新完成后,還需要對所有數(shù)據(jù)組的權(quán)重進行規(guī)范化,使得所有數(shù)據(jù)組的和與之前相等。提升算法根據(jù)分類器的分類情況,賦予每個分類器投票權(quán)重,錯誤率越低的基分類器,準確性就越高,因此權(quán)重也越高?;诸惼鱐i的表決權(quán)重為
(3)
對于每個類別號,對將同一類別號分配給組合分類器的所有基分類器的權(quán)重求和,將具有最大權(quán)重和的類作為返回的預(yù)測值。
由于傳統(tǒng)的Adaboost提升算法是針對二分類問題提出的,故而對于多分類問題,可將其轉(zhuǎn)化為多個二分類問題來解決。假設(shè)一共有n類,首先挑選出1和2類的訓(xùn)練樣本,訓(xùn)練1和2類的分類器,再將1和3類的樣本挑選出來訓(xùn)練分類器,依次類推,一直到(n-1)和n類的樣本。這樣n類樣本一共建立了n(n-1)/2個分類器,之后采取投票機制。對于所有樣本,分別代入每個分類器,判斷所屬類別,然后進行投票。各個二分類器需要賦予不同的權(quán)重,該權(quán)重可以在一定程度上提升分類精度,由于某些故障類別之間往往相似度較高難以區(qū)分,因此對于分類精度差的二分類器,給予較低的投票權(quán)重。每個分類器的投票值w可以表示為:
(4)
為了驗證算法的有效性,使用汽車總裝輸送裝備中典型的滾動軸承的加速度數(shù)據(jù)作為實驗數(shù)據(jù)。滾動軸承的故障類型分為內(nèi)圈故障、滾動體故障和外圈故障。振動實驗故障數(shù)據(jù)類型見表1。
表1 振動實驗故障數(shù)據(jù)類型 單位:cm
按故障位置與故障直徑分為9種故障類型,加上正常狀態(tài)一共10種類型。軸承數(shù)據(jù)來自于如圖2所示的電動升降臺,其中電機的功率為1.5 kW,軸承為深溝球軸承,轉(zhuǎn)速為1 797 r/min,采樣頻率為12 kHz。正常狀態(tài)選取120個樣本,其余故障狀態(tài)各取25個樣本,每個樣本有2 048個采樣點。取60個正常狀態(tài)數(shù)據(jù)和每種故障各15個數(shù)據(jù)作為訓(xùn)練樣本,剩余的樣本作為檢驗集。
圖2 實驗裝置
通過信號特征提取方法可得到3個模態(tài),每個模態(tài)可以得到1 024個特征值,經(jīng)過降維運算得到3個模態(tài)的前6個屬性的累計貢獻率,見表2。
表2 PCA降維特征值的累計貢獻率 %
從表中可以看出,當(dāng)特征值取前5個時,累計貢獻率已經(jīng)超過了99%,即前5個主成分分析(principal components analysis,PCA)降維后的特征屬性可以代表原來的1 024個特征值。因此,對每個模態(tài)提取經(jīng)過PCA變換后的前5個特征屬性,一共15個特征屬性組成特征向量,作為故障分類器的輸入。再將軸承的故障類別按照故障直徑和故障類型分成9類,結(jié)合正常狀態(tài)總共10個類別,得到150個數(shù)據(jù)集。通過基于多種基分類器的多分類改進Adaboost提升算法,對10種故障類別下的150個數(shù)據(jù)集的測試數(shù)據(jù)進行分類診斷,結(jié)果如圖3所示。
圖3 故障診斷分類結(jié)果
圖中類別1表示正常狀態(tài);類別2~4表示內(nèi)圈故障,直徑分別為0.007,0.014,0.021 cm,類別5~7表示滾動體故障;類別8~10表示外圈故障。測試數(shù)據(jù)集一共150個,其中正確分類了140個數(shù)據(jù)點,分類正確率為93.3%,對于正常狀態(tài)的分類正確率為100%。
將故障分為3類,即內(nèi)圈故障、滾動體故障和外圈故障,包括正常狀態(tài)一共4類,分別用BP神經(jīng)網(wǎng)絡(luò)、SVM、k-最近鄰分類3種分類算法進行故障診斷分類。其中BP神經(jīng)網(wǎng)絡(luò)包含一個隱含層,包含3個神經(jīng)元,支持向量機的核函數(shù)為高斯徑向基核函數(shù);k-最近鄰分類的k值為2。得到如圖4所示的分類結(jié)果,多分類Adaboost正確分類個數(shù)達到了147,高于其他單一分類器,表明利用組合分類器進行特征分類的準確率比單一分類器分類準確率高。
圖4 4種分類器的分類結(jié)果
本文提出了一種汽車總裝輸送裝備故障診斷框架,并在此基礎(chǔ)上提出了EWT-SVD的信號特征提取方法與一種基于多種基分類器的多分類改進Adaboost提升算法。利用這兩種方法,通過對滾動軸承的故障數(shù)據(jù)進行處理與分析,可知這兩種算法對于故障診斷的分類精度明顯高于單一分類器,可以顯著提高故障診斷的正確率。