姜恩華,楊一軍,竇德召,汪徐德,陳得寶
(淮北師范大學,安徽 淮北 235000)
數字信號處理課程中的傅里葉變換教學探索
姜恩華,楊一軍,竇德召,汪徐德,陳得寶
(淮北師范大學,安徽 淮北 235000)
詳細分析了非周期信號的傅里葉變換和周期信號的傅里葉級數。借助時域采樣定理和頻域采樣定理,推導了連續非周期信號的傅里葉變換、序列的傅里葉變換和離散傅里葉變換X(k)之間的關系。借助X(k)計算非周期信號的頻譜,分析了連續周期信號的傅里葉級數和周期序列的傅里葉級數的差別。借助頻域采樣定理,推導了周期序列傅里葉級數與離散傅里葉變換X(k)之間的關系。借助X(k)計算周期序列的頻譜,在CCStudiov3.3軟件開發環境下,編寫C語言程序,實現快速傅里葉變換(FFT)算法,計算出X(k)。以矩形序列和正弦序列為例,借助X(k),求得矩形脈沖信號和正弦序列的頻譜結構。
傅里葉變換;序列的傅里葉變換;離散傅里葉變換;傅里葉級數
傅里葉變換是信號與系統、數字信號處理課程的重要核心內容之一,主要包括非周期信號的傅里葉變換和周期信號的傅里葉級數。非周期信號的傅里葉變換主要分為:連續非周期信號的傅里葉變換、序列的傅里葉變換和離散傅里葉變換;周期信號的傅里葉級數主要分為:連續周期信號的傅里葉級數和周期序列的傅里葉級數[1-3]。本文結合時域采樣定理和頻域采樣定理,歸納了非周期信號的傅里葉變換之間的關系和周期信號傅里葉級數之間的差別。可以看出,通過離散傅里葉變換X(k)能夠表示出非周期信號和周期序列的頻譜。X(k)可以通過快速傅里葉變換FFT算法計算[4-6]。理順非周期信號的傅里葉變換之間的關系和周期信號傅里葉級數之間的差別,對于如何開展這部分內容的教學,有極大的幫助[7,8]。
1.1 非周期信號的傅里葉變換
非周期信號的傅里葉變換主要分為:連續非周期信號的傅里葉變換、序列的傅里葉變換和離散傅里葉變換。在時域對連續非周期信號xa(t)進行等間隔采樣,得到序列x(n);對序列x(n)截斷得到有限長的序列,其長度為M。連續非周期信號xa(t)的傅里葉變換公式為積分公式,其中模擬角頻率Ω和時間t都是連續變化的量,通過時域采樣把時間t離散化,若xa(t)為帶限信號,采樣頻率fs≥2fc,結合t=nTs和ω=ΩTs公式,可以根據連續非周期信號xa(t)的傅里葉變換的正變換公式推導出序列x(n)的傅里葉變換的正變換公式,如圖1所示。若在時域對連續非周期信號xa(t)進行等間隔采樣,根據時域采樣定理,xa(t)的頻譜以Ωs為周期做周期延拓,結合t=nTs和ω=ΩTs公式,可以根據xa(t)的傅里葉變換的逆變換公式推導出序列x(n)的傅里葉變換的逆變換公式,如圖1所示。在序列的傅里葉變換公式中,由于數字域頻率ω仍然是連續變化的量,所以計算序列x(n)的傅里葉變換的逆變換公式仍要通過積分計算。若對X(ejω)的數字域頻率ω在一個周期[0,2π]內,等間隔采樣N個點,把數字域頻率ω離散化,即ωk=(2π/N)k,只要滿足頻域采樣定理即N≥M,可以根據序列x(n)的傅里葉變換公式推導出有限長序列的離散傅里葉變換公式,如圖1所示。
1.2 借助X(k)計算非周期信號的頻譜
根據離散傅里葉變換X(k)的第一層物理含義[4],X(k)是對X(ejω)在數字域頻率ω的一個周期[0,2π]內等間隔采樣N個點得到的值。若頻域采樣點數N≥M,可以通過N個X(k)表示X(ejω),從而表示出非周期信號xa(t)的頻譜。
求非周期信號xa(t)的頻譜,可以對非周期信號xa(t)時域采樣,得到有限長序列x(n),只要時域采樣滿足時域采樣定理,有限長序列x(n)的離散傅里葉變換X(k)就可以表示非周期信號xa(t)的頻譜,如(1)式所示[4],其中Fs為對xa(t)時域采樣時的采樣頻率,N為在X(ejω)的數字域頻率ω的一個周期[0,2π]內的采樣點數,F為頻率分辨率,F=Fs/N。由于X(k)為離散值,采用(1)式計算非周期信號xa(t)的頻譜,只需計算出xa(t)的頻譜的N個值,即柵欄效應。

Xa(kF)=TsX(k),k=0,1,2,3,…N-1
(1)
離散傅里葉變換X(k)通常使用快速傅里葉變換FFT算法計算,把X(k)代入(1)式,計算出非周期信號xa(t)的頻譜。
2.1 周期信號的傅里葉級數

2.2 借助X(k)計算周期序列的頻譜



3.1 離散傅里葉變換DFT的快速算法
離散傅里葉變換DFT的快速算法主要包括時域抽取法和頻域抽取法,本文以基2FFT算法為例,在CCStudiov3.3軟件集成開發環境下[9],采用C語言編寫程序[10],實現DFT的快速算法,計算出離散傅里葉變換X(k)。
3.2 應用DFT求非周期信號的頻譜
采用基2FFT時域抽取法計算X(k),采用C語言編寫程序,步驟如下。
(1)旋轉因子WNk的生成
采用遞推方法求解旋轉因子WNk,如(2)式所示,先求出旋轉因子WN0和WN1作為遞推的初始條件。
(2)
(2)倒位序列的生成
根據倒序的樹狀圖,第n個葉子節點到根節點的分支標號為把n逐次除以2取余數,自下而上依次標號。倒序數為從葉子節點到根節點對應的二進制數轉化的十進制數。假設求得的倒序數為m,若n (3)時域抽取算法DIT-FFT程序設計 根據時域抽取算法DIT-FFT運算流圖,采用3層循環結構計算出X(k)。有多少級蝶形運算,外層循環就執行幾次;每級蝶形有幾個蝶形分組,中層循環就執行幾次;每個蝶形分組包含幾個蝶形,內層循環就執行幾次;內層循環的循環體為計算一個基2FFT的時域抽取蝶形運算流圖的過程。 在CCStudio v3.3軟件集成開發環境下,采用C語言編寫程序,實現了基2FFT的時域抽取算法DIT-FFT,以矩形序列R10(n)為例,計算其X(k),通過CCStudio v3.3軟件的view/graph觀察,矩形序列的時域波形如圖(4)所示,其頻譜如圖(5)所示,基2FFT的時域抽取算法DIT-FFT計算出的X(k)如圖(6)所示。 比較圖(5)和圖(6)可知,X(k)與矩形序列的傅里葉變換X(ejω)是一致的,與矩形脈沖信號的傅里葉變換F(jΩ)也是一致的,即通過X(k)可以表示矩形脈沖信號的頻譜。 3.3 應用DFT求周期序列的頻譜 采用基2FFT頻域抽取法計算X(k),采用C語言編寫程序,步驟如下。 (1)旋轉因子WNk的生成 旋轉因子WNk可以按照式(3)直接計算。 (3) (2)頻域抽取算法DIF-FFT程序設計 根據頻域抽取算法DIF-FFT運算流圖,采用3層循環結構計算出X(k)。有多少級蝶形運算,外層循環就執行幾次;每級蝶形有幾個旋轉因子WNk,中層循環就執行幾次;每個旋轉因子WNk對應幾個蝶形,內層循環就執行幾次;內層循環的循環體為計算一個基2FFT的頻域抽取蝶形運算流圖的過程。 (3)計算出X(k) 根據倒序的樹狀圖,第n個葉子節點到根節點的分支標號為把第n個葉子節點對應的倒序數逐次除以2取余數,自下而上依次標號。正常順序數為從葉子節點到根節點對應的二進制數轉化的十進制數。假設求得的正常順序數為m,若n 在CCStudio v3.3集成開發環境下,采用C語言編寫程序,實現了基2FFT的頻域抽取算法DIF-FFT,以正弦序列sin(π/32*n)為例,計算其X(k),通過CCStudio v3.3的view/graph觀察,正弦序列的時域波形如圖(7)所示,其頻譜如圖(8)所示,基2FFT的頻域抽取算法DIF-FFT計算出的X(k)如圖(9)所示。比較圖(8)和圖(9)可知,在主值區間內,X(k)與正弦序列的傅里葉變換是相同的,可見X(k)與正弦序列的傅里葉級數的系數也是相同的。由于正弦序列被截斷為256點,在觀察X(k)時,能夠觀察到截斷效應,離散譜線向附近展寬。 本文詳細分析了非周期信號的傅里葉變換和周期信號的傅里葉級數。對于非周期信號的傅里葉變換,結合時域采樣定理,推導了連續非周期信號的傅里葉變換與序列傅里葉變換之間的關系;結合頻域采樣定理,推導了序列傅里葉變換與離散傅里葉變換之間的關系。對于周期信號傅里葉級數,指出了連續周期信號傅里葉級數與周期序列傅里葉級數的區別;結合頻域采樣定理,推導了周期序列傅里葉級數與離散傅里葉變換之間的關系。可以看出,借助離散傅里葉變換X(k)可以求得非周期信號的頻譜和周期序列的頻譜。在CCStudio v3.3軟件集成開發環境下,編寫實現FFT快速算法的C語言程序,以矩形序列和正弦序列為例,計算其X(k),通過CCStudio v3.3軟件的view/graph觀察,得到了矩形脈沖信號的頻譜結構圖和正弦序列的頻譜結構圖,并觀察到了柵欄效應和截斷效應。 [1] 奧本海姆,威爾斯基,納瓦布.信號與系統[M].劉樹棠,譯.西安:西安交通大學出版社,2004. [2] 鄭君里,應啟珩,楊為理.信號與系統(第三版)[M].北京:高等教育出版社,2011. [3] 陳生譚,郭寶龍,李學武,高建寧.信號與系統(第三版)[M].西安:西安電子科技大學出版社,2014. [4] 高西全,丁玉美.數字信號處理(第四版)[M].西安:西安電子科技大學出版社,2016. [5] A.V.奧本海姆,R.W.謝弗,J.R.巴克.離散時間信號處理(第二版)[M].劉樹棠,黃建國,譯.西安:西安交通大學出版社,2004. [6] 程佩青.數字信號處理教程(第四版)[M].北京:清華大學出版社,2013. [7] 雷大軍,黃鐵鐵,姚敏,等.傅里葉變換教學方法探討[J].湘南學院學報,2015,(2):75-77. [8] 丹梅,曹聚亮,吳京,等.關于傅里葉變換性質教學方法的探討[J].電氣電子教學學報,2013,35(2):66-68. [9] CCStudio v3.3[EB/OL].http://www.ti.com.cn/tool/cn/ccstudio,2014-4. [10] Rulph Chassaing.DSP原理及其C編程開發技術[M].韓月秋,譯.北京:電子工業出版社,2005. Teaching Research of the Fourier Transform in the Digital Signal Processing JIANGEn-hua,YANGYi-jun,DOUDe-zhao,WANGXu-de,CHENDe-bao (HuaibeiNormalUniversity,Huaibei235000,China) In the paper,the Fourier transformation of the Non-periodic signal and the Fourier series of periodic signal were analyzed in detail.By using the time domain sampling theorem and the frequency domain sampling theorem,the relationship of the Fourier transformation of the Non-periodic signal,the sequences Fourier transform and the discrete Fourier transform X(k) were deduced.The frequency spectrum of the non-periodic signal was calculated by using X(k).The difference between the Fourier series of the continuous periodic signal and the Fourier series of the periodic sequences is analyzed.By using the frequency domain sampling theorem, the relationship of the Fourier series of the periodic sequences and the discrete Fourier transform X(k) were deduced.The frequency spectrum of the periodic sequences was calculated by using X(k).Using the CCStudio v3.3 software,the fast Fourier transform algorithm(FFT) was implemented by the C language program,the X(k) was calculated by the FFT algorithm. Using the example of the Rectangular sequence and the Sine sequence,the frequency spectrum of Rectangular pulse signal and the Sine sequence were obtained by using X(k). Fourier transformation; sequences Fourier transform; discrete Fourier transform; Fourier series 2016-12-05 安徽省高校自然科學研究重點項目(KJ2016A628);安徽省教育廳名師工作室(2015msgzs138);安徽省高等教育振興計劃項目(2014zdjy060) 姜恩華(1974-),男,碩士,淮北師范大學物理與電子信息學院副教授,研究方向:數字信號處理與DSP技術。 TN911.72 A 1674-3229(2017)01-0052-05





4 結論