资源描述:
《数字信号处理matlab课程设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、信息科学与工程学院课程设计报告书课题:现代信号处理班级:通信08**班学号:***********姓名:**指导教师:二〇一〇年九月目录一、课程设计目的二、课程设计内容三、课程设计时间安排四、设计原理五、MATLAB源程序六、系统调试过程中出现的主要问题七、系统调试后的效果图八、作品中存在的不足九、总结十、参考书目现代信号处理课程设计报告一、课程设计目的:1.全面复习课程所学理论知识,巩固所学知识重点和难点,将理论与实践很好地结合起来。2.提高综合运用所学知识独立分析和解决问题的能力;3.熟练使用一种高级语言进行编程实现。二、课程
2、设计内容:(一).信号分析1、编制信号生成程序,产生下述各序列,绘出它们的时域波形1)单位抽样序列2)矩形序列3) 三角波序列4)反三角波序列5)Gaussian序列 6)正弦序列取7)衰减正弦序列对连续信号进行采,A=50,采样周期T=1ms,即fs=1000Hz,f0=62.5,a=100。2.对上述信号完成下列信号分析1)对三角波序列和反三角波序列,作N=8点的FFT,观察比较它们的幅频特性,说明它们有什么异同?绘出两序列及其它们的幅频特性曲线。在和的尾部补零,作N=16点的FFT,观察它们的幅频特性发生了什么变化?分
3、析说明原因。 2)、观察高斯序列,固定信号中的参数p=8,令q分别等于2,4,8,观察它们的时域和幅频特性,了解当q取不同值时,对信号序列的时域幅频特性的影响;固定q=8,令p分别等于8,13,14,观察参数p变化对信号序列的时域及幅频特性的影响,观察p等于多少时,会发生明显的泄漏现象,混叠是否也随之出现?记录实验中观察到的现象,绘出相应的时域序列和幅频特性曲线。3)对于正弦序列x6(n),取数据长度N分别等于8,16,32,分别作N点FFT,观察它们的的时域和幅频特性,说明它们的差别,简要说明原因。4)、观察衰减正弦序列的时域
4、和幅频特性,绘出幅频特性曲线,改变采样频率fs,使fs=300Hz,观察此时的频谱的形状和谱峰出现位置?说明产生现象的原因。3.设有一连续时间信号s(t),其由20Hz、220Hz和750Hz的正弦信号叠加而成,分析确定采样频率及数据分析长度,计算并绘出信号的频谱,指出各个频率份量。(二)、数字滤波器的设计与实现设计和实现IIR或FIR数字滤波器:要求:输入数字滤波器的滤波指标,包括通带截止频率,通带最大衰减,阻带截止频率,阻带最小衰减。设计出相应的数字滤波器。显示得到的滤波器的系数和阶数,求出系统的单位脉冲响应h(n)。并画出设
5、计得到的滤波器的幅频特性图(要有坐标标度)和相频特性。1.对于IIR数字滤波器:使用双线性变换法。可选用BW型、CB型和椭圆型等滤波器类型来进行设计2.对于FIR数字滤波器:要对多种窗口(三种及以上)、不同阶数设计结果进行分析比较。(三)、综合应用对于给出的任意一段语音信号,进行分析处理。1、读出语音信号,并显示语音信号的时域波形,然后对读出的信号进行FFT变换,得到信号的频谱特性。2、分析其频谱特性,应用设计的滤波器将主要的频率分量分离出来。3、回放此语音信号,感觉滤波前后的声音有什么变化三、课程设计时间安排第二周周一、周三下午
6、,周二、周四上午;第三周周一、周三上午,周二、周四上午;第三周周三、周四检查程序。四、设计原理系统总体设计:下拉菜单设计和菜单式设计。第一题中,主要通过下拉式菜单构成界面。单击下拉菜单中的选项选择序列,得到相应图像。MALAB中用两个参量x和n表示有限长序列x(n),x是x(n)的向量样值,n是位置向量,n于x长度相等,向量n的第m个元素n(m)表示样值x(m)的位置。位置向量n一般都是单位增向量,产生语句为:n=ns:nf;其中ns表示序列x(n)的起始点,nf表示序列x(n)的终点。用MATLAB表示序列与图形表示法是等价的。
7、以位置向量n为横坐标,以序列样值向量x为纵坐标,就可以绘制出序列x(n)的波形图。使用双线性变换法设计IIR数字滤波器:函数bilinear()调用格式:[bz,az]=bilinear(b,a,Fs)其中BW型:butter()调用格式:[b,a]=butter(n,wn,’ftype’)[z,p,k]=butter(n.wn,’ftype’)其中:ftype:滤波器类型:high:高通stop:带阻缺省:低通或带通回调函数:globalfp;globalfs;globalRs;globalRp;globalFs;综合应用:通过
8、回调函数将原声音通过第二题中的数字滤波器处理后得到需要的声音效果。其中,读出声音的语句为:[x1,fs]=wavread('C:DocumentsandSettingsAdministrator桌面door.wav');%读取语音信号的数据