77范文网 - 专业文章范例文档资料分享平台

数字信号处理实验 matlab版 快速傅里叶变换(FFT)(2)

来源:网络收集 时间:2018-12-27 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

程序执行结果如图14-4所示。

20100-1020100-1020100-10420-10420-1050-5-10-50510-50510-50510-50510-50510-50510图14-4 将例14-4有限长序列补0到N=32、64、512时的频谱

如果将x(n)的输入写成

xn=[ones(1,11),zeros(1,N-11)];%建立x(n-5)

相当于起点不是取自n=0而是n=-5,计算的是x(n-5)的频谱。幅度频谱不受影响,相位频谱引入一个线性相位-5w,如图14-5所示。

15421005-20-10-4-10-50510-50510图14-5 将有限长位移序列x(n-5)补0到N=512时的频谱

4、用FFT计算无限长序列的频谱

用FFT进行无限长序列的频谱计算,首先要将无限长序列截断成一个有限长序列。序列长度的取值对频谱有较大的影响,带来的问题是引起频谱的泄漏和波动。

例14-5 已知一个无限长序列为

?0.5n??ex(n)????0n?0n?0

采样频率Fs=20 Hz,要求用FFT求其频谱。

解 MATLAB程序如下:

>> Fs=20;C=[8,16,128]; %输入不同的N值

>> for r=0:2;

>> N=C(r+1); >> n=0:N-1;

>> xn=exp(-0.5*n);%建立x(n) >> D=2*pi*Fs/N;

>> k=floor(-(N-1)/2:(N-1)/2); >> X=fftshift(fft(xn,N));

>> subplot(3,2,2*r+1);plot(k*D,abs(X)); >> axis([-80,80,0,3]);

>> subplot(3,2,2*r+2);stairs(k*D,angle(X)); >> axis([-80,80,-1,1]); >> end

运行结果如图14-6所示。

321032103210-50050-50050-5005010-110-110-1-50050-50050-50050

图14-6 将无限长序列截断为N=8,16,128时的频谱

由图14-6可见,N值取得越大,即序列保留得越长,曲线精度越高。

例14-6 用FFT计算下列连续时间信号的频谱,并观察选择不同的Ts和N值对频谱特性的影响。

xa(t)=e-0.01t(sin2t+sin2.1t+sin2.2t) t≥0

解 该题选择了三个非常接近的正弦信号,为了将各频率成分区分出来,在满足奈奎斯特定理的条件下确定采样周期,选择三组数据,分别是Ts=0.5 s、0.25 s和0.125 s;再确定N值,分别选择N=256和2048。观察不同Ts和N的组合对频谱的影响。

程序如下:

>> T0=[0.5,0.25,0.125,0.125]; %输入不同的Ts值 >> N0=[256,256,256,2048];%输入不同的N值 >> for r=1:4;

>> Ts=T0(r);N=N0(r);%赋Ts和N值 >> n=0:N-1;

>> D=2*pi/(Ts*N);%计算模拟频率分辨率

>> xa=exp(-0.01*n*Ts).*(sin(2*n*Ts)+sin(2.1*n*Ts)+sin(2.2*n*Ts));

>> k=floor(-(N-1)/2:(N-1)/2);

>> Xa=Ts*fftshift(fft(xa,N));

>> [r,Xa(1)]%输出Xa(1)的数值,供误差计算用 >> subplot(2,2,r);plot(k*D,abs(Xa),'k');

>> axis([1,3,1.1*min(abs(Xa)),1.1*max(abs(Xa))]); >> end

运行结果如图14-7所示。

403020101232520151051231510512340302010123图14-7 用FFT计算三个很靠近的谐波分量的频谱图

由图14-7可以得出以下结论:

N同样取256(如前三个图形),当Ts越大时,时域信号的长度L=NTs保留得越长,则分辨率越高,频谱特性误差越小;反之,则分辨率越低,频谱特性误差越大,甚至丢失某些信号分量。

Ts相同(如后两个图形),当N越大时,在[0,2p]范围内等间隔抽样点数越多,且时域信号的长度L=NTs保留得越长,则分辨率越高,频谱特性误差越小;反之,当N越小时,在[0,2p]范围内等间隔抽样点数越少,则有可能漏掉某些重要的信号分量,称为栅栏效应。

五、实验过程

1 已知有限长序列x(n)=[1,0.5,0,0.5,1,1,0.5,0],要求: (1)用FFT算法求该时域序列的DFT、IDFT的图形;

(2)假定采样频率Fs=20 Hz,序列长度N分别取8、32和64,使用FFT来计算其幅度频谱和相位频谱。

解 MATLAB程序如下:

>> xn=[1,0.5,0,0.5,1,1,0.5,0]; >> N=length(xn); >> n=0:N-1;k=0:N-1;

>> Xk=fft(xn,N);

>> subplot(2,1,1);stem(k,abs(Xk)); >> title('Xk=DFT(x(n))'); >> xn1=ifft(Xk,N);

>> subplot(2,1,2);stem(n,xn1); >> title('x(n)=IDFT(Xk)');

运行结果如图61所示。

420012Xk=DFT(x(n)) 3 图1

45671x(n)=IDFT(Xk) 0.5001234567

>> Fs=20;C=[8,32,64];

>> for r=0:2;

>> N=C(r+1);

>> xn=[1,0.5,0,0.5,1,1,0.5,0]; >> D=2*pi*Fs/N;

>> k=floor(-(N-1)/2:(N-1)/2); >> X=fftshift(fft(xn,N));

>> subplot(3,2,2*r+1);plot(k*D,abs(X)); >> title('幅度频谱');xlabel('rad/s'); >> subplot(3,2,2*r+2);stairs(k*D,angle(X)); >> title('相位频谱');xlabel('rad/s');

>> end

幅度 频谱 运行结果如图2所示。

5相位频谱

-50050rad/s幅度频谱50-5-1000-100

-50050rad/s相位频谱50-5-100-50050rad/s相位频谱10050-100-50050rad/s幅度频谱100

5

50-5-1000-100-50

0rad/s50 100

-500rad/s50100图2

2 已知一个无限长序列x(n)=0.5n(n≥0),采样周期Ts=0.2 s,要求序列长度N分别取8、32和64,用FFT求其频谱。

解 MATLAB程序如下:

>> Ts=0.2;C=[8,32,64]; >> for r=0:2; >> N=C(r+1); >> n=0:N-1;

>> xn=exp(0.5*n); >> D=2*pi/(N*Ts);

>> k=floor(-(N-1)/2:(N-1)/2); >> X=fftshift(fft(xn,N));

>> subplot(3,2,2*r+1);plot(k*D,abs(X)); >> title('幅度频谱');xlabel('rad/s'); >> subplot(3,2,2*r+2);stairs(k*D,angle(X)); >> title('相位频谱');xlabel('rad/s');

>> end

运行结果如图3所示。

幅度频谱100500-20x 107相位频谱50-5-20-10010rad/s幅度频谱20-10010rad/s相位频谱202150-10010rad/s幅度频谱20-5-20-10010rad/s相位频谱200-20x 10142150-5-200-20-100rad/s1020-100rad/s1020

图3

六、实验感想

通过此次实验中练习使用matlab语言进行快速傅里叶变换,更为熟悉的掌握了matlab的功能,在实验过程中也遇到很多小问题,并通过仔细检查和查阅相关书籍解决此类问题,让我深刻认识到,细节的重要性。在使用help过程中,深切体会到良好的英语基础和充实

的课堂知识的重要性。

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库数字信号处理实验 matlab版 快速傅里叶变换(FFT)(2)在线全文阅读。

数字信号处理实验 matlab版 快速傅里叶变换(FFT)(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/392275.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: