_基于matlab的fir和iir数字滤波器设计4.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《_基于matlab的fir和iir数字滤波器设计4.docx》由会员分享,可在线阅读,更多相关《_基于matlab的fir和iir数字滤波器设计4.docx(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 基于MATLAB的FIR、IIR滤波器设计基于MATLAB的FIR和IIR滤波器设计摘要 在数字信号处理过程中需要对信号进行分析、变换、滤波、检测、调制、解调等等,在完成这些任务的时候,滤波器是非常基础的不能够缺少的知识。FIR滤波器最长的表达式名称是有限长单位冲激响应,因此也被专家叫为非递归型滤波器,也是数字信号处理最具有代表性最基础的内容。为了保证任意的幅频特性必须要具有严苛准确的相位特性,并且需要满足线性条件;IIR滤波器翻译为中文全称是无限长单位冲激响应,为了方便记忆又被命名为递归型滤波器1。随着MATLAB软件的发展,MATLAB有非常强大可观的功能,基本可以实现所需要的滤波器设计
2、,在MATLAB环境下使用不同的设计方法编写程序,进行仿真然后设计出符合要求的FIR、IIR滤波器。本文主要介绍的内容就是关于利用窗函数设计FIR低通、带通以及多通带滤波器,利用频率抽样法去设计低通和高通滤波器;使用双线性法设计IIR带通滤波器和IIR低通滤波器的过程;总结了对于不同滤波器可以使用不同的合适的设计方法,以及MATLAB设计滤波器十分方便而且能够直观观察出图像。关键词 FIR滤波器;IIR滤波器;MATLAB;仿真Design and Implementation of FIR and IIR Digital Filters Based On MATLABRuiqing ShiS
3、chool of Physics and Electronic Information,Huaibei Normal University,Huaibei,235000Abstract When processing the digital signal, it is essential to analyze, convert, filter, identify, and modulate, demodulate and so on. Filter is an indispensable part in these tasks. The longest expression name of t
4、he FIR filter is the finite- length unit impulse response, so it is also called a non-recursive filter by experts, which is the most basic element in digital signal processing system. It has strict linear phase frequency characteristics and can guarantee any amplitude frequency characteristics. IIR
5、filter is an infinite length unit impulse response, and it is named the recursive filter for convenience of memory. With the development of MATLAB software, MATLAB has a very powerful and considerable function, which can basically achieve the filter design required. In Matlab environment, different
6、design methods are used to write programs, carry out simulation and design fir and IIR filters that meet the requirements. This paper mainly introduces the process of designing FIR lowpass, bandpass and multipass filters by using window function, designing lowpass and highpass filters by using frequ
7、ency sampling method, designing IIR bandpass and IIR lowpass filters by using bilinear method, summarizing different suitable design methods for different filters and the convenience of designing filters by MATLAB And can observe the image directly.Key words FIR digital filter;IIR digital filter; MA
8、TLAB; Simulation目 录1 引言11.1课题研究的背景和意义11.2 MATLAB语言概述11.3 MATLAB的主要功能22 FIR数字滤波器32.1主要特点32.2实现原理32.3实现线性相位的条件43 FIR滤波器的构造方法53.1加窗法53.2 频率特性采样法73.3软件设计FIR滤波器84 IIR滤波器194.1 IIR滤波器的基本原理194.2 IIR滤波器的设计方法204.3 软件设计IIR滤波器21结 论24参考文献25附录26致谢30V1 引言1.1课题研究的背景和意义目前,在发展如此迅速的信息电子科技时代来看,图像识别的技术产业发展也在突飞猛进,这些绝大部分的
9、科学研究和技术开发正在各个国家继续努力进行,作为用于计算机和电子图像学的处理。随着信号准确度正在不断的提高,数字滤已经变成了一个非常热门的话题。因为信号滤波器本身具有快速解决各种复杂信号问题的基本优点,同时还有提高信号过滤的准确度的一个重要的特性,并且信号稳定度和灵活性也非常的强。FIR滤波器具有比较严格的一个特征是它是线性的,并且是可以随意的改变它的幅度特性,能够很容易的实现各种特性,因此常被用在现代通信技术当中,并且MATLAB的FIR滤波器的研究也是非常具有现实意义的。IIR频带具有非常精确的标准频带数量特性,和FIR滤波器不同的地方,首先它没有比较严格并且复杂的线性相位,其次幅频特性相
10、比也低,适用于不敏感线性相位的高频信号。使用在MATLAB中的信号过滤器附件设计、信号分析处理工具等就可以很容易地帮助制定一种符合各种设计要求的频带数量指标的各种IIR滤波器。1.2 MATLAB语言概述MATLAB语言是一种实用功能性很强的高科技电子计算编程语言和软件内容,计算机软件设计的基础非常丰富,它的矩阵公式运算以及数字信号逻辑处理是采用集中模式计算,并且MATLAB软件计算语言使用起来也很简单,同时,库函数也是内容也是比较多的,使用起来非常的方便;程序人员书可以自由编写代码,为了避免麻烦的程序可以利用丰富的库函数来进行编程,所以库函数可靠性高的原因是在于它都是由一些编程领域行业专家所
11、编写的。在MATLAB用语中维数是不需要被数组定义的,而且数组运算和矩阵使用的效率很高,并且能够提供各种我们所需要的特定函数类型,所以它在处理信号、信息传输、通信系统设计等等方面普遍应用,比其他常用的语言具有更广泛的范围1。我们一般用以下几个部分构成我们所需要的MATLAB的系统:(1) 特有的语言; (2)使用时的工作界面; (3)能够快速构图的系统; (4)软件中所自带的丰富的函数类型 ;(5)对应的用于接入应用程序的端口;1.3 MATLAB的主要功能(1)可以高效且较为准确的算出算数式以及难解的函数式(2)可以提高各种函数式的图像并对图像进行所需的处理(3)软件本身的语言较简单易上手,
12、且应用的范围广泛22 FIR数字滤波器2.1 主要特点(1) 对于它的傅里叶变换对应的h(n),长度一定,即在特定的范围内不为0。(2) 在z轴的右半部分,其对应的是收敛的系统函数。(3) 它的结果是没有双向反馈的,我们又称其结构为非递归结构。(4) 设FIR滤波器,其中的冲激响应函数h(n)为n点的函数序列,0 n N -1,则此滤波器的系统函数就为。(5) 它具有的零点个数是(N-1),这个个数是为了维持系统的稳定性,在z = 0点会发生抵消的极点个数为(N-1)。2.2 实现原理我们由定义的,若输入序列是单位脉冲序列,我们可以将FIR滤波器系统的响应表示为。1.1节说到FIR滤波器是没有
13、任何的反馈回路,可以认为它的系统是无条件稳定的,这是一个最主要特点。在实际操作中,FIR滤波器的单位脉冲是有有限的响应长度的,并且有一定的长度限制。我们由定义式可以知道要求响应序列,我们需要先用激励乘以系统,之后再进行求和1。该滤波器的工作说明图如图1所示。图1 FIR滤波器工作说明图2.3实现线性相位的条件 或 式1如表1所示,我们根据输入序列的对称奇偶性和以及采样点数N的奇偶性,我们得到了下面FIR滤波器的4种类型。表1 4类FIR滤波器3 FIR滤波器的构造方法3.1加窗法(1) 如何设计窗函数先根据规定指标设计滤波器,响应阶数N和窗函数都要符合滤波器的各项标准。对于无限长的响应序列,我
14、们如何得到有限且包含了主要信息的序列,是我们所研究的重点,为此我们需要对无限长序列加上我们事先所设计好的窗户。使用窗函数法设计的两个前提条件:一是有较窄的窗谱主瓣,为了可以最大程度的将有效内容包含到。二是需要尽可能的去减少得到的频谱中其他旁瓣的高度(目的是能够让阻带的衰减增加)。(2) 窗函数种类就类似于家中安装的窗户一样,我们加的窗函数的类型也有很多种。如表2所示,是常用窗函数的表达式以及对应的MATLAB语句,我们将相应的程序在MATLAB中编写好,点击运行,打开图形观察窗口我们便可以看到我们表上的各种窗函数的图形,对于各种窗的频带宽度我们点击MATLAB的图形,打开Plot界面,我们便可
15、以查看到。如表3所示,是各种窗函数的性能比较,我们可以根据我们所需的性能对各类的窗进行简单的测试,我们对其实现的有效程度,获取的有效内容的多少等等进行相互比较,去决定哪种窗函数才最适合我们相应的设计。表 2 常用窗函数定义表 3各种窗函数的性能比较窗函数与主瓣相比较第一旁瓣衰减/dB主瓣宽度阻带最小衰减/dB近似值精确值矩形窗-1321汉宁窗-3144汉明窗-4153布莱克曼窗-5774凯塞窗可调可调可调可调(3)如何实现FIR滤波器具体实现方法如下1:确定我们所需要的滤波器各项参数:包括边界频率,最大的通带以及阻带衰减,过渡带宽等等信息。根据所设计的要求写出理想型滤波器的单位冲激响应 hd(
16、 n) ,那么可以得到理想滤波器的截止频率为 d = ( p + s) /23。根据公式计算出最小的衰减,并由上表去挑选所需的窗函数类型,再算出对于的截短长度也就是所谓的窗的长度,从而写出窗函数表达式 w( n) 3。求出在加窗以后的实际冲激响应:3.2 频率特性采样法从物理角度来看,频率特性采样法可以实现对赋予了频域的理想滤波器的取值H(k)4,对理想滤波器的频响取相同间隔频率的N点,也就是,并以作为真正被FIR滤波器应用的频率特采样的取值H(k)4。即令: 式2-1我们通过DFT的知识学习,知道我们可以采样N个等间隔频域数值来确定出FIR的单位脉冲响应h(n),即: 式2-2我们需要在滤波
17、器系统设计中,给出需要的在几种理想频率滤波器的基本特性,也离不开基于公式的详细的分析。我们使用内插公式去无限逼近理想状态下的频响,具体为: ,是内插函数 式2-3 式2-4两个式化简可得到: 式2-53.3 具体的软件实现(1)MATLAB简介MATLAB是一个以各种矩阵计算和科技价值显示为主要内容的交互式系统。在计算技术和科学领域中,实际的问题和复杂或简单的数学建模问题都是可以用MATLAB矩阵计算来解决的。一些常见的数值上的计算、验证某些算法与设计,还有一些特殊的矩阵计算应用都能够来解决。由于需要分析和设计数字信号处理系统,MATLAB软件从开始出现并被频繁使用,成为高校老师以及学生普遍使
18、用的工具,也是通信及信号处理等专业必须学习的一门课程。(2)加窗法实现结果(相关程序见附录)使用汉明窗设计低通滤波器。设计所得的低通滤波器的增益响应如下图2所示: 图2 增益响应观察图和程序,我们可以从中算出我们所需的相应的数据。开始设计前,我们以0.1作为我们的通带截止频率,阻带截止频率为0.17,最终很好的实现在图形中。在此期间,显而易见的是:我们输入的信号是由两个不同频率的滤波器的正弦信号相互重叠所形成的,我们将频率属于该通带内的信号保留了下来,也就是图中较低的100Hz的波形,而对较高频率的波形进行了滤除,如图3和图4所示结果,这一结果这也是我们所希望的。我们通过对波形前后对比分析,我
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 matlab fir iir 数字滤波器 设计
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内