数字信号处理FFT变换及其应用.docx

上传人:b****1 文档编号:15179669 上传时间:2023-07-02 格式:DOCX 页数:14 大小:235.77KB
下载 相关 举报
数字信号处理FFT变换及其应用.docx_第1页
第1页 / 共14页
数字信号处理FFT变换及其应用.docx_第2页
第2页 / 共14页
数字信号处理FFT变换及其应用.docx_第3页
第3页 / 共14页
数字信号处理FFT变换及其应用.docx_第4页
第4页 / 共14页
数字信号处理FFT变换及其应用.docx_第5页
第5页 / 共14页
数字信号处理FFT变换及其应用.docx_第6页
第6页 / 共14页
数字信号处理FFT变换及其应用.docx_第7页
第7页 / 共14页
数字信号处理FFT变换及其应用.docx_第8页
第8页 / 共14页
数字信号处理FFT变换及其应用.docx_第9页
第9页 / 共14页
数字信号处理FFT变换及其应用.docx_第10页
第10页 / 共14页
数字信号处理FFT变换及其应用.docx_第11页
第11页 / 共14页
数字信号处理FFT变换及其应用.docx_第12页
第12页 / 共14页
数字信号处理FFT变换及其应用.docx_第13页
第13页 / 共14页
数字信号处理FFT变换及其应用.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数字信号处理FFT变换及其应用.docx

《数字信号处理FFT变换及其应用.docx》由会员分享,可在线阅读,更多相关《数字信号处理FFT变换及其应用.docx(14页珍藏版)》请在冰点文库上搜索。

数字信号处理FFT变换及其应用.docx

数字信号处理FFT变换及其应用

实验一FFT变换及其应用

一、实验目的和要求

1.在理论课学习的基础上,通过本次实验,加深对DFT原理的理解,懂得频域DFT与时域卷积的关系,进一步加深对DFT基本性质的理解;

2.研究FFT算法的主要途径和编程思路,掌握FFT算法及其程序的编写过程,掌握最基本的时域基-2FFT算法原理及程序框图;

3.熟悉应用FFT实现两个序列的线性卷积的方法,利用FFT进行卷积,通过实验比较出快速卷积优越性,掌握循环卷积和线性两者之间的关系;

4.熟悉应用FFT对典型信号进行频谱分析的方法,初行了解用周期图法作随机信号谱分析的方法,了解应用FFT进行信号频谱分析过程中可能出现的问题,以便在实际中正确应用FFT;

5.掌握使用MATLAB等基本开发工具实现对FFT编程。

二、实验设备和分组

1.每人一台PC机;

2.Windows2000/XP以上版本的操作环境;

3.MatLab6.5及以上版本的开发软件。

三、实验内容

(一)实验准备

在开始实验之前,首先要对FFT的变换及其应用做一些概念上的了解,并针对可能在实验中出现的问题作出合理的假设,并提出应对的方案。

另一方面,还要对DFT做一定的了解,方便实验的顺利进行。

因为实验的工具是MATLAB,所以在本次实验之前要对MATLAB做一些必要的预习,不至于在实验的过程中手忙脚乱。

最后,要着重做好实验的预习工作,将合理的思路及方案提前你定好,在实验的过程中可以进行差错和修改。

(二)实验项目

(一)用FFT进行谱分析

1高斯序列

代码:

n=0:

15;

p=8;

q=2;

x=exp(-1*(n-p).^2/q);

closeall;

subplot(3,1,1);

stem(fft(x));

subplot(3,1,2);

stem(abs(fft(x)));

subplot(3,1,3);

stem(angle(fft(x)));

运行结果如图1.1:

图1.1高斯序列频谱图

(1)

q=4时,运行结果如图1.2:

图1.2高斯序列频谱图

(2)

q=8时,运行结果如图1.3:

图1.3高斯序列频谱图(3)

q决定高频,P决定相位,p变大,高频衰减;q变大,相位改变。

2正弦序列

代码:

n=0:

15;

a=0.1;

f=0.0625;

x=exp(-a*n).*sin(2*pi*f*n);

closeall;

subplot(2,1,1);

stem(x);

title('衰减正弦序列');

subplot(2,1,2);

stem(abs(fft(x)));

title('x信号的频谱')

原代码运行结果如图1.4:

图1.4正弦序列频谱图

(1)

f=0.4375时,运行结果如图1.5:

图1.5正弦序列频谱图

(2)

f=0.5625时,运行结果如图1.6:

图1.6正弦序列频谱图(3)

F控制正弦波的频率,f变大,波峰右移。

3三角序列

代码:

fori=1:

4

x(i)=i;

end

fori=5:

8

x(i)=9-i;

end

closeall

subplot(2,1,1);

stem(x);

subplot(2,1,2);

stem(abs(fft(x)))

运行结果如图1.7:

图1.7三角序列频谱图

(二)使用FFT实现卷积

代码:

n=1:

10;

x1=n./n;

x2=8*sin(0.5*pi.*n+4);

x3=0.8*exp(3.*n);

X1k=fft(x1,20);

X2k=fft(x2,20);

X3k=fft(x3,20);

y1=X1k.*X2k;

y2=X1k.*X3k;

y3=X2k.*X3k;

Y1k=ifft(y1,20);

Y2k=ifft(y2,20);

Y3k=ifft(y3,20);

subplot(5,3,1);

stem(x1);

title('x1(n)');

subplot(5,3,2);

stem(x2);

title('x2(n)');

subplot(5,3,3);

stem(x3);

title('x3(n)');

subplot(5,3,4);

stem(X1k);

title('X1(k)');

subplot(5,3,5);

stem(X2k);

title('X2(k)');

subplot(5,3,6);

stem(X3k);

title('X3(k)');

subplot(5,3,7);

stem(y1);

title('y1(k)');

subplot(5,3,8);

stem(y2);

title('y2(k)');

subplot(5,3,9);

stem(y3);

title('y3(k)');

subplot(5,3,10);

stem(Y1k);

title('Y1(n)');

subplot(5,3,11);

stem(Y2k);

title('Y2(n)');

subplot(5,3,12);

stem(Y3k);

title('Y3(n)');

a1=conv(x1,x2);

a2=conv(x1,x3);

a3=conv(x2,x3);

subplot(5,3,13);

stem(a1);

title('a1(n)');

subplot(5,3,14);

stem(a2);

title('a2(n)');

subplot(5,3,15);

stem(a3);

title('a3(n)');

运行结果如图1.8:

图1.8FFT实现卷积运算

(三)综合实验

代码如下:

functionfig=DFTMain()

loadDFTMain

ho=figure('Color',[0.80.80.8],...

'Colormap',mat0,...

'HandleVisibility',off,...

'Name','DFTGUI',...

'NumberTitle','off',...

'PointerShapeCData',matl,...

'Position',[2898342112],...

'Resize','off',...

'Tag','Fig1');

h1=uicontrol('Parent',h0,...

'Units','points',...

'Callback','eval("set_sig");',...

'ListboxTop',0,...

'Position',[17.252167.515.75],...

'String',mat2,...

'Style','popupmeunu',...

'Tag','Pop_name',...

'Value',1);

h1=uicontrol('Parent',h0,...

'Units','points',...

'BackgroundColor',[0.7529411764705880.752941176470588

0.752941176470588],...

'ListboxTop',0,...

'Position',[101.2536.7554.7512],...

'String','周期数',...

'Style','text',...

'Tag','StaticText1');

h1=uicontrol('Parent',h0,...

'Units','points',...

'BackgroundColor',[0.7529411764705880.752941176470588

0.752941176470588],...

'FontSize',14,...

'ListboxTop',0,...

'Position',[14.255423116.5]...

'String','离散傅里叶变换',...

'Style','text',...

'Tag','StaticText2');

h1=uicontrol('Parent',h0,...

'Units','points',...

'Callback','exit;',...

'ListboxTop',0,...

'Position',[192.7524.7555.512],...

'String','退出',...

'Tag','Pushbutton1');...

h1=uicontrol('Parent',h0,...

'Units','points',...

'BackgroundColor',[0.7529411764705880.752941176470588

0.752941176470588],...

'Callback','eval("set_sig");',...

'ListboxTop',0,...

'Max',20,...

'Min',1,...

'Position',[93.7515.7569.7512],...

'SliderStep',[0.051],...

'Style','slider',...

'Tag','Slider_cycle',...

'Value',2.9);

h1=uicontrol('Parent',h0,...

'Units','points',...

'BackgroundColor',[111],...

'ListboxTop',0,...

'Position',[169.513.51815],...

'String','2',...

'Style','text',...

'Tag','Static_cycle');

ifnargout>0,fig=h0;end

functionset_sig

names_hndl=findobj(gcbf,'Tag','Pop_name');

cyc_hndl=findobj(gcbf,'Tag','Slider_cycle');

static_hndl=findobj(gcbf,'Tag','Static_cycle');

cycles=floor(get(cyc_hndl,'Value'));

set(static_hndl,'String',num2str(cycles));

if(isempty(cycles)|(cycles<=0))

errordlg('请重新输入合法的周期数N>0');

return;

end;

N1=16;

N=N1*cycles;

time=linspace(0,1,N+1);

names=get(names_hndl,'String');

val=get(names_hndl,'Value');

sig_type=names{val};

switch(sig_type)

case('正弦波'),

sig=sin(2*pi*cycles*time);

case('方波'),

sig=square(2*pi*cycles*time);

case('三角波'),

sig=sawtooh(2*pi*cycles*time,0.5);

case('锯齿波'),

sig=sawtooh(2*pi*cycles*time);

end;

sig(end)=[];

show_plots(sig);

functionshow_plot(sig)

figure

(2);

U=length(sig);

L=5*U;

time_ind=linspace(0,U-1,U);

time_index_1=linspace(0,U-U/U,U);

time_index_2=linspace(0,U-U/L,L);

F=fft(sig);

F1=fft(sig,L);

subplot(2,1,1);stem(time_ind,sig);

subplot(2,1,2);stem(time_index_1,abs(F));

holdon;

plot(time_index_2,abs(F1),'r');

holdoff;

zoomon;

运行结果如图1.9~1.13:

图1.9综合性列子的界面图

图1.10三角波的效果图

图1.11方波的效果图

图1.12正弦波的效果图

四、实验小结

本次实验相对较为简单,可以说只是小试牛刀,一切才刚刚开始,更多的知识和实验心得还要在不断地实践中汲取。

实验中的结论和老师在课堂上讲的知识不谋而合,客观真实的将知识呈现在我们的面前,有助于提高我们对这门课的兴趣。

 

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2