宋立業(yè), 孫 琳
(遼寧工程技術(shù)大學 電氣與控制工程學院,遼寧 葫蘆島 125105)
滾動軸承故障是旋轉(zhuǎn)機械的各類故障中最容易發(fā)生的一種故障,而且一旦發(fā)生,將會嚴重影響整個機械的正常工作,因而對滾動軸承故障診斷技術(shù)的研究是非常重要[1~4]。相關(guān)研究人員針對滾動軸承故障診斷技術(shù)已經(jīng)做了不少研究,應(yīng)用較多的有反向傳播(back propogation,BP)神經(jīng)網(wǎng)絡(luò)、支持向量機(support vector machine,SVM)以及專家診斷系統(tǒng)等[2],由于BP神經(jīng)網(wǎng)絡(luò)存在訓練時間長、對樣本數(shù)量要求大,以及易早熟收斂的問題,而專家診斷系統(tǒng)則存在運行維護困難以及建立所需時間長的問題,由此利用對樣本數(shù)量要求不高以及非線性問題處理能力強的SVM進行故障診斷的研究越來越多。但單純利用SVM對故障進行診斷,又存在需人工設(shè)置參數(shù)而導(dǎo)致自適應(yīng)能力差以及診斷精度低的問題。對此相關(guān)研究人員提出使用優(yōu)化算法對SVM參數(shù)進行選取[5,6],但利用現(xiàn)有的諸如粒子群優(yōu)化(particle swarm optimization,PSO)等算法對SVM參數(shù)進行優(yōu)化選擇[7],又存在易早熟、選取精度低的問題。
針對上述問題,本文提出使用集合經(jīng)驗?zāi)B(tài)分解(ensemble empirical mode decomposition,EEMD)與能量矩對滾動軸承原始運行信號特征進行提取,然后利用全局麻雀搜索算法(global sparrow search algorithm,GSSA)對SVM參數(shù)進行優(yōu)化選取,最后利用優(yōu)化好的SVM對滾動軸承進行故障診斷的方法。本文利用實驗對所提方法的有效性以及優(yōu)越性進行了驗證。
EEMD是針對EMD方法所存在的模態(tài)混疊以及端點效應(yīng)問題而提出的一種將頻率分布均勻的高斯白噪聲多次加入原始信號,而使原始信號極點特征得以改善的模態(tài)分解方法[8~10],這種算法在對信號進行模態(tài)分解時,自適應(yīng)能力相對較強,因而更能對原始信號進行表征。
能量矩是一種考慮了時間尺度的特征提取方法,因為考慮了時間尺度,所以相對單純的能量特征提取方法更能表征原始信號。對于能量矩特征提取方法的具體過程如下:
按式(1)對EEMD得到的各IMF分量以及余量進行能量矩計算
Ej=∑(T·k)|cj(T·K)|2
(1)
式中Ej為第j個IMF分量的能量矩,T與k分別為采樣周期與采樣點標號。
按式(2)對特征向量進行構(gòu)建
(2)
原始SSA是一種模擬麻雀群覓食過程的優(yōu)化算法,該算法通過引入探索者、追隨者以及預(yù)警機制,使其在求解精度和抗早熟等方面相對其他優(yōu)化算法具有很大的優(yōu)勢。但原始SSA算法在探索粒子更新時,其搜索范圍是隨著迭代的進行而逐漸減小的,這種機制會嚴重影響算法的收斂速度,而且極有可能陷入局部解。針對這個問題,本文提出一種考慮全局最優(yōu)位置的GSSA,對于GSSA的具體建模過程如下[11]:
對于M維、N個群體的GSSA,初始化其個體為Xi=(xi1…xii…xiM),此時,整個群體可表示為X=(X1…Xi…XN)。首先,種群中的探索粒子按式(3)進行更新
(3)
式中w為動態(tài)慣性因子,具體按式(4)進行更新;Q為服從標準正態(tài)分布的隨機數(shù);W為M維單位向量;預(yù)警因子ST取值范圍為0.5~1。此時算法考慮了前一代最優(yōu)位置的影響,使探索者粒子移向最優(yōu)位置的速度加快,而不是原始SSA的盲目本地搜索,提升了算法的全局收斂速度;同時算法加入了動態(tài)權(quán)重因子,使得算法開始時受全局最優(yōu)位置影響較大,從而加快算法收斂速度,而隨著迭代的進行,這種影響逐漸減小,受算法本身預(yù)警機制的影響使算法不易陷入局部解。式(4)如下
(4)
種群中追隨粒子按式(5)進行更新
(5)
其中,A+的計算方式為
A+=AT(AAT)-1
(6)
由式(6)可得出,當i>n/2時,表示此時位置極差,粒子需要跳出當前位置;反之,則追隨探索粒子移動。
種群中隨機預(yù)警粒子更新方式為
(7)
式中β為步長控制參數(shù),k為服從-1~1之間的均勻隨機分布的數(shù),ε為避免分母為0而加設(shè)的極小數(shù)字。由式(7)可知,算法預(yù)警機制主要為防止算法陷入局部解而設(shè)置的,即當隨機選中的粒子處于最佳位置時,表示其處于危險狀態(tài),須向其他位置移動。由上述GSSA的具體流程如下:
begin
初始化算法參數(shù)以及種群位置
while (t 計算個體適應(yīng)度,排序并尋找最優(yōu)位置 按式(3)與式(4)更新探索粒子 對追隨粒子按式(5)與式(6)進行更新 隨機挑選預(yù)警粒子,并按式(7)進行更新 更新種群 t=t+1 end while end 為驗證算法的有效性,分別利用PSO、SSA以及GSSA對如式(8)所示的一例單峰多維以及如式(9)所示一例多峰多維經(jīng)典函數(shù)進行50次求解。兩例函數(shù)的維數(shù)均為30維,且最優(yōu)值均為0。式(8)、式(9)如下 (8) x∈[-5.12,5.12] (9) 對于算法參數(shù)設(shè)置為:探索與預(yù)警粒子比例均為0.2,ST為0.8,具體種群個數(shù)均為100,迭代500次。給出上述三種算法結(jié)算結(jié)果如表1所示,運行迭代結(jié)果如圖1所示。 表1 計算結(jié)果 圖1 迭代運行結(jié)果 由表1的結(jié)算結(jié)果可以看出,GSSA對于上述兩式50次求解的平均值與均方差均為0,顯示出所提算法無論是計算精度還是計算穩(wěn)定性都相對其他兩種算法高。另外由圖2的迭代運行結(jié)果可以看出GSSA還具有求解收斂速度快的優(yōu)勢。 由于本文處理的信號為非線性信號樣本,因而此時非線性SVM的預(yù)測函數(shù)[12,13]可用式(10)表示 (10) 式中air與br分別為利用部分樣本預(yù)先利用式(11)求得的第i個樣本的Langrange算子以及偏置因子 (11) (12) 式中K(xi,xj)為SVM核函數(shù),本文選擇的是徑向基核函數(shù),具體如式(12)所示;C為懲罰因子,表示的是算法的容差能力,越大則表示算法對訓練結(jié)果的準確度越高;g為徑向基寬度。 由此可以利用GSSA對C與g兩個參數(shù)進行優(yōu)化計算,來使得SVM算法在分類識別過程中的交叉驗證結(jié)果最大。對于交叉驗證方法本文選擇的是K-CV法,其中k取值為5,即每5組數(shù)據(jù)選1組作為驗證樣本。由此基于EEMD-GSSA-SVM算法的滾動軸承故障診斷流程如圖2所示。 圖2 診斷流程圖 為了驗證本文所提方法的有效性,本文利用西儲凱斯大學軸承檢測中心所給數(shù)據(jù),針對采樣頻率為12 kHz,轉(zhuǎn)速為1 750 r/min,負荷大小為2HP以及損傷尺寸為0.007 in(1 in=2.54 cm)的滾動軸承。利用本文所提方法分別對其內(nèi)圈、外圈、滾動體故障以及正常運行狀態(tài)進行分類識別,對于具體實驗平臺如圖3所示。 圖3 振動信號采集平臺 本文針對滾動軸承內(nèi)圈、外圈、滾動體故障以及正常運行狀態(tài)分別采集了80組數(shù)據(jù),其中每組數(shù)據(jù)含有1 024個數(shù)據(jù)點,所以本文所采數(shù)據(jù)一共包含320組數(shù)據(jù),每種類型數(shù)據(jù)共采集81 920個點。對每組數(shù)據(jù)首先利用EEMD法進行模態(tài)分解,然后對分解得到的IMF分量利用能量矩進行歸一化的特征提取。 對于滾動軸承故障診斷分析,本文分別給出利用PSO-SVM,SSA-SVM以及GSSA-SVM算法對滾動軸承故障狀態(tài)的分類識別結(jié)果,對于上述算法的參數(shù)設(shè)置具體如表2所示,此外,上述算法迭代次數(shù)均設(shè)置為50次,種群數(shù)為20。而對于所采集處理得到的數(shù)據(jù),設(shè)置40組數(shù)據(jù)為測試集樣本,剩下的280組數(shù)據(jù)為訓練集樣本。 表2 算法參數(shù)設(shè)置表 利用上述算法對滾動軸承故障分類識別進行50次計算,取平均計算后的識別結(jié)果如表3所示。由計算結(jié)果可以看出,本文所提算法能在幾乎不改變原始算法復(fù)雜度的前提下,相對SSA-SVM算法識別交叉驗證準確率提高了5.78 %,相對PSO-SVM算法識別交叉驗證準確率更是提高了9.81 %,而且由于多次實驗結(jié)果相同,驗證了所提算法對于滾動軸承故障識別分析運算的穩(wěn)定性。 表3 識別結(jié)果表 對于利用EEMD-GSSA-SVM對滾動軸承故障識別分析的迭代結(jié)果與識別結(jié)果如圖4所示。 圖4 迭代識別結(jié)果 為提高旋轉(zhuǎn)機械滾動軸承故障診斷精度,本文提出了一種基于EEMD-GSSA-SVM算法的滾動軸承故障診斷方法。首先利用EEMD以及能量矩對原始信號進行了特征提取。然后提出了一種GSSA,即在SSA探索粒子更新過程中引入全局最優(yōu)位置以及可變慣性因子,既加快了算法的收斂速度,又減小了算法陷入局部解的可能,并利用經(jīng)典函數(shù)對其有效性以及優(yōu)越性進行了驗證。最后提出利用GSSA優(yōu)化SVM中的C,g參數(shù),然后利用GSSA-SVM算法對滾動軸承故障進行診斷,經(jīng)實驗驗證,本文所提GSSA-SVM算法具有識別準確率高以及識別穩(wěn)定度高的優(yōu)勢。2.2 GSSA的驗證
3 GSSA-SVM算法建模
4 方法實驗分析
5 結(jié) 論