柯 耀,王 琪
離心泵葉輪的振動信號包含大量的故障信息。機(jī)械設(shè)備的診斷過程可以分為3步:第1步是診斷信息獲??;第2步是故障特征提取;第3步是狀態(tài)識別和故障診斷。其中,第3步故障分類識別要設(shè)計(jì)分類器來進(jìn)行狀態(tài)識別,所以故障診斷就是一個模式識別的過程[1]。但是對于機(jī)械設(shè)備而言,故障一旦發(fā)生,就會造成巨大的損失,所以就不會存有很多的故障樣本。如何在有限的故障樣本的情況下進(jìn)行有效的模式識別是故障診斷中的關(guān)鍵問題。
目前故障診斷中的狀態(tài)識別方法主要是人工神經(jīng)網(wǎng)絡(luò)和統(tǒng)計(jì)模式識別方法。由于離心泵故障樣本通常為小樣本,人工神經(jīng)網(wǎng)絡(luò)(ANN)具有自學(xué)習(xí)功能和具有高度的并行結(jié)構(gòu)和并行實(shí)現(xiàn)能力,它的出現(xiàn)推動了狀態(tài)模式識別的發(fā)展。但神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)設(shè)計(jì)嚴(yán)重依賴設(shè)計(jì)者的經(jīng)驗(yàn)和先驗(yàn)知識,且缺乏理論依據(jù)的支撐。同時神經(jīng)網(wǎng)絡(luò)和統(tǒng)計(jì)模式識別方法面臨的同一難題是故障樣本數(shù)要足夠多。支持向量機(jī)(Support vector machine,SVM)的出現(xiàn)有效解決了傳統(tǒng)分類方法的缺陷,非常適合小樣本的模式識別問題。Samanta 等[2]使用PSO 優(yōu)化SVM 參數(shù)并改善軸承故障檢測和識別;徐海龍等[3]提出一種基于PSO 的RBF-SVM 模型優(yōu)化新方法;趙鵬等[4]提出了一種基于經(jīng)驗(yàn)?zāi)J椒纸獾膹?fù)雜度特征和最小二乘支持向量機(jī)的離心泵故障診斷方法。本文則在前人研究的基礎(chǔ)上,利用小波包變換來提取離心泵故障的特征值,提出了一種基于人工魚群算法(Artificial Fish-swarmalgorithm,AFSA)優(yōu)化SVM 參數(shù)的模型優(yōu)化方法,以提高SVM 模型的識別準(zhǔn)確率。
在這項(xiàng)研究中,支持向量機(jī)用于故障診斷分類。H是分類線。H1和H2分別為過各類中離分類線最近的樣本且平行于分類線的直線,它們之間的距離叫作分類間隔。最優(yōu)分類線就是要求分類線不但能將兩類正確分開,而且使分類間隔最大。
對于超平面H1∶ω·x+b=1;對于超平面H2∶ω·x+b=-1;假設(shè)超平面H∶ω·x+b=0 存在最大分類間隔因此,解最大邊界問題可以替換為解的最小值問題。如果滿足條件,其表達(dá)式為[5]:
如果使用拉格朗日方法(ω=a1y1x1+a2y2x2+…+anynxn)來優(yōu)化類別超平面,則可以把上述最優(yōu)分類面問題轉(zhuǎn)化為對偶問題,其表達(dá)式為:
在求解線性近似可分離性問題時,可引入非負(fù)松弛項(xiàng)和用于控制對錯分樣本懲罰的程度的懲罰參數(shù)C。將式(2)轉(zhuǎn)換為式(3):
對于非線性問題,泛函理論指出,只要一種核函數(shù)K(x,y) 滿足Mercer 條件,它就對應(yīng)某一變換空間中的內(nèi)積,就可以用作核函數(shù)。常見的核函數(shù)包括徑向基核函數(shù)(RBF)和Sigmoid核函數(shù)等。其中使用最廣泛的是RBF。因此運(yùn)用RBF作為核函數(shù)故有:
基函數(shù)(RBF)做SVM的核函數(shù)時參數(shù)γ將影響SVM分類器的分類效率,因此手動選擇錯誤懲罰參數(shù)C通常不容易。因此,使用PSO和AFSA來幫助找到最佳參數(shù)C和γ,并使用優(yōu)化方法來提高SVM的識別率。與PSO相比,AFSA是一種用于軟計(jì)算的更新優(yōu)化方法。
支持向量是訓(xùn)練集的關(guān)鍵元素,包含確定分離超平面和SVM分類器的參數(shù)C和γ所需的所有必要信息。因此,使用粒子群優(yōu)化(PSO)和人工魚群算法(AFSA) 來尋找最佳參數(shù)(C,γ)。Kennedy和Eberhart[6]通過模擬顆粒,魚群和鳥群的集體行為,提出了解決復(fù)雜非線性優(yōu)化問題的粒子群優(yōu)化算法。AFSA受到魚群及其各種種群的社會行為的啟發(fā)[7]。AFSA是幾種智能群算法之一,它遵循魚類的一系列的本能行為。AF通過其視覺實(shí)現(xiàn)外部感知,如圖1所示。
圖1 人工魚群視覺示意圖[7]
X是AF 的當(dāng)前位置,XV是某一時刻的視覺位置。如果視覺位置處的狀態(tài)好于當(dāng)前狀態(tài),則AF會朝該方向前進(jìn)。如果AF 移動到更好的位置,則Xnext是移動之后的下一個狀態(tài);否則,AF 會繼續(xù)在視野范圍進(jìn)行巡視。隨著巡視次數(shù)的增加,AF會獲得更多關(guān)于視覺整體狀態(tài)的知識[6]。
設(shè)X=(x1,x2,…,xn) 和XV=(xV1,xV2,…,xVn) ,那么AFSA的過程可以表示如下:
式中:Rand() 為0~1 的隨機(jī)數(shù);λ為步長;xi為優(yōu)化變量;n為變量數(shù);X為AF的當(dāng)前位置;Xj為AF在視野中隨機(jī)選擇的一個位置;Visual為可視距離;W為擁擠度因子;人工魚個體之間的距離表示為人工魚當(dāng)前所在位置的食物濃度表示為Y=f(x) 。
AFSA主要行為描述如下[8]。
(1)覓食行為
若AF 的當(dāng)前位置為Xi,如果在求極大問題中,Yi<Yj(若求解極小問題時Yi>Yj,因極大和極小問題同理可證,故以下均以求極大問題討論) ,則向該方向前進(jìn)一步;反之,再重新隨機(jī)選擇狀態(tài)Xj,判斷是否滿足前進(jìn)條件;反復(fù)幾次后,如果仍不滿足前進(jìn)條件,則隨機(jī)移動一步。
(2)聚群行為
設(shè)人工魚當(dāng)前狀態(tài)為Xi,探索當(dāng)前鄰域內(nèi)(即di,j<Visable) 的伙伴數(shù)目nf及中心位置XC,如果Yc/nf >W(wǎng)Yi,表明伙伴中心有較多的食物并且不太擁擠,則朝伙伴的中心位置方向前進(jìn)一步;否則執(zhí)行覓食行為。
(3)追尾行為
設(shè)人工魚當(dāng)前狀態(tài)為Xi,探索當(dāng)前鄰域內(nèi)(即di,j<Visable) 的 伙 伴 中Yj為 最 大 的 伙 伴Xj, 如 果Yj/nf >W(wǎng)Yi,則伙伴Xi的狀態(tài)具有較高的食物濃度并且其周圍不太擁擠,故朝伙伴Xj的方向前進(jìn)一步;否則執(zhí)行覓食行為。
本次實(shí)驗(yàn)選用型號為Weir/Warman3/2CAH 的離心泵,數(shù)據(jù)采集系統(tǒng)采用SCXI 信號調(diào)理系統(tǒng)。配套封閉式葉輪的型號為C2147,葉輪直徑為8.5 英寸且有5 個葉片。在實(shí)際實(shí)驗(yàn)中系統(tǒng)的采樣率為9 kHz,采樣時間為20 s,使用的轉(zhuǎn)速為1 797 r/min。為簡單起見,實(shí)驗(yàn)設(shè)置了正常狀態(tài)的葉輪記為F1與3 種故障的葉輪,這3 種故障葉輪的形式分別為穿孔損傷、邊緣損傷、葉片損傷,并將這3 種故障模式分別記為F2、F3、F4。
離心泵葉輪出現(xiàn)一定磨損時,其振動頻率會發(fā)生改變[9]。由理論計(jì)算可得葉輪穿孔損傷故障頻率為69 Hz。葉輪邊緣損傷故障頻率為131 Hz,葉輪葉片損傷故障頻率為162 Hz。
在離心泵故障診斷中,葉輪振動信號受工作負(fù)載的影響,并且會產(chǎn)生一些快速衰減的沖擊脈沖。無法使用頻譜分析直接從特征頻率中識別故障。然而,小波包能量譜信號可用于分析振動信號并將低頻振動信號與高頻帶分離,這為信號分析增加了更大的分辨率。由Coifman 和Wickerhauser[10]開發(fā)的小波包分析方法可將頻帶進(jìn)行多層次劃分,對高頻部分進(jìn)一步分解,并能根據(jù)分析信號的特征自適應(yīng)地選擇相應(yīng)的頻帶,從而提供頻率分辨率。
為了找到信號中的故障源,首先將其解調(diào)以獲得解調(diào)包絡(luò)曲線,然后對該曲線進(jìn)行處理以獲得包絡(luò)譜。這些包絡(luò)譜通常包含有關(guān)葉輪故障的特征信息,通常會指示故障的類型。在本研究中,使用希爾伯特解調(diào)進(jìn)行處理。變換定義為式(7):原始信號x(t)經(jīng)過希爾伯特變換,得到x(t)的虛數(shù)x?(t) 并獲得原始信號的包絡(luò),如式(8)所示。
實(shí)驗(yàn)中在9 kHz 下采樣。每個樣本的長度為2 000點(diǎn)。從4種不同條件下的離心泵中取樣。離心泵的原始振動信號如圖2所示。使用小波包分解對信號分別進(jìn)行處理。小波分解分為3 層,本研究選擇了db11 小波。分解后,正常和帶有故障的信號各產(chǎn)生8 個子頻帶,并為每個子頻帶計(jì)算能量值。歸一化用于處理所得的能量值,結(jié)果如圖3所示。
圖2 4個類別的葉輪原始振動信號
圖3 能量譜直方圖
因?yàn)檫@3種故障葉輪的能量都集中在第4(S4)頻段。故對重構(gòu)的S4頻段信號小波包系數(shù)進(jìn)行包絡(luò)分析,正常葉輪和故障葉輪的頻帶之間能量集中存在明顯差異,并且對故障葉輪分析表明,使用能量特征值對故障進(jìn)行分類是可行的。圖4所示為穿孔損傷葉輪、邊緣損傷葉輪和葉片損傷葉輪故障信號的節(jié)點(diǎn)包絡(luò)。
用RBF核函數(shù)的SVM進(jìn)行分類器分類精度實(shí)驗(yàn)。這里主要在準(zhǔn)確率(Classification Accuracy,AC)和診斷時間(Diagnosis Time,DT) 2方面進(jìn)行對比。表中SVs代表支持向量(Support Vectors),C表示懲罰因子,γ表示SVM 的核函數(shù),TS1表示訓(xùn)練樣本(Training Samples),TS2表示測試樣本(Test Samples)。
懲罰函數(shù)C和徑向核函數(shù)γ對識別率的影響分別如表1和表2所示。從穿孔損傷、邊緣損傷和葉片損傷葉輪中分別選取30 組故障能量特征作為訓(xùn)練樣本(共使用90 組)。RBF 徑向核函數(shù)γ=0.01。由表1 可知,懲罰函數(shù)C的最佳值為500。對總訓(xùn)練時間的分析表明,對于不同的C值,DT相差不大。當(dāng)C值增加時,SVs也增加,并且當(dāng)C=500時,AC最大。顯然,懲罰函數(shù)C值的選擇對SVM性能有很大影響。
表1 懲罰因子C對SVM分類精度的影響
當(dāng)C=500,改變γ值來進(jìn)行分析,結(jié)果如表2所示。當(dāng)γ值為0.01時,實(shí)驗(yàn)參數(shù)是最佳的;隨著γ變大,DT減少;隨著γ值的增加,SVs也增大。
表2 RBF內(nèi)核函數(shù)γ對SVM分類精度的影響
懲罰函數(shù)C值和RBF 徑向核函數(shù)γ值均對SVM 分類器性能產(chǎn)生重大影響。因此,使用算法來搜索最佳C值和γ值來提高SVM分類器的性能。
實(shí)驗(yàn)表明C和γ的參數(shù)設(shè)置對識別率有一定影響。因此,對比PSO-SVM和AFSA-SVM分類的結(jié)果。實(shí)驗(yàn)使用了50組數(shù)據(jù),分別為正常葉輪和穿孔損傷、邊緣損傷、葉片損傷3種故障葉輪,共200 組被使用了。其中,有100 個用于訓(xùn)練,有100個是測試樣本集。運(yùn)行了300次PSO參數(shù)迭代,學(xué)習(xí)因子為c1=2,c2=2。,PSn 表示種群粒子數(shù)(Particle Swarm Number),AFSn 表示人工魚群數(shù)(Artificial Fish Swarm Number),并且移動步長為0.5。表3所示為PSO實(shí)驗(yàn)結(jié)果,而AFSA實(shí)驗(yàn)結(jié)果如表4所示。從表3中可以看出,隨著種群規(guī)模擴(kuò)大,診斷時間也隨之增加。支持向量數(shù)也隨粒子數(shù)而變化。當(dāng)粒子群數(shù)為20 時,精度最高,所需時間也更短。表4 中的結(jié)果表明,當(dāng)人工魚數(shù)量在10~20 時,精度最高。實(shí)驗(yàn)數(shù)據(jù)表明,AFSA比PSO更好,并且可以在更短的計(jì)算時間內(nèi)以更小的支持向量數(shù)獲得更準(zhǔn)確的結(jié)果。
表3 PSO-SVM粒子群數(shù)的分類準(zhǔn)確性
表4 AFSA-SVM人工魚群數(shù)量的分類準(zhǔn)確性
本文提出的基于人工魚群算法的支持向量機(jī)故障診斷模型利用支持向量機(jī)在解決小樣本分類問題的獨(dú)特優(yōu)勢,結(jié)合人工魚群算法尋優(yōu)的特點(diǎn)來優(yōu)化SVM 的核函數(shù)和懲罰因子,有效地提高了SVM 的分類準(zhǔn)確率,縮短了診斷時間。將AFSA-SVM 方法應(yīng)用于離心泵故障診斷中,可以有效地對離心泵葉輪的4種狀態(tài)進(jìn)行分類,且參數(shù)設(shè)定更加準(zhǔn)確,分類準(zhǔn)確率提高的同時,算法復(fù)雜度并沒有明顯增加。