利用 DFT分析信号频谱 - matlab

发布时间 : 星期三 文章利用 DFT分析信号频谱 - matlab更新完毕开始阅读

实验 2-1 利用 DFT分析信号频谱

一、 实验目的

1. 加深对 DFT 原理的理解。 2. 应用 DFT 分析信号频谱。

3. 深刻理解利用 DFT 分析信号频谱的原理,分析实现过程中出现的现象及解

决方法

二、 实验内容

1. x(n)= {2 ,?1 ,1 ,1},完成如下要求:

1) 计算其 DTFT,并画出 [?π ,π ]区间的波形

2) 计算 4 点 DFT,并把结果显示在(1)所画的图形中 3) 对 x (n)补零,计算 64 点 DFT,并显示结果

4) 是否可以由 DFT 计算 DTFT,如果可以,请编程实现

程序代码

xn=[2,-1,1,1]; n=0:3; w=-pi:0.01:pi; X=xn*exp(-1i*n'*w); yy=abs(X); subplot(211); plot(w,yy);

Y=fft(xn); yy=abs(Y); hold on; stem((0:3),yy); N=64; m=6; xn=[2,-1,1,1]; xn=[xn,zeros(1,60)]; y=fft(xn); yy=abs(y); f=0:N-1; subplot(212);

1

%计算 DTFT

%绘出DTFT后的波形 %利用FFT计算 4点DFT

%绘出DFT后的波形,并同绘在一个图中

%对 xn补零

stem(f,yy); hold on; plot(f,yy);

%绘出 64点 DFT图

%由 DFT通过绘制包络近似得到 DTFT

进行试验 输出图像:

43.532.521.510.50-4-3-2-10123443.532.521.510.50010203040506070由图可推得DFT所取的点数越多,DFT越逼近DTFT 故增加补零项,取1024个点程序如下:

x1=[2 -1 1 1]; N=1024;

x2=linspace(0,0,N-4); x=[x1,x2]; n=0:(N-1);

w=0:0.01:2*pi/N*(N-1); X=x*exp(-j*n'*w); subplot(211); xlabel('Nw/2\\pi'); title('DTFT[x(n)]');

xn=[2,-1,1,1];

xn=[xn,zeros(1,1020)]; y=fft(xn); f=0:N-1;

2

%计算序列DTFT %绘制DTFT图像

plot(w*N/(2*pi),abs(X),'k');

%对 xn补零

subplot(212); plot(f,abs(y),'k'); xlabel('k'); title('DFT[x(n)]');

%绘制DFT图像

输出图像:

DTFT[x(n)]432100200400600Nw/2?DFT[x(n)]80010001200432100200400600k80010001200 由图可知,当N取1024点时,DFT已经可以很好的近似DTFT。

2. 考察序列

x (n ) = cos(0 .48πn ) + cos(0 .52πn )

1) 0 ≤ n ≤ 10时,用 DFT 估计 x (n )的频谱;将 x (n )补零加长到长度为 100点序列用 DFT估计 x (n )的频谱。要求画出相应波形。

2) 0 ≤ n ≤ 100时,用 DFT 估计 x (n )的频谱,并画出波形 程序代码

n=[0:10];

x=cos(0.48*pi*n)+cos(0.52*pi*n); y=fft(x); subplot(3,1,1);

3

%x(n)频谱 n在 0到 10

stem(n,y,'filled');

xn=[x,zeros(1,90)]; yn=fft(xn); hold on; nn=[0:100]; subplot(3,1,2); stem(nn,yn,'filled');

n1=[0:100];

x1=cos(0.48*pi*n1)+cos(0.52*pi*n1); y1=fft(x1); subplot(3,1,3); stem(n1,y1,'filled');

%x(n)频谱 n在 0到 100

%对 xn补零

进行试验

输出图像:

86420-2012345678910151050-5010203040506070809010040200-200102030405060708090100

3. 已知信号 x(t ) =0 .15 sin(2π f1t)+sin(2π f2t)- 0.1sin (2π f3t),其中 f1=1Hz,

f2=2Hz,f3=3Hz。从x (t)的表达式可以看出,它包含三个频率的正弦波,但是,从其时域波形来看,似乎是一个正弦信号,利用 DFT 做频谱分析,确定适合的参数,使得到的频谱的频率分辨率符合需要

4

联系合同范文客服:xxxxx#qq.com(#替换为@)