陳強(qiáng)強(qiáng) 成建波 張 剛 張 婕
(1.海軍研究院 上海 200436)(2.海軍航空大學(xué) 煙臺 264000)
隨著航空工業(yè)的飛速發(fā)展,航空裝備的地位作用及使用效率都得到了極大的提升。同時(shí),隨著航空科技的不斷進(jìn)步,航空裝備的復(fù)雜性及綜合性也越來越高,保證航空裝備具有良好的工作狀態(tài)也顯得尤為重要,這對航空裝備的可靠性提出了更高的要求。航空發(fā)動機(jī)健康狀態(tài)監(jiān)視技術(shù)是航空裝備視情維修的前提及基礎(chǔ),同時(shí)也是提高航空發(fā)動機(jī)使用效率并保證航空發(fā)動機(jī)發(fā)揮其穩(wěn)定效能的重要保障。
針對航空發(fā)動機(jī)氣路參數(shù)進(jìn)行準(zhǔn)確有效的分析,是實(shí)現(xiàn)航空發(fā)動機(jī)健康狀態(tài)監(jiān)視的重要步驟及方法。文獻(xiàn)[1]通過對渦槳發(fā)動機(jī)轉(zhuǎn)子系統(tǒng)振動信號進(jìn)行時(shí)域特征、能量特征分析,完成了渦槳發(fā)動機(jī)轉(zhuǎn)子的故障診斷;文獻(xiàn)[2]以民航發(fā)動機(jī)排氣溫度裕度作為研究參數(shù),通過對排氣溫度裕度序列進(jìn)行分析,從而判斷水洗對拆發(fā)間隔的影響。文獻(xiàn)[3]通過對飛參系統(tǒng)記錄的發(fā)動機(jī)狀態(tài)參數(shù)時(shí)間序列進(jìn)行分析,得到反映發(fā)動機(jī)狀態(tài)參數(shù)的特征信息。對發(fā)動機(jī)氣路參數(shù)時(shí)間序列進(jìn)行分析,能夠?yàn)榘l(fā)動機(jī)狀態(tài)監(jiān)測提供決策依據(jù)[4]。
在對時(shí)間序列進(jìn)行復(fù)雜程度分析方面,排列熵算法具有計(jì)算簡單、效率高、抗噪聲能力強(qiáng)、適合在線監(jiān)測等優(yōu)點(diǎn),在時(shí)間序列分析、故障特征提取、故障診斷等方面具有重要應(yīng)用[5]。文獻(xiàn)[6]采用排列熵方法對轉(zhuǎn)子振動信號進(jìn)行檢測并實(shí)現(xiàn)特征提取、故障診斷;文獻(xiàn)[7]對航空器陀螺儀序列進(jìn)行排列熵算法檢測,提取其故障特征并實(shí)現(xiàn)故障診斷。文獻(xiàn)[8]對液壓泵參數(shù)信號進(jìn)行排列熵分析,驗(yàn)證了其有效性。排列熵算法在機(jī)械系統(tǒng)時(shí)間序列分析中,取得了重要應(yīng)用。但在解算過程中,受限于排列熵算法的特征,所采集的時(shí)間序列長度均設(shè)置在較長的合理范圍內(nèi)。然而航空發(fā)動機(jī)氣路參數(shù)具有獲取較為困難、數(shù)據(jù)量較少、樣本長度有限等局限性,所采集到的數(shù)據(jù)往往具有序列長度短的特征[9]。為了彌補(bǔ)排列熵算法在短時(shí)間序列復(fù)雜程度計(jì)算方面的不足,本文通過引入插值思想,實(shí)現(xiàn)了對原始數(shù)據(jù)的延拓,并將原始序列重構(gòu)至排列熵計(jì)算的合理范圍。通過對排氣溫度裕度(Delta Exhaust Gas Temperature,DEGT)時(shí)間序列及隨機(jī)序列進(jìn)行實(shí)驗(yàn)分析,結(jié)果表明所提出的基于插值重構(gòu)的排列熵算法可以有效地表達(dá)短時(shí)間序列的復(fù)雜程度,是一種有效的復(fù)雜性分析方法。
排列熵算法通過衡量時(shí)間序列內(nèi)部排序過程,從而實(shí)現(xiàn)對時(shí)間序列復(fù)雜程度的衡量,排列熵算法的基本原理如下。
1)首先,針對長度為N的原始時(shí)間序列{x(i),i=1,2,...,N} ,對x(i)進(jìn)行相空間重構(gòu)分析,得到矩陣如下[10]:
式中,m為嵌入維數(shù),τ為延遲時(shí)間,k=N-(m-1)τ為重構(gòu)向量的個數(shù)。
2)將Xj中的數(shù)據(jù)元素按照升序的方式進(jìn)行排列,得:
式中,j1,j2,…jm為各元素在排序之前位于相空間所在列的索引。
3)如果Xj中存在兩元素相等,則按原始順序進(jìn)行排列。通過對相空間重構(gòu)后的時(shí)間序列分析,對于任意一個Xj,均能得到相應(yīng)的符號序列Sl={j1,j2,…,jm} ,其中,l=1,2,...,k,且k≤m!??啥x排列熵的計(jì)算公式為[11]
式中,Pj為符號序列的概率,且。
此時(shí),Hp的取值為[0,?1],可反映出時(shí)間序列的復(fù)雜程度。Hp越大,則序列復(fù)雜程度越高。
排列熵作為衡量時(shí)間序列內(nèi)部復(fù)雜度的算法,計(jì)算過程簡單方便,能夠有效地分析非線性、非平穩(wěn)信號,適用于發(fā)動機(jī)氣路參數(shù)數(shù)據(jù)。在排列熵的計(jì)算過程中主要包括3個參數(shù):時(shí)間序列長度N、嵌入維數(shù)m、延遲時(shí)間τ。排列熵算法的提出者Bandt建議選擇嵌入維數(shù)m為3~7,一般隨著時(shí)間序列長度增加進(jìn)行相應(yīng)調(diào)整[12]。因?yàn)槿绻度刖S數(shù)m過小,相空間重構(gòu)的向量中包含狀態(tài)太少,算法失去意義和有效性;而嵌入維數(shù)m過大,則相空間重構(gòu)步驟會均勻化時(shí)間序列,無法反映序列的微小變化。延遲時(shí)間τ對時(shí)間序列的計(jì)算影響較小,一般選擇τ=1。文獻(xiàn)[13]以隨機(jī)信號為例對排列熵計(jì)算過程中時(shí)間序列長度的影響進(jìn)行了分析,證明了時(shí)間序列長度在1024或2048左右較為合適,此時(shí)可對應(yīng)的選擇嵌入維數(shù)m=6,延遲時(shí)間τ=1。通過文獻(xiàn)中對排列熵的分析可知,如果時(shí)間序列長度過短,則嵌入維數(shù)的取值應(yīng)進(jìn)行相應(yīng)的減小,而過小的嵌入維數(shù)又會導(dǎo)致排列熵算法失去其有效性,從而影響復(fù)雜度的衡量[14]。因此,有必要對短時(shí)間序列進(jìn)行進(jìn)一步處理,使其適用于排列熵算法。
為了對采集到的原始DEGT短序列進(jìn)行處理,使其時(shí)間序列長度適用于排列熵的解算,借鑒經(jīng)驗(yàn)?zāi)B(tài)分解(Empirical Mode Decomposition,EMD)算法中構(gòu)造上下包絡(luò)曲線的原理[15],引入三次樣條插值(Cubic Splines Interpolation)思想[16]對原始短時(shí)間序列進(jìn)行重構(gòu)。三次樣條插值方法得到的曲線具有良好的平滑性,逼近效果好,能夠很好地實(shí)現(xiàn)數(shù)據(jù)的插值。
在經(jīng)驗(yàn)?zāi)B(tài)分解的過程中,三次樣條插值的運(yùn)用主要是為了求取原始時(shí)間序列的固有模態(tài)函數(shù)(Intrinsic Mode Function,IMF)。其中心思想為對原始時(shí)間序列x(i)進(jìn)行分析,分別求取其極大值點(diǎn)和極小值點(diǎn),然后對確定的極大值點(diǎn)和極小值點(diǎn),采用三次樣條曲線進(jìn)行擬合,得到時(shí)間序列x(i)的上包絡(luò)線U(i)及下包絡(luò)線L(i),并求取U(i)與L(i)的均值,得到中值包絡(luò)線M(i);以此類推,得到相應(yīng)的固有模態(tài)函數(shù),從而完成對整個時(shí)間序列的分解。
借鑒經(jīng)驗(yàn)?zāi)B(tài)分解過程中對三次樣條插值的應(yīng)用,本文提出的短時(shí)間序列復(fù)雜程度分析方法,通過對原始短時(shí)間序列進(jìn)行三次樣條插值,從而得到符合排列熵解算過程所需要長度的新時(shí)間序列。
三次樣條插值法是一種特殊多項(xiàng)式進(jìn)行插值的方法,可以減小低階多項(xiàng)式的插值誤差[17]。線性數(shù)學(xué)分析中常用的線性插值(Linear)在估計(jì)兩個數(shù)據(jù)點(diǎn)之間的數(shù)值時(shí)較為常用也較為簡單,但線性插值在使用過程中,對數(shù)值的模擬較為粗糙,在曲線之間的連接處不夠平滑。相比之下,三次樣條插值使用一條平滑曲線對各數(shù)值點(diǎn)進(jìn)行模擬,經(jīng)過實(shí)驗(yàn)驗(yàn)證,其結(jié)果比線性插值更接近工程實(shí)際情況,所得結(jié)果也更具有優(yōu)勢。
對樣條的定義是用來表述光滑曲線的一種方法,在數(shù)學(xué)模型中,為了實(shí)現(xiàn)光滑的閉合曲線,通常需要在樣點(diǎn)上固定樣條。非樣點(diǎn)區(qū)域可以任意彎曲,這樣連接樣點(diǎn)的曲線被定義為樣條曲線[18]。
三次樣條插值的數(shù)學(xué)定義為
假設(shè)對y=f(x)在區(qū)間[a,b]上給定一組節(jié)點(diǎn)a=x0<x1<x2…<xn=b,并且給出相應(yīng)的函數(shù)值y0,y1,y2…yn,如果s(x)具有以下特征:
1)每個子區(qū)間[xi-1,xi],其中i=1,2,3,…,n上s(x)是不高于三次的多項(xiàng)式;
2)其中s(x),s′(x) ,s″(x)在區(qū)間[a,b]上連續(xù),s(x)為三次樣條函數(shù);
3)s(xi)=yi,其中其中i=1,2,3,…,n,s(x)是s(x)=y的三次插值函數(shù)。
基于三次樣條插值理論,針對長度為N的原始時(shí)間序列{x(i),i=1,2,...,N} ,原始時(shí)間序列的數(shù)據(jù)點(diǎn)間隔可默認(rèn)為1,即每隔1個橫坐標(biāo)數(shù)據(jù)點(diǎn),存在與其對應(yīng)的1個縱坐標(biāo)數(shù)據(jù)點(diǎn)。構(gòu)造短時(shí)間序列插值重構(gòu)算法模型如下。
1)設(shè)原始時(shí)間序列{x(i),i=1,2,...,N} ,原始時(shí)間序列可以看做x(i)與i之間的函數(shù),每個x(i)對應(yīng)的坐標(biāo)位置分別為i=1,2,3,…,n,為了直觀展示橫坐標(biāo)i與縱坐標(biāo)x(i)之間的關(guān)系,也可表述為i=1,1+1,2*1+1,…,(n-1)*1+1;
2)參考小波分析(Wavelet Transform,WT)中的尺度因子變化方法,引入重構(gòu)維數(shù)k,在保證每個縱坐標(biāo)x(i)數(shù)值不變的前提下,對原始數(shù)據(jù)序列的橫坐標(biāo)位置進(jìn)行重構(gòu),得到重構(gòu)后的橫坐標(biāo)位置對應(yīng)為i′=1,k+1,2k+1,…,(n-1)k+1,此時(shí)構(gòu)建得到x(i)與i′之間的函數(shù),即為重構(gòu)時(shí)間序列;
3)以原始時(shí)間序列x(i)的值為縱坐標(biāo),以重構(gòu)后的坐標(biāo)位置i′為橫坐標(biāo),補(bǔ)全后的時(shí)間序列間隔仍為1,進(jìn)行三次樣條插值,最終得到重構(gòu)后的時(shí)間序列x′(i)長度為(n-1)k+1。
針對x(i) 與x′(i)進(jìn)行分析,本文提出的基于三次樣條插值方法的時(shí)間序列重構(gòu)模型遵循原始時(shí)間序列結(jié)構(gòu),通過改變時(shí)間序列對應(yīng)的坐標(biāo),對時(shí)間序列進(jìn)行延拓,提取出原始時(shí)間序列的內(nèi)部信息,并按照原有的時(shí)間間隔重新分布索引位置。該時(shí)間序列重構(gòu)方法未改變原始數(shù)據(jù)結(jié)構(gòu),遵循了原始時(shí)間序列規(guī)律。
基于此,確定短時(shí)間序列的復(fù)雜程度分析方法如下:
1)針對原始短時(shí)間序列,確定其數(shù)據(jù)長度及需要重構(gòu)的維數(shù);
2)對原始序列進(jìn)行重構(gòu),將其程度延拓至排列熵解算所需要的合理長度;
3)計(jì)算排列熵值,完成對重構(gòu)后的時(shí)間序列復(fù)雜程度分析。
為了驗(yàn)證本文所提出的基于三次樣條插值重構(gòu)方法的合理性,利用正弦信號進(jìn)行分析實(shí)驗(yàn),在[0 ,6]區(qū)間內(nèi)(約為[0 ,2π]區(qū)間,即一個周期,實(shí)驗(yàn)中2π的值不為整數(shù),為了對實(shí)驗(yàn)結(jié)果進(jìn)行直觀展示,取整選擇[0 ,6]區(qū)間),以步長x等于0.1,構(gòu)建正弦信號y=sinx。此時(shí)y與x之間的映射為y=f(x),即每一個以0.1為橫坐標(biāo)間隔的點(diǎn),對應(yīng)一個縱坐標(biāo)的值。
以重構(gòu)維數(shù)取4為例,原始時(shí)間序列長度為(61-1)*1+1=61,則重構(gòu)后的時(shí)間序列長度為(61-1)*4+1=241。
針對原始時(shí)間序列y=f(x),其橫坐標(biāo)x分別對應(yīng)為0,0.1,0.2…,64,重構(gòu)后的橫坐標(biāo)x′分別對應(yīng)為0,0.4,0.8,…,241;保持縱坐標(biāo)的取值不變,得到映射y′=g(x′)。
保證時(shí)間序列的間隔與原始時(shí)間序列間隔相等,即為0.1,對y′=g(x′)進(jìn)行三次樣條插值并補(bǔ)全時(shí)間序列。得到時(shí)間序列間隔為0.1的y′=g(x′)。
原始時(shí)間序列y=f(x)=sinx與重構(gòu)后時(shí)間序列y′=g(x′)之間的對比如圖1所示。
圖1 原始時(shí)間序列與重構(gòu)后時(shí)間序列
如圖1所示,通過原始時(shí)間序列y=f(x)與重構(gòu)后的時(shí)間序列y′=g(x′)之間的對比可知,本文所提出的基于三次樣條插值的時(shí)間序列重構(gòu)算法僅通過插值重構(gòu)增加了時(shí)間序列長度,將原始時(shí)間序列的長度從61變?yōu)?41,沒有改變原始時(shí)間序列的表現(xiàn)形式,仍然保持原始時(shí)間序列的內(nèi)部規(guī)律。
驗(yàn)證1:相關(guān)性驗(yàn)證。為了從數(shù)值形式上直觀表示原始時(shí)間序列與重構(gòu)后時(shí)間序列的關(guān)系,在[0 , 24]區(qū)間內(nèi),以步長0.1對橫坐標(biāo)進(jìn)行取值,構(gòu)建正弦信號,并與重構(gòu)后的時(shí)間序列進(jìn)行對比。采用互相關(guān)系數(shù)ρy′y″表示重構(gòu)后時(shí)間序列y′與在[0 , 24]區(qū)間內(nèi)的正弦信號y″之間的相關(guān)性;ρx3t的取值越接近于1,則表示兩種信號之間的相關(guān)性越強(qiáng)[19]。
計(jì)算得到在[0 ,24]區(qū)間內(nèi)的正弦信號y″與重構(gòu)后時(shí)間序列y′之間的互相關(guān)系數(shù)為0.9956,表明兩者呈現(xiàn)強(qiáng)烈的相關(guān)性,重構(gòu)后的時(shí)間序列未改變原始時(shí)間序列的物理特性,仍然遵循了原始時(shí)間序列的內(nèi)部規(guī)律。
驗(yàn)證2:誤差驗(yàn)證。為了驗(yàn)證重構(gòu)后時(shí)間序列y′與 [0 ,24]區(qū)間內(nèi)的正弦信號y″之間的誤差,采用均方根誤差(Root Mean Squared Error,RMSE)為指標(biāo)對重構(gòu)時(shí)間序列的誤差進(jìn)行衡量[20]。RMSE的表達(dá)式為
根據(jù)式(6),計(jì)算得到正弦信號y″與重構(gòu)后時(shí)間序列y′之間的RMSE為0.0680。表明三次樣條插值具有很好的擬合效果。
以國航某發(fā)動機(jī)的巡航數(shù)據(jù)DEGT觀測值為實(shí)驗(yàn)樣本,采樣間隔約為15個飛行循環(huán),可近似為等間隔采樣。從該型發(fā)動機(jī)第1個飛行循環(huán)到第12501個飛行循環(huán),共計(jì)101個數(shù)據(jù)采樣點(diǎn)。原始DEGT數(shù)據(jù)序列如圖2所示。
圖2 原始DEGT時(shí)間序列
如圖2所示,原始時(shí)間序列長度為101,當(dāng)時(shí)間序列長度過短時(shí),由于嵌入維數(shù)的選擇問題,排列熵算法失去了其對時(shí)間序列復(fù)雜程度衡量的意義,無法準(zhǔn)確衡量時(shí)間序列的復(fù)雜度。根據(jù)文獻(xiàn)[13]中對排列熵算法的分析,選取數(shù)據(jù)長度約為1024較為理想,此時(shí)選擇嵌入維數(shù)m=6,延遲時(shí)間τ=1。根據(jù)本文提出的短時(shí)間序列插值重構(gòu)算法對其進(jìn)行重構(gòu),確定重構(gòu)維數(shù)k=10,則重構(gòu)后的時(shí)間序列長度為(101-1)*10+1=1001。原始序列與重構(gòu)后序列的對比如圖3所示。
圖3 原始序列與重構(gòu)后序列
如圖3所示,通過重構(gòu)前后的時(shí)間序列對比可知,本文所提出的基于三次樣條插值的時(shí)間序列重構(gòu)算法僅通過插值重構(gòu)增加了時(shí)間序列長度,沒有改變原始時(shí)間序列的內(nèi)部規(guī)律。對重構(gòu)后的序列進(jìn)行排列熵解算,得到其熵值為0.2964。
為驗(yàn)證本文所提出的短時(shí)間序列插值重構(gòu)方法的合理性,在延遲時(shí)間τ=1時(shí),驗(yàn)證在不同嵌入維數(shù)下,原始時(shí)間序列和重構(gòu)后時(shí)間序列的排列熵變化情況。由于原始DEGT序列長度過短,因此在計(jì)算時(shí)嵌入維數(shù)的選擇不宜過大,排列熵計(jì)算結(jié)果如表1所示。
表1 DEGT序列排列熵計(jì)算結(jié)果
根據(jù)排列熵的定義可知,排列熵的求解取值范圍為[0,?1],數(shù)值越小,表明時(shí)間序列復(fù)雜性越低。如表1所示,隨著嵌入維數(shù)的變化,短時(shí)間序列的排列熵變化范圍過小,無法準(zhǔn)確反映排列熵結(jié)果隨嵌入維數(shù)的變化過程,不能準(zhǔn)確衡量時(shí)間序列的復(fù)雜程度。
為了進(jìn)一步驗(yàn)證插值重構(gòu)算法在排列熵計(jì)算過程中的有效性,選取長度為101的隨機(jī)白噪聲序列,并與重構(gòu)后的時(shí)間序列進(jìn)行對比驗(yàn)證,所得結(jié)果如表2所示。
表2 隨機(jī)序列排列熵計(jì)算結(jié)果
如表2所示,直接對短時(shí)間序列進(jìn)行排列熵求解,仍然無法準(zhǔn)確反映排列熵結(jié)果隨嵌入維數(shù)的變化過程,同時(shí),對比表1及表2,也驗(yàn)證了在排列熵求解過程中,嵌入維數(shù)的取值不宜過?。ㄈ缜度刖S數(shù)m=2時(shí),均無法有效衡量時(shí)間序列復(fù)雜程度),否則相空間重構(gòu)的向量中包含狀態(tài)太少,算法失去意義和有效性。
排列熵算法能夠準(zhǔn)確有效地衡量時(shí)間序列復(fù)雜程度,但在工程應(yīng)用中,受限于數(shù)據(jù)樣本獲取困難的不足,時(shí)間序列呈現(xiàn)長度較短的特征。本文通過對排列熵原理進(jìn)行分析,針對短時(shí)間序列無法準(zhǔn)確使用排列熵衡量其時(shí)間序列復(fù)雜程度的問題,提出了采用基于三次樣條插值的時(shí)間序列重構(gòu)方法對原始數(shù)據(jù)進(jìn)行延拓。以隨機(jī)序列及采集到的航空發(fā)動機(jī)氣路參數(shù)序列為實(shí)驗(yàn)對象,對插值重構(gòu)方法進(jìn)行了實(shí)驗(yàn)驗(yàn)證,實(shí)驗(yàn)結(jié)果表明:
1)基于三次樣條插值的短時(shí)間序列重構(gòu)模型,能夠?qū)⒍虝r(shí)間序列延拓至合理長度,為排列熵求解過程奠定基礎(chǔ),有效解決了短時(shí)間序列復(fù)雜程度無法準(zhǔn)確衡量的問題;同時(shí),時(shí)間序列長度的確定,也避免了排列熵求解中的參數(shù)選擇問題;
2)采用插值重構(gòu)算法,未改變原始時(shí)間序列結(jié)構(gòu),遵循了原始序列規(guī)律;
3)針對不同序列,均可采用插值重構(gòu)算法進(jìn)行延拓,在工程中具有一定的普適性。