数字信号处理上机实验1.docx

上传人:b****6 文档编号:4923755 上传时间:2022-12-11 格式:DOCX 页数:11 大小:506.28KB
下载 相关 举报
数字信号处理上机实验1.docx_第1页
第1页 / 共11页
数字信号处理上机实验1.docx_第2页
第2页 / 共11页
数字信号处理上机实验1.docx_第3页
第3页 / 共11页
数字信号处理上机实验1.docx_第4页
第4页 / 共11页
数字信号处理上机实验1.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

数字信号处理上机实验1.docx

《数字信号处理上机实验1.docx》由会员分享,可在线阅读,更多相关《数字信号处理上机实验1.docx(11页珍藏版)》请在冰豆网上搜索。

数字信号处理上机实验1.docx

数字信号处理上机实验1

 

数字信号处理实验

 

信息25

2120502123

赵梦然

 

实验一快速傅里叶变换与信号频谱分析

一.实验目的

1.在理论学习的基础上,通过本实验加深对离散傅里叶变换的理解。

2.熟悉并掌握按时间抽取编写快速傅里叶变换(FFT)算法的程序。

3.了解应用FFT进行信号频谱分析过程中可能出现的问题,例如频谱混淆、

泄漏、栅栏效应等,以便在实际中正确使用FFT算法进行信号处理。

二.实验内容

1.仔细分析教材第六章“时间抽取法FFT的FORTRAN程序”,编写出相应的

使用FFT进行信号频谱分析的Matlab程序。

2.用FFT程序分析正弦信号,分别在以下情况进行分析,并讨论所得的结果:

a)信号频率F=50Hz,采样点数N=32,采样间隔T=0.000625s;

b)信号频率F=50Hz,采样点数N=32,采样间隔T=0.005s;

c)信号频率F=50Hz,采样点数N=32,采样间隔T=0.0046875s;

d)信号频率F=50Hz,采样点数N=32,采样间隔T=0.004s;

e)信号频率F=50Hz,采样点数N=64,采样间隔T=0.000625s;

f)信号频率F=250Hz,采样点数N=32,采样间隔T=0.005s;

g)将c)中信号后补32个0,做64点FFT,并与直接采样64个点做FFT的

结果进行对比。

3.思考题:

1)在实验a)、b)、c)和d)中,正弦信号的初始相位对频谱图中的幅度特性

是否有影响?

为什么?

信号补零后做FFT是否可以提高信号频谱的分辨率?

为什么?

三.实验程序

functionpushbutton1_Callback(hObject,eventdata,handles)

F=str2double(get(handles.f,'string'));

N=str2double(get(handles.n,'string'));

T=str2double(get(handles.t,'string'));

fai=str2double(get(handles.fai,'string'));

zero=get(handles.zero,'value');

%进行采样

t=0:

T:

(N-1)*T;

x=cos(2*pi*F*t+fai);

%进行fft运算

ifzero

y=abs(fft(x,N+32));

y=y/max(y);

else

y=abs(fft(x));

y=y/max(y);

end

%画图

axes(handles.axes2);

stem((0:

N-1),x,'*');

axes(handles.axes1);

ifzero

stem((0:

N+31),y,'.');

else

stem((0:

N-1),y);

end

xlabel('频率/Hz');

ylabel('振幅');

gridon;

四.实验结果

实验数据记录:

(a)

输入信号频率:

50

输入采样点数:

32

输入间隔时间:

0.000625

是否增加零点?

信号频率F=50Hz,采样长N=32,采样周期T=0.000625s,fs=1/T=1600Hz,基频为fs/N=50Hz,50/50=1.故此在频谱图上的第1个点和第31个点有值。

可以用sinc函数加以解释:

由于sin信号的频谱为在pi/16和-pi/16上的冲激,所以时域采样后,在频域以2*pi为周期进行周期延拖。

加窗后,卷积一个sinc函数,因为采样点数为32,所以窗的宽度即为32,主瓣峰值落在主瓣中间,所以得到其主瓣的宽度为pi/16,因为进行DFT要有32个点,所以第k个点对应的频谱为(k-1)*pi/16,由上面的sinc函数的主瓣宽度知,除了pi/16和31*pi/16(由于频域的周期延拖),其他的点处,sinc函数都为0,DFT的结果只有在第1个点和第31个点有大小相等的值,其它点为0.

(b)

输入信号频率:

50

输入采样点数:

32

输入间隔时间:

0.005

是否增加零点?

信号频率F=50Hz,采样长N=32,采样周期T=0.005s,fs=1/T=200Hz,基频为fs/N=6.25Hz,50/6.25=8.故此在频谱图上的第8个点和第24个点有值。

同样可以用sinc函数加以解释。

(和1中基本一致)

(c)

输入信号频率:

50

输入采样点数:

32

输入间隔时间:

0.0046875

是否增加零点?

信号频率F=50Hz,采样长N=32,采样周期T=0.0046875s,fs=1/T=213.33Hz,基频为fs/N=6.66Hz,50/6.66=7.5。

由于不是整周期,所以发生泄漏。

同样可以用sinc函数加以解释:

即除了主瓣上有取值之外还在非整周期处取值,导致有其他值的存在。

(d)

输入信号频率:

50

输入采样点数:

32

输入间隔时间:

0.004

是否增加零点?

信号频率F=50Hz,采样长N=32,采样周期T=0.004s,fs=1/T=250Hz,基频为fs/N=7.8125Hz,50/7.8125=6.4。

由于不是整周期,所以发生泄漏。

同样可以用sinc函数加以解释:

即除了主瓣上有取值之外还在非整周期处取值,导致有其他值的存在。

(e)

输入信号频率:

50

输入采样点数:

64

输入间隔时间:

0.000625

是否增加零点?

信号频率F=50Hz,采样长N=64,采样周期T=0.000625s,fs=1/T=1600Hz,基频为fs/N=50Hz,50/50=1.故此在频谱图上的第2个点和第62个点有值。

同样可以用sinc函数加以解释。

(和1中基本一致)

(f)

输入信号频率:

250

输入采样点数:

32

输入间隔时间:

0.005

是否增加零点?

产生了失真。

(g)

输入信号频率:

50

输入采样点数:

64

输入间隔时间:

0.0046875

是否增加零点?

 

输入信号频率:

50

输入采样点数:

32

输入间隔时间:

0.0046875

是否增加零点?

后面补了32个零点,做了64个点的DFT,其它部分均与(c)相同。

相应的在(c)中采样的间隔是pi/16,这个题中采样的间隔是pi/32。

所以在2*n点上的值与(c)对应的n点的值相同,在2*n+1点上除了在第15和第49点上有峰值外,其余点为0。

和(c)直接做64点的FFT不同。

 

五.思考题

1)在实验a)、b)、c)和d)中,正弦信号的初始相位对频谱图中的幅度特性

是否有影响?

为什么?

现在对a)、b)、c)和d)加一个初始相位为π/2,得到各个图像如下

a)

b)

 

c)

d)

由各个图像和之前图像进行对比可以得到:

正弦信号的初始相位对频谱图中的幅度特性没有影响。

原因主要在于采样之后进行了周期延拓,所以无论如何改变初始相位都无法改变其频谱图中的幅度特性。

 

2)信号补零后做FFT是否可以提高信号频谱的分辨率?

为什么?

信号补零后做FFT无法提高信号频谱的分辨率。

连续时间信号经采样、截断后的序列为Xn(n),其频谱函数XN(ejw),并不随序列末端补零而改变,信号的频率分辨率为Fs/N.序列末端补零只能提高信号频谱显示的分辨率。

换句话说,如果连续时间信号在离散化或时域加窗截断过程中,由于频谱泄漏或混叠等原因已造成信号频谱中信息的失真,则无论怎么补零做DFT,都无法再恢复已损失的信息。

提高信号的频率分辨率只有提高信号的采样频率或增加序列的截断长度N(信号的持续时间加长)。

数据后面补零-------不能提高信号的频率分辨率

序列末端补零后,尽管信号的频谱不会变化,但对序列做补零后L点DFT后,计算出的频谱实际上是原信号频谱在[0,2*pi)区间上L个等间隔采样,从而增加了对真实频谱采样的点数,并改变了采样点的位置,这将会显示出原信号频谱的更多的细节。

故而数据后面补零可以克服栅栏效应。

 

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

当前位置:首页 > 高中教育 > 高考

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

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