




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数字信号处理编写:张培珍,赵桂艳,李灿苹信息学院班级:姓名:学号:实验序号12345指导教师实验成绩:实验一、matlab基本操作实验一、实验目的:1. 根据我校学生的实际情况,利用matlab图形用户界面设计工具,以实验内容为依 托,设计一个与整个实验内容配套的实验工作平台,进一步提高学生编程的能力和技 巧。2. 加强学生更好地掌握数字信号处理所包含的革本概念,基本方法和革本技能。二、实验原理“数子信号处理”是电类及电子类专业的重要专业垄础课。在传统的课程教学中,理论 教学与实验教学是分离的,这样不利于学生掌握数字信号处理的重要内容。基于matlab 设计向导gui开发出的仿真实验平台,在该
2、图形用户界面中,以实验内容为依托,这为使用 者提供了更多的方便。2.1 matlab的图形用户界面简介作为强大的科学计算软件,matlab提供了图形界面的设计为开发功能。自从美国公司 math works于1967年推出matrix laboratory缩写为matlab软件包到冃前为止已经发展到 7.0。由于其语句简练、功能强人、简单实用,现己成为面向科学与工程计算的人型优秀科 技应用软件。随着大量可视化编程语言的出现,为工程技术人员提供了可视化的编程环境,人人 降低了技术人员编程的工作蜃。即使不是专业的编程工作者也能完成复杂的编程任务,这 在很大程度上推动了各种应用软件的发展。matlab
3、作为面向科学与工程计算的大型科技应 用软件,同样提供了一个功能强大的用于编写图形用户界面的工具gul matlab的用户界 面对彖分为三类:用户界面控件对象(uicontrol),下拉式菜单对彖(uimenu),和内容式菜单对 象(uicontextmenu)。图形对象的从属关系如卜图图1图形用户界面的图形对象的从属关系其中gui向导提供了十种控件(control)对象和一个坐标轴(axes)对象。它们分别是:按钮 (pushbutton) 开关按钮(togglebutton)s 编辑框(edittext)> 弹出式菜单(popupmenu) 图文 框(frame)、静态文本框(stat
4、ictext)、列表框(listbox)、复选框(checkbox)、滑动条(slide)等, 因此用户在使用的过程需要深入地了解各种图形对彖的特怔、属性和操作。本实验利用matlab的用户界面对象,设计出以实验内容为依托的操作简单、功能完备 的图形用户界面,为课堂教学和实验仿真提供了有效的基础。2.2课程实验的matlab用户界面设计目前,我校数字信号处理课程共计54学时,其屮1()学时实验。主要包括:基木信号波 型matlab仿真试验;离散傅里叶变换和快速傅里叶变换对比实验;iir数字滤波器的仿真设 计实验:fir数字滤波器的综合设计实验。本实验主婆完成界面的设计,以后的每一实验完 成后同
5、时完成各个实验的参数调整和各项功能。三、实验内容:matlab程序如下:gfc=figure(rcolor 1,1,1 l/name1?数 字信号 处理实 验系统7numbertitle,;off;menubar,none,); % 定义菜单项axescparentgfc/positionmo. 10 0.25 0.63 0.62,pisible','off); %设置界血内图形的处标轴htestl=uimenu(gfc/laber;实验内容');定义一级下拉式菜单htest2=uimenu(gfc,'label*,'as 助');% 定义一级下
6、拉式菜单h(cst3=uimenu(gfc,labelt关于%定义一级卜-拉式菜单%定义二级菜单t l=uimenu(htest i /label','实验一');t2=uimenu(htestl /label','实验二');t3=uimenu(htest 1,'label','实验三');t4=uimenu(htestl,'label','实验四');%定义三级菜单111 =uimenu(tl,label;'单位脉冲序列callback;.rtime 1=0.0;'
7、;,'timel=cputime;','n0=0;'nf=10;'ns=3;','nl=n0:nf;7xl=(nl-ns)=0;',stem(nl,xl);','t itle(”单位脉冲序歹1 =cputime-time l'j);112=uimenu(t 1,label:,单位阶跃序列;'callback;.,time2=0.0;',time2=cputime;,'n0=0;','nf=10;',ns=3;','n 1 =no:nf;vx2=
8、(n 1 -ns)>=0;','stem(n 1 ,x2);','t itle(”单位阶跃序歹 u u);7tt2=cputime-time2');113=uimenu(t 1 ,'label7f* 形序列*,'callback1,'test3');%test3 为编译好的 test3.m 文件,和本程序 保存统一路径114=uimenu(t 1 ,'label7$指数序列'callback1,'test4'); %test4 为编译好的 test4.m 文件,和本程 序保存统一路径%
9、定义图形冇网格按钮ul =uicontrol(gfc,'style','push'/unit','normalized', 'posi',0.85,0.65,0.15,0.15,'string*,.grid on','fontsize;12,'call;'grid on1);%定义图形无网格按钮u2=uicontrol(gfc,'style','pushtunit','normalized;.posi0.85,0.38,0.15,0.15,
10、39;string1, ,grid off,'fontsize',12,'call',grid off );%定义关闭按钮u3=uicontrol(gfc;style,;push,'unit*,'normalized',posi',0.85,0.05,0.15,0.15,'string;'关 闭vfontsizcll;cair,'close all');tt=0.4690;%把各程序运行时间写入文木框hstr=nuni2str(tt);uicontrol(gfc,'style',
11、39;text', 'unit','normalized','posi',0.19,0.05,0.22,0.12,'string',.'显示运行时间7fontsize',ll);htext=uicontrol(gfc,'style','edit','unit,normalized',.,posi,0.42,0.05,0.22,0.12;stringhstr;fontsize,12);四、实验分析通过调节所用各函数内各个选项以及选项内容,分析界面产生的效果。五、
12、实验总结总结实验认识、过程、效果、问题、收获、体会、意见和建议。注意:所有实验报告均从网上下载统一格式。每次实验结束后上交相 应实验报告实验二典型离散信号及其matlab实现一、实验目的1. 掌握matlab语言的基木操作,学习基木的编程功能。2. 熟悉连续信号经过采样前示的频谱变化,加深对采样定理的理解。3. 掌握matlab产生常用离散时间信号的编程方法。二、实验原理1单位抽样序列心。在matlab中可以利用zeros ()函数实现。x = zwrosqn);41) = 1;如果/()在时间轴上延迟了 k个单位,得到3(n-k)即:8n-k)=2单位阶跃序列“叫在matlab中可以利用on
13、eso函数实现。x = ollesn);3. 正弦序列:x(n) = asin(2加/用+ 0)n = 0:n-在 matlab 中:x = a * sin(2 * pi * f * 川 / fs + fai)4. 复正弦序列:x(n) = ejimtn = 0:n-在 matlab 中:x = exp(y * w*)5. 指数序列:x(n) = ann=q:n-l在 matlab 中:x = a.kn6. y=fliplr(x)言号的翻转;x=square(t)产生方波信号y二sawtooth (t)产生锯齿波信号;y二sinc(x)产生sine函数信号。三、实验内容(一)离散信号的产牛离散
14、信号的图形显示使用stem指令。1.编写matlab程序,产生下列典型脉冲序列。(1)单位脉冲序列:起点no,终点nf,在ns处冇一单位脉冲。(2) 单位阶跃序列:起点no,终点nf 1(no<=ns<=nf)。(3) 实指数序列:心=(075)"(4) 复指数序列:x4 =e(_o-2+yo-7)n-k matlab程序如下:n0=0;nf=10;ns=3;n1=n0:nf;xl=(nl-ns)=0;n2=n0:nf;x2二(n2ns) >=0;n3=n0:nf;x3=(0. 75). n3;n4二no:nf;x4二exp(-0. 2+0. 7j)*n4);sub
15、plot (2, 2, 1), stem(nl, xl);subplot (2, 2, 2), stem(n2, x2);subplot (2, 2, 3), stem (n3, x3);figuresubplot (2, 2, 1), stem(n4, real (x4);subplot (2, 2, 2), stem (n4, imag (x4);subplot (2, 2, 3), stem(n4, abs (x4);subplot (2, 2, 4), stem (nd, angle (x4);在ns前为0,在ns处及以后均为%单位脉冲序列%单位阶跃序列%实指数序列%复指数冲序列%注意
16、subplot的变化(二)离散时间信号的卷积在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)可以实现两个冇限氏度序列的卷积nyl=nx(l)+nh(l);ny2=nx(length(x)+nh(length(h);ny=nyl:ny2;y=conv(x, h);在命令窗口调用卷积函数。x二3 4 0-2 2 35; nx
17、二-3:3; h二1 45 60 1; nh=n:n+5;n是你的学号最后两位,带入示求结果。结果为:四、实验分析观察实验结果,掌握、分析典型的离散时间信号,分析卷积运算。五、实验总结总结实验认识、过程、效果、问题、收获、体会、意见和建议。实验三离散信号的dft及其快速算法一、实验目的1. 在学习dft理论的基础上,通过木实验,加深对fft的理解,体会二者z间的关系。2. 熟悉丿应用fft实现两个序列的线性卷积的方法。二、实验原理n点序列xn的dft和1dft定义:* m可以用函数u=fft (u, n)和u=ifft (u, n)计算n点序列的dft正、反变换。三、实验内容1. x(n)=r
18、s(n),求n分别取8, 32时的x(k),最后绘出图形。%n的行向虽%k的行向量%旋转因子%产生一个含nk值的n乘n维愆阵%dft矩阵%dft系数的行向量%计算离散吋间傅立叶变换离散傅立叶变换函数的matlab实现如下: functionxk=dft(xn, n)n=0:l:n-l;k二o:1:n-1;wn二exp(-j*2*pi/n);nk=n,*k;wnnk二wn. 'nk;xk=xn*wnnk;调用上而函数解题。n二0:4;x二ones(1, 5);k=0:999;w=(pi/500)*k;x二x* (exp (-j*pi/500). " (n' *k);xe
19、=abs(x);subplot (3, 2, 1) ; stem(n, x) ;ylabel (' x(n)');subplot (3, 2, 2) ;plot (w/pi, xe) ;ylabel (j |x(ejw) |');n二 10;x二ones(1, 5), zeros(1, n-5);n 二0:nt;x二dftl (x, n);%n=8点离散傅立叶变换magx=abs(x);phax=ang1e(x)*180/pi;k=(0:length(magx)' -1)*n/length(magx);subplot (3, 2, 3); stem(n, x);
20、 ylabel c x(n)1);subplot (3, 2, 4) ; stem(k, magx) ;axi s (0, 10, 0, 5) ;ylabel (, x(k) |');n=20;x=ones (1, 5), zeros (1, n5);n二0:nt;x二dftl (x,n);%n=32点离散傅立叶变换magx=abs(x);phax=angle(x)*180/pi;k=(0:length(magx)j 1)*n/length(magx);subplot (3, 2, 5) ; stem (n, x) ; ylabel (' x (n)');subplot
21、 (3, 2, 6); stem(k, magx) ; axis (0, 20, 0, 5) ; ylabel ('| x (k) |');00.511.5°042468x 21so.5x012340 1so.5x01so.5x0110510154云200510152.已知一个8点的时域非周期离散阶跃信号,nl二0, n2=7,在n0二4前为0, n0以后为1。用n=32点进行fft变换,作其时域信号图及信号频谱图。nl=0;n0=4;n2=7;n=32;n=nl:n2;w=(nn0)>=0;subplot (2, 2, 1); stem(n, w);i=0:n
22、-l;y=fft (w, n);aw二abs(y);subplot (2, 1, 2) ; plot (i, aw);%建立吋间信号%频率采样点从0开始%用快速算法计算dft%求幅度值3.利用 fft 计算线性卷积。设 x(n) = 2 3 1 4 5;h(n) = 2 1 7 4 5 7 的线性卷积。3。计算二者matlab程序如下:x二2 3 1 4 5;h二2 1 7 4 5 7 2 3;lenx=length (x);lenh二length (h);n二lcnx+lenht ;xk=fft (x, n);hk=f f t (h, n);yk=xk. *hk;y 二辻 ft (yk)st
23、em(y);xlabel (' n');ylabel (' y(n)'); title(' x(n)*h(n)');%求序列x的长度%求序列h的长度%计算x序列的dft%计算h序列的dft%求 idftgrid807050宴4030100,2x(n)*h(n)1012四. 实验分析认真观察实验结果,分析实验产生的现彖的原因。五、实验总结总结实验认识、过程、效果及体会、意见建议。实验四iir数字滤波器设计、实验目的1. 熟悉butterworth滤波器、chebyshev滤波器的频率特性。2. 掌握双线性变换法及脉冲响应不变法设计iir数字滤波器的
24、具体设计方法及其原 理,熟悉用双线性变换法及脉冲响应不变法设计低通、高通和带通iir数字滤波器 的计算机编程。3. 观察双线性变换及脉冲响应不变法设计的滤波器的频域特性,了解双线性变换法及 脉冲响应不变法的特点。实验原理(1)脉冲响应不变法用数字滤波器的单位脉冲响应序列h (n)模仿模拟滤波器的冲激响应ha(t),让h (n)正好等于 ha(t)的采样值,即h(n)= ha (nt)其中t为采样间隔,如果以ha(s)及h(z)分别表示ha(t)的拉式变换及h(n)的z变换,则1821t技(习lk=另比(卄丿旳(2)双线性变换法s平面与z平面之间满足以卜映射关系:s平面的虚轴单值地映射于z平面的
25、单位圆上,s平面的左半平面完全映射到z平面的 单位圆内。双线性变换不存在混叠问题。te() )双线性变换时一种非线性变换22 ,这种非线性引起的幅频特性畸变可通过预崎而得到校正。三、实验内容设采样频率fs =4000+sn*100hz, sn为学号后两位。用脉冲响应不变法和双线性变换法设 计一个三阶巴特沃兹滤波器,其3db边界频率为fc =lkhzo用matlab程序实现如下:sn二;%学号后两位b, a=butter(3, 2*pi*1000,' s'); %巴特沃思滤波器%b, a = butter (n, wn, (s' ), n 为滤波器的阶数,wn%为边界频率
26、,按s的降幕排列fs =4000+sn*100;numl, denl=impinvar (b, a, fs) ;%脉冲响应不变法,4000为采样频率hl, w=freqz(numl, deni);%计算系统频率特性b, a二butter (3, 2/0. 00025,' s'); %2/0. 00025 预畸变模拟滤波器边界频率num2, den2=bil i near (b, a, fs) ;%双线性法h2, w=freqz (num2, den2);f二w/pi*2000;plot (f, abs(hl), f, abs (h2),;grid;xlabel ('频率
27、/hz') ;ylabel ('幅值/db');运行该程序,并绘出运行结果。2. 设计一数字高通滤波器,它的通帯为400500hz,通带内容许有0. 5db的波动,阻帯内 衰减在小于317hz的频带内至少为19db,采样频率为l,000hzomatlab程序如下:wc二2*1000*lan(2*p i*400/(2*1000);wt=2*1ooo*tan(2*pi*317/(2*1000);n, wn=cheblord (wc, wt, 0. 5, 19,' s'); b, a=chebyl (n, 0. 5, wn, 'high', s
28、'); num, den=bi 1 inear (b, a, 1000);h, w=freqz (num, den);f=w/pi*500;plot (f, 20*logl0 (abs (h);axis(0, 500,-80,10);grid;xlabelc 频率/hz')ylabelc 幅度/db')四. 实验分析分析butterworth滤波器、chebyshev滤波器的特性。五、实验总结总结实验认识、效果、收获及体会、意见、建议。设计性实验指导书实验名称:f1r数字滤波器的设计实验项目性质:编程设计所属课程名称:数字信号处理计划学时:4一、实验目的1. 掌握用窗函
29、数法、频率采样法设计fir滤波器的原理及方法,熟悉响应的 计算机编程;2. 熟悉线性相位fir滤波器的幅频特性和相频特性;3. 了解各种不同窗函数对滤波器性能的影响。二、预习与参考2.1窗口法窗函数法设计线性相位fir滤波器步骤确定数字滤波器的性能要求:临界频率 3,滤波器单位脉冲响应长度n;根据性能要求,合理选择单位脉冲响应h(n)的奇偶对称性,从而确定理 想频率响应hd(ejw)的幅频特性和相频特性;求理想单位脉冲响应h(1 (n),在实际计算中,可对iid(cjw)按m(m远大于n) 点等距离釆样,并对其求idft得hm (n),用hmn)代替hd (n);选择适当的窗函数w(n),根据h(n)= hd(n)w(n)求所需设计的fir滤波器 单位脉冲响应;求il(cjw),分析其幅频特性,若不满足耍求,可适当改变窗函数形式或长 度n,重复上述设计过程,以得到满意的结果。矩形窗 w (n) =rx (n); hanning 窗-0.5(1 -cm窗函数的傅式变换w(cjw)的主瓣决定了 11(严)过渡带宽。w(c”')的旁瓣大小和多 少决定了 h(et在通带和阻带范围内波动幅度,常用的几种窗函数冇:g hamming 窗 bla
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人员外派合同范例
- 住房装潢合同范例
- 区块链在智能电网中的应用与安全性探讨
- 俩兄弟合伙开店合同范例
- 供电企业合同范例
- 与物业合作签合同范例
- 个体招聘合同范例
- 修补雨棚天沟合同范例
- 乡里地皮出售合同范例
- 区块链与供应链金融深度融合的奥秘
- 人教版(2019)选择性必修第三册Unit 4 Adversity and Courage 单词讲解课件
- 《股指期货交易》课件
- 2024-2025年全国初中化学竞赛试卷及答案
- 机器可读标准 能力等级模型 征求意见稿
- 新生儿出血性疾病处理护理课件
- 企业的经营指标分析报告
- 加油站安全技能竞赛与实操演练
- 《六尺巷的故事》课件
- 变电站通信中断处理经验分享
- 农艺师考试试题及答案(种植业卷)
- DB4409-T 38-2023 奇楠沉香栽培技术规程
评论
0/150
提交评论