(完整word版)用FFT做谱分析实验报告.pdf
实验二实验二用用 FFTFFT 做谱分析做谱分析一、实验目的一、实验目的1.进一步加深 DFT 算法原理和基本性质的理解(因为 FFT 只是 DFT 的一种快速算法,所以 FFT 的运算结果必然满足 DFT 的基本性质)。2.熟悉 FFT 算法原理和 FFT 子程序的应用。3.学习用 FFT 对连续信号和时域离散信号进行谱分析的方法二、实验原理二、实验原理如果给出的是连续信号 xa(t),则首先要根据其最高频率确定抽样频率 fs以及由频率分辨率选择抽样点数 N,然后对其进行软件抽样(即计算 x(n)=xa(nT),0nN-1),产生对应序列 x(n)。再利用 MATLAB所提供的库函数 fft(n,x)进行 FFT 计算三、实验内容三、实验内容实验信号实验信号:x1(n)=R4(n)n1,x2(n)=8n,0,4n,x3(n)=n3,0,0 n 34 n 7其他n0 n 34 n 7其他nx4(n)=cos(n/4)x5(n)=sin(n/8)x6(t)=cos8t+cos16t+cos20FFT 变换区间及 x6(t)抽样频率 fsx1(n),x2(n),x3(n),x4(n),x5(n):N=8,16x6(t):fs=64(Hz),N=16,32,64MATLABMATLAB程序代码程序代码N1=8;N2=16;x1=ones(1,4);x2=1:4,4:-1:1;x3=4:-1:1,1:4;n=0:1:16;x4=cos(pi*n/4);(完整word版)用FFT做谱分析实验报告-第1页(完整word版)用FFT做谱分析实验报告-第1页x5=sin(pi*n/8);X11=fft(x1,N1);X11=abs(X11);X21=fft(x2,N1);X21=abs(X21);X31=fft(x3,N1);X31=abs(X31);X41=fft(x4,N1);X41=abs(X41);X51=fft(x5,N1);X51=abs(X51);X12=fft(x1,N2);X12=abs(X12);X22=fft(x2,N2);X22=abs(X22);X32=fft(x3,N2);X32=abs(X32);X42=fft(x4,N2);X42=abs(X42);X52=fft(x5,N2);X52=abs(X52);figure(1);subplot(3,1,1);stem(x1);grid;%x1 时域波形xlabel(n);ylabel(x1(n)title(N=8 的时域图)subplot(3,1,2);stem(X11);grid;%x1 在 N=8 的 FFT 变换频谱图xlabel(Hz);ylabel(|X11(k)|)title(N=8 的频谱图)subplot(3,1,3);stem(X12);grid;%x1 在 N=16 的 FFT 变换频谱图xlabel(Hz);ylabel(|X12(k)|)title(N=16 的频谱图)figure(2);subplot(3,1,1);stem(x2);grid;%x2 时域波形xlabel(n);ylabel(x2(n)title(N=8 的时域图)subplot(3,1,2);stem(X21);grid;%x2 在 N=8 的 FFT 变换频谱图xlabel(Hz);ylabel(|X21(k)|)title(N=8 的频谱图)subplot(3,1,3);stem(X22);grid;%x2 在 N=16 的 FFT 变换频谱图xlabel(Hz);ylabel(|X22(k)|)title(N=16 的频谱图)figure(3);subplot(3,1,1);stem(x3);grid;%x3 时域波形xlabel(n);ylabel(x3(n)(完整word版)用FFT做谱分析实验报告-第2页(完整word版)用FFT做谱分析实验报告-第2页title(N=8 的时域图)subplot(3,1,2);stem(X31);grid;%x3 在 N=8 的 FFT 变换频谱图xlabel(Hz);ylabel(|X31(k)|)title(N=8 的频谱图)subplot(3,1,3);stem(X32);grid;%x3 在 N=16 的 FFT 变换频谱图xlabel(Hz);ylabel(|X32(k)|)title(N=16 的频谱图)figure(4);subplot(3,1,1);stem(x4);grid;%x4 时域波形xlabel(n);ylabel(x4(n)title(N=8 的时域图)subplot(3,1,2);stem(X41);grid;%x4 在 N=8 的 FFT 变换频谱图xlabel(Hz);ylabel(|X41(k)|)title(N=8 的频谱图)subplot(3,1,3);stem(X42);grid;%x4 在 N=16 的 FFT 变换频谱图xlabel(Hz);ylabel(|X42(k)|)title(N=16 的频谱图)figure(5);subplot(3,1,1);stem(x5);grid;%x5 时域波形xlabel(n);ylabel(x5(n)title(N=8 的时域图)subplot(3,1,2);stem(X51);grid;%x5 在 N=8 的 FFT 变换频谱图xlabel(Hz);ylabel(|X51(k)|)title(N=8 的频谱图)subplot(3,1,3);stem(X52);grid;%x5 在 N=16 的 FFT 变换频谱图xlabel(Hz);ylabel(|X52(k)|)title(N=16 的频谱图)x6 信号程序代码fs=64;T=1/fs;t=0:T:1-T;x6=cos(2*pi*4*t)+cos(2*pi*8*t)+cos(2*pi*10*t);N1=16;N2=32;N3=64;X61=fft(x6,N1);X61=abs(X61);axis(0 7 0 1)X62=fft(x6,N2);X62=abs(X62);axis(0 7 0 1)X63=fft(x6,N3);X63=abs(X63);(完整word版)用FFT做谱分析实验报告-第3页(完整word版)用FFT做谱分析实验报告-第3页axis(0 7 0 1)figure(1);stem(x6);grid;xlabel(n);ylabel(x6(n);title(x6 时域波形)figure(2)subplot(3,1,1);stem(X61);grid;xlabel(Hz);ylabel(X6(k);title(N=16 时 x6 频谱波形)subplot(3,1,2);stem(X62);grid;xlabel(Hz);ylabel(X6(k);title(N=32 时 x6 频谱波形)subplot(3,1,3);stem(X63);grid;xlabel(Hz);ylabel(X6(k);title(N=64 时 x6 频谱波形)信号时域、信号时域、FFTFFT 变换后的频谱波形变换后的频谱波形a.x1 信号时域、频谱波形b.x2 信号时域、频谱波形(完整word版)用FFT做谱分析实验报告-第4页(完整word版)用FFT做谱分析实验报告-第4页c.x3 信号时域、频谱波形d.x4 信号时域、频谱波形(完整word版)用FFT做谱分析实验报告-第5页(完整word版)用FFT做谱分析实验报告-第5页e.x5 信号时域、频谱波形f.x5 信号时域波形(完整word版)用FFT做谱分析实验报告-第6页(完整word版)用FFT做谱分析实验报告-第6页g.x5 信号频谱波形四、实验结论四、实验结论1.离散时间信号的 FFT 变换,其频谱是以抽样点数 N 为周期的周期延拓2.当 N2 为 N1 的整数倍时,以N2为抽样点数的抽样的图形就是在以N1为抽样点数的抽样图形的每两个点之间插入 N2/N1 个点的谱图形五、思考题五、思考题(1)在 N=8 时,x2(n)和 x3(n)的幅频特性会相同吗?为什么?N=16 呢?(完整word版)用FFT做谱分析实验报告-第7页(完整word版)用FFT做谱分析实验报告-第7页在 N=8 时,x2(n)和 x3(n)的幅频特性会相同;在 N=16 时,x2(n)和 x3(n)的幅频特性会相同;因为当 N=8 时,x2(n)=1,2,3,4,4,3,2,1,x3(n)=4,3,2,1,1,2,3,4 而采样的频率都为 8,x1(n)8 与 x2(n)8 相等当 N=16 时 x2(n)=1,2,3,4,4,3,2,1,0,0,0,0,0,0,0,0 x3(n)=4,3,2,1,1,2,3,4,0,0,0,0,0,0,0,0 而采样频率都为16,进行周期延拓后,x1(n)16 与 x2(n)16 不相等(2)如果周期信号的周期预先不知道,如何用 FFT 进行谱分析?确定一个 N,再在 MATLAB 中调用 FFT 子程序计算(完整word版)用FFT做谱分析实验报告-第8页(完整word版)用FFT做谱分析实验报告-第8页