趙凱,李本威,李冬,李海寧
基于排列組合熵的轉(zhuǎn)子振動信號故障診斷SVM方法研究
趙凱1,李本威1,李冬1,李海寧2
(1.海軍航空工程學院飛行器工程系,山東煙臺264001;2.大連理工大學船舶工程學院CAD工程中心,遼寧大連116024)
針對發(fā)動機轉(zhuǎn)子的多種故障模式,提出了基于排列組合熵的SVM故障診斷方法。利用轉(zhuǎn)子實驗臺,模擬了轉(zhuǎn)子正常、轉(zhuǎn)子不平衡、轉(zhuǎn)子不對中、動靜碰磨和基座松動5種典型振動模式,并使用振動傳感器采集多路振動數(shù)據(jù)。計算振動數(shù)據(jù)的排列組合熵并將其作為故障特征向量,對特征向量樣本集進行多級SVM分類診斷,并運用小波包能量特征提取方法提取信號特征。實例計算與結(jié)果對比表明,本文方法的正確率要高于基于小波包能量提取特征的SVM分類診斷方法,在提取轉(zhuǎn)子振動信號的特征向量及在小樣本下的故障分類診斷等方面,具有可行性和有效性。
發(fā)動機;轉(zhuǎn)子振動;排列組合熵;特征提?。恢С窒蛄繖C
轉(zhuǎn)子是發(fā)動機的重要組成部件,在不同運行工況下會產(chǎn)生不同的振動信號。如何從雜亂無序的振動信號中提取有用信息,識別轉(zhuǎn)子振動信號的不同模態(tài),挖掘振動信號與故障模式之間的關(guān)系,對于發(fā)動機運行狀態(tài)監(jiān)測及故障診斷等有著重要的意義與價值。
排列組合熵(PE)[1]是一種描述時間序列復雜性測度的非線性動力學參數(shù),其主要特點是計算速度快,容易編程,對噪聲不敏感,只需要長度較短的時間序列就能計算出較穩(wěn)定的特征值。近幾年,基于排列組合熵的方法,已在心電信號分析[2]、腦電信號分析[3,4]、語音信號分析[5]、圖像識別處理[6]等方面的研究中得到應(yīng)用,但應(yīng)用在發(fā)動機轉(zhuǎn)子振動信號分析上的研究還很少。
相比之下,小波及小波包變換應(yīng)用于振動信號分析的研究已為數(shù)不少[7~9],但其主要問題在于要確定小波(包)函數(shù)和分解層數(shù)等,分析得到的小波分量和小波譜只相對所選擇的小波基有意義,不同的小波函數(shù)得到不同的結(jié)果。目前,大多通過實驗結(jié)果對比驗證取其優(yōu)來解決。
本文運用排列組合熵算法,對轉(zhuǎn)子振動信號的5種典型模式(轉(zhuǎn)子正常、轉(zhuǎn)子不平衡、轉(zhuǎn)子不對中、動靜碰磨和基座松動)進行研究。首先利用排列組合熵算法提取出用于故障檢測的特征參數(shù),然后使用多級支持向量機(SVM)進行分類診斷,最后對比研究小波包變換[7,9]提取信號特征的方法。希望本研究可為研究轉(zhuǎn)子振動及發(fā)動機狀態(tài)監(jiān)控提供一些新的思路和方法。
2.1排列組合熵
相比傳統(tǒng)的信息熵計算方法,排列組合熵直接將時間序列{} xi作為有效熵源,而不是通過重構(gòu)的時間序列來計算熵值。排列組合熵的具體定義[1]如下:
設(shè)有一維時間序列{} xtt=1,2,…,T,其長度為T。在
為準確計算p(π),須假定一組無限的時間序列{x1,x2,…},并按上述公式將T→∞取極限。當潛在隨機過程滿足一非常微弱的靜止狀態(tài)條件時,其極限值的概率為1;對于k≤n,xt<xt+k的概率不取決于t。當n≥2時,排列組合熵的定義為:
式中:H(n)為計算了按順序排列的n個數(shù)的排列情況π的所有n!種情況之和。
排列組合熵的大小反應(yīng)了時間序列的不規(guī)則程度,排列組合熵值越大,時間序列越不規(guī)則,值越小越規(guī)則。由排列組合熵的定義可看出:若時間序列有規(guī)則(如周期性),則其排列組合熵為0;若時間序列是白噪聲隨機的,則各種排列組合情況(共n!種)均以等概率出現(xiàn),故其排列組合熵為log(n!)。因為時間序列大多隨機或不具有完全的周期性,所以排列該時間序列中取n個不同的數(shù),并將其盡可能按次序排列,排列順序為π,是所有的n!種排列組合方式中的一種,即P1,P2,…,Pk,k≤n!。對于一有限時間序列,每種排列情況π的概率p(π)由其出現(xiàn)的相對頻率確定,即組合熵的范圍為0≤H(n)≤log(n!)。將排列組合熵進行歸一化計算:
歸一化計算將排列組合熵H(n)的值限定在[0,1],這樣可更直觀地觀察與比較各時間序列的熵值。
2.2支持向量機
支持向量機(SVM)在解決小樣本、非線性、高維模式識別問題中具有許多優(yōu)勢[10]。其主要思想是找到一個超平面,使得它能盡可能多地將兩類數(shù)據(jù)點正確分開,同時使分開的兩類數(shù)據(jù)點距離分類面最遠[11]。
支持向量機方法用于解決兩類分類的問題,而實際中故障診斷往往為多類分類問題,因此需要構(gòu)造多類SVM分類器[12]。本文使用一對多的分類算法,該算法對樣本數(shù)據(jù)可構(gòu)造多個兩類分類器,計算過程為:在構(gòu)造第一個分類器時,將第一類訓練樣本作為一類,決策函數(shù)輸出為+1;其它樣本作為另一類,決策函數(shù)輸出為-1。將第一類樣本與其它樣本區(qū)分開,然后對所有剩余樣本數(shù)據(jù)進行分類,這樣就構(gòu)造出多類分類器。
本文基于排列組合熵的SVM故障診斷基本流程(圖1)是:測得轉(zhuǎn)子的振動數(shù)據(jù),對振動數(shù)據(jù)的時間序列進行排列組合熵計算;將熵值作為特征向量建立樣本集,對樣本集進行多級SVM分類診斷。
圖1 基于排列組合熵的SVM故障診斷流程圖Fig.1 SVM fault diagnostic flow chart based on permutation entropy
利用YE6254型轉(zhuǎn)子實驗臺(圖2),對轉(zhuǎn)子正常、轉(zhuǎn)子不平衡、轉(zhuǎn)子不對中、動靜碰磨和基座松動5種典型振動模式進行模擬實驗。4個振動傳感器分別安裝在實驗臺軸承兩端的縱向和徑向,這樣每次實驗可采集4路信號。轉(zhuǎn)子轉(zhuǎn)速在2 000 r/min時,采集以上5種類型的振動數(shù)據(jù),每種采集40組,一共采集200組振動信號作為實驗樣本。采樣頻率為500 Hz,每組數(shù)據(jù)樣本長度為2 000個點[9]。
圖2 YE6254型轉(zhuǎn)子實驗臺Fig.2 YE6254 type rotor test bed
3.1參數(shù)選取
將長度為T的振動信號時間序列劃分為若干個長度為r的子序列,這些子序列間可重疊也可不重疊。本文選取子序列最大重疊序列,即子序列向后只移動一個時間點即得到下一個子序列,這樣子序列個數(shù)為T-r+1。若要完全不重疊,子序列個數(shù)為[T/r]+1。顯然,取最大重疊序列得到的信息量最多。
由文獻[2]可知,r取值太小,計算結(jié)果不能完全提取序列的特征;r取值太大,結(jié)果又會失去精確性。對每個子序列進行排列組合熵計算,即每隔一個樣點取連續(xù)的m個樣點,對這m個樣點進行升序排列,按式(2)計算得到排列組合熵,再按式(3)計算得到歸一化的排列組合熵。將這T-r+1個熵值按時間排列就構(gòu)成了長度為T的原振動信號。因此,如何選取r和m,是正確計算排列組合熵值的關(guān)鍵。
針對r和m的取值問題,文獻[3]~[5]采用對比驗證的方法選取最優(yōu)解。這種方法依靠實驗比較或操作人員的經(jīng)驗得到結(jié)論,主觀性較強。Kim等針對非線性時間序列,提出了基于嵌入窗法思想的C-C方法,其特點是容易計算且計算量較小,適合小數(shù)據(jù)組計算[13,14],使用關(guān)聯(lián)積分可同時估算出時延嵌入維數(shù)與嵌入窗。對本文使用的數(shù)據(jù),經(jīng)計算得出t= 1,m=5,r=200。
3.2實例驗證計算
下面驗證r和m的取值是否合適,所用數(shù)據(jù)為一組轉(zhuǎn)子不平衡故障的振動信號。
圖3給出了轉(zhuǎn)子不平衡振動原始波形(按時間排列),及其不同子序列長度時的排列組合熵波形,m取值均為5??梢?,r=190的波形相對于r=200的波形毛刺較多,有些部分沒有完整提取子序列特征;r=210的波形相比之下熵值不夠精確,提取的信息有部分喪失。所以取r=200較為合適。
圖4給出了r=200,m分別取4、5、6時轉(zhuǎn)子不平衡振動信號的排列組合熵波形??梢?,m的取值基本上不影響排列組合熵隨時間變化的波形,只是排列組合熵的值隨m的增大而增大。這是因為:根據(jù)式(2),m越大,每m個樣本點出現(xiàn)排列的方式就越多,即各個m對應(yīng)的排列情況總數(shù)l=r-m+1分別為197、196、195,雖然每種排列情況出現(xiàn)的相對頻率減小,但l在增大,m依次取4、5、6時計算得到各個熵值之和H(n)增大,因而排列組合熵的值越大。從圖中可明顯看出,m=4的波形相對于m=5的波形過于毛糙,而m=6的波形相比之下提取的信息有部分喪失,所以m取5較為合適。
圖3 轉(zhuǎn)子不平衡振動數(shù)據(jù)及其不同子序列長度時的排列組合熵(m=5)Fig.3 Permutation entropy of rotor imbalance vibration data (m=5)
由此驗證了C-C方法,即m=5、r=200合適。按式(2)計算5種振動信號的排列組合熵,共200組數(shù)據(jù),并將其歸一化計算,然后按次序排列,結(jié)果如圖5所示??梢?,不同類型轉(zhuǎn)子振動信號的排列組合熵值分布在不同區(qū)間,且轉(zhuǎn)子正常振動信號對應(yīng)的熵值最小。因為當轉(zhuǎn)子在平衡狀態(tài)運轉(zhuǎn)時,振動信號的時間序列沒有變化,因此排列組合熵值很小,由前文可知其理論值應(yīng)為0;當轉(zhuǎn)子出現(xiàn)故障時,振動信號喪失周期性,排列組合熵增大。圖中,基座松動故障的排列組合熵最大,這是由于基座松動的振動信號雜亂無章且隨機,故而其熵值接近1。
3.3基于SVM的轉(zhuǎn)子振動故障診斷與分析
建立支持向量機的特征樣本集作為SVM的輸入向量。首先將每一次采集的4路振動信號分別進行排列組合熵計算,然后將其組成一組4維特征向量組,將此特征向量組作為轉(zhuǎn)子振動狀態(tài)的一個樣本,最后所有的排列組合熵特征向量的集合就構(gòu)成了特征向量集。將其中10組作為訓練樣本集,其余作為測試樣本集。
圖4 連續(xù)樣點數(shù)不同時轉(zhuǎn)子不平衡振動數(shù)據(jù)的排列組合熵(r=200)Fig.4 Permutation entropy of the rotor imbalance vibration data (r=200)
圖5 各故障模式對應(yīng)的排列組合熵數(shù)據(jù)圖Fig.5 Each failure mode corresponding to the permutation entropy data chart
本文實驗有5種類型的轉(zhuǎn)子振動信號,所以建立4個兩類分類支持向量分類機。按圖6所示的多級SVM分類流程建立多分類支持向量機,來識別這5種轉(zhuǎn)子振動類型。SVM1表示將轉(zhuǎn)子正常振動信號與其它類型故障進行分類,SVM2表示將不平衡狀態(tài)與其它類型故障進行分類,SVM3表示將不對中故障與其它類型故障進行分類,SVM4表示將碰磨故障與基座松動故障進行分類,f(x)表示SVM的最優(yōu)分類函數(shù)且
式中:sgn為符號函數(shù),K(ai,x)為核函數(shù)。
圖6 多級SVM分類流程圖Fig.6 Multi-class SVM classification flow chart
用支持向量機進行分類時,需確定核函數(shù)。SVM中主要的核函數(shù)有線性核函數(shù)、多項式核函數(shù)、徑向基核函數(shù)、S形內(nèi)核函數(shù)、傅里葉核函數(shù)等[11],本文選用具有良好分類和學習能力的徑向基核函數(shù):
將樣本集中各類轉(zhuǎn)子振動信號的10個樣本作為訓練樣本進行SVM訓練。用訓練后的支持向量機診斷模型對5種類型的樣本進行分類測試,結(jié)果顯示其正確分類率為100%,這說明該模型有很好的學習能力。然后用每種振動信號剩余的30個樣本進行測試,結(jié)果表明該模型不但具有很好的學習能力,也具有不錯的泛化和容錯能力,可以對這5種振動信號進行有效分類。測試結(jié)果如表1所示。
3.4小波包分析對比研究
將本文方法與文獻[9]中使用的小波包方法進行對比研究。對這5類振動信號200組數(shù)據(jù)分別進行小波包變換。選擇sym10小波基,對數(shù)據(jù)進行5級小波包分解。對分解所得的8個頻段信號的小波系數(shù)d(5,0)、d(5,1)、d(5,2)、d(5,3)、d(4,2)、d(4,3)、d(2,1)、d(1,1)進行頻帶劃分,頻帶范圍為0~500 Hz。對倍頻進行4尺度分解,對基頻進行5尺度分解,充分利用小波包的特性對感興趣的頻率成分進行細致劃分。用各小波系數(shù)的平方來計算小波包分解各子頻帶上的平均能量,并對其歸一化處理。表2示出了轉(zhuǎn)子不平衡信號各頻段小波分解系數(shù)對應(yīng)的頻帶和歸一化能量。
表1 基于排列組合熵的轉(zhuǎn)子振動信號SVM診斷Table 1 SVM diagnosis of rotor vibration signals based on PE
表2 轉(zhuǎn)子不平衡振動數(shù)據(jù)各頻段小波系數(shù)對應(yīng)的頻帶和歸一化能量Table 2 Frequency bands and unitary energy for each frequency range wavelet coefficients of rotor imbalance vibration data
將此歸一化能量作為一組8維的特征向量。同理,得到包含200組特性向量的樣本集,作為SVM的訓練與測試樣本。同樣將10組樣本作為測試樣本集,剩余30組作為診斷樣本集,診斷結(jié)果見表3??梢?,基于小波包能量算法的轉(zhuǎn)子振動信號SVM診斷也具有較高的正確率,但總體上低于本文基于排列組合熵算法的SVM診斷正確率。另外,本文使用的排列組合熵算法簡單,容易編程,且沒有小波變換面臨的一些不確定問題,即面對不同數(shù)據(jù),選擇不同小波基及分解層數(shù)等得到的結(jié)果不同。
表3 基于小波包能量的轉(zhuǎn)子振動模式SVM診斷Table 3 SVM diagnosis of rotor vibration signals based on wavelet packet energy
本文針對轉(zhuǎn)子振動的5種典型模式,提出了基于排列組合熵的SVM故障診斷方法,即利用排列組合熵方法提取振動信號的特征值,然后對其進行SVM分類,得到診斷結(jié)果。文中還對比了小波包提取振動數(shù)據(jù)能量特征進行SVM診斷的方法,結(jié)果表明,本文提出的方法更適合區(qū)分轉(zhuǎn)子的各種振動狀態(tài),且編程容易,效果較好。但也應(yīng)該看到,本文僅研究了轉(zhuǎn)子振動中的單故障現(xiàn)象,試驗樣本數(shù)據(jù)有限,并且是對實際發(fā)動機轉(zhuǎn)子的理想簡化,因此對實際發(fā)動機轉(zhuǎn)子故障診斷的效果還有待進一步檢驗。
[1]Bandt C,Pompe B.Permutation Entropy–A Natural Com?plexity Measure for Time Series[J].Physical Review Let?ters,2002,88:1595—1602.
[2]趙小磊,任明榮,張亞庭,等.基于排列熵的心電信號非線性分析[J].現(xiàn)代電子技術(shù),2010,33(19):90—93.
[3]范影樂,李谷,劉亞景,等.基于排列組合熵的腦電意識任務(wù)識別方法的研究[J].傳感技術(shù)學報,2008,21(1):74—78.
[4]李谷,范影樂,龐全.基于排列組合熵的腦電信號睡眠分期研究[J].生物醫(yī)學工程學雜志,2009,26(4):869—872.
[5]吳秀良,范影樂,錢誠,等.基于排列組合熵的語音端點檢測技術(shù)研究[J].計算機工程與應(yīng)用,2008,44(1):240—242.
[6]羅元俊,葉雪梅,范青剛.離散傅里葉變換和組合能量熵的紋理圖像分析[J].電子科技,2011,24(1):9—11.
[7]艾延廷,費成巍.轉(zhuǎn)子振動故障的小波能譜熵SVM診斷方法[J].航空動力學報,2011,26(8):1830—1835.
[8]艾延廷,費成巍.基于支持向量機的轉(zhuǎn)子振動故障融合診斷技術(shù)[J].沈陽工業(yè)大學學報,2010,32(5):526—530.
[9]趙凱,孫濤,宋偉健.基于小波包分析的轉(zhuǎn)子振動信號故障特征提取研究[J].海軍航空工程學院學報,2009,24(6):613—616.
[10]吳虎勝,呂建新,來凌紅,等.基于EMD-SVD模型和SVM滾動軸承故障模式識別[J].噪聲與振動控制,2011,31(2):89—93.
[11]司守奎,孫璽菁.數(shù)學建模算法與應(yīng)用[M].北京:國防工業(yè)出版社,2011:178—185.
[12]來凌紅,吳虎勝,呂建新,等.基于EMD和樣本熵的滾動軸承故障SVM識別[J].煤礦機械,2011,32(1):249—252.
[13]Kim H S,Eykholt R,Salas J D.Nonlinear Dynamics,De?layTimesandEmbeddingWindows[J].PhysicaD (S0167-2789),1999,127:48—60.
[14]陸振波,蔡志明,姜可宇.基于改進的C-C方法的相空間重構(gòu)參數(shù)選擇[J].系統(tǒng)仿真學報,2007,19(11):2527—2538.
SVM Research on Rotor Vibration Signal Fault Diagnosis Based on Permutation Entropy
ZHAO Kai1,LI Ben-wei1,LI Dong1,LI Hai-ning2
(1.Department of Airborne Vehicle Engineering,NAAU,Yantai 264001,China;2.Dalian University of Technology,Institute of Marine Engineering,CAD Engineering Center,Dalian 116024,China)
For a variety of rotor failure modes,the SVM fault diagnosis method based on permutation entro?py was proposed.Five kinds of typical faults:normal rotor vibration,rotor unbalance,rotor misalignment, rubbing and base loosening were simulated and vibration failure data was collected in rotor experiments. The permutation entropy of vibration fault signal was calculated as the fault feature,multi-class SVM was used to classify and diagnose the feature vector sample sets,signal feature was extracted by wavelet energy feature extraction.By calculating and comparing,the accuracy rate of the method in this paper is higher than the SVM method based on the wavelet energy feature extraction,and the fault diagnosis method was verified to solve the rotor vibration faults signal feature extraction and small sample cases validly.
engine;rotor vibration;permutation entropy;feature extraction;support vector machine
V235.13
A
1672-2620(2013)03-0038-05
2012-09-17;
2013-03-28
趙凱(1983-),男,山東煙臺人,博士,研究方向為發(fā)動機測試理論與技術(shù)。