数字信号处理实验指导书.doc_第1页
数字信号处理实验指导书.doc_第2页
数字信号处理实验指导书.doc_第3页
数字信号处理实验指导书.doc_第4页
数字信号处理实验指导书.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字信号处理实验指导书临沂师范学院信息学院实验指导书 学年 第 学期学院信息学院教研室信息工程系课程名称数字信号处理授课班级主讲教师孟庆民职称副教授2009年11月目 录前 言1实验一 熟悉MATLAB环境4实验二 用MATLAB进行离散系统的Z域分析6实验三 傅立叶变换10实验四 IIR及FIR滤波器的MATLAB实现13前 言ATLAB是由美国Math Works公司推出的软件产品。MATLAB是“Matrix Laboratory”的缩写,意及“矩阵实验室”。MATLAB是一完整的并可扩展的计算机环境,是一种进行科学和工程计算的交互式程序语言。它的基本数据单元是不需要指定维数的矩阵,它可直接用于表达数学的算式和技术概念,而普通的高级语言只能对一个个具体的数据单元进行操作。因此,解决同样的数值计算问题,使用MATLAB要比使用Basic、Fortran和C语言等提高效率许多倍。许多人赞誉它为万能的数学“演算纸”。MATLAB采用开放式的环境,你可以读到它的算法,并能改变当前的函数或增添你自己编写的函数。在欧美的大学和研究机构中,MATLAB是一种非常流行的计算机语言,许多重要的学术刊物上发表的论文均是用MATLAB来分析计算以及绘制出各种图形。它还是一种有利的教学工具,它在大学的线性代数课程以及其它领域的高一级课程的教学中,已成为标准的教学工具。最初的MATLAB是用FORTRAN编写的,在DOS环境下运行。新版的MATLAB 是C语言编写的高度集成系统。它在几乎所有流行的计算机机种,诸如PC、MACINTOSH、SUN、VAX上都有相应的MATLAB版本。新版的MATLAB增强了图形处理功能,并在WINDOWS环境下运行。现今,MATLAB的发展已大大超出了“矩阵实验室”的范围,在许多国际一流专家学者的支持下,Maths Works公司还为MATLAB配备了涉及到自动控制、信息处理、计算机仿真等种类繁多的工具箱(Tool Box),这些工具箱有数理统计、信号处理、系统辨识、最优化、稳健等等。近年来一些新兴的学科方向,Maths Works公司也很快地开发了相应的工具箱,例如:神经网络、模糊逻辑等。本课程实验要求学生运用MATLAB编程完成一些数字信号处理的基本功能,加深对教学内容的理解。实验一 熟悉MATLAB环境实验目的1熟悉MATLAB主界面,并学会简单的菜单操作。2学会简单的矩阵输入与信号输入。3掌握部分绘图函数。 实验内容 1数组的加减乘除和乘方运算输入A=1 2 3,B=4 5 6,求C=A+B,D=A-B,E=A.*B,F=A./B,G=A.B,并用stem画出A,B,C,D,E,F,G。再输入一些数组,进行类似运算。Stem函数格式可通过help stem命令查询2给出实现单位脉冲序列、单位阶跃序列的MATLAB函数,并用stem函数画出图形。注:(1) 单位脉冲序列可以通过借助MATLAB中的零矩阵函数zeros表示。全零矩阵zeros(1,N)产生一个由N个零组成的列向量,对于有限区间的可以通过以下MATLAB程序表示% 单位抽样序列实现程序k=-30:30;delta=zeros(1,30),1,zeros(1,30);stem(k,delta)(2) 单位阶跃序列可以通过借助MATLAB中的单位矩阵函数ones表示。单位矩阵ones(1,N)产生一个由N个1组成的列向量,对于有限区间的可以通过以下MATLAB程序表示% 单位阶跃序列实现程序k=-30:30;uk=zeros(1,30),ones(1,31);stem(k,uk)3已知两离散序列分别为和,试用MATLAB绘出它们的波形及的波形。注:对于离散序列来说,序列相加是将信号对应时间序号的值逐项相加,在这里不能象连续时间信号那样用符号运算来实现,而必须用向量表示的方法,即在MATLAB中离散序列的相加需表示成两个向量的相加,因而参加运算的两序列向量必须具有相同的维数。实现离散序列相加的MATLAB实用子程序如下function f,k=lsxj(f1,f2,k1,k2)%实现f(k)=f1(k)+f2(k),f1,f2,k1,k2是参加运算的二离散序列及其对应的时间序列向量,f和k为返回的和序列及其对应的时间序列向量k=min(min(k1),min(k2):max(max(k1),max(k2);%构造和序列长度s1=zeros(1,length(k);s2=s1; %初始化新向量s1(find(k=min(k1)&(k=min(k2)&(k=min(k1)&(k=min(k2)&(k=0)&(n=N时(FIR)的多项式部分%B=包含各bk的K乘2维实系数矩阵%A=包含各ak的K乘3维实系数矩阵% x=输入序列%K,L=size(B);N=length(x);w=zeros(K+1,N);w(1,:)=filter(C,1,x);for i=1:1:K w(i+1,:)=filter(B(i,:),A(i,:),x);endy=sum(w);(二)FIR滤波器结构实现1直接形式FIR直接型系统函数表示为,即FIR结构的直接形式由包含系数的行向量b描述。在MATLAB中,把分母矢量a置为1,这种结构用filter函数实现。2级联形式FIR级联型系统函数表示为,即级联型FIR滤波器可以通过casfiltr函数实现。但这种形式与IIR形式类似,也可以使用dir2cas函数,把分母矢量a置为1,用cas2dir函数从级联形式转换为直接形式而获得。FIR滤波器的系统函数为,试分别用直接型和级联型实现。程序清单如下: n=0:5; b=0.2.n; N=30; delta=impseq(0,0,N); h=filter(b,1,delta);% x=ones(1,5),zeros(1,N-5); y=filter(b,1,x);% subplot(2,2,1);stem(h);title(直接型h(n); subplot(2,2,2);stem(y);title(直接型y(n); b0,B,A=dir2cas(b,1); h=casfiltr(b0,B,A,delta)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论