,,,
(1.沈陽工業(yè)大學機械工程學院,遼寧 沈陽 110870;2.遼寧裝備制造職業(yè)技術學院自控學院,遼寧 沈陽 110161;3.中認(沈陽)北方實驗室有限公司,遼寧 沈陽 110164)
滾動軸承是旋轉機械最易發(fā)生故障的部件之一[1]。當滾動軸承出現(xiàn)故障時,不僅要識別故障的類型,還要量化損傷的程度,以便對故障軸承進行及時地修復和更換。
采集振動信號對滾動軸承運行狀態(tài)進行分析是目前常用的故障診斷方法。由于振動信號具有非線性、非平穩(wěn)性的特點[2],傳統(tǒng)的診斷方法往往需要憑借專業(yè)技術人員進行時域、頻域或時- 頻域分析,再給出診斷結果,這給專業(yè)知識相對薄弱的現(xiàn)場工作人員帶來了難題。因此,近年來國內外學者致力于開發(fā)更簡單、更方便的機器學習故障診斷方法。
支持向量機(SVM)是一種基于統(tǒng)計學理論的機器學習方法,它基于結構風險最小化原理,同時考慮了訓練誤差和分類器模型的容量,具有較好的預測精度,特別適合于小樣本、非線性、高維度的情況[3]。
然而支持向量機(SVM)中懲罰參數(shù)和核函數(shù)的選取不同,會很大程度上影響分類精度,所以,一些學者應用智能搜索算法尋找支持向量機的最優(yōu)參數(shù)。Samanta提出了粒子群算法結合人工神經(jīng)網(wǎng)絡的支持向量機在軸承故障診斷中的應用[4],但該方法只優(yōu)化了隱藏層節(jié)點;Yuan采用改進的離散粒子群算法進行特征選擇[5],但沒有使選擇的特征達到最優(yōu);Li利用改進的粒子群算法來優(yōu)化SVM的參數(shù)[6],但由于樣本參數(shù)固定,存在收斂速度過慢的問題。
在粒子群算法中,適應度函數(shù)常用來評估每個粒子的性能,好壞的評價標準需要一個量化指標,為使特征子集的分類達到最大化,在此,提出了基于Fisher準則的粒子群支持向量機(FIPSO- SVM)故障診斷方法,盡可能減小類間重疊,加大分類間隔,提高分類精度,使其不僅用于確定故障的位置,還能量化故障的程度。
SVM是一種基于統(tǒng)計學的機器學習方法,其基本模型定義為兩類樣本之間的最大間隔線性分類器,其學習策略為間隔最大化,而靠近邊界的那些數(shù)據(jù)點則稱之為支持向量[7],一旦選定了支持向量就可以得到分類器的所有必要信息。
SVM通常設計成二分類器,設計的思路是尋找最優(yōu)分類超平面wTx+b=0。從計算幾何上理解超平面,最大化幾何間隔等同于最小化‖w‖。因此,實際應用中分為2種情況,當樣本集線性可分時,尋優(yōu)問題表示為[8]:
(1)
當樣本集線性不可分時,允許存在少量的離群點,但必須加以懲罰。因此,常引入松弛變量ξi>0和懲罰系數(shù)C,尋優(yōu)問題成為凸二次規(guī)劃問題,可表示為:
(2)
解決線性不可分問題的方法是向高維空間映射,設想有一種函數(shù),它能接受低維空間的輸入值,卻能算出高維空間的內積值,這就是核函數(shù)。常用的核函數(shù)有線性核函數(shù)(Linear)、徑向基核函數(shù)(Rbf)、神經(jīng)元激活核函數(shù)(Sigmore)等。
引入核函數(shù)k(xi,xj)和拉格朗日乘子αi,則把式(2)寫成對偶形式:
(3)
為使SVM的適用范圍更廣,當SVM處理多分類問題時,常將多類問題分解為一系列可直接求解的兩類問題,在基于這一系列的SVM求解結果得出最終判斷結果,有一對多(OAA)和一對一(OAO)等方法。
一對多方法是構造k個兩類分類機,訓練時第i個分類機取訓練集中的第i類為正類,其余類別點為負類。判別時,取實際k個輸出值的最大者對應類別為輸入的類別。
一對一方法在每兩類間訓練一個分類器,因此,將有k(k-1)/2個分類函數(shù)。當對一個未知樣本進行分類時,每個分類器都對其類別進行判斷。決策時,采用投票法,最后得票最多的類別作為該位置樣本的類別。
粒子群尋優(yōu)算法把每個問題解都看成一個粒子,所有粒子都由適應度函數(shù)(fitness function)去確定適應值以判斷目前位置的好壞[9]。每個粒子必須賦予記憶功能,并能記住搜索到的最佳位置,每個粒子還有一個速度以決定搜索的步長和方向,這個位置和速度都可以動態(tài)調整和更新。
粒子i的速度更新公式:
(4)
粒子i的位置更新公式:
(5)
類內離散度矩陣公式為:
(6)
mi為第i類樣本的均值。
總類內離散度矩陣公式為:
sw=s1+s2
(7)
類間離散度矩陣公式為:
sb=(m1-m2)(m1-m2)T
(8)
Fisher準則函數(shù)定義為:
(9)
使式(9)達到最大,則得到投影矢量的解為:
當sw是非奇異矩陣時,將對角矩陣λI(λ>0)加入到sw,因為sw是堆成半正定矩陣,則sw+λI是非奇異的,此時式(9)變?yōu)椋?/p>
(10)
FIPSO- SVM故障診斷流程如圖1所示。
圖1 FIPSO- SVM故障診斷流程
由圖1可知,針對采集的振動信號進行標準化處理,得到[-1,1]內的M×L維數(shù)據(jù)集,其中M表示信號數(shù)量,L表示特征數(shù)量。所謂的數(shù)據(jù)標準化就是消除變量之間的量綱關系,從而使數(shù)據(jù)具有可比性。
然后采用粒子群方法選擇最優(yōu)特征集,每個粒子中都包含位置和速度的信息,每個速度和位置的信息用二進制編碼來表達,如某粒子向量x=[0 1 1 0 1 … 1],向量元素為1時表示保留該特征,而向量元素為0時表示舍棄該特征,這樣就會產(chǎn)生一個新的特征子集。
適應度的計算過程如下:
a.假設x中元素取1的總數(shù)為。
b.產(chǎn)生新子集的大小是M×K,1≤K≤L。
c.由式(7)和式(8)計算散點矩陣sb和sw。
d.用sb/(sw+λI)的特征向量估算投影矩陣w。
e.當sb,sw和w去定后,就可以得到式(10)的Fisher準則。
在接下來的粒子群算法中,每個粒子的適應值要與前一次迭代的適應值進行比較,得到當前粒子的局部最優(yōu)解和種群的全局最優(yōu)解,同時每個粒子的位置和速度信息也將得到更新,直至迭代終止。(迭代次數(shù)事先給定,并保證足夠收斂到最優(yōu)解)最后,根據(jù)FIPSO得到的最優(yōu)解產(chǎn)生的最優(yōu)子集將被分成2部分,一部分作為SVM的訓練集,另一部分作為SVM的測試集。
本文所采集的振動數(shù)據(jù)集來源于美國凱斯西儲大學的軸承測試數(shù)據(jù),數(shù)據(jù)種類分為正常、內圈磨損、外圈磨損、滾動體磨損等4種情況,磨損程度分為0.007英寸,0.014英寸,0.021英寸和0.028英寸,電機轉速為1 797 r/min,信號的采樣頻率12 kHz,軸承型號為6205- 2RS深溝球軸承,其故障特征頻率如表1所示。
表1 滾動軸承各部件故障特征頻率
為了增強故障識別能力必須提高故障信號的提取能力,振動信號提取的角度不同獲得的信息也不同。
在時域分析上,主要通過信號的統(tǒng)計特征和概率分布來判別軸承故障。采用的時域指標有均值、峰值系數(shù)、峭度因子、偏度系數(shù)等[11]。
通過傅里葉變換,可以將時域信號轉換為頻域信號。頻譜圖描述了信號的頻率與該頻率信號幅值的關系,可以求得信號的頻率成分和結構,進而分析系統(tǒng)的傳遞特征[12]。以常用的包絡譜分析為例,該方法先得到結構的共振頻率,然后使用帶通濾波濾除干擾,顯示弱脈沖分量,再使用Hilbert變換求出濾波信號的包絡信號,最后對包絡信號使用FFT變換求出包絡譜,如圖2所示。
圖2 內圈故障時的包絡譜
通過時域和頻域分析得到特征向量的樣本數(shù)每種狀態(tài)各32組,為了對比不同核函數(shù)對SVM分類器的影響,分別選擇了線性核函數(shù)(Linear)、徑向基核函數(shù)(Rbf)、神經(jīng)元激活核函數(shù)(Sigmore)對全部32組特征向量進行了SVM訓練,同時選用一對一(OAO)、一對多(OAA)2種不同算法進行計算。這里,準確率結果采用五折交叉驗證的方法,表2和表3分別為全樣本下的故障識別和故障等級的分類準確度。
表2 全樣本下的故障識別 %
表3 全樣本下的故障程度識別 %
根據(jù)式(4)和式(5),取ω∈[0.1,0.6],v∈[-2,2],c1=c2=2,可得到迭代結果如圖3所示。
由圖3可知,F(xiàn)IPSO算法在大約30次迭代后達到全局最優(yōu)解,而標準粒子群算法的迭代次數(shù)大約在200次以上,這說明FIPSO算法可以顯著調高收斂速度。
圖3 FIPSO的迭代次數(shù)
為進一步說明FIPSO算法的優(yōu)越性,圖4、圖5、圖6和圖7表示不同工況下提取的故障頻譜特征作主成分并繪制三維坐標散點圖,從圖中對比可以看出,采用最優(yōu)特征子集的重疊率明顯減少,說明分類效果比采用全樣本更好。
圖4 故障識別散點圖
表4和表5為最優(yōu)特征子集下的故障識別和故障等的分類準確度。通過與表2和表3對比后,明顯看出FIPSO- SVM具有更高的分類精度,并沒有隨輸入訓練樣本數(shù)的減少而降低準確率。從算法上看,一對一(OAO)要優(yōu)于一對多(OAA)。在3種核函數(shù)的分類對比中,徑向基核函數(shù)的分類準確率穩(wěn)定且明顯高于其他2種,這說明徑向基核函數(shù)具有良好的普適性。
圖5 內圈故障等級識別散點圖
圖6 外圈故障等級識別散點圖
圖7 內圈故障等級識別散點圖
表5 最優(yōu)特征子集下的故障程度識別
提出了Fisher準則下粒子群支持向量機(FIPSO- SVM)的故障診斷方法,即用Fisher準則得到的最優(yōu)特征子集作為SVM分類器的輸入,將滾動軸承4種狀態(tài)下的振動數(shù)據(jù)進行時域和頻率分析,提取32組特征向量,使用不同核函數(shù)和分類算法分別對全樣本特征向量和最優(yōu)特征向量子集進行故障識別和故障等級分類,以驗證不同因素對SVM分類器的性能影響,并與基本粒子群的迭代次數(shù)進行比較。結果表明,F(xiàn)IPSO- SVM故障診斷方法可明顯減小迭代次數(shù)。采用最優(yōu)特征向量子集的方法進行SVM分類,并沒有因為輸入樣本的減少而影響精度,而從整體比較來看,采用一對一分類算法要比一對多分類算法的準確率略高,徑向基核函數(shù)在分類準確率上明顯優(yōu)于其他類型核函數(shù)。實驗結果說明FIPSO- SVM具有收斂速度快、分類精度高的優(yōu)點,值得在實際應用中進一步推廣。