数字滤波器研究课程论文
基于MATLAB的数字滤波器的的设计论文

基于MATLAB的数字滤波器的设计目录1引言 (1)2MATLAB简介 (2)3设计方案 (3)3.1基于MATLAB的IIR数字滤波器的设计 (3)3.1.1IIR数字滤波器的选择 (3)3.1.2IIR数字带通滤波器的设计 (4)3.1.3IIR数字滤波器MATLAB仿真结果与分析 (5)3.2基于MATLAB的FIR数字滤波器的设计 (6)3.2.1FIR数字滤波器的选择 (6)3.2.2FIR数字带通滤波器的设计 (8)3.2.3FIR数字滤波器MATLAB仿真结果与分析 (10)4IIR数字滤波器与FIR数字滤波器的比较 (12)5结论 (14)参考文献 (15)致谢 (16)摘要数字滤波器是一个离散系统。
该系统能对输入的离散信号进行处理,从而获得所需的有用信息。
现代数字滤波器的设计大体可以分为IIR和FIR两大类,可以用软件和硬件两种方法来实现,而选用MATAB信号处理工具箱为设计通用滤波器带来了极大的方便。
本文按设计指标要求设计了滤波器,其中IIR采用巴特沃什,FIR采用布莱克曼窗进行设计,得出了与之对应的幅度响应曲线和相位响应曲线,最后对IIR和FIR的实现形式和性能等方面进行比较。
关键词:MATLAB;IIR数字滤波器;FIR数字滤波器AbstractThe digital filter is a discrete system. The system can be able to handle discrete signals. So it can achieve required important information.There are two major kinds of design principle of digital filter, which are finite impulse response (FIR) and infinite impulse response (IIR). The modern digital filter can be received by two kinds of method of software and hardware. But using MATLAB signal disposing tool case to design the digital filter is more convenient and universally applied.The main body of the paper is demanded to design a digital filter according to the designing index. IIR adopts Butterworth and FIR adopts the Blackman window to design the digital filter. Finally, carry out comparison on IIR and the FIR realization and function aspect.Key words: MATLAB; IIR digital filter; FIR digital filter1引言理想滤波器就是一个让输入信号中的某些有用频谱分量无任何变化的通过,同时又能完全抑制另外那些不需要的成分的具有某种选择性的器件、网络或计算机硬件支持的计算程序。
dsp论文_数字滤波器及其DSP实现

数字滤波器及其DSP实现2012级,控制工程学科摘要:本论文首先介绍了滤波器的滤波原理以及模拟滤波器数字滤波器的设计方法,重点介绍了IIR数字滤波器的设计方法,即脉冲响应不变法和双线性变换法。
在此基础上,用DSP虚拟实现任意阶IIR数字滤波器。
此设计扩展性好,便于调节滤波器的性能,可以根据不同的要求在DSP上加以实现。
关键字:DSP;滤波;IIR数字低通滤波器1绪论1.1 数字滤波器的研究背景与意义当今,数字信号处理 (DSP:Digtal Signal Processing)技术正飞速发展,它不但自成一门学科,更是以不同形式影响和渗透到其他学科:它与国民经济息息相关,与国防建设紧密相连;它影响或改变着我们的生产、生活方式,因此受到人们普遍的关注。
数字化、智能化和网络化是当代信息技术发展的大趋势,而数字化是智能化和网络化的基础,实际生活中遇到的信号多种多样,例如广播信号、电视信号、雷达信号、通信信号、导航信号、射电天文信号、生物医学信号、控制信号、气象信号、地震勘探信号、机械振动信号、遥感遥测信号等等。
上述这些信号大部分是模拟信号,也有小部分是数字信号。
模拟信号是自变量的连续函数,自变量可以是一维的,也可以是二维或多维的。
大多数情况下一维模拟信号的自变量是时间,经过时间上的离散化(采样)和幅度上的离散化(量化),这类模拟信号便成为一维数字信号。
因此,数字信号实际上是用数字序列表示的信号,语音信号经采样和量化后,得到的数字信号是一个一维离散时间序列;而图像信号经采样和量化后,得到的数字信号是一个二维离散空间序列。
数字信号处理,就是用数值计算的方法对数字序列进行各种处理,把信号变换成符合需要的某种形式。
例如,对数字信号经行滤波以限制他的频带或滤除噪音和干扰,或将他们与其他信号进行分离;对信号进行频谱分析或功率谱分析以了解信号的频谱组成,进而对信号进行识别;对信号进行某种变换,使之更适合于传输,存储和应用;对信号进行编码以达到数据压缩的目的,等等。
对于数字滤波器系统设计的研究

对于数字滤波器系统设计的研究数字滤波器系统设计在数字信号处理领域起着重要作用,它可以用来滤除数字信号中的噪声和干扰,从而提高信号的质量和可靠性。
数字滤波器系统的设计涉及到滤波器类型的选择、滤波器参数的设定以及系统性能的评估等方面,是一项复杂而又关键的工作。
本文将对数字滤波器系统设计的研究进行探讨,重点介绍数字滤波器的基本原理、常见的设计方法和最新的研究进展,旨在为数字滤波器系统设计提供一些参考和借鉴。
数字滤波器是数字信号处理中的重要组成部分,它可以根据给定的数学模型对信号进行加工和处理,从而实现去噪、降频、滤波等功能。
根据其实现方式,数字滤波器可以分为FIR(有限脉冲响应)滤波器和IIR(无限脉冲响应)滤波器两种类型。
FIR滤波器是一种只有有限个数点参与运算的滤波器,其系统函数具有有限长度的冲击响应;而IIR滤波器则是一种具有无限长冲击响应的滤波器,其输出取决于过去的输出和输入值。
两种滤波器各有特点,可以根据实际需求选择不同类型的滤波器。
在数字滤波器系统设计中,滤波器的性能指标是设计的重点和难点之一。
对于低通滤波器来说,通频带的边缘频率和截止频率是两个关键指标;而对于高通滤波器来说,通频带的边缘频率和衰减频率则是关键指标。
通常情况下,我们会根据信号的特点和滤波器的具体要求来确定这些性能指标,以保证滤波器能够满足实际应用的需求。
设计数字滤波器系统时,滤波器类型的选择也是一个重要的问题。
根据信号处理的要求,我们可以选择低通滤波器、高通滤波器、带通滤波器或者带阻滤波器等不同类型的滤波器。
对于一些特殊的应用,比如音频处理、图像处理等,还可以选择一些特殊类型的滤波器,比如均衡器、降噪滤波器、增强滤波器等。
在选择滤波器类型时,需要考虑到信号的特点和处理的要求,以便选择出最合适的滤波器类型。
除了滤波器类型和性能指标之外,数字滤波器系统设计还需要考虑到滤波器参数的设定。
在FIR滤波器中,冲激响应的系数是滤波器性能的关键,我们可以通过窗函数法、最小均方误差法、频域抽样法等方法来确定这些系数;在IIR滤波器中,我们需要确定传递函数的分子系数和分母系数,通常可以通过极点配置法、幅相响应法等方法来实现。
数字滤波器MATLAB毕业论文

摘要本文研究了IIR数字滤波器和FIR数字滤波器在Matlab环境下的设计方法及仿真分析。
在无限脉冲响应(IIR)数字滤波器设计中,先采用脉冲响应不变法及双线性Z变化法设计数字滤波器,最后进行滤波器的频带转换,即进行模拟滤波器的设计,然后进行模拟-数字滤波器转换。
在有限脉冲响应(FIR)数字滤波器设计中,研究了FIR线性相位滤波器的特点和用窗函数法设计FIR滤波器两个问题。
这两类滤波器全部设计过程都是由理论分析、编程设计、具体实现的步骤进行的。
数字滤波器的单位冲激响应是有限长的,可以用一个因果系统来实现,因而数字滤波器可以做成即是因果又是稳定的系统。
关键词:数字滤波器,Matlab,无限脉冲响应,有限脉冲响应ABSTRACTIn this paper, designs of the Infinite Impulse Response digital filter (IIR) and Finite Impulse Response digital filter (FIR) under Matlab are studied. 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.The unit impulse response of digital filter is limited, can be achieved by a causal system, so digital filter can make it that is causal and stable system.KEY WORDS:Digital Filter, Matlab,IIR, FIR第一章前言1.1 MATLAB 软件简介 (4)1.2数字滤波器技术的发展状况 (5)第二章数字滤波器的基本概念2.1数字滤波器的概况 (6)2.2 FIR 数字滤波器的基本概念 (6)2.2.1 FIR 数字滤波器的窗函数设计法 (7)2.2.2 窗函数设计法的步骤 (7)2.3 MATLAB环境下的实例 (9)2.3.1高通滤波器的设计 (9)2.3.2低通滤波器的设计 (10)第三章 IIR数字滤波器的设计过程及方法3.2 IIR滤波器的设计思路与步骤 (14)3.3 IIR 滤波器的设计 (14)3.4 IIR滤波器设计方法MATLAB的实现 (15)3.4.1 基于模拟低通原型的MATLAB实现 (15)3.4.2基于合适类型模拟滤波器的MATLAB实现 (16)3.4.3 基于直接原型变换法的MATLAB实现 (18)总结 (19)参考文献 (20)致谢 (21)毕业设计小结 (22)1.1. MATLAB简介MATLAB (Matrix Laboratory)为美国Mathworks公司1983年首次推出的一套高性能的数值分析和计算软件,其功能不断扩充,版本不断升级,1992年推出划时代的4.0版,1993年推出了可以配合Microsoft Windous使用的微机版,95年4.2版,97年5.0版,99年5.3版,5.X版无论是界面还是内容都有长足的进展,其帮助信息采用超文本格式和PDF格式,可以方便的浏览。
基于MATLAB的数字滤波器设计 lunwen

青岛农业大学本科生毕业论文(设计)题目:基于MATLAB的数字滤波器设计姓名:潘西金学院:机电工程学院专业:电气工程及其自动化班级:2004.4学号:0320040631指导教师:杨丽丽完成时间:2008.6.82008年6 月8日基于MATLAB的数字滤波器设计目录摘要 (2)Abstract (3)第一章绪论 (3)1.1 数字滤波技术的发展概况 (3)1.2 MATLAB软件简介 (5)1.3 数字滤波器及其MATLAB实现 (6)第二章 FIR滤波器设计及其MATLAB实现 (8)2.1 FIR线性相位滤波器的特点 (8)2.2 窗函数法设计FIR滤波器的MATLAB实现 (9)2.21 基本步骤 (9)2.22 工具箱函数 (11)2. 3 小结 (16)第三章IIR滤波器设计 (17)3.1 设计方法 (17)3.2 IIR滤波器经典设计 (17)3.2.1 IIR滤波器完全设计函数 (17)3.2.2 模拟滤波器变换法 (23)3.3 小结 (31)第四章总结和展望 (32)参考文献: (32)致谢 (33)摘要数字滤波器是数字信号处理中最重要的组成部分之一。
在许多科学技术领域中,广泛使用滤波器对信号进行处理。
数字滤波器可以分为两类,即有限冲激响应数字滤波器(FIR)和无限冲激响应数字滤波器(IIR)。
本文就分别对这两类数字滤波器的设计和实现来进行分析研究。
在FIR滤波器的设计过程中主要探讨了用窗函数法设计FIR滤波器。
在IIR滤波器的设计过程中,将设计步骤分为三步,即模拟低通滤波器原型设计,模拟-数字滤波器变换,滤波器频带变换。
在这两类滤波器的整个设计过程都是按照理论分析、编程设计、具体实现的步骤来进行的。
相对于模拟滤波器来说,数字滤波器稳定、没有漂移、精度高、参数容易控制,这些优势决定了数字滤波器的使用越来越广泛。
关键词:数字滤波器,有限冲激响应,无限冲激响应AbstractDigital 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 Finite Impulse Response digital filter (FIR) and the Infinite Impulse Response digital filter (IIR). The paper aims at respective study in the design and realization of these two kinds of digital filters.During the design of FIR filters, we mainly discuss the design of the FIR filters by means of window functions. The design of IIR filters can be achieved through three steps: the design of prototype of analog low-pass filter, analog-to-digital filter conversion and the conversion of filter frequency band. 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 ,FIR , IIR第一章绪论1.1 数字滤波技术的发展概况数字滤波是数字信号处理理论的一部分。
数字滤波器的设计与实现研究

数字滤波器的设计与实现研究数字滤波器是数字信号处理领域中的基础知识,其应用广泛。
数字滤波器的设计和实现对于数字信号处理系统的性能有着至关重要的影响。
数字滤波器又分为IIR和FIR两种类型,IIR滤波器在一定条件下可以实现无限长时间序列的滤波,但易产生不稳定性和阶数高的问题;而FIR滤波器则具有衰减速度快、抗混响性能强等优点。
本文将介绍数字滤波器的设计与实现研究,包括其基本原理、设计方法和实现技术等内容。
一、数字滤波器的基本原理数字滤波器是用来滤除数字信号中某些成分或加强某些成分的数字信号处理器件。
数字滤波器的基本原理是通过传递函数来实现。
传递函数是输入信号和输出信号之间的比值,可以分别表示为输入信号和输出信号的傅里叶变换的比值。
通常使用差分方程表示数字滤波器的传递函数,其中数字滤波器的输出值是输入值和历史值之间的线性组合。
具体的表达式为:$$y(n)=\sum_{k=0}^{p} a[k] x[n-k]-\sum_{k=1}^{q} b[k] y[n-k]$$其中,y(n)表示数字滤波器的输出信号,x(n)表示数字滤波器的输入信号,a(k)和b(k)为数字滤波器的系数,p和q分别为数字滤波器的输入延迟和输出延迟的长度。
二、数字滤波器的设计方法数字滤波器的设计一般分为IIR和FIR两种设计方法。
IIR滤波器具有无限长时间序列的滤波性能,但容易出现不稳定性和阶数高等问题。
FIR滤波器具有衰减速度快、抗混响性能强等优点。
1. IIR滤波器的设计方法IIR滤波器的设计方法主要包括模拟原型滤波器设计法、脉冲响应不等式(PRI)设计法和最小二乘法设计法等。
(1)模拟原型滤波器设计法模拟原型滤波器设计法将模拟滤波器变换为数字滤波器,这种方法可以通过拉普拉斯变换的频率变换将模拟滤波器转换为数字滤波器。
此外,模拟滤波器设计方法还包括Butterworth滤波器设计法、Chebyshev滤波器设计法以及Elliptic滤波器设计法等,这些方法都是将模拟原型滤波器设计法应用于数字系统。
对于数字滤波器系统设计的研究

对于数字滤波器系统设计的研究1. 引言1.1 背景介绍数字滤波器在数字信号处理中扮演着至关重要的角色。
随着科技的不断发展,数字信号处理的应用领域日益广泛,数字滤波器系统设计的研究也变得愈发重要。
背景介绍一方面可以从数字滤波器在通信、雷达、生物医学等领域的应用展开,说明其在实际工程中的重要性;另一方面可以从数字信号处理的发展历程入手,介绍数字滤波器作为数字信号处理中的基础知识,为后续对数字滤波器系统设计的研究提供必要的背景知识和理论基础。
还可以探讨数字滤波器系统设计在当前科技发展趋势下所面临的挑战和机遇,引出对数字滤波器系统设计的研究意义和必要性。
通过全面深入的背景介绍,可以有效引导读者对本文研究内容的关注和理解,为数字滤波器系统设计的研究打下坚实的基础。
1.2 研究目的研究目的是在数字滤波器系统设计中探讨如何有效地滤波和处理数字信号,提高系统的性能和稳定性。
通过深入研究数字滤波器系统的概念和设计原则,可以帮助我们更好地理解数字滤波器的工作原理,提高系统的设计水平和技术能力。
研究目的还在于通过对常见数字滤波器类型和设计方法的分析,为数字滤波器系统的实际应用提供指导和帮助,促进数字信号处理技术在各个领域的发展和应用。
通过研究数字滤波器系统性能评估方法,可以帮助我们更好地评价和优化数字滤波器系统的性能表现,确保系统在各种复杂环境下稳定运行。
本研究的目的是为了深入探讨数字滤波器系统设计的关键问题,提高系统设计的准确性和效率,为数字信号处理技术的发展和应用做出更大贡献。
2. 正文2.1 数字滤波器系统概述数字滤波器系统是一种用于处理数字信号的重要工具,它可以对信号进行滤波、去噪和频率选择等操作。
数字滤波器系统通常由模拟滤波器和数字处理器组成,其设计原则是在保持信号质量的同时尽可能降低成本和复杂度。
数字滤波器系统的核心是数字滤波器,它可以分为时域滤波器和频域滤波器两种类型。
时域滤波器通过对信号进行加权平均或卷积运算来实现滤波,常见的时域滤波器包括移动平均滤波器和中值滤波器。
对于数字滤波器系统设计的研究

对于数字滤波器系统设计的研究数字滤波器是一种数字信号处理器件,用于对数字信号进行滤波处理,以去除噪声、衰减干扰,并提高信号的质量。
数字滤波器系统设计的研究是数字信号处理领域的重要内容之一,其在通信、控制、雷达、医学影像等领域都有广泛的应用。
本文将探讨数字滤波器系统设计的研究内容,包括数字滤波器的基本原理、设计方法以及应用实例等。
一、数字滤波器的基本原理数字滤波器是一种能对数字信号进行滤波处理的设备,其基本原理是利用数字信号处理技术,采用差分方程、离散傅里叶变换、频域滤波等方法,对信号进行滤波处理。
数字滤波器主要分为时域滤波器和频域滤波器两种类型,其中时域滤波器以差分方程为基础,频域滤波器则以离散傅里叶变换为基础。
根据其滤波特性不同,数字滤波器又可分为低通滤波器、高通滤波器、带通滤波器和带阻滤波器。
时域数字滤波器的设计原理是将输入信号通过数字滤波器的差分方程进行处理,从而得到滤波后的输出信号。
而频域数字滤波器则是通过离散傅里叶变换将信号从时域转换到频域,再进行频域滤波处理,最后再通过反变换将信号恢复到时域。
这两种基本原理都是数字滤波器设计的基础,是实现信号滤波处理的重要手段。
二、数字滤波器设计的方法数字滤波器的设计方法包括了模拟滤波器的数字化方法、频率变换方法和窗函数设计方法等多种途径。
在进行数字滤波器系统设计时,需要根据实际需求和信号特性选择合适的设计方法。
当已有模拟滤波器的设计时,可以通过模拟信号的采样、量化和数字化等操作,将模拟滤波器转换为数字滤波器。
这种方法是最直接、最常见的数字滤波器设计方法,其原理是将模拟信号经过采样和量化后,再通过数字信号处理技术进行数字化滤波处理。
这种设计方法不仅可以利用已有的模拟滤波器结构和设计经验,还可以通过数字滤波器设计参数的优化,对滤波器的性能进行进一步改善。
2. 频率变换方法频率变换方法是将模拟滤波器的频率响应通过频率变换,转换为数字滤波器的频率响应。
在这种方法中,需要先将模拟滤波器的频域特性进行变换,再通过数字信号处理技术将其转换为数字滤波器的频率特性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
研 究 生 课 程 论 文(2010-2011学年第一学期)数字滤波器的研究研究生:中文题目:数字滤波器的研究研究生姓名摘要:无限冲激响应(IIR)数字滤波器和有限冲激响应(FIR)数字滤波器广泛应用于数字信号处理系统中。
FIR 滤波器具有很好的线性相位特性,因此线性相位特性在工程实际中如数据通信、图像处理等应用领域具有比较重要的意义。
IIR 数字滤波器具结构简单和实现容易的特点, 这对于相位要求不是特别严格的场合有很重要的意义。
利用MATLAB 实现IIR 低通数字滤波器的设计,并对被干扰的信号进行滤波,达到了预期结果。
关键词: IIR;FIR;线性相位;数字滤波器;MATLAB1 引言数字滤波器是现代数字信号处理的不可或缺的一部分,数字滤波器按其响应形式可分为无限脉冲响应(IIR)滤波器和有限脉冲响应(FIR)滤波器和两种。
当系统无严格相位要求时,IIR 数字滤波器与FIR 数字滤波器相比,可用较低的阶数获得较高的选择性[1]。
对于相同的设计指标,FIR 滤波器所要求的阶数比IIR滤波器高5~10 倍,而且信号的延迟也较大[2]。
MATLAB 作为一种矩阵运算为基础的交互式程序语言,是进行科学研究常用且必不可少的工具。
MATLAB着重针对科学计算、工程计算和绘图的需求。
它用解释方式工作,键入程序立即得出结果,人机交互性能好,为科学人员所乐于接受。
MATLAB 提供了丰富的函数,其中fir1 函数实现了加窗线性相位FIR 滤波器设计的经典方法,fir1 主要用于常用的标准通带滤波器设计,包括低通、带通、高通和带阻数字滤波器[3]。
一般来讲,数字滤波器的设计要经过三步:确定设计指标、模拟逼近和数字转换。
通常在设计滤波器之前,先根据具体的应用确定一些技术指标,然后就可以根据数学知识和滤波器的基本原理提出一个滤波器的模型来逼近给定的指标,逼近的结果通常是得到以差分方程或脉冲响应描述的滤波器,最后可以根据这个描述用硬件或软件实现,至此完成一个滤波器设计的全过程[3]。
2.数字滤波器的设计2.1模拟椭圆滤波器对加噪语音信号的滤波:设计模拟滤波器的一般方法是:首先根据技术指标确定滤波器的传输函数H(s),然后综合电路网络实现该传递函数。
而设计滤波器传输函数的关键是找到逼近函数,在各种滤波器响应中,椭圆函数响应最优越[4-6]。
首先,打开的是一个摩托车引擎信号的波形文件,它是一个频率范围大致分布在5000-6000Hz的一个低频语音信号。
对于该语音信号,施加高斯白噪声,设计一个1dB截止频率6000Hz 最小阻带衰减为100dB的椭圆低通滤波器。
其原始信号波形、加噪声后信号波形与滤波后信号波形分别图1和图2:图1.加噪声后语音信号波形与频谱图2.原始语音信号与滤波后语音信号波形与频谱对比通过matlab仿真可以发现,原始语音信号基本可以从高斯白噪声中恢复,但是滤波后的语音信号比原始语音信号有明显的波形延迟,这是模拟椭圆低通滤波器不足的地方。
2.2IIR滤波器的结构与设计这里采用的是直接II型结构实现IIR 滤波器,如式(1)所示:(1)此结构便于准确地实现滤波器的零点、极点,也便于调整滤波器的频率响应性能[7];另一个优点是所需的存储单元较少,在硬件实现时甚至还可以用一个二阶节进行时分复用,进一步降低了对现场可编程逻辑阵列硬件资源的要求[8]。
IIR滤波器的系数在做强噪音下的语音增强,需要通过共振峰对语音进行端点识别。
前两个共振峰对区别不同语音有非常重要的作用[9];1 kHz以下基本为第一共振峰的范围,对语音感知、语意识别作用比较重要的第二共振峰基本在1 kHz之外[9]。
因此对带噪语音信号加入预处理环节,即进行数字滤波(通带下限1 kHz,Butterworth滤波器高通,阻带衰减3 dB,语音信号采样频率为8000 Hz)。
利用MATLAB提供的FDATool便可直接得到直接II型各个子系由于硬件当中对小数进行运算耗费资源比较大,需要在计算精度与速度之间优化选择[10]。
下面用双线性变换设计一个0.4dB截止频率为10KHz且在30KHz处有最小阻带衰减为50dB的数字巴特沃兹低通滤波器,其抽样率为100KHz;设计的具体步骤:1:先设计一个符合以上指标的模拟巴特沃兹低通滤波器,作为与要设计的数字滤波器的参照滤波器。
先用手算计算出滤波器所需的阶数是Ns=7, 与[Ns,wn]=buttord(wp,ws,Rp,Rs,'s');得出的结果一样。
2:双线性变换公式:)2tan(2ωT=Ω(2)其中,Ω是模拟的频率,ω是数字的归一化频率,T是积分步长。
用公式(2)预畸所求数字滤波器的的数字频率指标(数字滤波器通带截止频率0.2π,阻带截止频率0.6π),得到一个等价的模拟低通滤波器的频率指标。
3:得到原型模拟低通滤波器的指标后作频率响应,从而得模拟的传输函数H(s),然后对传输函数进行双线性变换,从而得到数字滤波器的传输函数H(z).结果分析:图3.模拟原型与数字滤波器幅度相应比较图4. 模拟原型与数字滤波器相位相应比较由图1可以看出模拟原型低通滤波器的通带截止频率为10KHz对应着数字低通滤波器的截止频率0.2π rad与双线性变换结果一致。
由图2可以看出,相位响应就有很大差别了,这是由双线性变换的频率畸变所致。
2.3 FIR滤波器的结构与设计对于IIR滤波器必须明确要求推导出来的传输函数是稳定的,而另一方面,对于FIR滤波器的设计,由于滤波器的传输函数是以1 /z的多项式表示的,所以FIR数字滤波器都是稳定的[11]。
利用傅里叶加窗级数法设计线性相位低通FIR滤波器(没有使用到fir1函数)设计指标:通带截止频率4rad/s,阻带截止频率6rad/s,最大通带衰减为0.2dB,最小阻带衰减为42dB,抽样率为18rad/s.图5.由截短得到的理想FIR低通滤波器的冲击响应图6.各种窗函数设计的低通滤波器结果分析:Hamming窗函数的长度是30通带波纹是Rp = 0.0394dB最小阻带衰减时As = 52dBHanning窗函数的长度是29通带波纹是Rp= 0.0711dB最小阻带衰减时As = 44dBBlackman窗函数的长度是52通带波纹是Rp= 0.0027dB最小阻带衰减时As = 75dB均满足滤波器的性能指标。
结论在电子系统中,具有严格的线性相位特性的FIR 数字滤波器被广泛使用,是信号处理的基本构成之一。
利用matlab的强大运算功能,基于matlab信号处理工具箱(signal processing toolbox)的数字滤波器设计法可以快速有效的设计由软件组成的常规数字滤波器,设计方便、快捷,极大的减轻了工作量。
在设计过程中可以对比滤波器特性,随时更改程序参数,以达到滤波器设计的最优化。
利用matlab设计数字滤波器在信号处理软件和微机保护中,有着广泛的应用前景。
本文通过调用simulink中的功能模块构成数字滤波器的仿真框图,编写matlab语言进行仿真,从结果可以看出各种滤波器的性能并反映实际的情况。
参考文献[1] 李惠琼,孟令军,王宏涛.基于Nios Ⅱ的IIR数字滤波器的设计[J].通信技术,2009,42(08)[2] 王秀敏,汪毓铎,张洋,杨世华. 通信系统中FIR数字滤波器的设计研究[J]. 通信技术, 2009,(09) .[3梁辰基于MATLAB的FIR数字滤波器的设计[J].机械设计与制造,2010,(12)[4] 史燕,杨小雪. 基于Matlab和Multisim的综合性实验——椭圆滤波器设计与仿真[J]. 北华航天工业学院学报, 2008,(S1) .[5] 王靖,李永全. 数字椭圆滤波器的Matlab设计与实现[J]. 现代电子技术, 2007,(06) .[6] 刘抒珍,童子权,任丽军,刘小红. DDS波形合成技术中低通椭圆滤波器的设计[J]. 哈尔滨理工大学学报, 2004,(05) .[7] 杨晓琳. 循环码理论及其译码算法研究——设计距离为n 的二元BCH 码构造及其B-M 迭代译码算法实现[D].成都:成都理工大学,2008.[8] 王宇. BCH 编码在GPS 探空仪中的应用[J].信息安全与通信保密,2010,(07)[9] 赵亚梅, 杜红棉, 张志杰. 基于MATLAB一种IIR数字带通滤波器的设计与仿真[J]. 微计算机信息, 2007,(13)[10]杨世华,王秀敏,陈豪威;基于DSP Builder和FPGA的IIR滤波器设计[J],2010,(12)[11]LAWRENCE.R.R FIR Digital Filter Design Techniques Using Weighted Chebyshev Approximation PROCEEDINGS OF THE IEEE, VOL. 63, NO. 4, APRIL 1975.附仿真源程序:程序1:[y1,Fs,bits]=wavread('engine.wav',2048);%Fs是音频采样率,bits是每个采样点包含的bit数目sound(y1,Fs,bits);hold onY1=fft(y1,4096);f=Fs*(0:4095)/4096;y2=y1+0.2*randn(2048,1);figure(1)subplot(211)plot(y2);xlabel ('时间序号n'); ylabel ('振幅');legend('叠加噪声后信号波形',1)axis ([0 ,2100, -1 , 1]);Y2=fft(y2,4096);subplot(212)plot(f,fftshift(abs(Y2)));xlabel ('信号频率Hz'); ylabel ('振幅');legend('叠加噪声后信号频谱',1)axis ([4000,7000, 0 , 150]);Ap=1;%通带波纹As=100;%最小阻带衰减fp=200;fs=300;Ft=20000;wp=2*pi*fp/Ft;%归一化通带截止角频率ws=2*pi*fs/Ft;%归一化阻带截止角频率[n,wn]=ellipord(wp,ws,Ap,As);[num,den]=ellip(n,Ap,As,wn);y3=filter(num,den,y2);Y3=fft(y3,4096);figure(2)subplot(211)plot(y1,'r-');hold onplot(y3,'g-');xlabel ('时间序号n'); ylabel ('振幅');legend('原始信号波形','滤波后信号波形',1)axis ([0 ,2100, -1 , 1]);subplot(212)plot(f,fftshift(abs(Y1)),'r-');hold onplot(f,fftshift(abs(Y3)),'g-');xlabel ('信号频率Hz'); ylabel ('振幅');legend('原始信号频谱','滤波后信号频谱',1)axis ([4000,7000, 0 , 150]);程序2:%用双线性变换设计一个0.4dB截止频率为10KHz且在30KHz处有最小阻带衰减为50dB 的数字巴特沃兹低通滤波器,其抽样率为100KHz;clear all;fp=10000;fs=30000;Fs=100000;Rp=0.4;Rs=50;wp=2*pi*fp;ws=2*pi*fs;[Ns,wn]=buttord(wp,ws,Rp,Rs,'s');[bs,as]=butter(Ns,wn,'s');%计算模拟原型滤波器的频率响应w = [0: 200: 80000*pi];h = freqs(bs,as,w);%预畸所求数字滤波器的数字频率指标,得到一个等价的的模拟滤波器的指标Wp=tan(wp/(2*Fs))Ws=tan(ws/(2*Fs))[Nz,Wn]=buttord(Wp,Ws,Rp,Rs,'s');[b,a]=butter(Nz,Wn,'s');%进行双线性变换,得到所求的数字IIR传输函数[Bz,Az]=bilinear(b,a,0.5);[H,omega] = freqz(Bz,Az,1024);figure(1)subplot (211);plot (w/(2*pi*1000),20*log10(abs(h)));xlabel('Frequency, KHz'); ylabel('Gain, dB');title('模拟原型滤波器幅度响应')subplot (212);plot (omega/pi,20*log10(abs(H)));xlabel('\omega/\pi'); ylabel('Gain, dB');title('数字滤波器幅度响应')figure(2)subplot (211);phase=180*angle(h)/pi;plot (w/(2*pi*1000),phase);xlabel('Frequency, KHz'); ylabel('phase,°');title('模拟原型滤波器相位响应')subplot (212);Phase=180*angle(H)/pi;plot(omega/pi,Phase);xlabel('\omega/\pi'); ylabel('Phase,°');title('数字滤波器相位响应')程序3:%利用窗函数发设计线性相位低通FIR滤波器wp=2*pi*4/18; %归一化通带截止频率ws = 2*pi*6/18; %归一化阻带截止频率tr_width =ws-wp; %确定过度带宽N1=ceil (6.64*pi/tr_width)+1;% 确定滤波器阶数,ceil是向上取整函数N2=ceil (6.22*pi/tr_width)+1;% 确定滤波器阶数,ceil是向上取整函数N3=ceil (11.12*pi/tr_width)+1;% 确定滤波器阶数,ceil是向上取整函数n1 =[0:1:N1-1];n2 =[0:1:N2-1];n3 =[0:1:N3-1];wc=(ws+wp)/2; %理想低通的截止频率hd1=ideal_lp(wc, N1);%调用理想低通滤波器的单位冲击响应函数hd2=ideal_lp(wc, N2);%调用理想低通滤波器的单位冲击响应函数hd3=ideal_lp(wc, N3);%调用理想低通滤波器的单位冲击响应函数W1=(hamming(N1))';W2=hanning(N2)';W3=blackman(N3)';h1= hd1.*W1;h2= hd2.*W2;h3= hd3.*W3;[db1,mag1,pha1,w1]=freqz_m(h1,[1]);%计算hamming窗低通滤波器的幅度响应[db2,mag2,pha2,w2]=freqz_m(h2,[1]);%计算hanning窗低通滤波器的幅度响应[db3,mag3,pha3,w3]=freqz_m(h3,[1]);%计算blackman窗低通滤波器的幅度响应delta_w=2*pi/18;Rp1= - (min(db1(1:1: wp/delta_w +1))) %hamming窗实际通带波动As1= - round(max(db1(ws/delta_w +1: 1: 501 )))% hamming窗最小阻带衰减Rp2= - (min(db2(1:1: wp/delta_w +1))) %hanning窗实际通带波动As2= - round(max(db2(ws/delta_w +1: 1: 501 )))% hanning窗最小阻带衰减Rp3= - (min(db3(1:1: wp/delta_w +1))) %blackman窗实际通带波动As3= - round(max(db3(ws/delta_w +1: 1: 501 )))% blackman窗最小阻带衰减figure(1)stem(n1, h1,'r-s');hold onstem(n2, h2,'g-d' );hold onstem(n3, h3,'b-*' );legend('hamming窗','hanning窗','blackman窗',1)xlabel ('时间序号n'); ylabel ('振幅');axis ([0,52,-0.2,0.6]);title ('由截短得到的理想FIR低通滤波器的冲激响应');figure(2)plot (w1/pi, db1,'r-s' );hold onplot (w2/pi, db2,'g-d' );hold onplot (w3/pi, db3,'b-*' );axis ([0 ,1, -150 , 10]);xlabel ('归一化频率(单位:π)'); ylabel ('增益(单位:dB)');legend('hamming窗','hanning窗','blackman窗',1)title ('各种窗幅度设计的滤波器');%自己编写的理想低通滤波器的单位冲击响应函数function[hd]=ideal_lp(wc,N)alpha=(N-1)/2;n=[0:1:(N-1)];m=n-alpha+eps;hd=sin(wc*m)./(pi*m);。