您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > FFT频谱分析及应用
实验二FFT频谱分析及应用四、验证实验1.用FFT进行典型信号的频谱分析①高斯序列:n=0:15;%定义序列的长度是15p=8;q=2;x=exp(-1*(n-p).^2/q);%利用fft函数实现富氏变换closeall;subplot(3,2,1);stem(x);subplot(3,2,2);stem(abs(fft(x)))p=8;q=4;x=exp(-1*(n-p).^2/q);%改变信号参数,重新计算subplot(3,2,3);stem(x);subplot(3,2,4);stem(abs(fft(x)))p=8;q=8;x=exp(-1*(n-p).^2/q);subplot(3,2,5);stem(x);subplot(3,2,6);stem(abs(fft(x)))②衰减正弦序列%FFT进行衰减正弦序列的频谱分析n=0:30;%定义序列的长度是30a=0.1;f=0.0625;x=exp(-a*n).*sin(2*pi*f*n);closeall;subplot(2,1,1);stem(x);subplot(2,1,2);stem(abs(fft(x)))2.用FFT进行振幅光栅的衍射特性分析closeallclearall%theprogrameistodemonstratedtheFFTofsquarefunctiont=-10*pi:0.1:10*pi;x=square(t/2,4);x=0.5+0.5*x;figure,plot(t,x)axis([-10*pi,10*pi,-0.51.5])%%%%%%%%%%%%%%%%%%%y=fft(x,1000000);y=abs(y);figure,plot(y(1:90000))%%%%%%%%%%%%%d=a+b;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%N增加一倍closeallclearallt=-10*pi:0.1:10*pi;x=square(t/1,4);x=0.5+0.5*x;figure,plot(t,x)axis([-10*pi,10*pi,-0.51.5])y=fft(x,1000000);y=abs(y);figure,plot(y(1:90000))%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%d=3a;改变光栅参数a,closeallclearallt=-10*pi:0.1:10*pi;x=square(t/2,33.3);x=0.5+0.5*x;figure,plot(t,x)axis([-10*pi,10*pi,-0.51.5])y=fft(x,1000000);y=abs(y);figure,plot(y(1:90000))%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%改变频谱分辨率(FFT计算的点数)closeallclearallt=-10*pi:0.1:10*pi;x=square(t/2,33.3);x=0.5+0.5*x;figure,plot(t,x)axis([-10*pi,10*pi,-0.51.5])%y=fft(x,10000);%y=abs(y);%figure,%plot(y(1:900))y=fft(x);y=abs(y);figure,plot(y)%%%%%%%%%%%%五、设计实验1.模拟信号)8cos(5)4sin(2)(tttx,以)1:0(01.0Nnnt进行采样,求:(1)N=40点FFT的幅度频谱,从图中能否观察出信号的2个频谱分量?(2)提高采样点数,如N=128,256,512,再求该信号的幅度频谱,此时幅度频谱发生了什么变化?信号的2个模拟频率和数字频率各为多少?FFT频谱分析结果与理论上是否一致?实验代码:clc;clearall;N=40;%N=128;%%%%%%对N的值进行改变%N=256;%N=512;n=0:N-1;t=0.01*n;x=2*sin(4*pi*t)+5*cos(8*pi*t);x1=x(1:N);X1=fft(x1,2048);figure,subplot(211),plot(0:N-1,x1);xlabel('n');ylabel('x(n)');title('时域波形');grid;subplot(212),plot(abs(X1));xlabel('k');ylabel('|X(k)|');title('幅频特性');grid;set(gcf,'color','w');N=40N=128N=256N=512答:N=40点FFT的幅度频谱,有信号的两个频谱分量,信号的幅度增加。模拟频率为77kHz,1967kHz,数字信号为967680Hz。FFT频谱分析结果与理论上是一致的。2.有限长序列x(n)={2,1,0,1,3};h(n)={1,3,2,1,5},求x(n)和h(n)的卷积。实验代码:clearall;closeall;clc;n1=0:4;h1=[1,3,2,1,5];n2=0:4;x1=[2,1,0,1,3];n3=0:8;x3=conv(h1,x1);w=-2*pi:0.001:2*pi;X1=x1*exp(-j*n1'*w);X2=h1*exp(-j*n2'*w);X3=x3*exp(-j*n3'*w);X4=X1.*X2;subplot(221),plot(w/pi,abs(X3));xlabel('\omega/\pi');ylabel('|X3(e^j^\omega)|');title('卷积结果的幅频特性');axis([-2.22.2-125]);grid;subplot(222),plot(w/pi,angle(X3));xlabel('\omega/\pi');ylabel('Angle[X3(e^j^\omega)]');title('卷积结果的相频特性');axis([-2.22.2-44]);grid;subplot(223),plot(w/pi,abs(X4));xlabel('\omega/\pi');ylabel('|X4(e^j^\omega)|');title('原序列幅频特性的乘积');axis([-2.22.2-125]);grid;subplot(224),plot(w/pi,angle(X4));xlabel('\omega/\pi');ylabel('Angle[X4(e^j^\omega)]');title('原序列相频特性的乘积');axis([-2.22.2-44]);grid;set(gcf,'color','w');3.自己设计并编写离散傅里叶变换(DFT)函数,分析你设计的DTF函数与标准FFT函数计算时间的差别。实验程序:functionXk=DFT(n,x,N)ifNlength(x)n=0:N-1;x=[xzeros(1,N-length(x))];endk=0:N-1;WN=exp(-j*2*pi/N);nk=n'*k;WNnk=WN.^nk;Xk=x*WNnk;%%%%%%%%%%%%%%%%%%%%%%%%%%%%clearall;closeall;clc;M=[];L=[];fori=0:200N=100;N=N+i;n=0:N-1;x=rand(1,N);tic,X1=fft(x,N),m=toctic,Xk=DFT(n,x,N),l=tocM=[Mm];L=[Ll];endfigure,subplot(2,1,1),%%%%%%%%%%fft函数时间plot((100:300),M);subplot(2,1,2),%%%%%%%%%%%%%%555DFT时间plot((100:300),L)六、实验总结1、光栅频谱特性的理解:N越大,a越大,FFT计算的点数越多,则频谱特性越明显。2、频谱分辨率的理解:在对信号做FFT时,频率的分辨率与N点的大小有关,N越大,分辨率越高,但要注意的是N的大小指的是对信号的采样数,一定要携带信号的信息,如果单纯的添加值为零的采样点是无法提高频谱分辨率的。3、傅里叶变换卷积性质的理解:傅立叶变换可以化复杂的卷积运算为简单的乘积运算,从而提供了计算卷积的一种简单手段。4、FFT函数比DFT函数优越性的理解:设x(n)为N项的复数序列,由DFT变换,任一X(m)的计算都需要N次复数乘法和N-1次复数加法,而一次复数乘法等于四次实数乘法和两次实数加法,一次复数加法等于两次实数加法,即使把一次复数乘法和一次复数加法定义成一次“运算”(四次实数乘法和四次实数加法),那么求出N项复数序列的X(m),即N点DFT变换大约就需要N2次运算。当N=1024点甚至更多的时候,需要N2=1048576次运算,在FFT中,利用WN的周期性和对称性,把一个N项序列(设N=2k,k为正整数),分为两个N/2项的子序列,每个N/2点DFT变换需要(N/2)2次运算,再用N次运算把两个N/2点的DFT变换组合成一个N点的DFT变换。这样变换以后,总的运算次数就变成N+2(N/2)2=N+N2/2。继续上面的例子,N=1024时,总的运算次数就变成了525312次,节省了大约50%的运算量。而如果我们将这种“一分为二”的思想不断进行下去,直到分成两两一组的DFT运算单元,那么N点的DFT变换就只需要Nlog2N次的运算,N在1024点时,运算量仅有10240次,是先前的直接算法的1%,点数越多,运算量的节约就越大,这就是FFT的优越性。5、第二次实验的心得体会(要真实感受):这次实验与上次实验相比难度明显加大,可能是信号与系统这门课没有学好,对卷积等方面的内容不太能够明白,在实验的过程中遇到了很多困难,经过一番研究虽然做出来了但还是不太明白,今后会加强这方面的学习。
本文标题:FFT频谱分析及应用
链接地址:https://www.777doc.com/doc-4775863 .html