收藏 分享(赏)

数字信号处理实验指导张培珍.doc

上传人:dzzj200808 文档编号:2688751 上传时间:2018-09-25 格式:DOC 页数:24 大小:349KB
下载 相关 举报
数字信号处理实验指导张培珍.doc_第1页
第1页 / 共24页
数字信号处理实验指导张培珍.doc_第2页
第2页 / 共24页
数字信号处理实验指导张培珍.doc_第3页
第3页 / 共24页
数字信号处理实验指导张培珍.doc_第4页
第4页 / 共24页
数字信号处理实验指导张培珍.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、数字信号处理实验指导编写:张培珍,赵桂艳,李灿苹信息学院班级: 姓名: 学号: 实验序号 1 2 3 4 5指导教师实验成绩:2实验一、Matlab 基本操作实验一、 实验目的:1 根据我校学生的实际情况,利用 Matlab 图形用户界面设计工具,以实验内容为依托,设计一个与整个实验内容配套的实验工作平台,进一步提高学生编程的能力和技巧。熟悉连续信号经过采样前后的频谱变化,加深对采样定理的理解。2 加强学生更好地掌握数字信号处理所包含的基本概念,基本方法和基本技能。根据我校学生的实际情况,利用 Matlab 的图形用户界面设计工具,以实验内容为依托,设计一个与整个实验内容配套的实验工作平台,进

2、一步提高学生编程的能力和技巧。帮助学生充分掌握数字信号处理所包含的基本概念,基本方法和基本技能。二、实验原理“数子信号处理”是电类及电子类专业的重要专业基础课。在传统的课程的教学中,理论教学与实验教学是分离的,这样不利于学生掌握数字信号处理的基本概念重要内容。基于 MATLAB 设计向导 GUI 开发出的仿真实验平台,在这个该图形用户界面中, 以实验内容为依托,这为使用者提供了更多的极大地方便了使用者。2.1 Matlab 的图形用户界面简介作为强大的科学计算软件,Matlab 提供了图形界面的设计与开发功能。自从美国公司 Math Works 于 1967 年推出妈 Matrix Labor

3、atory 缩写为 Matlab 软件包到目前为止已经发展到 7.0。由于其语句简练、功能强大、简单实用,现已 成为面向科学与工程计算的大型优秀科技应用软件。随着大量可视化编程语言的出现, 为工程技术人员提供了可视化的编程环境, 大大降低了技术人员编程的工作量。 即使不是专业的编程工作者也能完成复杂的编程任务, 这在很大程度上极大地推动了各种应用软件的发展。Matlab 作为面向科学与工程计算的大型科技应用软件,同样提供了一个功能强大的用于编写图形用户界面的工具 GUI。Matlab的用户界面对象分为三类:用户界面控件对象(uicontrol),下拉式菜单对象(uimenu),和内容式菜单对象

4、(uicontextmenu) 。图形对象的从属关系如下图3其中 GUI 向导提供了十种控件(Control)对象和一个坐标轴(Axes)对象。它们分别是: 按钮(PushButton) 、开关按钮(ToggleButton)、编辑框(EditText) 、弹出式菜单(PopupMenu)、图文框(Frame)、静态文本框(StaticText)、列表框(Listbox)、复选框(Checkbox)、滑动条(Slide)等,因此用户在使用的过程需要深入地了解各种图形对象的特怔、属性和操作。本实验利用 matlabMatlab 的用户界面对象,设计出以实验内容为依托的操作简单, 、功能完备的图形

5、用户界面,为我们课堂教学和实验仿真提供了十分有效的基础。2.2 课程实验的 Matlab 用户界面设计目前,我校数字信号处理课程共计 54 学时,其中 10 学时实验。主要包括:基本信号波型 Matlab 仿真试验;离散傅里叶变换和快速傅里叶变换对比实验;IIR 数字滤波器的仿真设计实验;FIR 数字滤波器的综合设计实验。本实验主要完成界面的设计,以后的每一实验完成后同时完成各个实验的参数调整和各项功能。4贴界面图三、实验内容:matlab Matlab 程序如下:gfc=figure(Color,1,1,1,Name,数字信号处理实验系统,NumberTitle,off,MenuBar,no

6、ne); %定义菜单项axes(parent,gfc,Position,0.10 0.25 0.63 0.62,visible,off); %设置界面内图形的坐标轴htest1=uimenu(gfc,Label,实验内容); %定义一级下拉式菜单htest2=uimenu(gfc,Label,帮助); %定义一级下拉式菜单htest3=uimenu(gfc,Label,关于); %定义一级下拉式菜单% 定义二级菜单t1=uimenu(htest1,Label,实验一); t2=uimenu(htest1,Label,实验二);t3=uimenu(htest1,Label,实验三);t4=uim

7、enu(htest1,Label,实验四);5%定义三级菜单t11=uimenu(t1,Label,单位脉冲序列,callback,.time1=0.0;,time1=cputime;,n0=0;,nf=10;,ns=3;,n1=n0:nf;,x1=(n1-ns)=0;,stem(n1,x1);,title(单位脉冲序列);,tt1=cputime-time1); t12=uimenu(t1,Label,单位阶跃序列,callback,.time2=0.0;,time2=cputime;,n0=0;,nf=10;,ns=3;,n1=n0:nf;,x2=(n1-ns)=0;,stem(n1,x2

8、);,title(单位阶跃序列);,tt2=cputime-time2);t13=uimenu(t1,Label,矩形序列,callback,Test3);%Test3 为编译好的 Test3.m 文件,和本程序保存统一路径t14=uimenu(t1,Label,实指数序列,callback,Test4); %Test4 为编译好的 Test4.m 文件,和本程序保存统一路径%定义图形有网格按钮u1=uicontrol(gfc,Style,push,Unit,normalized, Posi,0.85,0.65,0.15,0.15,String,.Grid on,fontsize,12,Cal

9、l,grid on );%定义图形无网格按钮 u2=uicontrol(gfc,Style,push,Unit,normalized,.Posi,0.85,0.38,0.15,0.15,String, Grid off,fontsize,12,Call,grid off );%定义关闭按钮u3=uicontrol(gfc,Style,push,Unit,normalized,Posi,0.85,0.05,0.15,0.15,String,关 闭,fontsize,11,Call,close all);tt=0.4690;%把各程序运行时间写入文本框Hstr=num2str(tt);uicont

10、rol(gfc,Style,text, Unit,normalized,Posi,0.19,0.05,0.22,0.12,String,.显示运行时间,fontsize,11);Htext=uicontrol(gfc,Style,edit,Unit,normalized,.Posi,0.42,0.05,0.22,0.12,String,Hstr,fontsize,12);6四、实验分析通过调节所用各函数内各个选项以及选项内容,分析界面产生的效果。五、实验总结总结实验认识、过程、效果、问题、收获、体会、意见和建议。7注意:所有实验报告均从网上下载统一格式。每次实验结束后上交相应实验报告8实验二

11、典型离散信号及其 MATLAB 实现一、实验目的1 掌握 MATLAB 语言的基本操作,学习基本的编程功能。2 熟悉连续信号经过采样前后的频谱变化,加深对采样定理的理解。3 掌握 MATLAB 产生常用离散时间信号的编程方法。掌握 MATLAB 语言的基本操作,学习基本的编程功能。熟悉连续信号经过采样前后的频谱变化,加深对采样定理的理解。掌握 MATLAB 产生常用离散时间信号的编程方法。二、实验原理1 单位抽样序列:1 0)(n在 MATLAB 中可以利用 zeros()函数实现。;1)();,xNzeros如果 在时间轴上延迟了 k 个单位,得到 即:n )(kn01)(k2单位阶跃序列:

12、01)(nu9在 MATLAB 中可以利用 ones()函数实现。);,1(Nonesx3正弦序列: )/2sin()(FsfAx在 MATLAB 中: )/*2sin(*1:0faiFsfpiAxN4复正弦序列: njex)(在 MATLAB 中: )*exp(1:0nwjNn5指数序列: nax)(在 MATLAB 中: naxN.1:06.y=fliplr(x)信号的翻转;x=square(t)产生方波信号y=sawtooth(t)产生锯齿波信号;y=sinc(x)产生 sinc 函数信号。三、实验内容(一) 离散信号的产生离散信号的图形显示使用 stem 指令。1. 编写 MATLAB

13、 程序来,产生下列基本典型脉冲序列。(1) 单位脉冲序列:起点 n0,终点 nf,在 ns 处有一单位脉冲。10(2) 单位阶跃序列:起点 n0,终点 nf,在 ns 前为 0,在 ns 处及以后均为1(n0=0; %单位阶跃序列n3=n0:nf;x3=(0.75).n3; %实指数序列n4=n0:nf;x4=exp(-0.2+0.7j)*n4); %复指数冲序列subplot(2,2,1),stem(n1,x1);subplot(2,2,2),stem(n2,x2);subplot(2,2,3),stem(n3,x3);figuresubplot(2,2,1),stem(n4,real(x4

14、); %注意 subplot 的变化subplot(2,2,2),stem(n4,imag(x4);subplot(2,2,3),stem(n4,abs(x4); subplot(2,2,4),stem(n4,angle(x4);11(二)离散时间信号的卷积在 MATLAB 中,利用函数 conv(x,h)可以实现两个有限长度序列的卷积,要注意 conv函数是假定两个序列都从 n=0 开始的。1.用 MATLAB 编写卷积运算函数。function y,ny=conv_improve(x,nx,h,nh)%x,nx为第一个信号%h,nh为第二个信号%conv(x,h)可以实现两个有限长度序列的

15、卷积ny1=nx(1)+nh(1);ny2=nx(length(x)+nh(length(h);ny=ny1:ny2;y=conv(x,h);在命令窗口调用卷积函数。x=3 4 0 -2 2 3 5; nx=-3:3; h=1 4 5 6 0 1; nh=N:N+5;N 是你的学号最后两位,带入后求结果,并将结果图形绘制在下面方框中。结果为:四、实验分析12观察实验结果,掌握、分析典型的离散时间信号,分析信号的卷积运算。五、实验总结总结实验认识、过程、效果、问题、收获、体会、意见和建议。实验三 离散信号的 DFT 及其快速算法一、 实验目的1在学习 DFT 理论的基础上,通过本实验,加深对 F

16、FT 的理解,体会二者之间的关系。2熟悉应用 FFT 实现两个序列的线性卷积的方法。二、 实验原理 13N 点序列 xn 的 DFT 和 IDFT 定义:可以用函数 U=fft(u,N)和 u=ifft(U,N)计算 N 点序列的 DFT 正、反变换。三、 实验内容1. 已知一个 8 点的时域非周期离散阶跃信号,n1=0,n2=7,在 n0=4 前为 0,n0 以后为1。用 N=32 点进行 FFT 变换,作其时域信号图及信号频谱图。n1=0;n0=4;n2=7;N=32;n=n1:n2;w=(n-n0)=0; %建立时间信号subplot(2,2,1);stem(n,w);i=0:N-1;

17、%频率采样点从 0 开始y=fft(w,N); %用快速算法计算 DFTaw=abs(y); %求幅度值subplot(2,1,2);plot(i,aw);2.一个由 50Hz 和 120Hz 正弦信号构成的信号,受到均值随机噪声的干扰,数据采样频率为 1000Hz。通过 FFT 来分析其信号频率成分。用 MATLAB 实现程序如下:t=0:0.001:0.6;n1=512;x=sin(2*pi*50*t)+sin(2*pi*120*t); %两个正弦信号合成一个输入y=x+randn(1,length(t); %加载噪声信号Y=fft(y,512n1); %进行 DFT 变换subplot(

18、2,1,1);plot(y);title(受噪声污染的信号);n=0:511;f=1000*n/512n1; %将信号横向放大,由 512 放大为 1000subplot(2,1,2);plot(f,abs(Y);title(FFT);143.x(n)=R5(n),求 N 分别取 108,2032 时的 X(k),最后绘出图形。离散傅立叶变换函数的 MATLAB 实现如下:functionXk=dft(xn,N)n=0:1:N-1; %n 的行向量k=0:1:N-1; %k 的行向量WN=exp(-j*2*pi/N); %旋转因子nk=n*k; %产生一个含 nk 值的 N 乘 N 维矩阵WN

19、nk=WN.nk; %DFT 矩阵Xk=xn*WNnk; %DFT 系数的行向量调用上面函数解题。n=0:4;x=ones(1,5);k=0:999;w=(pi/500)*k;X=x*(exp(-j*pi/500).(n*k); %计算离散时间傅立叶变换Xe=abs(X);subplot(3,2,1);stem(n,x);ylabel(x(n);subplot(3,2,2);plot(w/pi,Xe);ylabel(|X(ejw)|);N=10;x=ones(1,5),zeros(1,N-5);n=0:N-1;X=dft1(x,N); %N108 点离散傅立叶变换magX=abs(X);pha

20、X=angle(X)*180/pi;k=(0:length(magX)-1)*N/length(magX);subplot(3,2,3);stem(n,x);ylabel(x(n);subplot(3,2,4);stem(k,magX);axis(0,10,0,5);ylabel(|X(k)|);N=20;x=ones(1,5),zeros(1,N-5);n=0:N-1;X=dft1(x,N); %N2032 点离散傅立叶变换magX=abs(X);phaX=angle(X)*180/pi;k=(0:length(magX)-1)*N/length(magX);subplot(3,2,5);s

21、tem(n,x);ylabel(x(n);subplot(3,2,6);stem(k,magX);axis(0,20,0,5);ylabel(|x(k)|);152. 已知一个 8 点的时域非周期离散阶跃信号,n1=0,n2=7,在 n0=4 前为 0,n0 以后为1。用 N=32 点进行 FFT 变换,作其时域信号图及信号频谱图。n1=0;n0=4;n2=7;N=32;n=n1:n2;w=(n-n0)=0; %建立时间信号subplot(2,2,1);stem(n,w);i=0:N-1; %频率采样点从 0 开始y=fft(w,N); %用快速算法计算 DFTaw=abs(y); %求幅度值

22、subplot(2,1,2);plot(i,aw);43.利用 FFT 计算线性卷积。设 x(n)=2 3 1 4 5;h(n)=2 1 7 4 5 7 2 3。计算二者的线性卷积。MATLAB 程序如下:x=2 3 1 4 5;h=2 1 7 4 5 7 2 3;16Lenx=length(x); %求序列 x 的长度Lenh=length(h); %求序列 h 的长度N=Lenx+Lenh-1;Xk=fft(x,N); %计算 x 序列的 DFTHk=fft(h,N); %计算 h 序列的 DFTYk=Xk.*Hk;y=ifft(Yk) %求 IDFTstem(y);xlabel(n);y

23、label(y(n);title(x(n)*h(n);grid四、实验分析认真观察实验结果,分析实验产生的现象的原因。17五、实验总结总结实验认识、过程、效果及体会、意见建议。实验四 IIR 数字滤波器设计一、实验目的1. 熟悉 Butterworth 滤波器、Chebyshev 滤波器的频率特性。 2. 掌握双线性变换法及脉冲响应相应不变法设计 IIR 数字滤波器的具体设计方法及其原理,熟悉用双线性变换法及脉冲响应不变法设计低通、高通和带通 IIR 数字滤波器的计算机编程。 183. 观察双线性变换及脉冲响应不变法设计的滤波器的频域特性,了解双线性变换法及脉冲响应不变法的特点。 二、实验原理

24、(1) 脉冲响应不变法用数字滤波器的单位脉冲响应序列 h(n)模仿模拟滤波器的冲激响应 ha(t),让 h(n)正好等于 ha(t)的采样值,即h(n)= ha(nT)其中 T 为采样间隔,如果以 Ha(S)及 H(z)分别表示 ha(t)的拉式变换及 h(n)的 Z 变换,则(2) 双线性变换法S 平面与 z 平面之间满足以下映射关系:s 平面的虚轴单值地映射于 z 平面的单位圆上,s 平面的左半平面完全映射到 z 平面的单位圆内。双线性变换不存在混叠问题。双线性变换时一种非线性变换 ,这种非线性引起的幅频特性畸变可通过预畸而得到校正。三、实验内容设采样频率 fs =4000+sn*100H

25、z,sn 为学号后两位。用脉冲响应不变法和双线性变换法设计一个三阶巴特沃兹滤波器,其 3dB 边界频率为 fc =1kHz。用 MATLAB 程序实现如下:sn= ; %学号后两位 B,A=butter(3,2*pi*1000,s); %巴特沃思滤波器%b,a = butter(n,Wn,s),n 为滤波器的阶数,Wn19%为边界频率,按 s 的降幂排列fs =4000+sn*100;num1,den1=impinvar(B,A,fs);%脉冲响应不变法, 4000 为采样频率h1,w=freqz(num1,den1); %计算系统频率特性B,A=butter(3,2/0.00025,s);

26、%2/0.00025 预畸变模拟滤波器边界频率num2,den2=bilinear(B,A,fs);%双线性法h2,w=freqz(num2,den2);f=w/pi*2000;plot(f,abs(h1),-.,f,abs(h2),-);grid;xlabel(频率/Hz);ylabel(幅值/dB);运行该程序,并绘出运行结果。2.设计一数字高通滤波器,它的通带为 400500Hz,通带内容许有 0.5dB 的波动,阻带内衰减在小于 317Hz 的频带内至少为 19dB,采样频率为 1,000Hz。 MATLAB 程序如下:wc=2*1000*tan(2*pi*400/(2*1000);

27、wt=2*1000*tan(2*pi*317/(2*1000); N,wn=cheb1ord(wc,wt,0.5,19,s); B,A=cheby1(N,0.5,wn,high,s); num,den=bilinear(B,A,1000); h,w=freqz(num,den); 20f=w/pi*500; plot(f,20*log10(abs(h); axis(0,500,-80,10); grid; xlabel(频率/Hz) ylabel(幅度/dB)四、实验分析分析 Butterworth 滤波器、Chebyshev 滤波器的特性。五、实验总结总结实验认识、效果、收获及体会、意见、建

28、议。21设计性实验指导书实验名称:FIR 数字滤波器的设计实验项目性质:编程设计所属课程名称:数字信号处理计划学时:4一、 实验目的1. 掌握用窗函数法, 、频率采样法设计 FIR 滤波器的原理及方法,熟悉响应的计算机编程; 2. 熟悉线性相位 FIR 滤波器的幅频特性和相频特性; 3. 了解各种不同窗函数对滤波器性能的影响。 二、 预习与参考(一) 2.1 窗口法 窗函数法设计线性相位 FIR 滤波器步骤 确定数字滤波器的性能要求:临界频率 k,滤波器单位脉冲响应长度N; 根据性能要求,合理选择单位脉冲响应 h(n)的奇偶对称性,从而确定理想频率响应 Hd(ej )的幅频特性和相频特性; 求

29、理想单位脉冲响应 hd(n),在实际计算中,可对 Hd(ej )按 M(M 远大于N)点等距离采样,并对其求 IDFT 得 hM(n),用 hM(n)代替 hd(n); 选择适当的窗函数 w(n),根据 h(n)= hd(n)w(n)求所需设计的 FIR 滤波器单位脉冲响应; 求 H(ej ),分析其幅频特性,若不满足要求,可适当改变窗函数形式或长度 N,重复上述设计过程,以得到满意的结果。 窗函数的傅式变换 W(ej )的主瓣决定了 H(ej )过渡带宽。W(e j )的旁瓣大小和多少决定了 H(ej )在通带和阻带范围内波动幅度,常用的几种窗函数有: 矩形窗 w(n)=R N(n); 22

30、 Hanning 窗 ; Hamming 窗 ; Blackmen 窗 ; Kaiser 窗 。式中 Io(x)为零阶贝塞尔函数。(二)2.2 频率采样法频率采样法是从频域出发,将给定的理想频率响应 Hd(ej )加以等间隔采样然后以此 Hd(k)作为实际 FIR 数字滤波器的频率特性的采样值 H(k),即令由 H(k)通过 IDFT 可得有限长序列 h(n)将上式代入到 Z 变换中去可得其中 ()是内插函数三、 设计指标(1)N=15, 。用 Hanning 矩形窗设计一线性相位带低通滤波器(,观察它的其实际 3dB 和 20dB 带宽。N=45,重复这一设计, ; 参数自主设定)23(2)

31、分别改用矩形窗和 Blackmanhanning 窗,设计(1)中的带低通滤波器。 四、 实验要求(设计要求)1) 编写窗函数法 FIR 滤波器设计代码,观察幅频和相位特性的变化,注意长度 N 变化的影响; 观察并记录窗函数对滤波器幅频特性的影响,比较三两种窗的特点;2) 要求所编的程序能正确运行;画出波形,完成并提交实验报告。 五、 实验(设计)仪器设备和材料清单PC 机:70 台,70 组,1 人/每组Matlab6.5 教学版安装光盘:4 张其它消耗材料金额:10 元六、 调试及结果测试提交带注释的(或给出每个操作所涉及的算法)且运行正确运行的源程序,说明调试过程中所遇到的问题、及解决方

32、法;及经验与体会;。七、 考核形式理论课程闭卷考试,实验部分提交实验报告。八、 实验报告要求1.实验报告必须独立完成,抄袭、复制他人作无效处理: 2.实验报告要求: (1) 要按规定从教学网站下载样板文件格式书写。(2) 实验报告要注明姓名,学号,实验名称,完成日期,联系电话。 (3) 内容不真实、不认真、不能按时完成的,不记成绩。 (4) 简要说明设计题目、内容、原理。3. 附滤波器设计代码及要求的图形。对实验结果和实验中的现象进行简练明确的分析并作出结论或评价,对本人在实验全过程中的经验、教训、体会、收获等进行必要的小结。4. 报告要求独立完成,篇幅为 A4 纸不超过 5 页,突出自己的设计。5. 对改进实验内容、安排、方法、设备等的建议和设想,(此部分可选作)。6. 不能完成实验报告者,不能参加课程考试。24九、 思考题1. )不同窗函数对滤波器性能的影响如何?2. )线性相位 FIR 滤波器的幅频特性和相频特性如何?

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

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报