数字信号处理实验指导书思考题答案实验图.docx

上传人:b****7 文档编号:8789969 上传时间:2023-02-01 格式:DOCX 页数:19 大小:222.08KB
下载 相关 举报
数字信号处理实验指导书思考题答案实验图.docx_第1页
第1页 / 共19页
数字信号处理实验指导书思考题答案实验图.docx_第2页
第2页 / 共19页
数字信号处理实验指导书思考题答案实验图.docx_第3页
第3页 / 共19页
数字信号处理实验指导书思考题答案实验图.docx_第4页
第4页 / 共19页
数字信号处理实验指导书思考题答案实验图.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

数字信号处理实验指导书思考题答案实验图.docx

《数字信号处理实验指导书思考题答案实验图.docx》由会员分享,可在线阅读,更多相关《数字信号处理实验指导书思考题答案实验图.docx(19页珍藏版)》请在冰豆网上搜索。

数字信号处理实验指导书思考题答案实验图.docx

数字信号处理实验指导书思考题答案实验图

实验一Matlab与数字信号处理基础…………………………………………………………2

实验二离散傅里叶变换与快速傅里叶变换…………………………………………………4

实验三数字滤波器结构………………………………………………………………………6

注释…………………………………………………………………………………………9

主要参考文献……………………………………………………………………………………9

 

实验一Matlab与数字信号处理基础

一、实验目的和任务

1、熟悉Matlab的操作环境

2、学习用Matlab建立基本序列的方法;

3、学习用仿真界面进行信号抽样的方法。

二、实验内容

1、基本序列的产生:

单位抽样序列、单位阶跃序列、矩形序列、实指数序列和复指数序列的产生

2、用仿真界面进行信号抽样练习:

用simulink建模仿真信号的抽样

三、实验仪器、设备及材料

计算机、Matlab软件

四、实验原理

序列的运算、抽样定理

五、主要技术重点、难点

Matlab的各种命令与函数、建模仿真抽样定理

六、实验步骤

1、基本序列的产生:

单位抽样序列δ(n):

n=-2:

2;

x=[00100];

stem(n,x);

单位阶跃序列u(n):

n=-10:

10;

x=[zeros(1,10)ones(1,11)];

stem(n,x);

矩形序列RN(n):

n=-2:

10;

x=[00ones(1,5)zeros(1,6)];

stem(n,x);

实指数序列0.5n:

n=0:

30;

x=0.5.^n

stem(n,x);

复指数序列e(-0.2+j0.3)n:

n=0:

30;

x=exp((-0.2+j*0.3)*n);

模:

stem(n,abs(x));

幅角:

stem(n,angle(x));

2、用仿真界面进行信号抽样练习:

(1)在Matlab命令窗口中输入simulink并回车,以打开仿真模块库;

(2)按CTRL+N,以新建一仿真窗口;

在仿真模块库中用鼠标点击Sources(输入源模块库),从中选择sinewave(正弦波模块)并将其拖至仿真窗口;

(3)在仿真模块库中用鼠标点击Discrete(离散模块库),从中选择Zero-OrderHold(零阶保持器模块)并将其拖至仿真窗口;

(4)在仿真模块库中用鼠标点击Sinks(显示模块库),从中选择Scope(示波器模块)并将其拖至仿真窗口;

(5)在仿真窗口中把上述模块依次连接起来;

(6)用鼠标双击Scope模块,以打开示波器的显示界面;

(7)用鼠标点击仿真窗口工具条中的►图标开始仿真,结果显示在示波器中;

(8)用鼠标双击Zero-OrderHold模块,打开其参数设置窗口,改变sampletime参数值,例如1、0.5、0.1、0.05…,用鼠标点击仿真窗口工具条中的►图标开始仿真,比较示波器显示结果(选三个参数值,得三个结果);

(9)在仿真模块库中用鼠标点击Sinks(显示模块库),从中选择ToWorkspace(输出到当前工作空间的变量模块)并将其拖至仿真窗口;

(10)用鼠标双击ToWorkspace模块,打开其参数设置窗口,改变variablename参数值为x;同时把saveformat参数值设置为Array;

(11)在仿真窗口中先用鼠标点击Zero-OrderHold模块与Scope模块的连线,然后按住CTRL键,从选中连线的中部引出一条线到ToWorkspace模块;

(12)用鼠标双击Zero-OrderHold模块,打开其参数设置窗口,改变sampletime参数值,例如1、0.5、0.1、0.05…,用鼠标点击仿真窗口工具条中的►图标开始仿真,并返回命令窗口,用stem(x)作图,比较序列图显示结果(选三个参数值,得三个结果);

七、实验报告要求

1、实验步骤按实验内容指导进行;

2、对于实验内容1和2的数据必须给出的离散图,其相关参数应在图中注明;

3、具有关联性和比较性的图形最好用subplot()函数,把它们画在一起;

4、实验报告按规定格式填写,要求如下:

(1)实验步骤根据自己实际操作填写;

(2)各小组实验数据不能完全相同,否则以缺席论处;

5、实验结束,实验数据交指导教师检查,得到允许后可以离开,否则以缺席论处;

八、实验注意事项

1、Matlab编程、文件名、存盘目录均不能使用中文。

Matlab要区分英文大小写。

2、实验结果要保存,打印后贴在实验报告上。

3、拷图技巧

stem(n,x)得到的Figure

(1)在Figure界面下,先把整个窗口缩小;

(2)在Figure界面下,点击菜单Edit/CopyFigure;

(3)在Word界面下,用粘贴命令…

Scope显示的图

(1)键盘上按PrtScreen键

(2)打开Windows附件->画图->编辑->粘贴

(3)选画图板左边工具栏虚线方框按钮,用鼠标在图中选定所需区域,按CTRL+c

(4)在Word文档中按CTRL+v

 

九、思考题

1、已知离散系统的输入x(n)和冲激响应h(n)如下,求相应的响应y(n),在计算前估算y(n)的长度。

x(n)=[1,4,3,5,1,2,3,5]h(n)=[4,2,4,0,4,2]提示:

卷积命令c=conv(f,h);

2、实验步骤2中的奈奎斯特频率是多少?

1/3Hz

实验二离散傅里叶变换与快速傅里叶变换

一、实验目的和任务

1、练习M文件(函数)的编写;

2、学习DFT、FFT的初步应用;

二、实验内容

1、编写离散傅里叶变换式的M文件:

2、自编函数dft、idft与工具函数fft、ifft的比较:

用simulink建模仿真信号的抽样

三、实验仪器、设备及材料

计算机、Matlab软件

四、实验原理

DFT、IDFT、FFT、IFFT

五、主要技术重点、难点

Matlab的各种命令与函数、分别绘出DFT、IDFT的实部和虚部

六、实验步骤

1、编写自己的离散傅里叶变换式:

说明:

离散傅里叶变对表达式如下

编写M文件(函数)的具体步骤

(1)用鼠标点击Matlab主界面工具条上的NewM-File图标,打开M文件编辑窗口;

(2)在编辑框中输入以下程序后以文件名“dft.m”存盘(请不要改变路径设置);

DFT.m程序

程序说明

function[Xk]=dft(xn)

定义函数dft,xn为参数

xn为需要进行DFT的序列

ifnargin<1error('needx(n)!

');end

dft需要参数

N=length(xn);

取序列的点数

n=0:

N-1;

k=0:

N-1;

WN=exp(-j*2*pi/N);

计算

nk=n'*k;

WNnk=WN.^nk;

Xk=xn*WNnk;

(3)重复步骤

(1),在编辑框中输入以下程序后以文件名“idft.m”存盘;

IDFT.m程序代码

程序说明

function[xn]=idft(Xk)

定义函数dft,xn为参数

xn为需要进行DFT的序列

ifnargin<1error('needX(k)!

');end

dft需要参数

N=length(Xk);

取序列的点数

n=0:

N-1;

k=0:

N-1;

WN=exp(-j*2*pi/N);

计算

nk=n'*k;

WNnk=WN.^(-nk);

xn=Xk*WNnk/N;

2、自编函数dft、idft与工具函数fft、ifft的比较:

(1)在命令窗口中建立一序列x(6点);x=[521组号*]

(2)分别用dft和fft对x进行离散傅立叶变换(X1=dft(x);X2=fft(x);),比较结果;

(3)分别用idft和ifft进行逆离散傅立叶变换(x1=idft(X1);x2=ifft(X2);),比较结果(x1、x2与原序列x进行比较,x1和x2相互比较);

3、DFT的应用:

(1)在Matlab主界面中,用鼠标点击菜单File/ImportData…;

(2)在文件对话框中选择数据文件dsp01.mat,导入信号x;(x为512点的序列)

(3)对信号进行fft变换,作出幅度谱和相位谱。

程序代码

程序说明

N=length(x);

取得信号点数

n=0:

N-1;

X=fft(x);

进行DFT

mX=abs(X);

取模

aX=angle(X);

取幅角

w=2*pi*n/N;

计算各点频率

subplot(2,1,1);

plot(w(1:

256),mX(1:

256));

作幅度谱(线图)

subplot(2,1,2);

plot(w(1:

256),aX(1:

256));

作相位谱(线图)

七、实验报告要求

1、实验步骤按实验内容指导进行;

2、对于实验内容1要给出程序;

3、对于实验内容2要给出对比数据和相关结论;

4、对于实验内容3要给出相关谱线;

5、实验报告按规定格式填写,要求如下:

(1)实验步骤根据自己实际操作填写;

(2)各小组实验数据不能完全相同,否则以缺席论处;

6、实验结束,实验数据交指导教师检查,得到允许后可以离开,否则以缺席论处。

八、实验注意事项

1、Matlab编程、文件名、存盘目录均不能使用中文。

2、实验结果要保存,打印后贴在实验报告上。

3、拷图技巧

(1)在Figure界面下,先把整个窗口缩小;

(2)在Figure界面下,点击菜单Edit/CopyFigure;

(3)在Word界面下,用粘贴命令…

九、思考题

1、在离散幅度谱中本已分开的谱线,用线图表示时却没有分开,为什么?

提示:

stem与plot命令的区别

实验三数字滤波器结构

一、实验目的和任务

1、学习Matlab的离散仿真环境;

2、学习用Matlab建立离散系统的方法;

3、通过实验操作熟悉滤波器结构;

二、实验内容

1、用Matlab仿真离散系统:

2、用直接Ⅰ型结构实现滤波器:

3、用直接Ⅱ型结构实现滤波器:

4、用级联型结构实现滤波器(选作):

三、实验仪器、设备及材料

计算机、Matlab软件

四、实验原理

FIR滤波器、IIR滤波器的各种结构

五、主要技术重点、难点

用Matlab提供的模块组建各种滤波器。

六、实验步骤

1、用Matlab仿真离散系统:

已知某系统的差分方程为y(n)=x(n)+2.5y(n-1)-y(n-2),

其冲激响应为

试用Matlab仿真差分方程,求其冲激响应,并把结果与h(n)比较。

具体操作步骤:

(1)在Matlab命令窗口中输入simulink并回车,以打开仿真模块库;

(2)在该窗口中选择File/Open…菜单,打开IIR01.mdl文件;

(3)打开的窗口中已有所需模块,请按下图连接各模块;

(4)用鼠标点击仿真窗口工具条中的►图标开始仿真;

(5)回到Matlab命令窗口中,输入以下程序,比较结果:

程序代码

程序说明

n=0:

10;

h=(4/3)*2.^n-(1/3)*(0.5).^n;

求理论上的冲激序列

subplot(2,1,1);

stem(n,h);

作出理论上的冲激序列

subplot(2,1,2);

stem(n,y);

作出实验上的冲激序列

2、用直接Ⅰ型结构实现滤波器:

已知某滤波器的差分方程(见下),试用直接Ⅰ型结构实现该滤波器,求冲激响应。

y(n)=x(n)+1.4x(n-1)+0.3x(n-2)-0.3y(n-1)+0.2y(n-2),

具体操作步骤:

(4)打开IIR02.mdl文件,窗口中已有所需模块,请按下图连接各模块;

(5)用鼠标点击仿真窗口工具条中的►图标开始仿真;

(6)回到Matlab命令窗口中,输入以下程序,观察冲激响应序列;

程序代码

程序说明

n=0:

10;

stem(n,y1);

作出冲激序列

3、用直接Ⅱ型结构实现滤波器:

试用直接Ⅱ型结构实现内容2中的滤波器,求冲激响应。

具体操作步骤:

(1)打开IIR03.mdl文件,窗口中已有所需模块,请按下图连接各模块;

(2)用鼠标点击仿真窗口工具条中的►图标开始仿真;

(3)回到Matlab命令窗口中,输入以下程序,观察冲激响应序列(比较结果);

程序代码

程序说明

subplot(2,1,1);

stem(n,y1);

直接Ⅰ型冲激序列

subplot(2,1,2);

stem(n,y2);

直接Ⅱ型冲激序列

4、用级联型结构实现滤波器(选作):

已知某滤波器的系统函数H(z)可进行如下分解,试用级联型结构实现该滤波器

(1)打开Filter04.mdl文件,点击►图标进行仿真;

(2)回到Matlab命令窗口中,输入以下程序,观察冲激响应序列;

程序代码

程序说明

stem(n,y3(1,1:

11));

级联型冲激序列

(3)打开Filter05.mdl文件(交换子系统的顺序),点击►图标进行仿真;

(4)回到Matlab命令窗口中,输入以下程序,观察冲激响应序列(比较结果);

程序代码

程序说明

subplot(2,1,1);

stem(n,y3(1,1:

11));

subplot(2,1,2);

stem(n,y4(1,1:

11));

七、实验报告要求

1、实验步骤按实验内容指导进行;

2、对于实验内容1、2和3的数据必须给出的仿真模块图和冲激响应图;

3、实验内容4仅作为练习,不用给出相关数据;;

4、实验报告按规定格式填写,要求如下:

(1)实验步骤根据自己实际操作填写;

(2)各小组实验数据不能完全相同,否则以缺席论处;

5、实验结束,实验数据交指导教师检查,得到允许后可以离开,否则以缺席论处;

八、实验注意事项

1、Matlab编程、文件名、存盘目录均不能使用中文。

2、实验结果要保存,打印后贴在实验报告上。

3、仿真模块图的拷贝

(1)在仿真界面下,先把整个窗口缩放到合适的大小;

(2)点击菜单Edit/Copymodeltoclipboard;

(3)在Word界面下,进行粘贴操作;

九、思考题

1、要得到一个方便调节零极点的IIR滤波器应用什么结构,为什么?

采用级联结构的。

从级联型结构中看到,它的每一个基本节只是关系到滤波器的某一对极点和一对零点,调整系数、只单独调整了滤波器第i对零点而不影响其他任何零点。

同样,调整系数、也只单独调整了滤波器第i对极点。

因此,这种结构便于准确地实现单节滤波器的零极点,也便于性能调整。

然而从总体看,某频率成分在某一节阻断即表现为整体上的阻断,必须在每一节畅通才能表现为整体的畅通,所以,容易控制零点而难于调整极点。

注释

主要参考文献:

[1]《MATLAB符号运算及应用》,黄忠霖编,国防工业出版社,2004

实验一

思考题

实验二

实验三

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

当前位置:首页 > 小学教育 > 小学作文

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

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