袁春艷
基于ZFFT頻譜細化仿真研究
袁春艷
頻譜細化分析是一種重要的頻譜分析手段。常見的方法有基于復調制的Zoom-FFT 法、Chirp-Z 變換、Yip-ZOOM 變換等。但是從分析精度、計算效率、分辨率、靈活性等方面來看,基于復調制的Zoom-FFT 方法是一種行之有效的方法,因而應用比較廣泛。
文章在介紹復調制Zoom-FFT方法基本原理的基礎上,用MATLAB 實現(xiàn)該算法,并通過仿真進行驗證,表明該算法能有效細化頻譜,且簡明、易實現(xiàn)。最后討論了該算法的運算量和局限性。
在內(nèi)存和FFT計算長度N有限制的情況下,既要不降低頻率分析范圍,又要增加頻譜分辨率是矛盾的,為了解決只對一個較窄頻帶的范圍進行細致觀測的問題,研究者提出了計算窄帶譜的頻譜細化分析方法。其基本思路是對信號頻譜中的某一頻段進行局部放大,也即在某一頻率附近局部增加譜線密度,實現(xiàn)可選擇的頻段分析。它是二十世紀七十年代發(fā)展起來的一項新技術,其主要目的是識別譜圖上的細微結構。頻譜細化方法有多種,考慮計算精度、速度、程序實現(xiàn)的難易程度,本文介紹其中的Zoom-FFT算法、相位補償細化算法和CZT算法三種較為實用的算法,并對前兩種方法通過MATLAB進行仿真,對其結果進行了對比驗證。
ZOOM-FFT法
復調制Zoom-FFT法(以下簡稱ZFFT)即復調制細化頻譜分析方法,是應用最為廣泛的一種選帶細化方法,ZFFT能以指定的、足夠細致的分析頻率軸上任一窄帶內(nèi)信號的頻譜結構。在序列變換點數(shù)相同的情況下,ZFFT 能獲得更加細致的頻譜,或者,在相同的頻率分辨率下,ZFFT 比基帶FFT 需要更少的傅立葉變換點數(shù)。因此,ZFFT 非常適合要求大頻率分析范圍、相隔較密集的頻率分辨和少變換點數(shù)的場合。
Zoom-FFT算法的關鍵在于利用傅立葉變換的移頻特性,將感興趣的高頻段頻率移至頻譜原點,降低采樣率重新采樣,從而獲取較細致的頻譜。它對于獲得某些特殊頻段,而不是整個帶寬的信號細微譜結構十分有用。
ZOOM-FFT原理分析
復調制細化譜分析方法采用:移頻(復調制)—低通數(shù)字濾波—重抽樣—FFT 及譜分析—頻率調整這樣一個過程。
設模擬信號為x(t),經(jīng)抗混濾波和A/D 采樣后,得到的離散序列為x(n) (n=0,1, … ,N-1),fs為采樣頻率,f1~f2為細化分析頻帶,f0為需要細化的頻帶中心頻率,D為細化倍數(shù),N為FFT 分析的點數(shù),具體算法過程可歸納為如下五個步驟:
抗混疊濾波器
復調制移頻
低通數(shù)字濾波
重新采樣
復FFT處理
與相同點數(shù)的直接FFT 相比,這一細化方法所獲得的分辨率要高D倍。因為直接進行FFT 分析時,頻率分辨率Δf=fs/N ,重采樣后的分辨率為Δf=fs/DN ,因此D有時又被稱為細化倍數(shù)。
為驗證上述算法及分析過程的正確性,在MATLAB中產(chǎn)生一個正弦組合信號:
分別利用N點ZFFT 和N/D點ZFFT 對其進行譜分析,仿真條件: f s =1024 Hz,F(xiàn)FT 點數(shù)N = 1024,細化倍數(shù)D = 32?;鶐FT 的頻率分辨率Δf= 1 Hz,而ZFFT的頻率分辨率Δf′= 1/32 Hz。對信號做N點基帶FFT處理后的峰值譜線如圖1、2。
由圖可知該信號有五個頻率成分,且各頻率成分間隔小于1 Hz,由圖可以看出信號各頻譜不易被分辨,相隔較近的幾個譜峰疊加為一個譜峰。
圖1 信號頻譜圖
圖2 移頻后信號頻譜圖
圖3 重采樣后信號頻譜圖
圖4 Zoom-FFT法細化后信號頻譜圖
細化32倍即需處理32768個采樣點,仿真時對x(t)進行離散,離散的點值即為采樣值,信號感興趣的頻率范圍108 Hz ~124 Hz,采樣完成后對采樣點移頻(中心頻率將116 Hz 頻率移到原點),可有以下步驟實現(xiàn):
取f0=116 Hz,w0=2πf0,令f( t)=exp(-jw0t )
t取離散化時刻:
則f(t)的離散化可變?yōu)椋?/p>
將兩個序列卷積得到的新序列即可實現(xiàn)細化頻域的中心頻率f0移到原點處。
為了使結果更加直觀,仿真時將最低頻率108 Hz 移到零點處,圖2為移頻后基帶FFT處理后的幅值譜線。
將移到低頻處的信號,按采樣頻率fs′=fs/D 進行重新采樣,采樣頻率比原采樣頻率降低了D倍,即對原采樣點每隔D 點再抽樣一次,可以得到信號x(k) 零點附近的部分細化頻譜,如圖3所示。
對重采樣后的N 點復序列進行復FFT 處理,得到N條譜線,最后得到細化的譜線同原來的排列順
序是不同,這就必須對細化后的頻譜進行調整,使其與原始譜線一致,將上述譜線移至實際頻率處即得到細化后的頻譜。如圖4所示。
此圖中,ZFFT的幅值譜線中5 條譜線清晰可見,說明ZFFT效果明顯。
若對于移到低頻處的信號,按采樣頻率f s′ = f s /D進行重新采樣,對重采樣后 N/D 點復序列進行N/D點復FFT 處理,可以得到信號得到信號 N/D 條譜線,這樣可以大大降低運算量和采樣效率。對頻譜進行調整后,這樣得到的譜線仍與原始譜線一致,說明ZFFT優(yōu)勢。如圖5所示。
ZFFT運算量及局限性
當采用時域抽取FFT算法時,N 點DFT的復數(shù)乘法次數(shù)為復數(shù)加法次數(shù)為。為簡單起見,僅比較兩種算法的復數(shù)乘法次數(shù)。
圖5 降低采樣點數(shù)后重采樣的信號頻譜圖
設頻率分辨率Δf=fs/N ,細化倍數(shù)D=Δf′/Δf 。要獲得Δf ′的分辨率,基帶FFT的運算量為
采用ZFFT 算法,在復調制時只計算重采樣的點,需N 次復數(shù)乘法。同樣,調制系數(shù)的計算也需N次復數(shù)乘法。設數(shù)字濾波器的階數(shù)為K,濾波器系數(shù)離線生成,則濾波需要DN?K 次復數(shù)乘法,則總的運算量為
隨著細化倍數(shù)的增加,基帶FFT 和ZFFT 的運算量都會大幅度增加;ZFFT 只有當細化頻帶較窄(此時無需數(shù)字濾波)或長序列的情況下,與基帶FFT 相比才具有運算量上的優(yōu)勢。
ZFFT算法簡明,容易實現(xiàn),但該算法也存在自身的局限性,但也存在以下問題。
1.細化倍數(shù)越高,需要的時域采樣點數(shù)增加,需要存放中間數(shù)據(jù)的內(nèi)存空間巨大限制了最大細化倍數(shù)。
2.濾波器截止頻率處的頻譜不可避免會出現(xiàn)局部失真。
3.細化倍數(shù)越高,重采樣的選抽比越高,計算量越大。
4.頻率成分調整較復雜,算法的靈活性較差。
信號經(jīng)過復調制、數(shù)字濾波和抽取后,由于將信號從頻率(想要觀察頻段的中心頻率)搬移到零頻,信號頻譜在正頻域和負頻率變得不對稱,這就使得細化后的信號變成了一個復信號,這是細化后信號頻譜同原始頻譜不一致的根本原因。我們可以通過邊帶調制的方法使得細化后的信號變成實信號來消除這種不一致。
通信信號檢測是一種非合作的方式,要獲得對方信息,必須首先檢測對方的通信頻率, 而檢測頻點的準確性對后續(xù)處理起到非常重要的作用。例如,在某超短波頻段中,我們關心的戰(zhàn)術電臺的信號帶寬小于20kHz,信道間隔25kHz,如果我們檢測到的信號頻率和實際相差較大時,將對解調結果產(chǎn)生很大影響。我們在實際工程中采用了改進的Zoom-FFT信號檢測算法,大大提高了信號頻率檢測的準確性。
實踐表明,我們可以看出經(jīng)過改進Zoom-FFT算法得到的信號的頻率值比粗檢信號的頻率值更加接近載波頻率,較大地提高了信號檢測的準確性。在實際的工作中,我們成功地將該方法運用到某軟件無線電研究項目中,取得很好的效果。將改進的算法運用于實際的通信信號檢測中,能夠有效提高信號頻率檢測的準確性。
10.3969/j.issn.1001-8972.2015.10.004