实验二参考 快速傅立叶变换(FFT)及其应用_第1页
实验二参考 快速傅立叶变换(FFT)及其应用_第2页
实验二参考 快速傅立叶变换(FFT)及其应用_第3页
实验二参考 快速傅立叶变换(FFT)及其应用_第4页
实验二参考 快速傅立叶变换(FFT)及其应用_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验二快速傅立叶变换(FFT)及其应用 一、实验目的 1.在理论学习的基础上,通过本实验,加深对FFT的理解,熟悉FFT子程序。 2.熟悉应用FFT对典型信号进行频谱分析的方法 3.了解应用FFT进行信号频谱分析过程中可能出现的问题以便在实际中正确应用FFT。二、实验原理 在各种信号序列中,有限长序列信号处理占有很重要地位,对有限长序列,我们可以使用离散Fouier变换(DFT)。这一变换不但可以很好的反映序列的频谱特性,而且易于用快速算法在计算机上实现,当序列x(n)的长度为N时,它的DFT定义为:,反换为:有限长序列的DFT是其Z变换在单位圆上的等距采样,或者是序列Fourier变换的等距

2、采样,因此可以用于序列的谱分析。 FFT并不是与DFT不同的另一种变换,而是为了减少DFT运算次数的一种快速算法。它是对变换式进行一次次分解,使其成为若干小点数的组合,从而减少运算量。常用的FFT是以2为基数的,其长度 N=2L,它的效率高,程序简单使用非常方便,当要变换的序列长度不等于2的整数次方时,为了使用以2为基数的FFT,可以用末位补零的方法,使其长度延长至2的整数次方。在运用DFT进行频谱分析的过程中可能产生几种问题:(1)混叠 序列的频谱时被采样信号的周期延拓,当采样速率不满足Nyquist定理时,就会发生频谱混叠,使得采样后的信号序列频谱不能真实的反映原信号的频谱。 避免混叠现象

3、的唯一方法是保证采样速率足够高,使频谱混叠现象不致出现,即在确定采样频率之前,必须对频谱的性质有所了解,在一般情况下,为了保证高于折叠频率的分量不会出现,在采样前,先用低通模拟滤波器对信号进行滤波。(2)泄漏 实际中我们往往用截短的序列来近似很长的甚至是无限长的序列,这样可以使用较短的DFT来对信号进行频谱分析,这种截短等价于给原信号序列乘以一个矩形窗函数,也相当于在频域将信号的频谱和矩形窗函数的频谱卷积,所得的频谱是原序列频谱的扩展。 泄漏不能与混叠完全分开,因为泄漏导致频谱的扩展,从而造成混叠。为了减少泄漏的影响,可以选择适当的窗函数使频谱的扩散减至最小。DFT是对单位圆上Z变换的均匀采样

4、,所以它不可能将频谱视为一个连续函数,就一定意义上看,用DFT来观察频谱就好像通过一个栅栏来观看一个图景一样,只能在离散点上看到真实的频谱,这样就有可能发生一些频谱的峰点或谷点被“尖桩的栅栏”所拦住,不能别我们观察到。 减小栅栏效应的一个方法就是借助于在原序列的末端填补一些零值,从而变动DFT的点数,这一方法实际上是人为地改变了对真实频谱采样的点数和位置,相当于搬动了每一根“尖桩栅栏”的位置,从而使得频谱的峰点或谷点暴露出来。 用FFT可以实现两个序列的圆周卷积。在一定的条件下,可以使圆周卷积等于线性卷积。一般情况,设两个序列的长度分别为N1和N2,要使圆周卷积等于线性卷积的充要条件是FFT的

5、长度 NN1N2 对于长度不足N的两个序列,分别将他们补零延长到N。 当两个序列中有一个序列比较长的时候,我们可以采用分段卷积的方法。有两种方法: 重叠相加法。将长序列分成与短序列相仿的片段,分别用FFT对它们作线性卷积,再将分段卷积各段重叠的部分相加构成总的卷积输出。 重叠保留法。这种方法在长序列分段时,段与段之间保留有互相重叠的部分,在构成总的卷积输出时只需将各段线性卷积部分直接连接起来,省掉了输出段的直接相加。 (3) 栅栏效应 DFT是对单位圆上z变换的均匀采样,所以它不可能将频谱视为一个连续 函数,从某种意义上讲,用DFT来观察频谱就如同通过一个栅栏来观看景象一 样,只能在离散点上看

6、到真实的频谱,这样一些频谱的峰点或谷点就可能被尖 桩的栅栏挡住,也就是正好落在两个离散采样点之间,不能被观察到。减小栅栏效应的一个方法是在原序列的末端填补一些零值,从而变动DFT 的点数,这一方法实际上是人为地改变了对真实频谱采样的点数和位置,相当于 搬动了尖桩栅栏的位置,从而使得频谱的峰点或谷点暴露出来。(4) DFT的分辨率填补零值可以改变对DTFT的采样密度,人们常常有一种误解,认为补零可以提高DFT的频率分辨率,事实上,DFT的频率分辨率通常规定为,这里的N是指信号的有效长度,而不是补零的长度。不同长度的,其DTFT的结果是不同的;而相同长度的尽管补零的长度不同其DTFT的结果应是相同

7、的,它们的DFT只是反映了对相同的DTFT采用了不同的采样密度。总结一下: 要提高DFT分辨率只有增加信号的截取长度N。三、实验用到序列 a) 高斯序列 b) 衰减正弦序列 c) 三角波序列d) 反三角波序列四、实验内容Matlab编程实现FFT实践及频谱分析 1.用Matlab产生正弦波,矩形波,以及白噪声信号,并显示各自时域波形图2进行FFT变换,显示各自频谱图,其中采样率,频率、数据长度自选3做出上述三种信号的均方根图谱,功率图谱,以及对数均方根图谱4用IFFT傅立叶反变换恢复信号,并显示恢复的正弦信号时域波形图源程序%*1.正弦波*%fs=100;%设定采样频率N=128;n=0:N-

8、1;t=n/fs;f0=10;%设定正弦信号频率%生成正弦信号x=sin(2*pi*f0*t);figure(1);subplot(231);plot(t,x);%作正弦信号的时域波形xlabel(t);ylabel(y);title(正弦信号y=2*pi*10t时域波形);grid;%进行FFT变换并做频谱图y=fft(x,N);%进行fft变换mag=abs(y);%求幅值f=(0:length(y)-1)*fs/length(y);%进行对应的频率转换figure(1);subplot(232);plot(f,mag);%做频谱图axis(0,100,0,80);xlabel(频率(Hz

9、);ylabel(幅值);title(正弦信号y=2*pi*10t幅频谱图N=128);grid;%求均方根谱sq=abs(y);figure(1);subplot(233);plot(f,sq);xlabel(频率(Hz);ylabel(均方根谱);title(正弦信号y=2*pi*10t均方根谱);grid;%求功率谱power=sq.2;figure(1);subplot(234);plot(f,power);xlabel(频率(Hz);ylabel(功率谱);title(正弦信号y=2*pi*10t功率谱);grid;%求对数谱ln=log(sq);figure(1);subplot(

10、235);plot(f,ln);xlabel(频率(Hz);ylabel(对数谱);title(正弦信号y=2*pi*10t对数谱);grid;%用IFFT恢复原始信号xifft=ifft(y);magx=real(xifft);ti=0:length(xifft)-1/fs;figure(1);subplot(236);plot(ti,magx);xlabel(t);ylabel(y);title(通过IFFT转换的正弦信号波形);grid;%*2.矩形波*%fs=10;%设定采样频率t=-5:0.1:5;x=rectpuls(t,2);x=x(1:99);figure(2);subplot

11、(231);plot(t(1:99),x);%作矩形波的时域波形xlabel(t);ylabel(y);title(矩形波时域波形);grid;%进行FFT变换并做频谱图y=fft(x);%进行fft变换mag=abs(y);%求幅值f=(0:length(y)-1)*fs/length(y);%进行对应的频率转换figure(2);subplot(232);plot(f,mag);%做频谱图xlabel(频率(Hz);ylabel(幅值);title(矩形波幅频谱图);grid;%求均方根谱sq=abs(y);figure(2);subplot(233);plot(f,sq);xlabel(

12、频率(Hz);ylabel(均方根谱);title(矩形波均方根谱);grid;%求功率谱power=sq.2;figure(2);subplot(234);plot(f,power);xlabel(频率(Hz);ylabel(功率谱);title(矩形波功率谱);grid;%求对数谱ln=log(sq);figure(2);subplot(235);plot(f,ln);xlabel(频率(Hz);ylabel(对数谱);title(矩形波对数谱);grid;%用IFFT恢复原始信号xifft=ifft(y);magx=real(xifft);ti=0:length(xifft)-1/fs;

13、figure(2);subplot(236);plot(ti,magx);xlabel(t);ylabel(y);title(通过IFFT转换的矩形波波形);grid;%*3.白噪声*%fs=10;%设定采样频率t=-5:0.1:5;x=zeros(1,100);x(50)=100000;figure(3);subplot(231);plot(t(1:100),x);%作白噪声的时域波形xlabel(t);ylabel(y);title(白噪声时域波形);grid;%进行FFT变换并做频谱图y=fft(x);%进行fft变换mag=abs(y);%求幅值f=(0:length(y)-1)*fs

14、/length(y);%进行对应的频率转换figure(3);subplot(232);plot(f,mag);%做频谱图xlabel(频率(Hz);ylabel(幅值);title(白噪声幅频谱图);grid;%求均方根谱sq=abs(y);figure(3);subplot(233);plot(f,sq);xlabel(频率(Hz);ylabel(均方根谱);title(白噪声均方根谱);grid;%求功率谱power=sq.2;figure(3);subplot(234);plot(f,power);xlabel(频率(Hz);ylabel(功率谱);title(白噪声功率谱);grid;%求对数谱ln=log(sq);figure(3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论