FFT的前世今生(二)
從直觀上講,時域分析清晰易見,示波器即是進行時域觀察的主要工具,可觀察波形形狀,測量脈寬,相差等信息。但對于信號的進一步分析,比如測量各次諧波在所占的比重和能量分布,時域上的分析就力不從心了,但是利用從連續(xù)時間傅里葉變換發(fā)展而來的快速傅里葉變換FFT進行分析就很有意義了。通信系統(tǒng)中必不可少的要使用頻譜分析技術,例如頻分復用技術。 頻譜分析一般利用快速傅里葉變換FFT計算頻率譜和功率譜,可直接用來提取特征頻率和譜特征。因為計算機只能夠處理離散的數據點,但FFT是傅里葉變換的一種近似,與傅里葉變換存在差別,且具有固有的局限:柵欄現象。本文就在上一篇《FFT的前世今生》的基礎上,從測試測量的角度,談一談在示波器的FFT運算中容易被大家忽略的一些問題。
本文引用地址:http://2s4d.com/article/192827.htm頻率分辨率與時基設置(TimeBase)
頻率分辨率的定義是:在使用FFT運算時,在頻率譜上所能得到的最小的兩個頻率點間的間隔。
ΔF=Fs/N=1/NT=1/Tp
稱ΔF為頻率分辨率,即:采樣率/采樣點數,ΔF越小說明頻率分辨率越高。ΔF僅與信號的實際長度成反比,即待分析的信號持續(xù)時間越長,ΔF越小,頻率分辨率越高。
柵欄效應與頻率分辨率:
示波器輸入的信號一般都為非周期的連續(xù)信號
()axt
,它的頻譜也是連續(xù)的,但是示波器所做的工作
是將 ( ) a x t 進行等間隔采樣并且截斷,然后進行FFT的運算得到一個離散的頻譜圖,相當于對連續(xù)的頻譜圖也進行了采樣。這樣有一部分頻譜分量將被“擋在”采樣點之外,就好像我們在通過一個柵欄觀察頻譜圖,這種現象稱為“柵欄效應”。這樣就有可能發(fā)生一些頻譜的峰點或谷點被柵欄所攔住,不可能被我們觀察到。
不管是時域采樣還是頻域采樣,都有相應的柵欄效應。只是當時域采樣滿足采樣定理時,柵欄效應不會有什么影響。而頻域采樣的柵欄效應則影響很大,“擋住”或丟失的頻率成分有可能是重要的或具有特征的成分,使信號處理失去意義。
柵欄效應是制約頻譜分析諧波分析精度的一個瓶頸。柵欄效應在非同步采樣的時候,影響尤為嚴重。在非同步采樣時,由于各次諧波分量并未能正好落在頻率分辨點上,而是落在兩個頻率分辨點之間。這樣通過FFT不能直接得到各次諧波分量的準確值,而只能以臨近的頻率分辨點的值來近似代替,這就是柵欄效應降低頻譜分析精度的原因。
由此我們可以得出這樣的結論:減小柵欄效應可用通過提高頻譜采樣間隔也就是頻率分辨率的方法來解決。間隔小,頻率分辨率高,被“擋住”或丟失的頻率成分就會越少。但是頻率分辨率的提高會增加采樣點數,使計算工作量增加。
我們可以通過兩種方式增加頻率分辨率:
a:物理分辨率=采樣頻率/采樣點數。
物理分辨率的實際意義在于它可以衡量FFT實際上可以區(qū)分的頻率分量的間隔。提高物理分辨率的方法一般是通過增加數據的有效長度,這相當于在模擬域增加了矩形窗的寬度。從而在模擬域減小了sinc主旁瓣寬度,減小了相鄰頻率分量的混疊。
這種增加采樣點的方法主要針對無限長序列的FFT計算。對于無限長序列,不像有限長序列那樣必須補零來提高視在分辨率,無限長序列可以通過增加數據長度來提高物理分辨率。
第 2 頁 共 5 頁 2012-12-19
b:視在分辨率=采樣頻率/分析點數
在序列尾部補零的方法可以使得分析點數增大,故補零的方法可以提高頻譜的視在分辨率。對序列的尾部補零的方法主要針對有限長序列。對于有限長序列,有時只能用補零或者插值來改善頻率分辨率。通過補零處理,使得頻域采樣密度增大,得到高密度譜。補零的方法所得到的頻譜圖所改善的只是圖形的視在分辨率,并不能得到頻譜的更多細節(jié)。
增加采樣點數,增加了輸入序列的階次,從而提供頻譜的更多細節(jié),這是真正的分辨率(物理分辨率)。對序列只補零而不增加數據,輸入序列和它的頻譜階次依舊沒有提高,只是把頻譜畫的密一些,所以改善的只是圖形的視在分辨率,并不能得到頻譜的更多細節(jié)。增加序列的長度能夠改善頻譜的真正分辨率,這是基本的規(guī)律。
上面的討論可知,改善分辨率的具體方法有如下兩種
(1)對有限長序列采取尾部補零的方法提高視在分辨率
(2)對無限長序列通過真正增加采樣點來提高物理分辨率
有限長序列和無限長序列是針對實際信號來說的,例如非周期的但是包含無限長信息的信號可以稱為無限長序列,嚴格的周期信號和脈沖信號(脈沖之前和之后無限長時間內都是無效信息)都可以稱為有限長序列,當然實際上嚴格的周期信號是不存在的。對于示波器來說,時間窗口內采集到的可以是有限長序列的全部信息或者是無限長序列的一部分信息。所以,如果采集到的是有限長序列的全部信息,那么只能通過補零的方式增加視在分辨率,如果采集到的是無限長序列的一部分信息,那么可以通過增加時間窗口的長度(不是采樣點)來增加物理頻率分辨率。
請看下面的實例:
圖1中正弦波測試使用的時基是5ns/div,波形時間長度是50ns,計算FFT之后的頻譜分辨率是20MHz(1/50ns),
圖1 捕獲50ns的信號,頻率分辨率是20MHz
如果改變時基設置,頻譜分辨率會有變化。如圖2所示:將時基設置為10ns/div,波形長度是100ns,頻譜分辨率可以提高到10MHz。
對于通過補零的方法增加FFT頻譜的視在分辨率,力科的示波器也有相應的解決方案。力科示波器使用了兩種非常常用的FFT算法供用戶選擇:Cooley-Tukey算法和LeastPrime算法。Cooley-Tukey算法也稱為Power2算法,它提供了計算機一種非常快速的FFT計算方式,計算的FFT點數規(guī)模是2的整數方次,因此它會在示波器時域采集的信號中截取2的N次方的整數來作為FFT計算的時域樣本,該截取的整數是最接近于采樣點的整數。如下圖2所示:
評論