数字信号处理,实验,Matlab实验FFT算法实现.docx
《数字信号处理,实验,Matlab实验FFT算法实现.docx》由会员分享,可在线阅读,更多相关《数字信号处理,实验,Matlab实验FFT算法实现.docx(10页珍藏版)》请在三一办公上搜索。
1、数字信号处理,实验,Matlab实验FFT算法实现实验二 应用FFT对信号进行频谱分析 一、实验目的 1、加深对离散信号的DTFT和DFT的及其相互关系的理解。 2、在理论学习的基础上,通过本次实验,加深对快速傅里叶变换的理解,熟悉FFT算法极其程序的编写。 3、熟悉应用FFT对典型信号进行频谱分析的方法。 4、了解应用FFT进行信号频谱分析过程中可能出现的问题,以便在实际中正确应用FFT。 二、实验原理和方法 一个连续信号xa(t)的频谱可以用它的傅里叶变换表示 + X(jW)=a-jWtx(t)edt a 如果对该信号进行理想采样,可以得到采样序列: x(n)=Xa(nT) 同样可以对该序
2、列进行Z变换,其中T为采样周期 X(z)=n=-jwx(n)z+-n 当Z=e得时候,我们就得到了序列的傅里叶变换 X(e)=jwn=-x(n)e+-jwn 其中w称为数字频率,它和模拟频域的关系为 w=WT=Wfs 式中的fs是采样频率,上式说明数字频率是模拟频率对采样频率fs的归一化。同模拟域的情况相似,数字频率代表了序列值变化的速率,而序列的傅里叶变换称为序列的频谱。序列的傅里叶变换1+w-2pm和对应的采样信号频谱具有下式的对应关系 : X(e)=Xa(j) T-Tjw 即序列的频谱是采样信号频谱的周期延拓。从式可以看出,只要分析采样序列的频谱,就可以得到相应的连续信号的频谱。注意:这
3、里的信号必须是带限信号,采样也必须满足Nyquist定理。 在各种信号序列中 ,有限长序列在数字信号处理中占有很重要的地位。无限长的序列也往往可以用有限长序列来逼近。对于有限长的序列我们可以使用离散傅里叶变换,这一变换可以很好的放映序列的频域特性,并且容易利用快速算法在计算机上实现当序列的长度是N时,我们定义离散傅里叶变化为: X(k)=DFTx(n)=-j2pNWn=0N-1knN其中,WknN=e,它的反变换定义为: 1N-1-kn x(n)=IDFTX(k)= X(k)WNNk=0-k根据式和令Z=WN,则有 N-1n=0 X(z)-kz=wNkn=x(n)WN=DFTx(n) 可以得到
4、X(k)=X(z)-kz=WN=ej2pkN-k,WN是Z平面单位圆上幅角为w=2pk的点,就是见单位圆N进行N等分以后第K个点。所以,X(k)是Z变换在单位圆上的等距采样,或者说是序列傅里叶变换的等距采样。时域采样在满足Nyquist定理时,就不会发生频谱混淆;同样地,在频率域进行采样的时候,只要采样间隔足够小,也不会发生时域序列混淆。 DFT时对序列傅里叶变换的等距采样,因此可以用于序列的频谱分析。在运用DFT进行频谱分析的时候可能有三种误差,分析如下: 混淆现象 从式中可以看出,序列的频谱是采样信号频谱的周期延拓,周期是2pT,因此当采样速率不满足Nyquist定理,即采样频率fs=1T
5、小于两倍的信号频率时,经过采样就会发生频谱混淆。这导致采样后的信号序列频谱不能真实的反映原信号的频谱。所以,在利用DFT分析连续信号频谱的时候,必须注意这一问题。这就告诉我们,在确定信号的采样频率之前,需要对频谱的性质有所了解。在一般的情况下,为了保证高于折叠频率的分量不会出现,在采样之前,先用低通模拟滤波器对信号进行滤波。 泄露现象 实际中的信号序列往往很长,甚至是无线长序列。为了方便,我们往往用截短的序列来近似它们,这样可以使用较短的DFT来对信号进行频谱分析。这种截短等价于给原始信号序列乘以一个矩形窗函数,而矩形窗函数的频谱不是有限带宽的,从而它和原信号的频谱进行卷积以后会扩展原信号的频
6、谱。值得一提的是,泄漏时不能和混淆完全分离的,因为泄漏导致频谱的扩展,从而造成混淆。为了减小泄漏的影响,可以选择是党的窗函数使频谱的扩散减小到最小。 栅栏效应 因为DFT是对单位圆上Z变换的均匀采样,所以它不可能将频谱视为一个连续函数。这样就产生了栅栏效应,从某种角度来看,用DFT来观看频谱就好像通过一个栅栏来观看一幅景象,只能在离散点上看到真实的频谱。这样的话就会有一些频谱的峰点或谷点被“栅栏”挡住,不能被我们观察到。减小栅栏效应的一个方法是在原序列的末端补一些零值,从而变动DFT的点数。这种方法的实质是人为地改变了对真是频谱采样的点数和位置,相当于搬动了“栅栏”的位置,从而使得原来被挡住的
7、一些峰点或谷点显露出来。注意,这时候每根谱线对应的频率和原来的已经不相同了。 从上面的分析过程可以看出,DFT可以用于信号的频谱分析,但必须注意可能产生的误差,在应用过程中要尽可能减小和消除这些误差的影响。 快速傅里叶变换FFT并不是与DFT不相同的另一种变换,而是为了减少DFT运算次数的一种快速算法。它是对变换式进行一次次的分解,使其成为若干小数点DFT的组合,从而减小运算量。常用的FFT是以2为基数,其长度N=2。它的运算效率高,程序比较简单,使用也十分菲娜改变。当需要进行变换的序列的长度不是2的整数次方的时候,为了使用以2为基的FFT,可以用末尾补零的方法,使其长度延长至2的整数次方。I
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字信号 处理 实验 Matlab FFT 算法 实现
链接地址:https://www.31ppt.com/p-3558741.html