实验一 利用DFT进行信号分析实验报告.docx

上传人:b****5 文档编号:8012203 上传时间:2023-01-27 格式:DOCX 页数:11 大小:139.64KB
下载 相关 举报
实验一 利用DFT进行信号分析实验报告.docx_第1页
第1页 / 共11页
实验一 利用DFT进行信号分析实验报告.docx_第2页
第2页 / 共11页
实验一 利用DFT进行信号分析实验报告.docx_第3页
第3页 / 共11页
实验一 利用DFT进行信号分析实验报告.docx_第4页
第4页 / 共11页
实验一 利用DFT进行信号分析实验报告.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

实验一 利用DFT进行信号分析实验报告.docx

《实验一 利用DFT进行信号分析实验报告.docx》由会员分享,可在线阅读,更多相关《实验一 利用DFT进行信号分析实验报告.docx(11页珍藏版)》请在冰豆网上搜索。

实验一 利用DFT进行信号分析实验报告.docx

实验一利用DFT进行信号分析实验报告

利用DFT进行信号分析

一、实验目的

1.通过编写程序加深对DFT/IDFT的理解;

2.运用DFT/IDFT进行初步的频谱分析;

3.对DFT/IDFT运行过程出现的现象进行解释

二、实验内容

给定信号如下:

x(t)=2+3cos(100πt-π/6

)+1.5cos(150πt-π/2)

1.对给定信号进行频谱分析,画出时域、振幅谱、相位谱的图像;

2.滤掉50HZ频率,反变换后观察图像,分析是否满足采样定理;

3.对DFT出现的GIBBS效应、栅栏效应等的分析;

4.进行傅式反变换观察能否将原信号恢复

三、实验步骤

1.对给定信号进行频谱分析,画出时域、振幅谱、相位谱的图像;

x(t)=2+3cos(100πt-π/6

)+1.5cos(150πt-π/2)

其中fm1=75Hz为主频,包含一个有效信号和一个干扰信号(fm=50Hz),。

将子波信号离散化,令

则x(t)=x(i*dt),将子波信号变换到频率域进行滤波,取2560个采样点,采样间隔取0.001s

生成给定信号的源程序为:

clear

clf

N=2560;

fm=50;

fm1=75;

dt=0.001;

df=1/(N*dt);

n=[1:

N];

k=[1:

N];

t=0:

dt:

(N-1)*dt;

f=0:

df:

(N-1)*df;

fori=1:

N

x(i)=2+3*cos(fm*2*pi*dt*i-pi/6)+1.5*cos(fm1*2*pi*dt*i-pi/2);

end

q(k)=x*exp(-j*2*pi/N).^(n'*k);

a=abs(q);

p=angle(q);

p=180/pi*p;

subplot(3,1,1);plot(t,x,'k'),gridon,xlabel('时间t'),ylabel('信号x(t)'),title('给定信号的时域图像');

subplot(3,1,2);plot(f,a,'k'),gridon,xlabel('频率f'),ylabel('振幅a'),title('给定信号的振幅谱');

subplot(3,1,3);plot(f,p,'k'),gridon,xlabel('频率f'),ylabel('相位p'),title('给定信号的相位谱');

运行程序,得给定信号的时域图像、振幅谱、相位谱如图:

 

频率

其中频率采样间隔

,所以x(f)=x(k*df)。

从振幅谱中可以看出,原信号包含两个主要频率,分别为fm=50Hz和fm1=75Hz。

2.分析振幅谱有什么特点,在频率域设计滤波器,滤掉50HZ频率,反变换后观察图像,分析是否满足采样定理;

已知原信号的频谱,现要将干扰信号(fm=50Hz)滤掉,应将k1=fm/df附近的部分滤掉,又因为频谱是对称的,还应将N-fm/df的部分滤掉.滤波方程为Y(k)=X(k)×Y(k),为频率域滤波。

设计滤波器Hn,低频过渡带宽度d1=5,高频过渡带宽度d2=3.

生成滤波器的源程序为:

Hn=linspace(1,1,N);

d1=5;

d2=3;

H1=round(50/df);

H2=round(N-50/df);

fori=(H1-d1):

H1

Hn(i)=1-(i-H1+d1)/d1;

end

fori=(H1+1):

(H1+d2)

Hn(i)=(i-H1)/d2;

end

fori=(H2-d2):

(H2)

Hn(i)=1-(i-(H2-d2))/d2;

end

fori=(H2+1):

(H2+d1-1)

Hn(i)=(i-H2)/d1;

end

plot(f,Hn,'k'),gridon,title('滤波器');

运行程序,得到滤波器图形为:

 

 

滤波后信号的振幅谱为:

xn=a.*Hn;

x1=abs(xn);

plot(f,x1,'k'),gridon,xlabel('频率f'),ylabel('振幅1'),title('滤波后信号振幅谱')

 

从中可以看出大于50Hz的频率成分已经被滤掉,剩下的为要保留的信号。

将滤波后的信号反变换回时间域,并绘出信号曲线,观察与原信号的差别。

利用idft将频率域的信号反变换到时间域,取其实部进行绘图。

源程序:

x2(k)=x1*exp(j*2*pi/N).^(n'*k)/N;

x3=real(x2);

plot(t,x3,'k'),gridon,xlabel('时间t'),ylabel('反变换信号x3(t)'),title('反变换信号时域图像')

反变换回时间域后的滤波信号如图:

 

对反变换信号时域图像进行局部放大(t取0~0.2s),观察波形:

 

对比原给定信号时域图像(局部放大,同样取t为0~0.2s):

 

从图中可以看出,经过滤波后,频率50Hz附近的成分被滤掉的同时,有效信号中的部分频率也被滤掉,从而反变换回时间域后有效信号的波形也发生了变化。

其原因是原有效信号除主要频率外还包含其他频率成分,在滤波时连同有效信号中的频率也被滤掉。

对比原信号和滤波后信号的时域图像和振幅谱可知,无明显频率泄露,且满足采样定理fs=1000Hz>2fm1=150Hz.

3.对DFT出现的GIBBS效应、栅栏效应等的分析;

(1)取相同采样点数N=2560,不同采样间隔dt分别为0.001s和0.005s(满足采样定理的条件下),时间域图像对比:

 

(2)等采样间隔,取不同采样点数(2560个和256个)

观察图像发现采样点数越多,采样间隔越小,越逼近真实的信号。

采样间隔过大或者采样点数过少均可能由于Gibbs效应和栅栏效应造成信号的失真。

4.进行傅式反变换观察能否将原信号恢复

源程序为:

S1(k)=x1*exp(j*2*pi/N).^(n'*k)/N;

s=real(x2);

plot(t,s,'k'),gridon,xlabel('时间t'),ylabel('反变换信号s(t)'),title('反变换信号时域图像')

如图所示(局部放大,取t为0~0.2s):

对比原信号:

 

对比可知,idft变换可近似恢复原信号,但有一定的信号失真。

 

附录利用DFT进行信号分析的源程序

clear

clf

N=256;

fm=50;

fm1=75;

dt=0.001;

df=1/(N*dt);

n=[1:

N];

k=[1:

N];

t=0:

dt:

(N-1)*dt;

f=0:

df:

(N-1)*df;

fori=1:

N

x(i)=2+3*cos(fm*2*pi*dt*i-pi/6)+1.5*cos(fm1*2*pi*dt*i-pi/2);

end

q(k)=x*exp(-j*2*pi/N).^(n'*k);

a=abs(q);

p=angle(q);

p=180/pi*p;

figure

(1),subplot(3,1,1);plot(t,x,'k'),gridon,xlabel('时间t'),ylabel('信号x(t)'),title('给定信号的时域图像');

figure

(1),subplot(3,1,2);plot(f,a,'k'),gridon,xlabel('频率f'),ylabel('振幅a'),title('给定信号的振幅谱');

figure

(1),subplot(3,1,3);plot(f,p,'k'),gridon,xlabel('频率f'),ylabel('相位p'),title('给定信号的相位谱');

Hn=linspace(1,1,N);

d1=5;

d2=3;

H1=round(50/df);

H2=round(N-50/df);

fori=(H1-d1):

H1

Hn(i)=1-(i-H1+d1)/d1;

end

fori=(H1+1):

(H1+d2)

Hn(i)=(i-H1)/d2;

end

fori=(H2-d2):

(H2)

Hn(i)=1-(i-(H2-d2))/d2;

end

fori=(H2+1):

(H2+d1-1)

Hn(i)=(i-H2)/d1;

end

figure

(2),plot(f,Hn,'k'),gridon,title('滤波器');

xn=a.*Hn;

x1=abs(xn);

figure(3),subplot(2,1,1);plot(f,x1,'k'),gridon,xlabel('频率f'),ylabel('振幅1'),title('滤波后信号振幅谱')

x2(k)=x1*exp(j*2*pi/N).^(n'*k)/N;

x3=real(x2);

figure(3),subplot(2,1,2);plot(t,x3,'k'),gridon,xlabel('时间t'),ylabel('反变换信号x3(t)'),title('反变换信号时域图像')

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 财务管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1