1实验指导书课程名称:数字信号处理面向专业:通信工程、电子信息工程教师姓名:罗仁泽、罗朗、卢晶琦电子科技大学中山学院2007年4月2前言数字信号处理主要研究如何对信号进行分析、变换、综合、估计与识别等加工处理的基本理论和方法。通过实验可以使学生巩固所学基本理论,掌握最基本的数字信号处理的理论和方法,提高综合运用所学知识,提高计算机编程的能力。进一步加强学生独立分析问题、解决问题的能力、综合设计及创新能力的培养,同时注意培养学生实事求是、严肃认真的科学作风和良好的实验习惯,为今后的工作打下良好的基础。本实验指导书是以西安电子科技大学出版社出版的由丁玉美、高西全编著的《数字信号处理》为理论教学教材的基础上编写而成的,该指导书可以作为理论教学的合理的补充。本实验指导书针对每个实验介绍了MATLAB语言数字信号处理工具箱中的相应函数,以方便同学们使用这些函数进行MATLAB编程。为了配合课堂理论教学,实验内容安排仍从认识性和验证性入手,逐步增加设计性和工程应用性内容,达到加深对理论知识的理解、训练实验技能和积累工程实际应用经验之目的。本指导书是以电子信息类专业为对象而编写,鉴于数字技术的应用日益广泛,个别部分稍作调整或补充,就能为更多专业所使用。本讲义主要由罗仁泽负责编写实验一、实验二;罗朗负责编写实验三、实验四;卢晶琦负责编写实验五、实验六。在编写过程中得到了电子科技大学中山学院电子工程系领导和老师们的大力支持和帮助,书中也凝结了他们的智慧和经验。实验教学是一项综合性集体活动,因此,编者期望在今后的教学实践时,能得到使用本讲义师生提出的宝贵意见,以使本课程的改革不断深入、日臻完善。编者2007年5月9日3目录前言实验一离散时间信号与系统的傅立叶分析实验二时域采样定理实验三用DFT(FFT)对时域离散信号进行频谱分析实验四用DFT(FFT)对连续信号进行频谱分析实验五IIR数字滤波器设计实验六FIR数字滤波器设计4实验指导书实验一:离散时间信号与系统的傅立叶分析学时安排:2学时实验类别:验证性实验要求:必做 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、教学目的和任务用傅立叶变换对离散时间信号和系统进行频域分析二、实验原理介绍对信号进行频域分析就是对信号进行傅立叶变换。对系统进行频域分析即对它的单位脉冲响应进行傅立叶变换,得到系统的传输函数;也可以由差分方程经过傅立叶变换直接求它的传输函数;传输函数代表的就是系统的频率响应特性。但传输函数是w的连续函数,计算机只能计算出有限个离散频率点的传输函数值,因此得到传输函数以后,应该在2~0之间取许多点,计算这些点的传输函数的值,并取它们的包络,该包络才是需要的频率特性。当然,点数取得多一些,该包络才能接近真正的频率特性。注意:非周期信号的频率特性是w的连续函数,而周期信号的频率特性是离散谱,它们的计算公式不一样,响应的波形也不一样。三、实验仪器及设备计算机四、实验内容和步骤1.已知系统用下面差分方程描述:)1()()(naynxny试在95.0a和5.0a两种情况下用傅立叶变换分析系统的频率特性。要求写出系统的传输函数,并打印weHjw~)(曲线。2.已知两系统分别用下面差分方程描述:)1()()(1nxnxny)1()()(2nxnxny试分别写出它们的传输函数,并分别打印weHjw~)(曲线。3.已知信号)()(3nRnx,试分析它的频域特性,要求打印weXjw~)(曲线。4.假设)()(nnx,将)(nx以2为周期进行延拓,得到)(~nx,试分析它的频率特性,并画出它的幅频特性。5下面对实验用的MATLAB函数进行介绍。1.abs功能:求绝对值(复数的模)。y=abs(x):计算实数x的绝对值。当x为复数时得到x的模(幅度值)。当x为向量时,计算其每个元素的模,返回模向量y。2.angle功能:求相角。Ph=angle(x):计算复向量x的相角(rad)。Ph值介于-和+之间。3.freqz:计算数字滤波器H(z)的频率响应。H=freqz(B,A,w):计算由向量w指定的数字频率点上数字器H(z)的频率响应)(jweH,结果存于H向量中。向量B和A分别为数字滤波器系统函数H(z)的分子和分母多项式系数。[H,w]=freqz(B,A,M,’whole’):计算出M个频率点上的频率响应,存放在H向量中,M个频率点存放在向量w中。freqz函数自动将这M个频点均匀设置在频率范围[0,2]上。缺省whole时,M个频点均匀设置在频率范围[0,]上。调用参数B和A与系统函数的关系由下式给出:NNMNzNAzNAzAAzMBzMBzBBzAzBzH)1()()2()1()1()()2()1()()()()1(1)1(1缺省W和M时,freqz自动选取512个频率点计算。不带输出向量的freqz函数将自动绘出幅频和相频曲线。其他几种调用格式可用命令help查阅。freqz函数用于计算模拟滤波器的频率响应函数,详细功能及调用格式用help命令查看。例如:八阶梳状滤波器系统函数为81)()(zzBzH用下面的简单程序绘出H(z)的幅频与相频特性曲线如图1所示。%exampleforfreqzB=[10000000-1];A=1;freqz(B,A)图1八阶梳状滤波器幅度和相位曲线6五、注意事项和要求实验报告要求:(1)严格按照学院的《学生实验报告》格式和内容要求书写;实验报告原理及思考题回答等内容只能手写,图件和程序可以打印并粘贴在报告上;实验报告内容不得雷同,否则一律做零分处理。(2)简述实验原理及目的;对各实验内容进行理论分析和推导;分析各实验内容,并和理论分析推导结果进行对比。(3)对于每一项实验内容要求有matlab仿真结果图及整理好经过运行并证明是正确的程序,并且加上关键的注释;(4)回答思考题;(5)总结实验所得主要结论。六、作业及预习要求思考题:(1)对各实验内容进行理论分析和推导。(2)分析各实验内容,并和理论分析推导结果进行对比。预习要求:用DFT(FFT)对时域离散信号进行频谱分析。七、参考书目《数字信号处理》(第二版),丁玉美、高西全,西安电子科技大学出版社,2001年《MATLAB在数字信号处理中的应用》,薛年喜,清华大学出版社,2003年7实验指导书实验二:时域采样定理学时安排:2学时实验类别:验证性实验要求:选做 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、教学目的和任务熟悉并加深采样定理的理解,了解采样信号的频谱和模拟信号频谱之间的关系。二、实验原理介绍模拟信号经过理想采样,形成采样信号。采样信号的频谱和模拟信号频谱之间的关系如下:))((1)(ˆmsaamjXTjX此式告诉我们,采样信号的频谱是由模拟信号的频谱按照采样角频率周期性的延拓形成的,由此得到结论:采样频率必须大于模拟信号最高频率的两倍以上,才不会引起频率混叠。但用此式在计算机上进行计算不大方便,下面我们将导出另外一个公式,以便在计算机上进行实验。对模拟信号)(txa进行理想采样的公式如下式:maanTttxjx)()()(ˆ(1)对上式进行傅立叶变换,得到:dtetxjXtjaa)(ˆ)(ˆdtenTttxtjma])()([将上式的积分号和求和号交换次序,得到:mtjaadtenTttxjX)()()(ˆ(2)在上式的积分号内,只有当t=nT时,才有非零值,因此,MnTjaaenTxjX)()(ˆ式中,)(nTxa在数值上等于由采样得到的时域离散信号)(nx,如果再将Tw代入,得到:MjwnaenxjX)()(ˆ(3)上式的右边就是序列的傅立叶变换)(jweX,即8TwjwaeXjX)()(ˆ(4)上式说明采样信号的傅立叶变换可用相应的序列的傅立叶变换得到,只要将自变量w用T代替即可。这里有个问题要解释,采样信号的频谱)(ˆjXa是将模拟信号的频谱按照采样角频率为周期,进行周期延拓形成的,而序列的傅立叶变换是以2为周期,这里是否一致?答案是肯定的。因为按照公式sffTw/2,当sff时,2w,因此序列的傅立叶变换以2为周期,转换到模拟域就是以采样频率sf为周期。另外,2/sff是)(ˆjXa的折叠频率,如果产生频率混叠,就是在该处附近发生,在数字域中,就是w附近易产生频率混叠。有了以上的公式和概念,就可以用计算机研究对模拟信号的采样定理。三、实验仪器及设备计算机四、实验内容和步骤1.给定模拟信号如下:)()sin()(0tutAetatax假设式中128.444A,250,srad/2500,将这些参数代入式中,对)(txa进行傅立叶变换,得到)(jXa,并可画出它的幅频特性fjfXa~)(;根据该曲线可以选择采样频率。2.按照选定的采样频率对模拟信号进行采样,得到时域离散信号)(nx:)()sin()()(0nTunTAenTxnxanTa这里给定采样频率如下:sf=1kHz,300kHz,200kHz。分别用这些采样频率形成时域离散信号,按顺序分别用)(1nx、)(2nx、)(3nx表示。选择观测时间50pTms。3.计算)(nx的傅立叶变换)(jweX:100)sin()]([)(iinnjwnianTjwenTAenxFTeX(5)式中,i1,2,3,分别对应三种采样频率的情况sTsTsT2001,3001,10001321。采样点数以内感下式计算:9ipiTTn(6)式中,w是连续变量。为用计算机进行数值计算,改用下式计算:100)sin()]([)(ikknnnjwianTMjwenTAenxDFTeX(7)式中,kMwk2,k=0,1,2,3,…,M-1;M=64。可以调用MATLAB函数fft计算(7)式。4.打印三种采样频率的幅度曲线kjwweXk~)(,k=0,1,2,3,…,M-1;M=64。下面对实验用MATLAB函数进行介绍:1.fft功能:一维快速傅立叶变换(FFT)。Xk=fft(xn,N):采用FFT算法计算序列向量xn的N点DFT。缺省N时,fft函数自动按xn的长度计算xn的DFT。当N为2的整数次幂时,fft按基2算法计算,否则用混合基算法。2.ifft功能:一维快速逆傅立叶变换(IFFT)。调用格式:与fft相同。五、注意事项和要求与试验一《离散时间信号与系统的傅立叶分析》中注意事项和要求相同。六、作业及预习要求1.简述实验原理。2.针对三种采样频率情况,进行分析讨论。3.写出主要结论。七、参考书目《数字信号处理》(第二版),丁玉美、高西全,西安电子科技大学出版社,2001年《MATLAB在数字信号处理中的应用》,薛年喜,清华大学出版社,2003年10实验指导书实验三:用DFT(FFT)对时域离散信号进行频谱分析学时安排:2学时实验类别:验证性实验要求:必做 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、教学目的和任务1.进一步加深DFT算法原理和基本性质的理解(因为FFT只是DFT的一种快速算法,所以FFT的运算结果必然满足DFT的基本性质)。2.掌握DFT(FFT)对时域离散信号进行频谱分析的方法。二、实验原理介绍1、DFT和FFT原理:长度为N的序列x(n)的离散傅立叶变换为X(k):101,....,0,)()(NnnkNNkWnxkX首先按n的奇偶把时间序列x(n)分解为两个长为N/2点的序列xnxr12()()r=0,1,...,N/2-1xnxr221()()r=0,1,...,N/2-1则x(n)的DFT为X(k)XkxnWxrWxrWxrWxrWWnNNknrNNkrr