陳志剛, 蔡春雨, 王瑩瑩, 王衍學
(1.北京建筑大學機電與車輛工程學院, 北京 100044; 2.北京市建筑安全監測工程技術研究中心, 北京 100044)
滾動軸承作為機械傳動系統中的重要組成部分,同時需長時間連續工作而且工況復雜,其運行的相關狀態將對機械設備的健康狀態和壽命造成直接影響。因此根據滾動軸承的振動信號數據及時的提取特征信息并判斷出相關故障類型,對減少機械設備出現重大故障,提高設備使用和運行的效率具有十分重要的意義[1]。
在軸承故障診斷中,振動信號采集、處理難度低和包含內容豐富等特點,分析振動信號為軸承故障診斷的常見手段。但如果軸承故障處于早期,故障信號較弱,故障的特征較難提取,進而影響故障診斷結果和故障識別的正確率。由于軸承在機械設備系統整體運行受環境影響,且振動信號非平穩性、非線性的特點,僅僅從頻域和頻域角度難以準確識別出軸承故障類型。常見的振動信號分解方法有局部均值分解(local mean decomposition,LMD)、小波變換(wavelet transform,WT)、變分模態分解法(visual molecular dynamics,VMD)[2-5]等。劉洋等[6]提出了一種基于局部均值分解、奇異值分解(singular value decomposition,SVD)和極限學習機(extreme learning machine,ELM)的軸承故障診斷方法。實驗結果表明經LMD和SVD處理提取出的特征向量能有效地對變工況下工作的軸承進行故障診斷。但是LMD也存在一些缺陷,例如:存在模態混疊現象和端點效應,對特征提取效果造成不良影響。WT的方法不能自適應的分解信號并且未給出如何確定小波基的層數,從而導致小波基函數的選取對WT的性能表現造成極大的影響。相比WT,Dragomiretskiy等[7]提出的VMD不必選擇小波基函數,可自適應調整,同時有效地避免了LMD的模態混疊問題,極大地提高了特征提取的有效性,在旋轉機械的故障診斷研究等領域被廣泛應用。例如,金江濤等[8]采用集合經驗模態分解[9]結合VMD使用能量熵對原信號進行特征提取,將多模態特征矩陣輸入到優化的支持向量機中進行故障分類,實驗結果表明可以識別軸承不同故障類型。任朝暉等[10]等提出使用VMD和深度置網絡結合后用粒子群算法優化支持向量機(support vector machines,SVM)的方法,先使用VMD將振動信號分解為多個本征模態分量(intrinsic mode function,IMF),然后用深度置信網絡進行無監督的特征提取,最后使用粒子群算法優化的SVM進行故障分類驗證。
機器學習中常見的分類和識別方法包括極限學習機[11]、神經網絡[12]和支持向量機[13]。SVM由于其可調參數少、全局優化性能好等相較其余兩種更適用于軸承故障的診斷分類。楊婧等[14]利用分層思想使用相關度分析后輸入到網格搜索(grid search,GS)算法是優化的SVM中,可以有效識別西儲大學滾動軸承數據的不同故障類型。
核函數參數σ、懲罰因子c影響SVM性能,而Saremi等[15]提出的蚱蜢算法是一種元啟發式仿生優化算法,具有自適應機制,可以較好地平衡局部和全局搜索問題,且有良好的尋優精度,收斂速度和搜索效率上遠優于GS。使用蚱蜢算法自動選擇優化SVM的核函數參數σ、懲罰因子c來提高辨別軸承故障類型的精準度。
貪心策略是在求取結果的時候每一步都選擇一個局部最優解,從而得到整體最優解。本文中采用貪心策略進行數據預處理,可提高處理效率,用VMD結合時頻特征與能量構建多模態特征矩陣,提出一種新的故障分類方法,采用蚱蜢算法(grasshopper optimization algorithm,GOA)優化SVM參數,實現VMD-GOA-SVM算法。實驗上使用本文特征提取方法提取出數千軸承故障樣本數據,輸入到GOA-SVM中進行驗證,證明所提出方法的有效性。
VMD可以較好地避免LMD的模態混疊現象和端點效應,VMD將軸承的原始信號數據分為幾個模態分量[16],其可分解為調幅調頻信號,表達式為
uk(t)=Ak(t)cos[φk(t)]
(1)
式(1)中:uk(t)為各模態的信號;Ak(t)為信號瞬時的幅值;φk(t)為信號瞬時的相位;k為模態分解個數。Hilbert變換后各IMF信號的相應基頻帶和中心頻率ωk使用指數調節得到公式為
(2)
式(2)中:σ(t)為單位脈沖函數;t為時間;j為虛數單位,接著構造約束變分模型為

(3)
式(3)中:?t是偏導運算;*表示卷積運算。使用VMD分解得到k個模態分量{uk}和模態分量的中心頻率{ωk},引入懲罰因子α和拉格朗日乘子λ(t)獲得 VMD最優解,構建拉格朗日表達式為

(4)
式(4)中:f(t)為原始輸入信號。用傅里葉變換將信號從時域變換到頻域計算出極值,最后得到對應模態分量的uk和ωk;n為迭代次數;∧表示傅里葉變換,表達式為

(5)

(6)
經過上述求得VMD分解后的第K個模態分量。
由于本文中需要特征提取的數據量較大,文件較多,因此采用貪心的策略同時對采用的全部滾動軸承故障數據進行預處理,其次將預處理后的數據自動的導入VMD中,然后根據確定的模態分解數K,結合能量和時域特征,計算IMF的時域特征值及能量構建特征矩陣。
使用貪心策略結合VMD構建多模態特征矩陣可以方便快捷地對大量數據進行特征提取,提高了特征提取的效率。特征提取流程如圖1所示。

圖1 特征提取流程圖Fig.1 Flow chart of feature extraction
蚱蜢優化算法原理相對簡單,實現難度低,全局搜索和尋優能力強而且相對于GS算法在收斂速度上有絕對的優勢。所以本文中用GOA對SVM的參數來進行尋優。
GOA算法參考了蚱蜢尋找食物的相關策略,蚱蜢尋找資源中的移動對應算法中的搜索,蚱蜢找到資源并消耗是算法的挖掘部分,這是自動進行的。當處理多目標優化問題的時候GOA算法擁有十分良好的性能。
核函數參數σ、懲罰因子c對SVM預測的性能有著重大影響,控制要素子空間上如何分布的是核函數參數σ,其中復雜度和樣本誤分類的調整為懲罰因子c。使用適應度值評估GOA算法優化SVM參數后的分類效果,最終得到最優效果的參數,因此采用GOA算法對上述參數尋優,使得故障分類結果達到預期效果,GOA-SVM算法的參數尋優流程如圖2所示。

圖2 GOA-SVM參數尋優流程圖Fig.2 GOA-SVM parameter optimization flow chart
首先采用貪心策略對數據集進行預處理后自動導入VMD中生成K個IMF分量,其次結合能量熵和時頻特征,計算出各IMF的能量和特征值,構成多模態特征矩陣。最后將上述的多模態特征矩陣導入到使用GOA優化的SVM中,得出故障分類結果。其流程如圖3所示。

圖3 VMD-GOA-SVM算法流程圖Fig.3 VMD-GOA-SVM algorithm flow chart
實驗所采用的部分數據引自西儲大學提供的滾動軸承振動信號數據,其滾動軸承實驗平臺如圖4所示,由瑞信電機、扭矩傳感器、測功機等組成。

圖4 滾動軸承實驗平臺Fig.4 Rolling bearing experiment platform
采樣的數據分布在風扇端和故障端,驅動端采用的軸承為SKF6205、風扇端采用的軸承為SKF6203并且使用放電加工(electrical discharge machining,EDM)并在各端都制造三種單一的故障類型,分別為內圈故障、外圈故障和滾動體故障,故障直徑分別為0.177 8、0.355 6、0.533 4。圖5為同使用EDM制造的上述三種類型的軸承故障的滾動軸承的圖片。

圖5 三種單一的故障類型Fig.5 Three single failure types
本次試驗為了驗證VMD-GOA-SVM在大量數據下的故障診斷效果,使用軸承故障數據作為貪心策略預處理的數據集,其電機負載在0~3馬力(馬力=0.746 kW),各種不同電機轉速,涵蓋了數據集中各 種不同的工況,其部分工況信息由表1所示。綜合上述不同工況,本文數據集包括三種不同的軸承故障和正常軸承。

表1 軸承工況表
首先使用貪心策略對滾動軸承數據進行預處理,其后使用VMD對預處理后的數據進行特征提取, VMD算法中的模態參數K對分解的結果造成影響,K較大的時候導致過分解,頻率混疊,K較小導致欠分解,丟失部分原始信號信息,經過計算,本文中設置模態參數K=4,分解的效果良好,如圖6所示為振動信號經VMD分解后的4個模態分量。

圖6 VMD模態參數K=4分解圖Fig.6 Exploded view of VMD modal parameter K=4
使用VMD將原始信號分解為4個模態分量后,結合能量熵求出每個模態分量的能量和幅值、峭度、偏度、方差、標準差這些特征,總共提取了4 692條樣本數據,構建大小為4 692×24的多模態特征矩陣作為樣本集,樣本的詳細數據如表2所示。

表2 樣本數據表
本文實驗在樣本集中分別取各種不同故障類型數據的90%共4 222條樣本用作訓練樣本集,余下10%的樣本數據用作測試樣本集,測試樣本數量為470。表3為訓練樣本集的部分數據,各個故障類型下僅列出的4條樣本數據,其中樣本數據的特征僅為各模態分量的峭度和幅值,其中t1~t8僅為各模態分量的峭度和幅值。

表3 部分訓練樣本
圖7為基于GOA方法的優化SVM參數的尋優過程,隨著迭代次數增加,尋優效果越佳,實驗中迭代到第10次的時候適應度最佳為0.966,取得最優的SVM核函數參數σ(log2σ)為1.002(0.003)、懲罰因子c(log2c)為30.279(4.92),具體尋優迭代過程如圖7所示。

圖7 基于GOA的SVM參數優化過程Fig.7 SVM parameter optimization process based on GOA
使用GS方法進行SVM參數優化的結果如圖8所示,優化結束時的適應度為0.963,適應度最佳時取得的最優的SVM核函數參數σ(log2σ)為1(0)、懲罰因子c(log2c)為27.857(4.8),使用GS算法優化SVM參數的效果略差于GOA-SVM。

圖8 基于GS的SVM參數優化Fig.8 SVM parameter optimization based on GS
圖9(a)是VMD-GOA-SVM的故障分類結果,采用VMD-GOA-SVM在內圈外圈分別有1個分類錯誤,滾動體有3個分類錯誤。圖9(b)是VMD-GS-SVM的故障分類結果,分類錯誤包括內圈外圈各1個,滾動體4個。圖9(c)為使用VMD-SVM方法的故障分類結果,內圈有12個分類錯誤,外圈有18個分類錯誤,滾動體有36個分類錯誤,由圖9可以得知,VMD-GOA-SVM明顯優于VMD-SVM,且相比VMD-GS-SVM識別精度更高。

圖9 故障分類結果Fig.9 Fault classification results
通過本文實驗驗證,得出的VMD-GOA-SVM、VMD-GS-SVM和VMD-SVM故障分類結果的詳細情況如表4所示,分別展示了各算法在不同故障類型下的故障分類識別情況。

表4 故障分類詳情表
表5是上述三種算法準確率以及所用時間的對比表,由表5可知VMD-GOA-SVM較VMD-GS-SVM故障分類的準確率較高,同時明顯地提高了故障分類的效率,相比VMD-SVM,在故障分類識別的準確率上采用的VMD-GOA-SVM方法具有更好的效果,因此,本文提出的VMD-GOA-SVM方法能有效地進行滾動軸承的故障診斷分類,而且相較于GS-SVM等優化SVM的方法計算速度更快,故障分類的準確率較高。

表5 故障分類準確率及耗時
采用VMD對預處理后的數據進行特征提取,結合時頻特征與能量提取特征矩陣,將其輸入到GOA算法優化后的SVM中進行實驗,通過實驗驗證本文提出的VMD-GOA-SVM智能故障診斷算法的有效性。
(1)采用貪心策略進行數據預處理,用VMD算法結合能量和時頻特征構建多模態特征矩陣,提高處理原始數據的效率并且取得了較好的特征提取效果。
(2)采用GOA算法優化SVM參數,GOA算法實現簡單,具有良好的全局性能,相比GS等傳統算法有更好的收斂速度。
(3)經實驗驗證本文提出的方法相比傳統SVM優化算法具有較高的故障分類準確率和效率,可有效地進行滾動軸承的故障診斷,本文提出的算法收斂速度還可進一步改進,從而縮減算法的執行時間。