陳 釗,符 嬈,雷 利
(中國飛行試驗研究院,陜西西安 710089)
在傳統(tǒng)的傅立葉變換算法中,選取的分析數(shù)據長度和頻率分辨率有直接關系,而在實際工程應用中,如果選取的分析數(shù)據長度過短,則頻率分辨率過低,而且可能導致計算的幅值小于真實值,產生較大的誤差,如果選取分析數(shù)據長度較長,會提高分辨率,但會引發(fā)新的問題,在該段數(shù)據內,信號的頻率不一定是穩(wěn)定的,依然會導致計算結果誤差過大[1],提高分辨率還有一種常用的做法是補零,該方法也可以有效的提高頻率分辨率,但是該方法不能提高計算精度[2]。
筆者針對這個問題,提出了一種改良的傅立葉算法,在不增加分析數(shù)據長度的同時,提高算法的分辨率和精度。
對于任何一個函數(shù)f(t),展開成三角形式的傅立葉級數(shù)為:
根據三角函數(shù)的正交性,公式(1)中的個性系數(shù)如下[3]:
筆者對公式(1)進行改良,增加一個新的參數(shù)m,新的傅立葉算法公式為:
根據三角函數(shù)的正交性,公式(2)中的個性系數(shù)如下:
現(xiàn)產生一組仿真振動信號為:
如果分析數(shù)據點數(shù) N和采樣率 fs一樣,均取8192,那么分辨率即為1 Hz,采用傳統(tǒng)的傅立葉方法進行分析,得到頻譜圖如圖1所示。
圖1 傳統(tǒng)傅立葉算法對仿真數(shù)據分析結果
信號存在160.5 Hz和360 Hz兩個頻率,傅立葉分析時,由于160.5 Hz處在分辨率所在的160 Hz和161 Hz之間,其分析結果與實際值產生了非常大的誤差,信號實際幅值為10,而分析結果僅為6.356,只有實際值的63.56%,誤差高達36.44%,這個誤差已經超出了大部分工程分析的可接受范圍,而360 Hz恰好在分辨率所在頻率上,計算結果與實際幅值非常接近,誤差僅為0.44%。
而在實際工程中,振動信號的頻率很難恰好出現(xiàn)在分辨率所在頻率上,因此必須提高分析精度,才可以得到更加準確的振動幅值。傳統(tǒng)的分析方法中,提高分辨率的方法是增加分析數(shù)據長度,而增加數(shù)據長度則可能帶來很多新的問題。
現(xiàn)采用改良后的傅立葉分析方法對仿真信號進行分析,取m=0.1,即將分辨率提高10倍,由原來的1 Hz提高到0.1 Hz,分析結果如圖2所示。
從圖2的分析結果可以看出,改良后的傅立葉算法在360 Hz頻率的分析結果與傳統(tǒng)的傅立葉分析結果一致,而在160.5 Hz的頻率,改良后的傅立葉算法分析結果幅值為 10.01,與真實結果 10只誤差了0.1%,精度得到了很大的提升。
圖2 改良傅立葉算法對仿真數(shù)據分析結果
在某型發(fā)動機試飛過程中,曾經發(fā)生發(fā)動機空中停車故障,現(xiàn)提取該發(fā)動機空中停車期間的振動數(shù)據,分別采用傳統(tǒng)傅立葉法分析和改良后的傅立葉算法對該數(shù)據進行分析,如圖3、4所示。
圖3 傳統(tǒng)傅立葉法分析結果
圖4 改良后傅立葉法分析結果
該數(shù)據采樣率為12 500,每次分析數(shù)據長度為8192,即分辨率為1.35 Hz,改良后的傅立葉法分析分辨率為0.1 Hz。兩種方法分析結果對比可以發(fā)現(xiàn),不管采用傳統(tǒng)的方法還是改良后的傅立葉法,計算出來的燃發(fā)器振動幅值和動力渦輪振幅幅值的變化規(guī)律都是一致的,但是兩種方法計算出來的幅值大小有一定的區(qū)別,具體差別如表1所列。
表1 兩種分析方法對比結果
從表2的對比結果可以看出,兩種方法的計算結果存在很大的差別,改良后的傅立葉法分析結果都比傳統(tǒng)的傅立葉法分析結果大,根據仿真計算的經驗,傳統(tǒng)傅立葉法的分析結果在很多時候都可能降低振動的幅值,使處理結果小于真實振動幅值,因此認為改良后的傅立葉法分析結果更為可信,在整個發(fā)動機空中停車的過程中,燃發(fā)器最大振動幅值應為4.07 g,動力渦輪的最大振幅為2.94 g。
改進后的傅立葉法可以很大程度上提高數(shù)據處理精度,但是會產生很大的運算量,如果取m=0.1,運算量會是傳統(tǒng)傅立葉算法的10倍,在工程上會存在很多問題,筆者提出一個解決方法,具體流程如圖5所示。
如對仿真信號的分析,可首先采用傳統(tǒng)的傅立葉算法進行分析,根據傳統(tǒng)的傅立葉算法結果,可以確定振動信號的頻率在160 Hz和360 Hz左右,而后可選取158 ~162 Hz,358 ~362 Hz,這兩個區(qū)間段采用改良后的傅立葉法進行分析,分別取0.1 Hz。采用這種方法,既可以準確的得到振幅幅值,又不產生較大的運算量。
圖5 流程圖
采用改良后的傅立葉算法對仿真數(shù)據和發(fā)動機振動數(shù)據進行分析,可得出如下結論。
(1)采用改良后的傅立葉算法可以更為準確的得到振動信號的幅值,如果采用傳統(tǒng)的傅立葉法分析振動數(shù)據,分析結果有可能小于實際振動幅值,如果在發(fā)動機振動監(jiān)控中,則可能錯過發(fā)動機振動超限的故障。
(2)采用改良后的傅立葉算法會在一定程度上增加運算量,但是如果采用傳統(tǒng)傅立葉算法和改良后傅立葉算法相結合的方法,既可以準確的得到振幅幅值,又可以不大幅度增加運算量。
[1] 陳 釗,任瑞冬,張 強.振動數(shù)據處理中分辨率的確定方法及應用[J].現(xiàn)代機械,2010(2):28-30.
[2] 趙志軍.補零對有限長DFT序列頻譜及的影響[J].北京廣播學院學報(自然科學版),2004,11(1):73-76.
[3] 靳 希,楊爾濱,趙 玲.信號處理原理與應用[M].第2版.北京:清華大學出版社,2008.