1、 本科毕业设计 (论文 ) ( 届 ) 论文题目 基于 Matlab的 FIR低通滤波器设计 (英文 ) Design of FIR Low-pass Digital Filter Based on Matlab 所在学院 电子信息学院 专业班级 电子信息 工程 学生姓名 学号 指导教师 职称 完成日期 年 月 日 摘 要 FIR数字滤波器是数字 信号处理 的一个重要组成部分,由于 FIR数字滤波器具有严格的线性相位,因此在信息的采集和处理过程中得到了广泛的应用。本文介绍了 FIR数字滤波器的概念 和线性相位的条件,分析了 窗函数法、频率采样法和等波纹逼近法设计 FIR滤波器的 思路和流程。在
2、分析三种设计方法原理的基础上,借助 Matlab仿真软件工具箱中的 fir1、 fir2和 remez子函数分别实现 窗函数法、频率采样法和等波纹逼近法 设计 FIR滤波器 。仿真结果表明,在相频特性上,三种方法设计的 FIR滤波器 在通带内都具有线性相位;在幅频特性上,相比窗函数法和频率采样法, 等波纹逼近法 设计 FIR滤波器的边界频率精确,通带和阻带衰减控制 。 关键词: FIR数字滤波器;窗函数 法 ;频率采样 法 ;等波纹逼近法; Matlab Abstract In a digital signal, there will be some interference signal w
3、hich system does not needed often. So we need to use digital filtert to filter the signal to extract the useful signal. FIR digital filter is an important component of digital filter.As the FIR digital filters linear phase response is required, it have been widely used in information collection and
4、processing. This paper introduced the concept of FIR digital filters and the general idea of the design, Introducting and compareding the advantages and disadvantages of three kinds of the FIR filter design method, and respectively design filter using the window function method, the frequency sampli
5、ng method and wave approximation method. Especially in digital signal processing, Matlab is widly used which can design requirements It is Intuitive and simple so that greatly reduce the workload. This article is designed by Matlab function and simulated by Matlab software to make the tedious step i
6、n the calculation simplify.It also drawed the amplitude-frequency characteristic curve relatly. Finally, the original signal and filtered signal are contrasted and analied. Key Words:FIR digital filters, Window function, Frequency sampling, Equiripple approximation method, Matlab 目 录 1 引言 . 1 2 FIR
7、数字滤波器线性相位条件 . 2 2.1 FIR 数字滤波器概述 . 2 2.2 FIR 数字滤波器线性相位定义 . 3 2.3 FIR 数字滤波器线性相位时域约束条件 . 3 3 FIR 数字滤波器设计方法 . 5 3.1 FIR 数字滤波器的窗函数设计法 . 5 3.1.1 窗函数设计法的设计思路 . 5 3.1.2 吉布斯效应 . 7 3.1.3 常见窗函数介绍 . 7 3.2 FIR 数字滤波器的频率采样设计法 . 10 3.2.1 频率采样法的基本思路 . 10 3.2.2 频率采样法的设计步骤 . 11 3.3 FIR 数字滤波器的等波纹逼近设计法 . 13 3.4 不同设 计方法的
8、比较 . 15 4 基于 Matlab 的 FIR 数字滤波器设计 . 16 4.1 Matlab 简介 . 16 4.2 窗函数法的 Matlab 实现 . 17 4.2.1 fir1 函数介绍 . 17 4.2.2 基于 fir1 函数的窗函数法 FIR 滤波器设计 . 17 4.3 频率采样法的 Matlab 实现 . 20 4.4 等波纹逼近法的 Matlab 实现 . 21 5 结论 . 23 致谢 . 24 参考文献 . 25 1 引言 随着信息科学和计算机技术的不断发展,数字信号处理 (DSP, Digital Signal Processing)的理论和技术也得到了飞速的发展,
9、并逐渐成为一门重要的学科,它的重要性在日常通信、图像处理、遥感、声纳、生物医学、地震、消费电子、国防军事、医疗方面等显得尤为突出 1。在我们面临的信息革命中,数字信号处理几乎涉及了所有的工程技术 领域 。 数字 信号处理是一种将信号以数字形式进行处理的一种理论和技术,它的目的是将真实世界中的一些信号进行分析并滤波,最后得出其中的有用的信号。数字滤波器是数字信号处理的一种,一般根据单位脉冲响应 h(n)分为无限脉冲响应 (IIR)和有限脉冲响应 (FIR)系统。 IIR数字滤波器的设计方法简单,特别是采用双线性变换法来设计的数字滤波器不存在频域混叠的现象,但是 IIR滤波器存在一个较为明显的缺憾
10、,就是它的相位响应一般都是非线性的,而在传输频带内的相位响应如果不是线性的,就会造成有用信号的传输失真,而 FIR数字滤波器不仅可以设计 成任意的幅度响应,而且可以设计成在通频带内具有良好的线性相位响应。 FIR数字滤波器的单位脉冲响应 h(n)有限长,所以 FIR数字滤波器是稳定的,不存在稳定性的问题,且可以通过快速傅里叶变换 (FFT)的算法来实现信号滤波,大大的提高的运算效率。因此, FIR数字滤波器日益引起了人们的关注。 FIR数字滤波器的设计方法有很多,比较常用的有窗函数设计法、频率采样设计法、等波纹逼近法等。本课题通过运用窗函数设计法、频率采样设计法和等波纹逼近法来设计 FIR数字
11、低通滤波器,并实现对给定的信号进行滤波比较。其中窗函数设计法是 最基本的数字滤波方法,是利用傅里叶反变换 (IDTFT)计算给定的频响的理想单位脉冲响应,再加以窗函数进行截断和平滑。等波纹逼近法又称切比雪夫逼近法,是一种最小化最大误差的频域逼近方法 2。 Matlab软件的信号处理工具箱提供了 FIR数字滤波器设计的子函数,运用 Matlab软件设计可以避免繁杂的数学运算,而且具有丰富的绘图功能,可以方便地查看所设计的数字滤波器的幅度响应和相位响应是否满足设计要求。因此,本课题在理论分析各种 FIR数字滤波器设计方法的基础上,运用 Matlab软件进行仿真分析。 2 FIR 数字 滤波器线性相
12、位条件 2.1 FIR 数字滤波器概述 一般来说一个经典的数字滤波器是一个线性时不变系统,其数学模型可以用 Z域系统函数 ()Hz来表示: -101()1N rrrM kkkbzHzaz( 2-1) 其中 , , ,kra b N M 均为滤波器参数。 在( 2-1)中,当 ka 值不全为零值时, Z域系统函数 ()Hz 的必定含有一个或一个以上的极值点,此时单位脉冲响应为无限长,对于一个稳定的数字滤波器来说, Z域系统函数 ()Hz必须在单位圆内,因而把含有极值点的 Z域系统函数 ()Hz 的数字滤波器称为无限脉冲响应数字滤波器 (Infinite Impulse Response),即 I
13、IR数字滤波器。 而当 ka 值全为零时, Z域的系统函数 ()Hz 只有一个零点,( 2-1)表示的系统函数()Hz可以写成: -10()N rrrH z b z( 2-2) 公式( 2-2)表明, FIR滤波器的系统函数是 1z 的 ( 1)N 阶多项式,在有限 z 平面 (0 )n 上有 ( 1)N 个零点,而在 z 平面原点 z=0 处有 ( 1)N 阶极点。 ( 2-2)式表示的系统,其单位脉冲响应可以表示为: -10( ) ( ) ( )Nrrh n y n b n r ( 2-3) 在( 2-3)中,只有当 01nN , ()hn 才有非零值,所以数字滤波器的脉冲响应是有限长的,
14、因此在数字信号处理中把这种数字滤波器称为有限脉冲响应数字滤波器 (Finite Impulese Response),即 FIR数字滤波器。 FIR数字滤波器最突出的两个优点是: ( 1)只要对 ()hn 附加一定的条件,就很容易获得严格的线性相位。 ( 2)由于 ()Hz的极点位于原点 z=0 处,所以 FIR数字滤波器不存在稳定性问题。 2.2 FIR 数字滤波器线性相位定义 设 FIR数字滤波器脉冲响应的长度为 N,则其频率响应可以表示为: 10( ) ( )Nj j nnH e h n e ( 2-4) 上式通过欧拉恒等式展开可得到 ()jHe 的相位特性 (),有两种线性相位特性,通
15、常称为第一类线性相位和第二类线性相位。 第一类 线性相位特性: ( )= 是一个与 无关的常数 第二类线性相位特性: 0( )= 0 是起始相位 严格地说第二种情况时的 ()是不具有线性相位特性的,但上述两种情况都满足群延迟是一个常数,仍可以视为具有线性相 位的,在第二类线性相位中 0 /2是常用的一种情况。 2.3 FIR 数字滤波器线性相位时域约束条件 对于第一类线性相位,即 ( )= ,通过一系列的运算整理之后可得到一个三角函数求和公式: 10 ( ) sin ( ) 0Nn h n n ( 2-5) 式中正弦函数 ( ) sin ( )h n n 为奇对称,当 =( 1)/ 2N 时,
16、对称中心为n=( 1)/2N , ()hn 需要满足关于 ( 1)/2N 偶对称,即要求: ( ) ( 1 )h n h N n , 10 Nn ( 2-6) 对于第二类线性相位,即 ( )=- /2 时,通过运算得到公式: 10 ( ) c o s ( ) 0Nn h n n ( 2-7) 函数 ( ) cos ( )h n n 为偶对称,当 =( 1)/ 2N 时,对称中心也为 ( 1) / 2nN 。若要使上式成立,则要使 ()hn 关于 ( 1)/2N 奇对称,即要求: ( ) ( 1 )h n h N n , 10 Nn ( 2-8) 从上述分析看来,线性相位 FIR数字滤波器的时域
17、约束条件是指满足线性相位时对 ()hn 的约束条件,对于第一类线性相位,冲激响应 h(n)满足( 2-6)式;对于第二类线性相位,冲激响应 h(n)满足( 2-8)式。 3 FIR 数字滤波器设计方法 FIR 数字滤波器的设计方法主要有窗函数设计法、频率采样设计法以及等波纹逼近设计法三种,其中窗函数设计法是最常用的,其次是频率采样法,但这两种方法在设计中还会存在一些不足之处,所 以需要优化的设计方法,而等波纹逼近法很好的弥补了窗函数法和频率采样法的不足。 3.1 FIR 数字滤波器的窗函数设计法 3.1.1 窗函数设计法的设计思路 窗函数设计法是 FIR数字滤波器里最简单的一种设计法,又叫傅里
18、叶级数法,为了设计简单方便,通常选择所希望逼近的滤波器的频率响应函数 ()jdHe 为具有片段常数特性的理想滤波器,寻找一组 ()hn ,确定其频率响应10( ) ( )Nj j nnH e h n e ,然后用 ()jHe 来逼近 ()jdHe 。窗函数法设计 FIR滤波器是在时域中进行的,那么可以通过傅里叶反变换得到得到频率响应 ()jdHe ,即: 1( ) ( )2 j jnddH n H e e d ( 3-1) 在实际中, ()jdHe 一般是处于逐段恒定的,在边界频率处有不连续点,因而单位脉冲响应 ()dhn是无限长的非因果序列,不能直接作为 FIR数字滤波器的单位脉冲响应,因此
19、需要对 ()dhn进行阶段,转换为有限长的一段因果序列,也就是用一个有限长度的窗函数序列 ()n 来截取 ()dhn,即 ( )= ( ) * ( )dh n n h n ,并将非因果序列转变为一个因果序列。截取的长度和加权窗函数的形状都直接影响到逼近精度。 窗函数法设计 FIR滤波器过程 如图 3-1所示: 加窗: 计算 开始正确逼近理想滤波器频率响应函数()jdHe求理想滤波器的单位脉冲响应()dhn()jHe 选择窗函数w(n)和窗长度N( ) ( ) * ( )dh n h n n是否满足要求 ()jHe 计算h(n)或H(z)结束是否图 3-1 窗函数法设计 FIR滤波器流程 以截止频率为 c ,相位为零的理想低通滤波器为例,其频率特性为: 1( ) 0 cjd cHe ( 3-2) 通过傅里叶反变换得到对应的 ()dhn为: sin( )() cd nhn n ( 3-3) 此时的 ()dhn是一个无限长的非因果序列,我们需要对其进行截断,变成一个有限长的因果序列。可以先把 ()dhn向右平移 ( 1) / 2aN 个点,得到 ( )dhn为: 1s in ( )2( ) ( )1()2cddNnh n h n a Nn ( 3-4) 相应的传输函数 ( )jdHe 为: