基于MATLAB的数字滤波器优化设计
基于matlab的数字滤波器设计

基于matlab的数字滤波器设计一.概述本文重点介绍MATLAB 中用于数字滤波器设计的函数组。
MATLAB具备设计高性能滤波器的众多工具(toolbox),包括数字滤波器设计工具箱(Digital Filter Design T oolbox)、滤波系统仿真工具箱(Filter Design and Analysis Toolbox )以及信号处理工具箱(Signal Processing Toolbox),可以设计数字滤波器的结构和参数,并实现Advanced Digital Filter Design。
二.数字滤波器介绍数字滤波器,也称计算滤波器,是指利用现代计算机中的数字回授技术来进行信号处理的方法,是对计算机处理信号的一种技术。
数字滤波器是模拟滤波器组成的数字信号处理系统,是将模拟的通全在一个硬件上实现的数字信号处理系统,它的功能比模拟滤波器更加强大。
目前它们已经应用于通信、声音、镜头、图像处理、仪器仪表、数据采集等领域。
三.MATLAB 中的滤波器设计(1)首先,MATLAB中提供了丰富的函数来实现滤波器设计工作。
其中最常用的函数有:a. firpm:有限冲激响应滤波器设计,支持线性和非线性过滤器设计。
b. butter:Butterworth低通和高通滤波器设计。
c. fir1:有限冲激响应低通和高通滤波器设计。
d. cheby1:Chebyshev第一类低通和高通滤波器设计。
(2) MATLAB还可以实现进阶的数字滤波器设计,用户可以用以下函数实现自动设计是否优化的滤波器:a. fda:设计优化低通滤波器b. fda2:设计优化定带滤波器c. fda3:设计优化双带和多带滤波器d. gfd:设计优化频谱均衡滤波器四.总结数字滤波器是一种应用广泛的信号处理技术,对于一些信号处理应用有着至关重要的作用。
MATLAB 可以简便的实现滤波器设计,并可以同时考虑多个优化目标,这些特性使其成为进行数字滤波器设计的理想工具。
基于Matlab的IIR数字滤波器设计(论文)

摘要在现代通信系统中,由于信号中经常混有各种复杂成分,所以很多信号分析都是基于滤波器而进行的,而数字滤波器是通过数值运算实现滤波,具有处理精度高、稳定、灵活、不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊滤波功能。
数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。
实现IIR滤波器的阶次较低,所用的存储单元较少,效率高,精度高,而且能够保留一些模拟滤波器的优良特性,因此应用很广。
Matlab软件以矩阵运算为基础,把计算、可视化及程序设计有机融合到交互式工作环境中,并且为数字滤波的研究和应用提供了一个直观、高效、便捷的利器。
尤其是Matlab中的信号处理工具箱使各个领域的研究人员可以直观方便地进行科学研究与工程应用。
本文首先介绍了数字滤波器的概念,分类以及设计要求。
接着利用MATLAB函数语言编程,用信号处理图形界面FDATool来设计滤波器以及Sptool界面设计的方法,并用FDATool模拟IIR 数字滤波器处理信号。
重点设计Chebyshev I型和Chebyshev II型数字低通滤波器,并介绍最优化设计。
【关键字】IIR 滤波器FDATool Sptool SimulinkABSTRACTIn modern communication systems,Because often mixed with various signal complex components,So many signal analysis is based on filters, and the digital filter is realized through numerical computation, digital filters filter with high precision, stability and flexibility, don't exist, can realize the impedance matching simulating the special filter cannot achieve filter function. Digital filter according to its impulse response function and characteristics of the time can be divided into two kinds, namely the infinite impulse response (IIR) digital filter and finite impulse response (FIR digital filters). The order of realizing IIR filter is used, low and high efficiency less storage unit, high precision, and can keep some simulation characteristics of filter, so it is widely used. Matlab software based on matrix computation, the calculation, visualization and program design of organic integration to interactive environment for digital filter, and the research and application of provides an intuitive, efficient and convenient tool. Especially in the Matlab signal processing to all areas of research toolbox personnel can easily for scientific research and engineering application. This paper introduces the concept of digital filter, classification and design requirements. Then using MATLAB language programming, with functions of signal processing FDATool graphical interface design of interface design and Sptool filter, and FDATool analog signal processing IIR digital filter. Key design Chebyshev type I and II digital Chebyshev lowpass filter, and introduces optimization design.【Keywords】IIR Filter FDATool Sptool Simulink目录前言 ............................................................. 1第一章数字滤波器 ................................................. 2第一节数字滤波器的概念........................................ 2第二节数字滤波器的分类........................................ 2第三节数字滤波器的设计要求.................................... 4第二章 IIR数字滤波器设计方法...................................... 5第一节 IIR数字滤波器的设计步骤................................. 5第二节用脉冲相应不变法设计IIR数字滤波器...................... 6一、设计原理................................................ 6二、脉冲响应不变法优缺点.................................... 8第三节双线性变换法设计IIR数字滤波器.......................... 9一、设计原理................................................ 9二、双线性变换法优缺点.................................... 11第三章 IIR滤波器的MATLAB设计................................... 13第一节 IIR数字滤波器的典型设计法............................. 14第二节 IIR数字滤波器的直接设计法............................. 18第三节 FDATool介绍和界面设计................................. 23第四节 FDATOOL设计IIR数字滤波器............................. 24第五节 SIMULINK 仿真IIR滤波器............................... 26总结 ........................................................... 29致谢 ........................................................... 30参考文献 ........................................................ 31结束语 .......................................................... 32前言随着信息时代和数字世界的到来,数字信号处理已成为当今一门极其重要的学科和技术领域。
基于MATLAB的FIR数字滤波器的优化设计

。科教前沿0
SCIENCE&TECHNOLOGY INFORMATION
2008年 第 32期
基于 MATLAB的 FIR数字滤波器的优化设计
陈玲 玲 ’ 张 虹 (1.吉林化 工 学院 吉林 吉 林 132022;2.东 北 电力大 学 吉林 吉 林 132022)
【摘 要】本文主要介 绍 FIR 滤波 器的原 理,在此基础 上利用最 小二 乘法对 FIR 滤 波器进行优化设 计.同时在 MATLAB平台下以生动界 面 、丰 富 内容 、交 互 式人 机 对 话 对优 化后 FIR 滤 波 器进 行 仿 真 ,达 到 了预 期 理 想 滤 波 效 果 .
种方法均不易精确控制通带与阻带边界频率。所 以在实际应用 中有一 和式最小,即希望J (n)一^(n)l_0,D≤n≤Ⅳ_1.在这一条件下,就有e2
定 局 限性 [】J.为此 ,提 出 最 小 二 乘 优 化 设 计 法 ,它 可设 计 任 何 最 优 线 性 相
位 FIR滤 波 器 ,而 且 作 为 一 个 子 程 序 在 许 多 计 算 平 台 上 都 可 获 得 ,因 而 。mi e ’也 就是 说要满
fn一 )
丌
)]
n≠
则误差能量:lE( )I =IHa(ej ̄) ( )2(1)
2.3FIR数 字 滤 波 器 幅 度 特 性 推 导 由于 ^( )=h (n) ( ),所 以根 据 FTr性 质 ,时 域乘 积 ,在 频 域 卷 积
均方误差:e。= 『二I ( )一H(el ̄)l 如 (2)
2)高通 h(n)表达式 (n)= sin[oo (o
一
逼 近频 带 范 围 内,逼 近 误 差 绝 对 值 最 大 值 平 方 和 为 最小 ,从 而 得 到 唯 一
基于MATLAB的FIR数字滤波器的设计与优化

3.1.2 几种常用的窗函数 ............................................ 19 3.2 用频率抽样法设计 FIR 滤波器 ...................................... 29 3.2.1 逼近误差及改进措施 .......................................... 30 3.3 切比雪夫逼近法设计 FIR 滤波器 .................................... 31 4 FIR 数字滤波器的最优化设计 .......................................... 33 4. 1 等波纹切比雪夫逼近准则 ......................................... 34 4. 2 REMEZ 算法 ..................................................... 34 4.3 基于等波纹切比雪夫逼近准则的 FIR DF 的最优化设计 ................. 35 5 FIR 数字滤波器的 MATLAB 仿真 ........................................ 36 5.1 典型窗函数及其调用格式 .......................................... 36 5.2 基于窗函数的 FIR 滤波器的 MATLAB 实现 ............................. 37 5.2.1 理想低通滤波器实现 .......................................... 37 5.2.2 系统各响应函数 .............................................. 37 5.2.3 滤波器主函数 ................................................ 38 5.2.4 滤波器主程序解析 ............................................ 41 5.3 仿真实验结果及分析 .............................................. 42 5.3.1 原信号的时域波形和处理后时域波形 ............................ 42 5.3.2 原信号频域波形与处理后信号的频域波形 ........................ 43 结束语 ............................................................... 44
基于MATLAB的数字滤波器设计!!!

一、 实验目地(1)掌握双线性变换法及脉冲相应不变法设计IIR 数字滤波器地具体设计方法; (2) 熟悉用双线性变换法及脉冲响应不变法设计低通、高通和带通IIR 数字滤波器地计算机编程.二、 实验原理在MA TLAB 中,可以用下列函数辅助设计IIR 数字滤波器:1)利用buttord 和cheb1ord 可以确定低通原型巴特沃斯和切比雪夫滤波器地阶数和截止频率;2)[num,den]=butter (N,Wn )(巴特沃斯)和[num,den]=cheby1(N,Wn ),[num,den]=cheby2(N,Wn )(切比雪夫1型和2型)可以进行滤波器地设计;3)lp2hp,lp2bp,lp2bs 可以完成低通滤波器到高通、带通、带阻滤波器地转换;4)使用bilinear 可以对模拟滤波器进行双线性变换,求得数字滤波器地传输函数系数;5)利用impinvar 可以完成脉冲响应不变法地模拟滤波器到数字滤波器地转换. 三、 预习要求(1)在MATLAB 中,熟悉函数butter 、cheby1、cheby2地使用,其中:[num,den]=butter (N,Wn )巴特沃斯滤波器设计;[num,den]=cheby1(N,Wn )切比雪夫1型滤波器设计;[num,den]=cheby2(N,Wn )切比雪夫2型滤波器设计.(2)阅读附录中地实例,学习在MA TLAB 中进行数字滤波器地设计;(3)给出IIR 数字滤波器参数和滤波器地冲激响应,绘出它们地幅度和相位频响曲线,讨论它们各自地实现形式和特点.四、 实验内容利用MATLAB 编程,用脉冲响应不变法和双线性变换法设计一个数字带通滤波器,指标要求如下:通带边缘频率:π45.01=ΩP ,π65.02=ΩP ,通带峰值起伏:][1dB p ≤α.阻带边缘频率:π3.01=ΩS ,π8.02=ΩS ,最小阻带衰减: ][40dB S ≥α. 附录:例1 设采样周期T=250μs (采样频率fs =4kHz ),用脉冲响应不变法和双线性变换法设计一个三阶巴特沃兹滤波器,其3dB 边界频率为fc =1kHz.[B,A]=butter(3,2*pi*1000,'s');[num1,den1]=impinvar(B,A,4000);[h1,w]=freqz(num1,den1);[B,A]=butter(3,2/0.00025,'s');[num2,den2]=bilinear(B,A,4000);[h2,w]=freqz(num2,den2);f=w/pi*2000;plot(f,abs(h1),'-.',f,abs(h2),'-');grid;xlabel('频率/Hz ')ylabel('幅值/dB')程序中第一个butter地边界频率2π×1000,为脉冲响应不变法原型低通滤波器地边界频率;第二个butter地边界频率2/T=2/0.00025,为双线性变换法原型低通滤波器地边界频率.图1给出了这两种设计方法所得到地频响,虚线为脉冲响应不变法地结果;实线为双线性变换法地结果.脉冲响应不变法由于混叠效应,使得过渡带和阻带地衰减特性变差,并且不存在传输零点.同时,也看到双线性变换法,在z=-1即Ω=π或f=2000Hz处有一个三阶传输零点,这个三阶零点正是模拟滤波器在ω=∞处地三阶传输零点通过映射形成地.例2 设计一数字高通滤波器,它地通带为400~500Hz,通带内容许有0.5dB地波动,阻带内衰减在小于317Hz地频带内至少为19dB,采样频率为1,000Hz.正确wc=2*1000*tan(2*pi*400/(2*1000));wt=2*1000*tan(2*pi*317/(2*1000));[N,wn]=cheb1ord(wc,wt,0.5,19,'s');[B,A]=cheby1(N,0.5,wn,'high','s');[num,den]=bilinear(B,A,1000);[h,w]=freqz(num,den);f=w/pi*500;plot(f,20*log10(abs(h)));axis([0,500,-80,10]);grid;xlabel('')ylabel('幅度/dB')例3 设计一巴特沃兹带通滤波器,其3dB边界频率分别为f2=110kHz和f1=90kHz,在阻带f3 = 120kHz处地最小衰减大于10dB,采样频率fs=400kHz.w1=2*400*tan(2*pi*90/(2*400));w2=2*400*tan(2*pi*110/(2*400));wr=2*400*tan(2*pi*120/(2*400));[N,wn]=buttord([w1 w2],[0 wr],3,10,'s');[B,A]=butter(N,wn,'s');[num,den]=bilinear(B,A,400);[h,w]=freqz(num,den);f=w/pi*200;plot(f,20*log10(abs(h)));axis([40,160,-30,10]);grid;xlabel('频率/kHz')ylabel('幅度/dB')例4 一数字滤波器采样频率fs = 1kHz,要求滤除100Hz地干扰,其3dB地边界频率为95Hz 和105Hz,原型归一化低通滤波器为w1=95/500;w2=105/500;[B,A]=butter(1,[w1, w2],'stop');[h,w]=freqz(B,A);f=w/pi*500;plot(f,20*log10(abs(h))); axis([50,150,-30,10]); grid;xlabel('频率/Hz') ylabel('幅度/dB')。
基于MATLAB的数字滤波器的设计

基于MATLAB的数字滤波器的设计1 绪论1.1 本课题的研究目的及意义数字滤波是数字信号处理的重要基础,在对信号的滤波、检测及参数的估计等信号应用中,数字滤波是使用最为广泛的一种技术。
数字滤波是语音和图象处理、模式识别、谱分析等应用中的一个基本的处理技术,它是数字信号处理中最重要的组成部分之一,几乎出现在所有的数字信号处理系统中[1]。
数字滤波的实现主要是依靠数字滤波器,数字滤波器是由数字乘法器、加法器和延时单元组成的一种装置,其功能是对输入离散信号的数字代码进行运算处理,以达到改变信号频谱的目的。
数字滤波器在语音信号处理、图像信号处理、医学生物信号处理以及其他应用领域都得到了广泛应用,例如电视、VCD、音响、医学图像处理等。
由于电子计算机技术和大规模集成电路的发展,数字滤波器已可用计算机软件实现,也可用大规模集成数字硬件实时实现。
数字滤波器没有漂移,能够处理低频信号,频率响应特性可做成非常接近于理想的特性,且具有高精度、高可靠性、可程控改变特性或复用、便于集成等优点,它可以满足滤波器对幅度和相位特性的严格要求,可以避免模拟滤波器所无法克服的电压漂移、温度漂移和噪声等问题[2]。
而且数字滤波器的种类繁多,有低通、高通、带通、带阻和全通等类型,它可以是时不变的或时变的、因果的或非因果的、线性的或非线性的,便于选择和使用,这些优势决定了数字滤波器的应用越来越广泛,因此滤波器的研究具有极为重要的意义。
1.2 国内外发展现状关于数字滤波器,早在上世纪40年代末期就有人讨论过它的可能性问题,在50年代也有人讨论过数字滤波器的实现问题。
但直到60年代中期,才开始形成关于数字滤波器的一套完整的正规理论。
这一时期,提出了各种各样的数字滤波器结构,有的以运算误差最小为特点,有的则以运算速度快见长。
同时也出现了数字滤波器的各种逼近方法和实现方法,对递归和非递归两类滤波器作了全面的比,统一了数字滤波器的基本概念和理论,开始形成有限冲激响应(IIR)滤波器和无限冲激响应(FIR)滤波器的初步理论。
基于Matlab的数字滤波器设计

第一章绪论1.1引言随着信息时代与数字技术地发展,数字信号处理己逐渐发展成为当今极其重要地学科与技术领域之一.数字信号处理在通信、语音、图像、自动控制雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛地应用.在数字信号处理地基本方法中,通常会涉及到变换、滤波、频谱分析、调制解调和编码解码等处理.其中,滤波是应用非常广泛地一个环节,数字滤波器地相关理论也一直都是人们研究地重点之一.数字滤波器是数字信号处理地重要基础,在对信号地滤波、检测及参数地估计等信号应用中,数字滤波器是使用最为广泛地一种线性系统.数字滤波器根据其单位冲击响应函数地时域特性可分为两类:无限冲击响应(IIR)数字滤波器和有限冲击响应(FIR)数字滤波器.与IIR数字滤波器相比,FIR数字滤波器地实现是非递归地,稳定性好,精度高;更重要地是FIR 数字滤波器在满足幅度响应要求地同时,可以获得严格地线性相位.因此,它在高保真地信号处理中,如数字音频、图像处理、数据传输和生物医学等领域得到广泛应用.1.2数字滤波器地研究背景与意义滤波在通信、图像编码、语音编码、雷达等许多领域中有着十分广泛地应用.目前,数字信号滤波器地设计在图像处理、数据压缩等方面地应用取得了令人瞩目地进展和成就.它是数字信号处理理论地一部分.数字信号处理主要是研究用数字或符号地序列来表示信号波形,并用数字地方式去处理这些序列,以便估计信号地特征参量,或削弱信号中地多余分量和增强信号中地有用分量.具体来说,凡是用数字方式对信号进行滤波、变换、调制、解调、均衡、增强、压缩、固定、识别、产生等加工处理,都可纳入数字信号处理领域.数字信号处理学科地一项重大进展是关于数字滤波器设计方法地研究.关于数字滤波器,50年代已有人讨论过数字滤波器,但直到60年代中期,才开始形成关于数字滤波器地一整套完整地正规理论.在这一时期,提出了各种各样地数字滤波器结构,有地以运算误差最小为特点,有地则以运算速度高见长,而有地则二者兼而有之.出现了数字滤波器地各种实现方法,对递归和非递归两类滤波器作了全面地比较,统一了数字滤波器地基本概念和理论.数字滤波器与模拟滤波器相比,具有精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配以及能实现模拟滤波器无法进行地特殊滤波等优点.1.3 Matlab软件介绍MATLAB 是美国Math Works 公司推出地一套用于工程计算地可视化高性能语言与软件环境.MATLAB为数字滤波地研究和应用提供了一个直观、高效、便捷地利器.它以矩阵运算为基础,把计算、可视化、程序设计融合到了一个交互式地工作环境中.MATLAB 推出地工具箱使各个领域地研究人员可以直观方便地进行科学研究、工程应用,其中地信号处理(signal processing)、图像处理(image processing)、小波(wavelet)等工具箱为数字滤波研究地蓬勃发展提供了有力地工具.其特点归纳如下:1、简单易学:MATLAB不仅是一个开发软件,也是一门编程语言.其语法规则与结构化高级编程语言(如 C 语言等)大同小异,而且使用更为简便.2、计算功能强大:MATLAB 拥有庞大地数学、统计及工程函数,可使用户立刻实现所需地强大数学计算功能.由各领域地专家学者们开发地数值计算程序,使用了安全、成熟、可靠地算法,从而保证了最快地运算速度和可靠地结果.此外,MATLAB 还有数十个工具箱,可解决应用中地大多数数学、工程问题.3、先进地可视化工具:MATLAB 提供功能强大地、交互式地二维和三维绘图功能,可使用户创建富有表现力地彩色图形.可视化工具包括曲面渲染、线框图、伪彩图、光源、图像显示、动画等.4、开放性、可扩展性强:M 文件是可见地MATLAB 程序,所以用户可以查看源代码.开放地系统设计使用户能够检查算法地正确性,修改已存在地函数,或者加入自己地新部件.5、特殊应用工具箱:MATLAB地工具箱加强了对工程及科学中特殊应用地支持.工具箱也和MATLAB一样是完全用户化地,可扩展性强.将某个或几个工具箱与MATLAB联合使用,可以得到一个功能强大地计算组合包,满足用户地特殊要求.MATLAB数字信号处理工具箱和滤波器设计工具箱专门应用于信号处理领域.工具箱提供了丰富而简便地设计,使原来繁琐地程序设计简化成函数地调用.只要以正确地指标参数调用相应地滤波器设计程序或工具箱函数,便可以得到正确地设计结果,使用非常方便.1.4 Matlab软件地国内外发展状况MATLAB软件发展状况:MATLAB是美国MathWorks公司自20世纪80年代中期推出地数学软件,它优秀地数值计算能力和卓越地数据可视化能力使其很快在数学软件中脱颖而出.到目前为止,其最高版本R2011b版已经推出.随着版本地不断升级,它在数值计算及符号计算功能上得到了进一步完善.MATLAB已经发展成为多学科、多种工作平台地功能强大地大型软件.在欧美等高校,MATLAB已经成为线性代数、自动控制理论、概率论及数理统计、数字信号处理、时间序列分析、动态系统仿真等高级课程地基本教案工具,是攻读学位地大学生、硕士生、博士生必须掌握地基本技能.MATLAB地主要特点是:有高性能数值计算地高级算法,特别适合矩阵代数领域;有大量事先定义地数学函数,并且有很强地用户自定义函数地能力;有强大地绘图功能以及具有教育、科学和艺术学地图解和可视化地二维、三维图;基于HTML地完整地帮助功能;适合个人应用地强有力地面向矩阵(向量)地高级程序设计语言;与其它语言编写地程序结合和输入输出格式化数据地能力;有在多个应用领域解决难题地工具箱.MATLAB作为一个数值运算软件和仿真工具正在越来越多地领域中得到不同程度地应用.其主要应用领域包括:工程运算、控制系统设计、DSP 系统和通讯系统设计、测量与测试、图形处理、金融建模与分析应用等.1.5论文地结构安排论文各章地内容安排如下:第一章概括数字滤波器地意义,Matlab仿真软件地简况及其在数字滤波器领域内地研究现状和今后地研究趋势,并简介本论文地主要研究内容.第二章主要介绍了数字滤波器地概念、分类以及特点.第三章详细介绍了窗函数法和频率采样法设计数字滤波器,以及两个方法地比较.第四章介绍了基于MATLAB地数字滤波器仿真实现.第二章数字滤波器2.1数字滤波器地概念所谓数字滤波器,是指输入输出均为数字信号,通过一定地运算关系,改变输入信号中所含频率成分地相对比例,或则滤除某些频率成分地器件.数字滤波器具有稳定性高,精度高,灵活性大等突出优点,对于数字滤波器而言,若系统函数为H(z),其冲脉响应为h(n),输入时间序列为x(n),则他们在时频内地关系式如下:()()()y n h n x n =* (2-1)在Z 域内,输入和输出存在如下关系:()()()Y z H z X z = (2-2)式中,X(z),Y(z)分别为x(n)和y(n)地Z 变换.在频域内,输入和输出则存在后述关系式:()()()Y j H j X j ωωω=;式中,()H j ω是数字滤波器地频率特性,()H j ω,()Y j ω分别为x(n)和y(n)地频谱,而ω为数字角频率.2.2数字滤波器地分类数字滤波器可以有很多种分类方法,但总体上可分为两大类.一类称为经典滤波器,即一般地滤波器,其特点是输入信号中地有用成分和希望滤除地成分占用不同地频带,通过合适地选频滤波器可以实现滤波.例如,若输入信号中有干扰,信号和干扰地频带互不重叠,则可滤出信号中地干扰得到纯信号.但是,如果输入信号中信号和干扰地频带相互重叠,则干扰就不能被有效地滤除.另一类称为现代滤波器,如维纳滤波器、卡尔曼滤波器等,其输入信号中有用信号和希望滤除地频带成分重叠.对于经典滤波器,从频域上也可以分为低通、高通、带通和带阻滤波器.从时域特性上看,数字滤波器还可以分为有限脉冲响应(FIR ,finite impulse response )数字滤波器和无限脉冲响应(IIR, infinite impulse response )数字滤波器.对于有限脉冲响应(FIR )数字滤波器,其输出y(n)只取决于有限个过去和现在地输入,x(n),x(n-1),…,x(n -m),滤波器地输入输出关系可表示为0()()Mr r y n b x n r ==-∑ (2-3)对于无限脉冲响应(IIR )数字滤波器,它地输出不仅取决于过去和现在地输入,而且还取决于过去地输出,其差分方程为1()()()N Mk r k r y n a y n k b x n r ==+-=-∑∑ (2-4)该差分方程地单位冲激响应是无限延续地. 2.3数字滤波器地设计原理数字滤波器根据其脉冲响应地时域特性,可分为两种,即无限长冲激响应(IIR )滤波器和有限长冲激响应(FIR )滤波器.IIR 滤波器地特征是,具有无限持续时间冲激响应.这种滤波器一般需要用递归模型来实现.因而有时也称之为递归滤波器;FIR 滤波器地冲激响应只能延续一定时间,在工程实际中可以采用递归地方法实现,也可以采用非递归地方式实现.数字滤波器地设计方法有很多,如双线性变换法,窗函数设计法,插值逼近法和Chebyshev 逼近法等等.随着MATLAB 软件尤其是MATLAB 地信号处理工作箱地不断完善,不仅数字滤波器地计算机辅助设计有了可能,而且还可以使设计到达最优化.数字滤波器设计地基本步骤如下:(1)确定指标在设计一个滤波器之前,必须首先根据工程实际地需要确定滤波器地技术指标.在很多实际应用中,数字滤波器常常被用来实现选频操作.因此,指标地形式一般在频域中给出幅度和相位响应.幅度指标主要以两种方式给出.第一种是绝对指标,它提供对幅度函数地要求,一般应用于FIR 滤波器地设计.第二种指标是相对指标.它以分贝值地形式给出要求.在工程实际中,这种指标最受欢迎.对于相位响应指标形式,通常希望系统在通频带中具有线性相位.(2)逼近确定了技术指标后,就可以建立一个目标地数字滤波器模型.通常采用理想地数字滤波器模型.之后,利用数字滤波器地设计方法,设计出一个实际滤波器模型来逼近给定地目标.(3)性能分析和计算机仿真上两步地结果是得到以差分或系统函数或冲激响应描述地滤波器.根据这个描述就可以分析其频率特性和相位特性,以验证设计结果是否满足指标要求;或者利用计算机仿真实现设计地滤波器,再分析滤波器结果来判断.2.4数字滤波器地性能指标设数字滤波器地传输函数用下式表示:)()()(ωφωωj j j e e H e H = (2-5)式中,|H(eωj )|为幅频特性,)(ωϕ为相频特性.幅频特性表示信号通过滤波器后各频率成分地衰减情况,相频特性则反映各频率成分通过滤波器后在时间上地延时情况.通常,选频滤波器地指标要求都以幅频特性给出,对相频特性不作要求,如果需要对输出波形有严格要求,如语音合成、波形传输等,则要求设计线性相位数字滤波器.数字滤波器地参数指标是p ω、s ω、p α和s α.p ω和s ω分别称为通带截止频率和阻带截止频率.通带和阻带内允许地衰减一般用分贝数表示,通带内允许地最大衰减用p α表示,阻带内允许地最小衰减用s α表示,p α和s ω分别定义为:0()20lg20lg ()()p pj j p j H e H e H e ωωα==- dB (2-6)0()20lg20lg ()()s s j j s j H e H e H e ωωα==- dB (2-7)式中均假定0()j H e 已被归一化为1. 2.5数字滤波器地基本结构作为线性时不变系统地数字滤波器可以用系统函数来表示,而实现一个系统函数表达式所表示地系统可以用两种方法:一种方法是采用计算机软件实现;另一种方法是用加法器,乘法器和延迟器等元件设计出专用地数字硬件系统,即硬件实现.不论软件实现好事硬件实现,在滤波器设计过程中,由同一系统函数可以过程很多不同地运算结构.对于无限精度地系数和变量,不同结构可能是等效地,与其输入和输出特性无关;但是在系数和变量精度是有限地情况下,不同运算结构地性能就又很大地差异.因此,有必要对离散时间系统地结构有一基本认识.2.5.1 FIR 滤波器地基本结构FIR 滤波器地基本结构有以下几种:直接型、级联型、线性相位型、频率采样型. 1.直接型:设FIR 滤波器地单位冲击响应h(n)为一个长度为N 地序列,则滤波器系统函数为:10()()N n n H z h n z --==∑ (2-8)表示这一系统输入输出关系地差分方程为1()()()N m y n h m x n m -==-∑ (2-9)直接由差分方程可得出对应地网络结构如图2-1所示:1-1-1-图2-1 FIR 滤波器地直接型结构直接型结构地优点:简单直观,乘法运算量较少. 缺点:调整零点较难. 2.级联型当需要控制滤波器地传输零点时,可将H(z)分解为实系数二阶因子地乘积形式:/2120121()()N k k k k H z z z βββ--==++∏ (2-10)式中,()H z 为()h n 地z 变换,0k β,1k β,2k β为实数.级联型结构如图2-2所示:ββ02N β⎡⎤⎢⎥图2-2 FIR 滤波器地级联型结构该结构地优点:调整零点比直接型方便.缺点:()H z 中地系数比直接型多,因而需要地乘法器多.当()H z 地阶次高时,也不易分解. 3.线性相位型结构FIR 滤波器地线性相位结构有偶对称和奇对称,不论)(n h 为偶对称还是奇对称都有: 当N 为偶数时,系统函数为:[]∑-=----±=120)1()()(N n n N n z z n h z H (2-11)当N 为奇数时,系统函数为:[]⎪⎭⎫⎝⎛---=----⎪⎭⎫ ⎝⎛-+±=∑2112)1(21)()(N N n n N n zN h z z n h z H (2-12) 对这两种情况,都可以用FIR 直接型实现,这种结构在本质上是直接型,但乘法次数比直接型省了一半.其信号流图如图2-3所示.(a) N 为偶数(b) N 为奇数 图2-3 线性相位型结构2.5.2 IIR 滤波器地基本结构IIR 滤波器常用地典型结构有直接II 型、级联型和并联型,分别介绍如下:1.直接II 型(也称为正准型结构)IIR 滤波器地传输函数为∑∑=-=--=Nk kk Nk kkzazb z H 101)( (2-13)其中已假设(2-11)式中地M N =,对于其它情况,则可令相应地某些系数为零. 令 11)( ,)(1201∑∑=-=--==Nk kk Nk k k z a z H z b z H ,则有)()()(21z H z H z H =; (2-14)由此可以得到相应地时域中激励)(n x 与响应)(n y 之间地关系为: ∑∑==-=+-=Nk kN k k k n y bn y n x k n y a n y 02122)()()()()( (2-15)直接II 型结构具有简单直观地典型网络结构形式,在计算机上很容易实现.但是它对系数k k b a ,地量值变化比较敏感,k k b a ,直接确定了系统零、极点地位置,从而影响到系统地性能.尤其当阶数N 较高时,系统对系数地字长效应很敏感,产生地误差也较大.图2-4 IIR 滤波器地直接型结构2.级联型结构由于当直接II 型结构传输函数阶数增加时,系数量化引起地误差影响到滤波器地性能,因此要采用其它形式地结构.∏∏∏∏==---==---++-++-=1212112211111221101)1()1()()1()(N k N k k k k M k M k k k kk z a z azpz b z b bzqz H (2-16)级联型结构地特点是对滤波器性能地调整比较方便,调整系数k k k k k b b b a a 21021,,,,,只单独涉及到第k 级零、极点,而不会影响到其它任一级地零、极点,因而可以独立地控制滤波器地各零、极点地分布.图2-5 IIR 滤波器地级联型结构3.并联型结构这种结构将传输函数)(z H 展开为部分分式,即表示为若干一阶和二阶基本节网络与一个常数0B 之和.∑∑=---=---++-+=211221111011011)(M k k k k k M k k kz a z az b b z pB B z H (2-17)其中N M M =+212,同样也可以统一表示为二阶基本节地形式. ∑∑==---+=--++=M k k M k k k k k z H B z a z a z b b B z H 10122111100)(1)( (2-18)并联型结构信号流如图2-6所示,其中二阶基本节网络可以用直接II 型结构实现,程序设计也可参考直接型II 结构地方法.并联型结构也可以单独调整极点位置,但却不能像级联型结构那样直接控制零点地分布.因为并联型结构各二阶基本节网络地零点并不是整个系统函数地零点.图2-6 并联型结构2.5 FIR 滤波器和IIR 滤波器地分析比较为了能在实际工作中恰当地选用合适地滤波器,现将两种滤波器特点比较分析如下: (1)选择数字滤波器是必须考虑地经济问题,通常将硬件地复杂性,芯片地面积或计算速度等作为衡量经济问题地因素.在相同地技术指标要求下,由于IIR 数字滤波器存在输入输出地反馈,因此可以用较少地阶数来满足要求,所用地存储单元少,运算次数少,较为经济.(2)在很多情况下,FIR数字滤波器地线性相位与它地高阶数带来地额外成本相比是非常值得地.对于IIR滤波器,选择性越好,其相位地非线性越严重.如果要是IIR滤波器获得线性相位,又满足幅度滤波器地技术要求,必须加全通网络进行相位校正,这同样将大大增加滤波器地阶数.就这一点来看,FIR滤波器优于IIR滤波器.(3)FIR滤波器主要采用非递归结构,因而无论是理论上还是实际地有限精度运算中它都是稳定地,有限精度运算误差也较小.IIR滤波器必须采用递归结构,极点必须在Z平面单位圆内才稳定.对于这种结构,运算中地舍入处理有时会引起寄生振荡.(4)对于FIR滤波器,由于脉冲响应是有限长地,因此可以用快速傅里叶变换算法,这样运算速度可以快得多.IIR滤波器不能进行这样地运算.(5)从设计上看,IIR滤波器可以利用模拟滤波器设计地现成地闭合公式,数据和表格,可以用完整地设计公式来设计各种选频滤波器.FIR滤波器则一般没有现成地设计公式.窗函数法只能给出了窗函数地计算公式,但计算通常和阻带衰减仍无显式表达式.一般FIR滤波器实际仅有计算机程序利用,因而要借助计算机.(6)IIR滤波器主要是设计规格化,频率特性为分段常数地标准低通,高通,带通和带阻滤波器.FIR滤波器则灵活很多,例如:频率采样法可适应各种幅度特性和相位特性地要求,因此FIR滤波器可设计出理想正交变换器,理想微分器,线性调频器等各种网络,适应性很广,而且,目前已经有很多FIR滤波器地计算机程序可供使用.表2-1 两种滤波器特点比较分析第三章 FIR 数字滤波器地设计设计FIR 数字滤波器地方法通常有三种:窗函数法,频率采样法,还有simulink 仿真法.下面我们分别讨论着三种设计方法.3.1窗函数法设计FIR 滤波器窗函数设计法以理想数字滤波器地设计为基础,从时域单位脉冲响应h(n)出发设计数字滤波器.应用窗函数法可以设计经典低通,高通,带通,带阻滤波器.3.1.1 窗函数法地设计思路如果我们设所要设计地FIR 滤波器地传输函数是d H (e ωj ),dh (n)是与其对应地单位脉冲响应,因此∑∞-∞=-=n nj dj d e n heH ωω)()( (3-1)1()()2j j n d d h n H e e d πωωπωπ-=⎰ (3-2)根据公式3-1,3-2可知,只要我们可以得出)(n h d ,那么经过Z 变换可得到滤波器地系统函数.一般来说数字滤波是通过离散时间系统来实现地,一个离散时间系统可以用差分方程来描述,也可以用系统地函数来描述,即∑∑==-+-=Ni i N i i i n y b i n x a n y 1)()()( (3-3)将Z 变换运用到3-3式中,两边得∑∑=-=-+=Ni i i i ii z Y z b z X z a 1N 0)()(Y (z) (3-4)则系统函数就是两个多项式系数之比,即∑∑--=--==N i ii Ni ii z b za z X z Y z H 101)()()( (3-5)我们知道有限长序列地z 变换应在整个有限z 平面|z|>0上收敛,因此对于FIR 系统,)(z H 不能在有限z 平面上有极点,也即在以上)(z H 表达式中,如果分子,分母都没有公共可约地因子,那么全部系数N i b i,,1,⋯⋯=必须为0,即∑=-=Ni ii z a z H 0)( (3-6)当jw e z =时,z 变换与DTFT 变换相等,也就是说,采样序列单位圆上地z 变换就是等于该采样序列地DTFT.即∑=-=Ni jwii jwe a e 0d )(H (3-7)把3-7式傅里叶逆变换,并且把i 等效换成n ,即1()()2j j n d d h n H e e d πωωπωπ-=⎰ (3-8)窗函数法就是用被称为窗函数地有限加权序列w(n)来修正式(3-8)地傅里叶基数以求得要求地有限脉冲响应序列)(n h ,即)()()(n w n h n h d = (3-9)w(n)是有限长序列,当n<0或n>N-1时,w(n)=0. 转换过程如下:通过频域卷积过程看)(ωj e H 地幅度函数H(w)地起伏现象,可知,加窗处理后,对理想矩形地频率响应产生以下几点影响:(1) 使理想频率特性不连续点外边沿加宽,形成一个过渡带,其宽度等于窗地频率响应地主瓣宽度.在截止频率地两边即过渡带地两边,出现最大地肩峰值,肩峰地两侧形成起伏震荡,其震荡幅度取决于旁瓣地相对幅度,而震荡地多少,取决于旁瓣地多少.(3) 改变N ,只能改变窗谱地主瓣宽度,改变W 地坐标比例以及其绝对值地大小,但不能改变主瓣与旁瓣地相对比例.(4) 对窗函数地要求:a. 窗谱主瓣尽量窄,以获取较陡地过渡带;b. 尽量减少窗谱地最大旁瓣地相对幅度;旁瓣相对值尽可能小,以使得通带波纹小,并且阻带衰减大.3.1.2几种常用地窗函数地介绍 1.矩形窗(Rectangle Window)()()R N w n R n = (3-10)其频率函数为:12sin(/2)()sin(/2)N j j R N W e eωωωω--= (3-11)2.三角形窗(Bartlett Window)21,0(1)12()212,(1)112Br n n N N w n n N n N N ⎧≤≤-⎪⎪-=⎨⎪--<≤-⎪-⎩ (3-12)其频率函数为:21()22sin(/4)()sin(/2)N j j Br N W e e N ωωωωω--+⎡⎤=⎢⎥⎣⎦ (3-13)3.汉宁(Hanning)窗,又称升余弦窗12()1cos()()21Hn N n w n R n N π⎡⎤=-⎢⎥-⎣⎦ (3-14)利用傅里叶变换得到频率函数为:121222()0.5()0.25()()11()N j j R R R N j Hn W e W W W eN N W eωωωππωωωω----⎧⎫⎡⎤=+-+-⎨⎬⎢⎥--⎣⎦⎩⎭= (3-15)当1N N -≈时,所以窗函数地幅度函数为22()0.5()0.25()()Hn R R R W W W W N N ππωωωω⎡⎤=+-++⎢⎥⎣⎦ (3-16)4.汉明(Hamming)窗,又称改进地升余弦窗2()0.540.46cos()()1Hm N n w n R n N π⎡⎤=-⎢⎥-⎣⎦ (3-17)其幅度函数为:22()0.54()0.23()()11Hm R R R W W W W N N ππωωωω⎡⎤=+-++⎢⎥--⎣⎦ (3-18) 5.布莱克曼(Blankman)窗,又称二阶升余弦窗24()0.420.5cos()0.08cos()()11Bl N n n w n R n N N ππ⎡⎤=-+⎢⎥--⎣⎦ (3-19)其幅度函数为:22()0.42()0.25()()11440.04()()11Bl R R R R R W W W W N N W W N N ππωωωωππωω⎡⎤=+-++⎢⎥--⎣⎦⎡⎤+-++⎢⎥--⎣⎦ (3-20)6.凯塞(Kaiser)窗0()01k w n n N =≤≤- (3-21)其中:β是一个可自由选择地参数,I0( x)是第一类修正零阶贝塞尔函数. 一般取4<β<9,当β=5.44 接近汉明;当β=8.5 接近布莱克曼;当β=0 为矩形 3.1.3几种窗函数地比较图3-1 各种窗函数地幅频特性可见,矩形窗设计地过渡带最窄,但阻带最小衰减也最差,仅-21dB;布莱克曼窗设计地阻带最小衰减最好,达 -74dB,但过渡带最宽,约为矩形窗设计地三倍.几种窗口函数地具体性能比较见下表.窗函数旁瓣峰值幅度/db过渡带宽阻带最小衰减/db矩形窗-134π/N-21三角形窗-268π/N-25汉宁窗-318π/N-44汉明窗-408π/N-53布莱克曼窗-5712π/N-74凯泽窗-5710π/N-803.1.4窗函数法设计滤波器地步骤1)根据技术要求确定待求滤波器地单位取样响应)(nhd .2)根据对过渡带和阻带衰减地要求,选择窗函数地形式,并估计窗口长度N. 3)计算滤波器地单位取样响应h(n):)()()(n n h n h d ω= (3-21)式中,)(n ω是前面所选择好地窗函数.4)检验技术指标是否满足要求.根据下式计算:∑-=-=1)()(N n nj j e n h e H ωω(3-22)如果)(ωj e H 不满足要求,根据具体情况重复步骤(2)(3)(4)步,直到满足要求为止.3.1.5在计算中窗函数地选择可以根据数字滤波器地最大阻带衰减要求选择窗函数数地类型.由下表所知,阻带衰减仅与窗函数类型相关.加窗长度由过渡带地宽度决定.根据下表得知,选择N 时必须保证w ∆Ω小于实际滤波器地过渡带宽度.选择窗函数类型必须保证s ws A δ-<.下面举例说明一下在计算中如何选择窗函数:例1:试设计一个数字滤波器半带低通滤波器,要求通带边界频率8kHz,通带最大衰减1dB,阻带边界频率16kHz,阻带最小衰减50dB ,试选出所用地窗函数和窗函数地长度.解:(1)采样频率地确定半带数字滤波器要求截止频率π5.0=Ωc ,由于⎥⎦⎤⎢⎣⎡+=Ω+Ω=Ωs s s p s p c f F f F ππ22212)(⎥⎦⎤⎢⎣⎡⨯+⨯⨯=s s f kHz f kHz 1628221ππ由π5.0=Ωc 可知采样频率sf 应等于48kHz. (2)窗函数类型和参数地选择根据3.1.5中阻带衰减地要求,参照表3-2,可选择海明窗,布莱克曼窗或者参数可调地凯泽窗.如果选择海明窗,由表3-2可知窗函数长度必须满足s p s f F F N -≤⨯ππ247.32代入参数,得N=21. 3.1.6窗函数地使用场合随着信号分析技术地改进和提高,窗函数地应用也有很大地发展.在信号处理分析和分析地过程中,需要考虑信号中地信息量地分析,增强信号中所需要地信息部分,抑制信号中不需要地信息部分,以人们感兴趣地有效信息与窗函数作用后地综合效果为依据来选用窗函数,使得处理结果又足够地频谱检测能力和频谱幅值估计精度.窗函数地选择需根据信号地性质和研究目地,如对于频率分辨率要求高,对于谱估计幅值精度要求高地信号,处理时可以选择矩形窗.3.2 频率采样法设计数字滤波器窗函数设计法理想数字滤波器为基础,从时域单位脉冲响应h(n)出发设计滤波器,设计过程简单,但不能设计具有频率响应特性地数字滤波器.频率采样法直接从频域出发,可方便设计具有任意频率响应地数字滤波器.3.2.1频率采样法地基本原理一个有限长序列,可以通过其频谱地相同长度地等间隔采样值准确地恢复原有地序列,频率采样法便是从频域出发,对理想地频率响应)(jw d e H 加以等间隔采样即)(|)(2k H e H dk Nw jw d==π(3-23)然后,以此)(k H d作为实际FIR 滤波器地频率特性地离散样本)(k H ,即 1,1,0,|)()()(2-⋯⋯====N k e H k H k H k Nw jw d d π(3-24)由)(k H 通过IDFT 可求出有限序列)(n h 为∑-=-⋯⋯==121,,1,0,)(1)(N k Nnkj N n ek H Nn h π (3-25)利用N 个频域地离散样本)(k H 同样可求出FIR 滤波器地系统函数)(z H 及频域响应)(jw e H ,对于3-25式中求z 变换得n N n N n N k Nnk j nz e k H N zn h z H --=-=-=-∑∑∑⎥⎦⎤⎢⎣⎡==110102)(1)()(π (3-26)∑-=----=101211)(1N k N kj Nz e z k H N π令N j e W π2-=,则∑-=-----=1011)(1)(N k k Nz Wk H N z z H (3-27) 对于单位圆上地频响,采样序列单位圆上地z 变换就是等于该采样序列地DTFT.则3-27式可以表达为。
基于MATLAB的数字滤波器的设计课程设计

数字信号处理课程设计任务书一、设计题目、内容及要求设计题目:基于MATLAB的数字滤波器设计设计内容:所设计的数字滤波器应完成以下功能:(1)设计低通、带通、高通数字滤波器;(2 )可以对合成信号(含低频、中频、高频分量\语音信号进行滤波;(3)通过GUI界面进行控制。
设计要求:1、根据题目要求进行数字滤波器总体设计。
2.完成数字滤波器具体设计。
(1)输入信号的选定。
(2 )确定设计方法、设计指标。
3.滤波器程序的设计。
(1)完整源程序。
(2 )运行结果图。
4.书写设计说明书。
二、设计原始资料范寿康主编,DSP技术与DSP芯片,电子工业出版社。
三、要求的设计成果(课程设计说明书、设计实物、图纸等)设计结果能正确仿真演示设计说明书一份(包括总体设计、算法原理图及说明、系统GUI演示、源程序清单等)四、进程安排周一:资料收集周二:利用MATLAB完成GUI界面绘制周三:程序调试周四:书写课程设计说明书周五:答辩五、主要参考资料1、楼顺天,李博函.基于MATLAB的系统分析与设计一信号处理.西安电子科技大学出版社,19982、奥本海姆.离散时间信号处理.科学出版社,20003、宗孔德,胡广书.数字信号处理.清华大学出版社,1997指导教师(签名): |教研室主任(签名):课程设计成绩评定表提问(答辩)问题情况综合评定指导教师签名:1引言 (1)1.1数字滤波器的背景及意义 (1)1.2数字滤波器的设计要求 (1)1.3数字滤波器的设计目的 (1)2数字滤波器的设计 (2)2.1数字滤波器的基本概念 (2)2.2利用双线性变换法设计IIR数字滤波器 (2)2.3利用窗函数法设计FIR数字滤波器 (2)3基于MATLAB的数字滤波器的设计 (4)3.1MATLAB软件介绍 (4)3.2MATLAB常用函数简介 (4)3.3IIR数字滤波器设计 (5)3.3.1IIR低通滤波器设计 (5)3.3.2IIR高通滤波器设计 (7)3.3.3IIR带通滤波器设计 (8)3.3.4IIR数字滤波器的流程图 (10)3.4HR数字滤波器设计 (10)3.4.1FIR低通滤波器设计 (10)3.4.2FIR高通滤波器设计 (12)3.4.3FIR带通滤波器设计 (14)3.4.4FIR滤波器设计流程图 (16)4 MATLAB数学应用软件介绍 (17)5图形用户界面设计 (18)6总结 (23)参考文献 (25)附录 (26)1引言1.1数字滤波器的背景及意义数字滤波器是一种对数字信号进行处理的系统,数字滤波器完成数字信号滤波处理功能,其输入是一组数字量,其输出是经过变换的另一组数字量。
基于MATLAB的数字滤波器设计设计

基于MATLAB的数字滤波器的设计摘要本文分别研究了在MATLAB环境下IIR数字滤波器和FIR数字滤波器的设计方法及实现方法,并进行图形用户界面设计,以显示本文所介绍滤波器的特性。
在无限脉冲响应(IIR)数字滤波器设计中,先进行模拟滤波器的设计,然后进行模拟-数字滤波器转换,即采用脉冲响应不变法及双线性Z变化法设计数字滤波器,最后进行滤波器的频带转换。
在有限脉冲响应(FIR)数字滤波器设计中,讨论了FIR线性相位滤波器的特点和用窗函数法设计FIR滤波器两个问题。
两类滤波器整个设计过程都是按照理论分析、编程设计、具体实现的步骤进行的。
为方便分析者直观,形象,方便的分析滤波器的特性,创新的设计出了图形用户界面——滤波器分析系统。
整个系统分为两个界面,其内容主要包含四部分:System(系统)、Analysis(分析)、Tool(工具)、Help(帮助)。
关键词:数字滤波器、MATLAB、无限脉冲响应、有限脉冲响应、图形用户界面Matlab-based digital filter designAbstractIn this thesis, designs of the Infinite Impulse Response digital filter (IIR) and Finite Impulse Response digital filter (FIR) under MATLAB are studied. And the Graphical User Interfaces (GUI) to analysis the characteristics of filter is designed.The design of IIR filters can be achieved through three steps: firstly, the design of analog low-pass filter; secondly, it is analog-to-digital filter conversion; lastly, it is the conversion of filter frequency band. In design of FIR filters, two questions are discussed: the characteristics of FIR linear phase filter and reasoning of related formulas; the other is about the design of the FIR filters by means of window functions. The design of FIR and IIR follows the procedures of theoretical analysis, programming design and realization.We design the Graphical User Interfaces (GUI) of the digital filter analysis system makes sure of people can analysis the characteristics of the design directly and easily. The whole system divide into two graphical interfaces, it contains four parts: System, Analysis, Tool and Help.Keywords: Digital Filter, MATLAB, IIR, FIR, Graphical User Interfaces目录引言 (1)第1章绪论 (2)1.1 数字滤波技术 (2)1.1.1 滤波器原理 (3)1.1.2 数字滤波器设计方法概述 (3)1.2 MATLAB软件简介 (4)第2章 IIR滤波器概况及其MATLAB实现 (6)2.1 模拟滤波器及其MATLAB实现 (6)2.1.1 巴特沃斯低通滤波器 (6)2.1.2 切比雪夫低通滤波器 (7)2.1.3 椭圆低通滤波器 (8)2.2 模拟—数字滤波器变换及其MATLAB实现 (8)2.2.1 脉冲响应不变法 (9)2.2.2 双线性Z变换法 (10)2.3小结 (11)第3章 FIR滤波器设计及其MATLAB实现 (12)3.1 线性相位FIR数字滤波器的条件和特点 (12)3.1.1 线性相位条件 (12)3.1.2 线性相位FIR滤波器幅度特性的特点 (13)3.1.3 线性相位FIR滤波器零点分布特点 (13)3.2 常用窗函数及其MATLAB实现 (13)3.2.1 常用窗函数介绍 (13)3.2.2 各种窗函数的实现与比较 (15)3.3 基于窗函数的FIR数字滤波器设计及其MATLAB实现 (16)3.3.1 海明窗设计数字低通滤波器 (17)3.3.2 汉宁窗设计数字高通滤波器 (19)3.3.3 布拉克曼窗及三角窗设计数字带通滤波器 (21)3.4 小结 (24)第4章图形用户界面设计--滤波器分析系统 (25)4.1 MATLAB中GUI设计技术特点 (25)4.1.1 GUIDE简介 (25)4.1.2 GUI设计规范及设计步骤 (25)4.2 滤波器分析系统及其MATLAB实现 (26)4.2.1 滤波器分析系统的初始界面 (27)4.2.2 滤波器分析系统的主界面 (28)4.3 小结 (34)总结与展望 (35)致谢 (36)参考文献 (37)附录 (39)附录A 外文文献及译文 (39)附录B 主要参考文献 (44)插图清单图 1-1 LIS系统 (3)图 2-1 理想切比雪夫I型滤波器的幅频特性 (7)图 2-2 理想切比雪夫I型滤波器的幅频特性 (8)图 2-3 双性线Z变换法的映射关系 (10)图 3-1 常用窗函数时域幅度曲线比较 (15)图 3-2 常用窗函数频域幅度曲线比较 (10)图 3-3 FIR数字低通滤波器脉冲响应与幅度响应 (16)图 3-4 FIR数字低通滤波器脉冲响应与幅度响应 (19)图 3-5 FIR数字带通滤波器脉冲响应与幅度响应 (20)图 3-6 FIR数字带阻滤波器脉冲响应与幅度响应 (22)图4-1 设计步骤 (24)图4-2属性编辑控制器 (26)图4-3 按下按键CLOSE后出现的问题显示对话框 (27)图4-4滤波器分析系统的主界面的下拉式菜单 (28)图4-5菜单编辑器 (29)图 4-6 IIR模拟带通滤波器参数输入选择 (29)图 4-7切比雪夫I型带阻模拟滤波器(阶次N=2,9) (30)图 4-8 IIR数字滤波器Analyze (32)图 4-9 FIR数字滤波器Analyze (33)图 4-10 错误信息显示对话框 (33)图 4-11信息显示对话框 (34)表格清单表 3-1 各种窗函数的性能比较 (16)引言随着信息时代和数字世界的到来,数字信号处理已成为当今一门极其重要的学科和技术领域。
基于Matlab的FIR数字滤波器问题的优化设计

基于Matlab 的FIR 数字滤波器问题的优化设计摘要 相对于硬件方式,采用软件方式可以通过对滤器参数的改变来调整滤波器的性能以达到实现滤波目标,本文根据FIR 滤波器的原理,运用MATLAB 进行了惩罚函数设计法。
关键词 FIR 数字滤波器 FFT MATLAB引言 数字信号处理中, 滤波具有十分重要的地位与作用, FIR 数字滤波器在通信、语音、图像、自动控制等众多领域得到了广泛的应用。
它具有精度高、可靠性好、灵活性大等特点。
FFT 是离散傅立叶变换的快速算法,可以将一个信号变换到频域经过ADC 采样之后,就变成了数字信号。
MATLAB 是一种面向科学和工程计算的语言,集数值分析、矩阵运算、信号处理和图形显示于一体, 具有编程效率高、调试手段丰富、扩充能力强等特点。
1 FIR 数字滤波器的原理数字滤波器原理一般具有如下差分方程:1100()()()k k N N k k y n a x n k b y n k --===-+-∑∑若设其为冲激响应为h(z),0 ≤ n ≤N - 1 ,则其系统函数为:10()()N nn H z h n z --==∑FIR 数字滤波器的设计实质是确定能满足要求的转移序列或脉冲响应的常数问题,设计方法主要有惩罚函数法、频率采样法和波纹最佳逼近法等。
2 惩罚函数法的设计步骤(1) 给定所要求的频率响应Hd (e jw ) ;(2) 由Hd (e jw ) 的傅立叶反变换求出hd ( n) ;(3) 根据过渡带宽及阻带最小衰减的要求,选择窗的形状并估计窗口长度N ;(4) 计算滤波器的单位脉冲响应:()()()d h n h n w n =3FFT概念理解及其功用FFT是离散傅立叶变换的快速算法,可以将一个信号变换到频域。
经过ADC采样之后,就变成了数字信号。
采样定理告诉我们,采样频率要大于信号频率的两倍,采样得到的数字信号,就可以做FFT变换了。
N个采样点,经过FFT之后,就可以得到N个点的FFT 结果。
基于MATLAB的数字滤波器的设计

基于MATLAB 的数字滤波器的设计1 引言数字滤波器是指完成信号滤波处理功能的,用有限精度算法实现的离散线性非时变系统,其输入是一组(由模拟信号取样和量化的)数字量,其输出是经过变换或说处理的另一组数字量。
数字滤波器具有稳定性高、精度高、灵活性大等突出优点。
这里所说的数字滤波器是指理想带通,低通等的频率选择数字滤波器。
数字滤波器设计的一个重要步骤是确定一个可实现的传输函数H(z),这个确定传输函数H(z)的过程称为数字滤波器设计。
数字滤波器的一般设计过程为:(1)按照实际需要,确定滤波器的性能要求(通常在频域内给定数字滤波的性能要求)。
(2)寻找一满足预定性能要求的离散时间线性系统。
(3)用有限精度的运算实现所设计的系统。
(4)通过模拟,验证所设计的系统是否符合给定性能要求。
2 数字滤波器的设计滤波器分为两种,分别为模拟滤波器和数字滤波器。
数字滤波器可以理解为是一个计算程序或算法,将代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化的过程中,使信号按预定的形式变化。
数字滤波器有多种分类,从数字滤波器功能上分可分为低通、高通、带阻、带通滤波器,根据数字滤波器冲激响应的时域特征,可将数字滤波器分为两种,即无限长冲激响应滤波器(IIR )和有限长冲激响应滤波器(FIR )。
数字滤波器指标:一般来说,滤波器的幅频特性是分段常数的,以低通为例,在通带内逼近于1,阻带内逼近与0,实际设计的滤波器并非是锐截止的通带和阻带两个范围,两者之间总有一个过渡带。
在设计滤波器时事先给定幅频特性允许误差,在通带范围内幅度响应以误差逼近于1,在阻带内幅1σ度响应以误差逼近于0。
2σ (1)πσσ≤≤≤≤≤≤-w w e H w w e H r jwc jw ,2|)(|,1|)(|11式中wc 和wr 分别为通带边界频率和阻带边界频率,wr-wc 为过渡带。
在具体的技术指标中往往用通带波动来表示,用最小阻带衰减At 来表示,其具体的对应公式这里就不详述了。
实验5 基于Matlab的数字滤波器设计

实验五 基于Matlab 的数字滤波器设计实验目的:加深对数字滤波器的常用指标和设计过程的理解。
实验原理:低通滤波器的常用指标如下所述,其典型规格如下:⎪⎭⎪⎬⎫⎪⎩⎪⎨⎧≤≤≤≤+≤≤-πδδδw w e G w w e G s s jw p p jw p ,)(,1)(1 通带边缘频率:p ϖ阻带边缘频率:s ϖ 通带起伏:p δ 通带峰值起伏:))(1(log 2010dB p p δα--=阻带起伏: s δ 最小阻带衰减:))((log 2010dB s s δα-=数字滤波器有IIR 和FIR 两种类型,他们的特点和设计方法不同。
一、窗函数法设FIR 滤波器在Matlab 中产生窗函数十分简单:(1) 矩形窗调用格式:w=boxcar(n) ,根据长度n 产生一个矩形窗w 。
(2) 三角窗调用格式:w=triang(n) ,根据长度n 产生一个三角窗w 。
(3)汉宁窗调用格式:w=hanning(n) ,根据长度n 产生一个汉宁窗w 。
(4)汉明窗调用格式:w=hamming(n) ,根据长度n 产生一个汉明窗w 。
(5)布莱克曼窗调用格式:w=Blackman(n) ,根据长度n 产生一个布莱克曼窗w 。
基于窗函数的FIR 滤波器设计利用Matlab 提供的函数firl 来实现。
调用格式:firl(n,wn,’ftype ’,Window),n 为阶数,wn 是截止频率(如果输入是形如[w1 w2]的矢量时,本函数将设计带通滤波器,其通带为w1<w<w2)、ftype 是滤波器的类型(底通——省略该参数、高通——ftype=high 、带阻——ftype=stop )、Window 是窗函数。
1、设计一个长度为8的线性相位FIR 滤波器。
Window=boxcar(8); b=fir1(7,0.4,Window); freqz(b,1); Window=blackman(80;b=fir1(7,0.4,Window); freqz(b,1);2、设计线性相位带通滤波器,其长度N=15,上下边带截止频率分别为w1=0.3π,w2=0.5π Window=blackman(16); B=firl(15,[0.3 0.5],Window); Freqz(b,1);3、设计指标为,dB A dB R s a p p 50,3.0,25.0,2.0====πϖπϖ的底通滤波器。
基于MATLAB的数字滤波器的优化设计

基于MATLAB的数字滤波器的优化设计
黄金花
【期刊名称】《武汉船舶职业技术学院学报》
【年(卷),期】2005(004)006
【摘要】分析了数字滤波器的传统设计过程,并与MATLAB设计方法进行了比较,结果表明,基于MATLAB的数字滤波设计法具有设计方便、快捷、参数修改方便等优点,并给出了采用优化设计方法设计FIR数字滤波器的实例.
【总页数】3页(P18-20)
【作者】黄金花
【作者单位】武汉船舶职业技术学院国际文化交流学院,湖北,武汉,430050
【正文语种】中文
【中图分类】TN713
【相关文献】
1.基于MATLAB的FIR数字滤波器的优化设计 [J], 陈玲玲;张虹
2.基于MATLAB的FIR数字滤波器的优化设计 [J], 陈玲玲;张虹
3.基于Matlab的FIR数字滤波器的优化设计 [J], 周云波;刘小群
4.FIR数字滤波器的最优化设计及MATLAB实现 [J], 黎雄;张学智
5.基于MatLab的IIR数字滤波器设计与应用 [J], 尹园威;马俊涛;史林;王丹;刘贺雄
因版权原因,仅展示原文概要,查看原文内容请购买。
基于Matlab的FIR数字滤波器的优化设计

基于Matlab的FIR数字滤波器的优化设计摘要通过实例介绍了基于Matlab的FIR滤波器的优化设计方法。
3种结果比较发现,在同样阶数下,优化设计可以获得最佳的频率特性和衰耗特性。
关键词数字滤波器;Matlab;FIR;IIR;优化设计数字滤波在数字信号处理中,占有重要的地位。
数字滤波包括FIR 和IIR两种滤波方式,其中FIR滤波具有很多优点,可以在幅度特性随意设计的同时,保证精确、严格的线性相位,滤波稳定,不会出现递归型结构中的极限振荡等不稳定现象,且误差较小,可采用FFT算法实现,因此运算效率高。
设计FIR滤波器常用的方法有窗函数法与频率抽样法,但是这两种方法均不易精确控制通带与阻带的边界频率,所以在实际应用中有一定的局限性。
文中用Matlab语言实现了最佳等波纹FIR滤波器的设计,通过比较显示了它在等波纹方脉冲响应方面的优化特性。
1 FIR滤波器优化设计法Matlab信号工具箱中提供的Remez函数可对数字滤波器进行优化设计,得到的数字滤波器具有等波纹特性,Remez函数实现Parks McClel-lan算法,即采用数字分析中的Remez算法和切比雪夫最佳一致逼近理论来设计,使实际频响拟合期望频率响应最优。
使用Remez算法设计滤波器,首先需根据要求确定滤波器阶数。
利用Remezord函数可以确定滤波器阶数n,归一化的各频带边界频率fo,归一化的各频带幅度值ao,加权系数w,其格式如下:[n,fo,ao,w]=remezord(f,a,dev)。
Remezord输入参数的含义为向量f指定各频带边界频率,在 0~Fs/2之间取值。
向量a指定各频带的幅度响应。
f的长度是length(f)=2×length(a)-2,必须为偶数。
第一频带总是从0开始,最后一个频带到Fs/2结束。
向量dev指定设计出的滤波器和理想滤波器的幅度响应在每个频带的最大允许误差,因此与向量a的长度相等。
2 FIR滤波器设计实例分别使用窗函数法,频率取样,优化设计法,设计一个线性相位的带通滤波器。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3
FIR 滤波器设计............................................................................................................. 18 3.1 窗函数法.................................................................................................................. 18 3.2 FIR 滤波器滤波实例............................................................................................. 22
1
宿州学院本科生毕业设计
基于 MATLAB 的数字滤波器优化设计
1 数字滤波器及 MATLAB 语言概述
1.1 数字滤波技术发展概括
关于数字滤波器,早在 40 年代末期,就有人讨论过它的可能性问题。但直到 60 年代中期,才开始形成关于数字滤波器的一套完整的正规理论。70 年代科学技术蓬 勃发展,数字信号处理开始与大规模和超大规模集成电路技术,微处理器技术、高速 数字算术单元、双极型高密度半导体存储器、电荷转移器件等新技术、新工艺结合了 起来,并且引进了计算机辅助设计方法, 它使数字滤波器的设计仅仅是对相应模拟滤 波器的通近。数字信号处理理论与技术的发展, 主要是由于电子计算机与大规模集成 电路的大量生产和广泛应用, 替代了原来的模拟信号处理中的线性滤波与颇谱分析所 应用的模拟计算机和分立元件 L. C. R 线性网络,高度发挥了计算技术与数字技术相 结合的特色和优越性。特别是微处理器和微型计算机技术日新月异的发展, 将更有利 于电子仪器与电子技术应用系统朝着数字化、小型化、 自动化以及多功能化等方向发 展,促使它们成为富有智能性的电子系统。现在,包括数字滤波在内的数字信号处理 技术正以惊人的速度向纵深和高级的方向发展, 据估计这种趋势还要持续一个较长的 时期,未来的发展可能会比过去的进程更为激动人心, 必将引起某些领域的飞跃性转 变。 对于数字滤波器而言,若系统函数为 H(z),其脉冲响应为 h(n),输入时间序列为 x(n),则它们在时域内的关系式如下: y(n)=h(n)﹡x(n) 在 Z 域内,输入和输出存在如下关系: Y(z)= H(z)X(z) (1-2) 式中,X(z)、Y(z)分别为 x(n)和 y(n)的 Z 变换。 在频域内,输入和输出则存在如下关系: Y(j )=H(j )X(j ) 而 为数字角频率。 数字滤波器可以有很多种分类方法,但总体上可分为两大类。 一类称为经典滤波 器,即一般的滤波器, 其特点是输入信号中的有用成分和希望滤除的成分占用不同的 频带,通过合适的选频滤波器可以实现滤波[3]。例如,若输入信号中有干扰,信号和 干扰的频带互不重叠,则可滤出信号中的干扰得到纯信号。但是,如果输入信号中信 号和干扰的频带相重叠,则干扰就不能被有效的滤出。另一类称为现代滤波器,如维 纳滤波器、卡尔曼滤波器等,其输入信号中有用信号和希望滤除的成分频带重叠。对 于经典滤波器,从频域上也可以分为低通、高通、带通和带阻滤波器。从时域特性上 看,数字滤波器还可以分为有限冲激响应数字滤波器(FIR)和无限冲激响应数字滤 波器(IIR) 。
宿州学院本科生毕业设计
基于 MATLAB 的数字滤波器优化设计
绪 论
数字滤波在通信、 图像编码、 语音编码、 雷达等许多领域中有着十分广泛的应用。 目前,数字信号滤波器的设计在图像处理、 数据压缩等方面的应用取得了令人瞩目的 进展和成就。近年来迅速发展起来。 MATLAB 是美国 MathWorks 公司推出的一套用于工程计算的可视化高性能语言 与软件环境。MATLAB 为数字滤波的研究和应用提供了一个直观、高效、便捷的利 器。它以矩阵运算为基础,把计算、可视化、程序设计融合到了一个交互式的工作环 境中。 MATLAB 推出的工具箱使各个领域的研究人员可以直观方便地进行科学研究、 工程 应用, 其中的信号处理 (signalproeessing) 、图像处理 (imageproeessing) 、小 波 (wavelet)等工具箱为数字滤波研究的蓬勃发展提供了有力的工具。 数字滤波器与模拟滤波器相比,具有精度高、稳定、体积小、重量轻、灵活、不 要求阻抗匹配以及能实现模拟滤波器无法进行的特殊滤波等优点[1]。本文主要介绍有 限冲激响应数字滤波器(FIR)和无限冲激响应数字滤波器(IIR)的设计原理、方法、 步骤以及在 MATLAB 中的实现,并以实例形式列出设计程序和仿真结果。
目
绪
录
论.................................................................................................................................... 1
1 数字滤波器及 MATLAB 语言概述...................................................................................... 2 1.1 1.2 1.3 2 数字滤波技术发展概括.......................................................................................... 2 常用滤波器的性能指标.......................................................................................... 3 MATLAB 概述............................................................................................................. 5
2014 届本科生毕业设计
分类号:TN713
题
目:
基于 MATLAB 的数字滤波器优化设计
作 者 姓 名: 学 学 专 号: 院: 业:
解少飞 2010080215 机械与电子工程学院 电子信息工程 曹吉花 副教授 李迎军 工程师
指导教师姓名: 指导教师职称:
2014 年 5 月 10 日
摘
要
数字滤波器是数字信号处理中最重要的组成部分之一。在许多科学技术领域中, 广泛使用滤波器对信号进行处理。数字滤波器可以分为两类, 即无限冲激响应数字滤 波器(IIR)和有限冲激响应数字滤波器(FIR)。 本文就分别对这两类数字滤波器的设计 和实现来进行分析研究。 在IIR滤波器的设计过程中,需要借助模拟原型滤波器,再将模拟滤波器转化为 数字滤波器,文中采用的设计方法是脉冲响应不变法、双向性变换法。在FIR滤波器 的设计过程中主要探讨了用窗函数法设计FIR滤波器。在这两类滤波器的整个设计过 程都是按照理论分析、编程设计、具体实现的步骤来进行的。 相对于模拟滤波器来说,数字滤波器稳定、没有漂移、精度高、参数容易控制, 这些优势决定了数字滤波器的应用越来越广泛。 关键词:数字滤波器 ; MATLAB; 有限冲激响应; 无限冲激响应
结论...................................................................................................................................... 25 参考文献.............................................................................................................................. 26 致 谢.................................................................................................................................. 27
ABSTRACT
Digital filter is one of the most important parts of digital signal processing. In many fields of science and technology, it is widely used for signal processing. Digital filter can be divided as the Infinite Impulse Response digital filter (IIR) and the Finite Impulse Response digital filter (FIR) a. The paper aims at respective study in the design and realization of these two kinds of digital filters. During the design of IIR filters, we need the help of analog prototype filter, and then transform analog filter into digital filter. In the paper we use the design of the pulse response invariable method, the bilinear method. During the design of FIR filters, we mainly discuss the design of the FIR filters by means of window functions. The design of FIR and IIR follows the procedures of theoretical analysis, programming design and concrete realization. Relative to ana1og fi1ter , the digital filter without excursion, be able to process low frequency signal ,the characteristic of frequency response close to ideal va1ue , with high precision ,and easy to integrated .These advantages decide the application of digita1 filter become more and more extensively. Key words: Digital Filter ; MATLAB; IIR ; FIR