您好,欢迎来到九壹网。
搜索
您的当前位置:首页基于MATLAB的FIR数字滤波器的设计

基于MATLAB的FIR数字滤波器的设计

来源:九壹网
第12期

2010年12月

机械设计与制造

Machinery

Design

Manufacture

87

文章编号:100l一3997(20lO)12枷埘

基于

MATLAB的FIR数

梁辰

字滤波器的设计

(抚顺职业技术学院,抚顺113006)

ThedeSignofFIRdjgitaIf¨terbaSedOnMATLAB

UANGChen

(FushunVocational7rechnologyInstitute,Fushun1l3006,China)

;【摘要】介绍了一种利用MATLAB信号处理工具箱设计肌肉电信号数字滤波器的方法,给出了;

}使用MATLAB语言进行程序设计和界面设计的详细步骤。利用MATLAB设计数字滤波器,有利于滤波{

;器设计的优化和为硬件实现提供数据基础。

{

关键词:MATLAB;肌电信号;数字滤波器

{

【Abstract】^imrodwes口撇琥od加r如s话以i昭帆e艮cfrom妒gr叩^记sign以d谚础∥kr6y眦i地i增口{{

Bs匆以proces5i愕I|}豇删记p脚池s如£反2eds即s扣r如s话田i昭p删即郴mdi眦e∥缸es.6y琊ing;;舰4zM

呼加^幻^括向D砌跆幻印£im拓吆f胁肚er缸劬蒯p聊诚ngo抛口6∞e加tk5{tk删黝Bz嘴M

;舭砌埘n阳i,印如,聊n£mion如r如s切i,蟛口dig£以∥f抛r.;

ords:MATLAB;Electromyograpllics噜nal;Di李talnlter{Keyw{

中图分类号:THl6文献标识码:A

MAⅡAB是一种矩阵运算为基础的交互式程序语言,着重针对科学计算、工程计算和绘图的需求。与其他机器语言相比,其特点是简洁和智能化,适应科技专业人员的思维方式和书写习惯,使得编程和调试效率大大提高。它用解释方式工作,键入程序立即得出结果,人机交互性能好,为科学人员所乐于接受。特别是它可适应多种平台,并且随计算机硬、软件的更新而及时升级。适用于工程应用各领域的分析设计与复杂计算,它使用方便,输入简捷,运算高效且内容丰富,很容易由各用户自行扩展。因此,

MAl队B是进行科学研究常用且必不可少的工具。

MArIlAB软件由主包和各类工具箱构成。其中,主包基本上是一个用c,C++等语言编写成的函数库。该函数库提供矩阵(或数组)的各种算法以及建立在此基础上的各种应用函数和一些相关的用户友好操作界面。而工具箱则从深度和广度上大大扩展了MATLAB主包的功能和应用领域。从使用角度看,这些工具箱可分为功能性工具箱和学科性工具箱两大类。前一类工具箱通用于各个学科领域,如“符号工具箱”;后一类工具箱则与专门学科密

★来稿日期:20l咖2—06

大应力与装配过紧的程度无关;但是管道的一阶固有频率随着刚

表4装配过松时位移荷载与管道特征量的关系表!!塑塑

!Q

响,但使管道的最大直力和最大位移都变大并使应力和位移的分布发

度系数的增大而增大,到达一定程度趋于稳定。生改变;过松装配对管道的应力和位移的分布及管道的固有频率等都

有所改变;并且装配缺陷的不同程度对管道强度影响不同。因此管道

!堡!堡型!堡!竺:!!Q!!竺进行卡箍装配时应尽量减少产生缺陷,如果有缺陷产生应该重新计算

』型Lj釜堕—塑丝—竺型—羔垡L』丝三_』翌生』!Z:丝—三王!生管道的应力、位移和固有频率,并采取相应的补救措施。

88

粱辰:基于MATLAB的FIR数字滤波器的设计

第12期

切相关,如“信号处理工具箱”、“神经网络工具箱”、“金融分析工具箱”等,这也大大促进了MATLAB语言在各个领域的应用。

MAlIAB提供了丰富的函数,其中firJ函数实现了加窗线性相位nR滤波器设计的经典方法,firl主要用于常用的标准通带滤波器设计,包括低通、带通、高通和带阻数字滤波器。除此之外,MATLAB还提供了多带nR滤波器的设计函数fir2、Hilbert变换器及其它具有奇对称系数的滤波器设计函数6rls和remez等。

数字滤波器的设计要经过三步:确定指标、逼近和实现。通常在设计滤波器之前,应该先根据具体的应用确定一些技术指标,然后就可以根据数学知识和滤波器的基本原理提出一个滤波器的模犁来逼近给定的指标,逼近的结果通常是得到以差分方程或脉冲响应描述的滤波器,最后可以根据这个描述用硬件或软件实现,至此完啦—个滤波器设计的全过程。

1

FIR数字滤波器的设计指标

以设计处理肌电信号的滤波器为例,需要根据肌电信号的

特点来进行研究。数字滤波器的核心思想是突出有效波,抑止干扰波。肌电信号本身是一种比较微弱的电信号,加之皮肤和组织对肌电信号均有衰弱作用,更易受干扰影响。对肌电信号的滤波处理就是要尽餐消除噪声和干扰的影响,提高信号的保真度。有效的肌电信号大致在(10~500)Hz范围,主要能量集中在(5叽

150)Hz范围内。根据采样定理:采样间隔必须不大于导名,(∞f2顽。:7::l是信号“f)的最高频率成分),因此取滤波器的采样频率

设为2000Hz。同时由于电源的干扰及其它仪器中电子元件电子噪声的存在,还要滤除50Hz的工频信号。

2

FIR数字滤波器的设计方法

目前,F1R滤波器的主要设计方法是建立在对理想滤波器频

率特性做某种近似的基础上的,这砦近似方法有窗函数法、频率抽样法和最佳一致法。其中,窗函数法是一种基本的设计方法,其设计方法较为成熟。如图l(a)所示,FlR低通滤波器的理想冲激响应%(几)的非零值分布在(一∞,+*)的无限区间上,因此是无限序列。但是,如图l(a)所示,也可以看出,随着n的绝对值的增

加,“n)的值趋于零。因此,我们可以忽略充分大的以后棘凡)的值,即选定某个充分大的正整数肼,构成—个新的序列风(n)。

嘶,=∥‘涮嚣:

显然,巩(n)是有限序列,它是由理想冲激响应序列%(n)截短以后得到的,称吼(厅)为截短冲激响应,其情形如图l(b)所示。

若用它作nR滤波器的冲激响应,则当朋增加时,相应的截短频

率响应虬(,)可以无限地逼近理想频率响应巩(,)。

可是,截短冲激响应序列日。(n)虽然是有限序列,却是非因果序列。为了解决这个问题,我们将日..(凡)作一定的移位,构成一个新序列:|Il(n)=;日。(珏.M)(一∞(2)

所得到的新序列满足|Il。(n埘)勘(,t):D,是因果的有限序

列,如图l(c)所示。

^(,1)就是设计结果,以Ill(n)作冲激响应序列的字滤波器

就是所设计的FIR数字滤波器。这种从给出理想频率响应,计算理想冲激响应,最后将理想冲激响应截短、移位后得到所需要的wR数字滤波器冲激响应的设计方法,通常称为窗函数法。

(a)理想冲激响应序列

(b)截短冲激响应序列

(c)移位后的截短冲激响应序列图l理想冲激响应序列一截短和移位

这种简单的截短方法在频率响应不连续处出现了所谓的吉布斯(Gibbs)现象,使逼近的频率响应具有确定百分率的尖冲振幅和波动波纹。解决这一现象的一个有效方法是利用有限“加权”序列,即所谓的“窗”序列来修正式(1)。这种方法被称为“加窗法”,通常也称之为傅立叶级数法。

枷)卜)一骘垃箍半

(3)

10

式中:脚数。这个截短过其余的程可以认n

为是无限长的取样响应和

有限长的窗函数埘(n)的乘积,即:^(n)勘。(n协(n)(4)

当然要作进一步的移位才能得到因果的。

经过变换可以得到所要设计的滤波器的幅度频率特性:

日(∞)=1日(,)l=-杀fr1以T

(护)%(∞胡)棚

(5)

由式(5)可见,对实际FIR滤波器有影响的只是窗函数的幅

度频率特性畎(∞)。实际中的FIR滤波器的幅度频率特性是理

想低通滤波器的频率特性和窗函数的幅度频率特性的复卷积。复卷积给日(∞)带来过冲和波动,所以加窗函数后,对滤波器的理想特性的影响有以下几点:

(1溜。(甜)在截止频率的间断点变成连续的曲线,使出现了—个过渡带,宽度等于窗函数的主瓣的宽度。由此可见,如果窗函数的主瓣越宽,过渡带就越宽。

(2)由于窗函数旁瓣的影响,使得滤波器的幅度频率特性出现了波动,波动的幅度取决于旁瓣的相对幅度。旁瓣范围的面积越大,通带波动和阻带的波动就越大,换句话说,阻带的衰减减小。而波动的多少,取决于旁瓣的大小。

(3)增加窗函数的长度,只能减小窗函数的幅度频率特性形(∞)的主瓣宽度,而不能减小主瓣和旁瓣的相对值,该值取决于窗函数的形状。换句话说,增加截取函数的长度N只能相应的减小过渡带,而不能改变滤波器的波动程度。

为了满足工程上的需要,可以通过改变窗函的形状来改

善滤波器的幅度频率特性,而窗函的选择原则是:

No.12Dec.2010

机械设计与制造

①具有较低的旁瓣幅度,尤其是第—旁瓣的幅度。②旁瓣的幅度下降的速度要快,以利于增加阻带的衰减。③主瓣的宽度要窄,这样可以得到比较窄的过渡带。通常上述的几个条件难以同时满足。当选用主瓣宽度较窄时,虽然能够得到比较陡峭的幅度频率响应,但是通带和阻带的波动明显增加;当选用比较小的旁瓣幅度时,虽然能够得到比较平坦和匀滑的幅度频率响应,但是过渡带将加宽。因此,实际中选用的窗函数往往是它们的折衷。在保证主瓣宽度达到一定要求的条件下,适当地牺牲主瓣的宽度来换取旁瓣的波动减小。实际中设计nR数字滤波器往往要求是线性相位的,因此要求满足线性

相位条件,即要求埘(∞)满足:埘(,1)剐(^乙l川)(6)

设计Fm滤波器常用的窗函数有:矩形窗函数、三角

(Banlett)窗函数、汉宁(H蝴iIIg)窗函数、海明(Ha舢iIlg)窗函

数、布拉克曼(Blackm帅)窗函数和凯塞(Kaiser)窗函数。具体指标如表1所示。

表1窗函数指标

窗函数旁瓣峰值幅度(dB)过渡带宽度阻带最小衰减(dB)

3

FIR数字滤波器的实现

根据滤波器的设计指标,阻带最大衰减>50dB,因此可以选择

海明窗(H咖Ining)完成。本文所设计的滤波器可以利用MAⅡAB

编程或直接利用其信号处理工具箱得到其单位脉冲响应,本次设计采用MATLAB编程的方式来设计兀R数字滤波器,最后将单位脉冲响应提取出来,为硬件或软件实现滤波器提供滤波系数。

本次设计以设定的肌电信号FIR数字滤波器的设计指标为依

据,把各项指标转换为MATLAB对应参数,设计实现此滤波器。根据肌电信号特点可以有两种设计方案:

一种是分别设计低通、高通、带阻滤波器,从而实现保留(1啦

500)Hz频率范围的有效肌电信号,并滤除掉工频50Hz信号;

另一种方案则是直接设计—个两通带(即lOHz._49Hz,51Hz_

500Hz两个通频带)的滤波器。

通过比较滤波后的效果,数据的处理量以及滤波器的阶次等方面,最后设计采用第二种方案,利用基于窗函数的任意响应兀R滤波器的fir2函数来编程的方法设计朋庖信号的滤波器,而且其默认的窗函数类型为海明窗(Hammin只),因此编程时无须特别标注。

为了寻求最优的设计效果,经过了多次反复尝试和试验,最后选取滤波器阶次为256阶,虽然阶次比较高,需要处理的作为滤波器系数的数据比较多,但是得到了比较理想的滤波效果,而且波形变化平稳,基本实现了针对肌电信号滤波的设计指标。

设计的肌电信号滤波器的幅频特性曲线,如图2所示。从幅频特性曲线中可以看出该滤波器的性能参

达到了要

求,曲线比较平稳,基本满足了肌电信号滤波器的设计指标。其相

频特性,如图3所示。

:lj

:名

--

{

黾-●●

I《

●‘

l;:

{

:!

嘶i

图2幅频特性曲线

图3相频特性曲线

从相频特性曲线来看,曲线通过原点处为一条直线,说明具有线性相位特性。其单位脉冲响应波形,如图4所示。

图4单位取样响应h(n)波形图

如果要实现肌电信号基于FPGA的FIR数字滤波器的硬件设计,则需要利用MA7rLAB设计的肌电信号nR滤波器的系数构建查找表,MATLAB生成的系数均为十进制小数,因此就存在—个将十进制小数转换为有限位=进制整数的问题,即有限字长问题,用有限字长来表示输入和输出信号、滤波器系数以及算术运算的结果。在这种情况下,需要分析量化对滤波器性能的影响。由于所凌汁的肌电信号数字滤波器的阶次较高,256个滤波器系数以及采集得到的肌电信号都需要进行这样的处理,工作量很大,很费时间和精力,因此可通过C语言进行编程设计,实现由十进制小数转换为有符号的二进制整数,为下—步进行FPGA的开发做准备。

参考文献

l程佩青.数字信号处理教程[M].北京:清华大学出版社,1997,113:18s一

213

2陈怀琛等.M^1rIAB及在电子信息课程中的应用【M].北京:电子工业出版社,2002(3.4):163—212

3王宏.M^,rI.^B6.5及其在信号处理中的应用【M】.北京:清华大学出版社,2004:1砣,103—1lO,207以10,213—22l

4彭红平,杨福宝.基于MA。rLAB的兀R数字滤波器设计[J].武汉理工大

学学报。2005,27(5):275~2785姚齐国.基于MA7rLAB的字滤波器的设计[J].江西理工大学学报,

2006,27(1):50。52

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务