信号分析与处理课程设计报告书_第1页
信号分析与处理课程设计报告书_第2页
信号分析与处理课程设计报告书_第3页
信号分析与处理课程设计报告书_第4页
信号分析与处理课程设计报告书_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、 武汉理工大学信号分析与处理课程设计报告书课程设计任务书学生姓名: 陈 专业班级: 电信140班 指导教师: 吴 巍 工作单位: 信息工程学院 题 目:FIR低通滤波器的设计初始条件: 具备数字信号处理的理论知识;具备Matlab编程能力;熟悉低通滤波器的设计原理;提供编程所需要的计算机一台要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1、设计通带截止频率为200Hz的FIR数字低通滤波器;2、独立编写程序实现3、完成符合学校要求的设计说明书时间安排:一周,其中3天程序设计,2天程序调试指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日目 录摘要

2、11.概述21.1 数字滤波器基本概念21.2 FIR滤波器22.FIR低通滤波器实现方法32.1频率取样法介绍32.2 窗函数法42.2.1 设计原理42.2.2 设计步骤43.MATLAB窗函数仿真设计53.1MATLAB中的窗函数53.2滤波器参数设计53.3仿真实现63.3.1 仿真程序及结果63.3.2 结果检测83.4结果分析104.心得体会12参考文献1213摘要 随着计算机技术的快速发展,数字和信息时代也已经来临。在当代数字信号处理已经成为信息领域的一门重要学科和技术。数字信号处理技术已经运用在图像处理、语音通信等多个方面,由此可见其应用价值。而其中数字滤波器(DF,Digit

3、al Filter)也成为处理各种数字信号的重要工具。在本次课程设计中,运用MATLAB进行一个有限长单位冲击响应(FIR)低通滤波器设计及仿真,要求通带截止频率为200Hz。MATLAB是美国MathWorks公司推出的一套用于科学计算和图形处理实的可视化、高性能语言的软件工具。因此,本次课设又要求掌握MATLAB在数字信号处理中的一些运用技能。在MATLAB中可以运用窗函数编程实现FIR低通滤波器,并对其进行仿真观察低通滤波器的滤波效果,深入认识数字滤波器的结构与传输特性,并熟悉分析DF的性能,从实践中掌握更多的理论知识。关键词: FIR低通滤波器,MATLAB,窗函数,数字滤波器1.概述

4、1.1 数字滤波器基本概念数字滤波器DF是数字信号处理学科中的重要组成部分,其通常是指一种算法或一种数字处理装备,一般由数字乘法器、加法器和延时器组成。DF是在模拟滤波器(Analog Filter,AF)的基础上发展起来的,但是DF具有精度高、稳定性好、设计灵活、不存在阻抗匹配、便于大规模集成和可以实现多维滤波等优点。从频域上,DF可以分成低通、高通、带通、带阻滤波器;从结构上,DF可分为无限长冲激响应(IIR)滤波器和有限长冲激响应(FIR)滤波器。IIR滤波器的主要特点是系统含有反馈支路,结构上是递归的,其单位冲激响应是无限长的,对同样的滤波器过渡带要求,他实现的阶数较低,因而减少了延时

5、器和乘法器。但它存在系统稳定性问题,如果设计不当可能会无法工作。FIR滤波器是一种非递归系统,其冲激响应是有限长的,最大特点是构成严格的线性相位,在图像处理等应用领域非常重要。1.2 FIR滤波器 FIR滤波器的单位冲激响应是有限的,因而滤波器一定会是稳定的,而且,经过一定的延时后任何非因果有限长序列都能都能变成因果的有限长序列。再则FIR滤波器在保证幅度特性满足技术要求的同时,很容易做成严格的线性相位特性。FIR滤波器的单位冲激响应h(n)是有限长的(),其z变换为 H(z)= (1.1)显然,H(z)是z-1的N-1阶多项式,在有限z平面有N-1个零点,有N-1阶极点全部在z平面的原点处。

6、总体而言,FIR滤波器有以下特点:(1) h(n)是个有限长序列,故FIR滤波器一定是稳定的;(2)系统函数|H(z)|在|z|>0处收敛,极点全部在z=0处;(3)结构上主要是非递归结构,没有输出到输入反馈。但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。(4)经延时后h(n)总可变成因果序列,所以FIR 滤波器总可以由因果系统实现,FIR滤波器的单位冲激响应是有限长的,故可以用快速傅里叶算法实现。2.FIR低通滤波器实现方法2.1频率取样法介绍 根据序列傅里叶的变换与离散傅里叶变换的关系,一个任意长的序列,对它的频率特性进行N等分间隔抽样,利用离散傅里叶反变换,可以得到一个N

7、点的有限长序列。这个有限长序列是原序列以N为周期的周期序列的主值序列,因而它的频率特性也将逼近原序列所对应的频率特性。因而,对一个理想的频响,其对应的单位抽样响应的是h(n),如果对H在单位圆作N等分间隔抽样,得到N个频率抽样值H,由H(k)经IDFT得到N点的有限长序列h(n),则 (2.1)式中是N点矩阵序列。h(n)是的主值序列,因此,由h(n)求得的频率响应逼近,这就是频率抽样法的基本过程,从而频率抽样法设计的基本步骤可归纳为:对抽样所得表示为: (k=0,1,2) (2.2)由至再至的过程可用直接求的内插公式求出,即 (2.3)根据频率抽样法,为逼近所需要的频率响应,先要在z平面单位

8、圆上对所需的频率采样,然后求出通过频域取样点的内插频率响应。2.2 窗函数法2.2.1 设计原理窗函数设计法也称为傅里叶级数法。FIR滤波器的设计问题在于寻求一系统函数,使其频率响应逼近滤波器要求的理想频率响应。从单位取样序列看,就是使设计的录波器的h(n)逼近理想滤波器的单位取样响应。 (2.4) (2.5)由于理想的滤波器的频率响应是逐段很定的,且在频带边界有不连续点,所以一般是无限长的,且是非因果的,不能直接作为FIR滤波器的单位脉冲响应。要想得到一个因果的有限长的滤波器h(n),最直接的方法是截断,或者说用一个有限长的窗口函数序列w(n)来截取,即 (2.6)2.2.2 设计步骤利用窗

9、函数设计FIR滤波器的主要步骤如下:(1) 给出希望设计的滤波器的频率响应函数;(2) 根据允许的过渡带宽度及阻带衰减,初步选定窗函数及其长度N;(3) 根据技术要求确定待求滤波器的单位取样响应;(4) 将与窗函数相乘的FIR数字滤波器的单位取样响应h(n);(5)按如下方法计算FIR数字滤波器的频率响应,并验证是否达到所要求的的技术指标: (2.7)或 (2.8)3.MATLAB窗函数仿真设计 在FIR低通滤波器的实现方法中,运用窗函数法可以简便快捷的实现该滤波器的程序编写及仿真调试,因此一下讲述该滤波器的窗函数法设计过程及结果分析。3.1MATLAB中的窗函数本小节介绍关于几种窗函数的特性

10、,以便在下面实现滤波器要求的条件下选择需要的窗函数。表1 六种窗函数比较表函数名窗函数主瓣宽过渡带宽阻带最小衰减/dB矩形窗boxcar4/N1.8/N-21巴特列特barlett8/N4.2/N-25汉宁窗hanning8/N6.2/N-44海明窗hamming8/N6.6/N-53布拉克曼窗blackman12/N11/N-74凯泽窗kaiser10/N10/N-80 在MATLAB中,可以直接调用这些窗函数进行滤波器的设计,调用方法如下: b=fir1(n,wc) b=fir1(n,wc,ftype) b=fir1(n,wc,window) b=fir1(n,wc,ftype,windo

11、w)其中,n为FIR滤波器的阶数,对于高通、带阻滤波器n取偶数,wn为滤波器截止频率;ftype为滤波器类型;window为窗函数(列向量、其长度为n+1),缺省时,自动取Hamming窗。3.2滤波器参数设计 本次课程设计要求是设计通带截止频率为200Hz的FIR数字低通滤波器。根据要求,设置抽样频率fs=1kHz,阻带起始频率为300Hz,同时为取得好一点的滤波特性,让阻带衰减大于50dB。(1)求对应的数字频率 通带截止频率: (3.1)阻带起始频率: (3.2)(2)假设该低通滤波器为理想线性相位滤波器,其为 (3.3)其中截止频率 (3.4)则其数字域的过渡带宽 选择海明窗(hamm

12、ing)设计滤波器时,其过度带宽满足则可得 N=33 其阻带衰减为-53dB。 3.3仿真实现3.3.1 仿真程序及结果 (1)(hamming)的时域波形及幅频特性观察:海明窗的窗函数为: (3.5)观察N=33的海明窗的MATLAB程序如下:N=33win=hamming(N); h,w=freqz(win,1);subplot(2,1,1)stem(win)title('海明窗时域波形'); xlabel('(n)'); ylabel('w(n)') ;subplot(2,1,2)W=20*log10(abs(fft(win,1000)w=

13、0:999plot(2*w/1000,W);title('海明窗的幅频特性')ylabel('20log|H(ejw)|/dB') ; xlabel('频率 (× rad/采样)')仿真波形如图1所示图1 海明窗仿真图(2)观察FIR低通滤波器的幅频响应和相频响应在3.2中已经计算出了,=33,直接用fir1调用hamming设计滤波器,程序如下:wp=0.4*pi;ws=0.6*pi;wc=(wp+ws)/2/piN=33;b=fir1(N,wc,hamming(N+1)freqz(b);该滤波器的相频特性和幅频特性如图2示图2 滤波

14、器仿真图3.3.2 结果检测(1)h(n)与时域波形对比: 由式3.3中的表达式可得 (3.6) 则显示与波形的MATLAB程序如下:N=33;n=0:32;wc=0.5*pi;hd=sin(wc*(n-16+eps)./(pi*(n-16+eps);subplot(211);stem(n,hd)title('hd(n)波形')h=hd.*(0.54-0.46*cos(8*pi*n);subplot(212);stem(n,h)title('h(n)波形') 下图3为与的时域波形图,由图可知与都满足线性相位特性。图3 h(n)与hd(n)仿真图(2)混频信号经过

15、滤波器的观察观察两个混频信号经滤波器后输出波形的MATLAB程序如下:wc=0.5*piN=33;b=fir1(N,wc/pi,hamming(N+1) t = (0:100)/1000;s1=sin(100*pi*2*t)+sin(300*2*pi*t);sf1 = filter(b,1,s1); subplot(2,2,1); plot(t,s1)title('混频信号1')subplot(2,2,3); plot(t,sf1)title('滤波波形1')s2=sin(250*pi*2*t)+sin(300*2*pi*t);sf2 = filter(b,1,

16、s2); subplot(2,2,2); plot(t,s2)title('混频信号2')subplot(2,2,4); plot(t,sf2)title('滤波波形2')仿真结果如图4所示,均将300Hz的信号滤出,200Hz以下的信号可以无失真还原出来, 200-300Hz的信号可以经过滤波器,但是有幅度失真。图4 滤波效果仿真图3.4结果分析对于滤波器的滤波效果来说,达到了任务书的要求,能将200Hz以下的信号不失真地保留下来,同时加窗后的h(n)具有良好的线性相位特性。但是由于过渡带的存在,在本次设计的滤波器中,过渡带在100Hz左右,导致在200Hz3

17、00Hz范围内的信号也能通过滤波器,但有一定的幅度失真,理想低通滤波器和实际滤波器的幅频特性如下图5所示(实线为实际滤波器幅频曲线,虚线为理想滤波器)。观察两个滤波器幅频特性的MATLAB程序如下:f=0:0.002:1;m(1:251)=1;m(252:501)=0;holdplot(f,m,'r:') wc=0.5*pi;N=33;b=fir1(N,wc/pi,hamming(N+1)H,f=freqz(b);plot(f/pi,abs(H)图5 幅频特性对比图4.心得体会 本次课程设计中,运用MATLAB进行FIR低通滤波器的仿真设计,没有实物要求,但是在这次课程设计中还

18、是认识到了自己的很多不足之处。对于FIR滤波器,我在理论课程中的窗函数设计法并没有很好的掌握其方法,对于设计思路也不太熟悉,为了完成这次课设,我再一次学习了窗函数设计滤波器的原理及方法步骤,让我对FIR滤波器的特性有了进一步地了解,同时也看到了运用窗函数设计FIR滤波器的简便性。但是我对MATLAB的编程环境也不是特别熟悉,对MATLAB的一些语言运用不是很到位,在做课设的过程中,运到问题就去网上查资料,也在MATLAB应用教程书上学习一些关于数字信号处理的MATLAB应用方法,一步一步的完成了滤波器的仿真设计,最终得出结果。总而言之,这次实践加深了我对FIR滤波器的理论知识掌握,也加强了我在MATLAB中数学运算编程的能力。在今后的学习过程中,我还要加强实践与理论的结合,让自己更快更牢固地掌握基础的理论

温馨提示

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

评论

0/150

提交评论