您的位置:控制工程论坛网论坛 » 传感器 » 适合单片机实时处理的简单FIR滤波器设计

dingjia

dingjia   |   当前状态:离线

总积分:99  2024年可用积分:0

注册时间: 2008-09-07

最后登录时间: 2010-12-10

空间 发短消息加为好友

适合单片机实时处理的简单FIR滤波器设计

dingjia  发表于 2008/12/7 22:14:24      782 查看 0 回复  [上一主题]  [下一主题]

手机阅读

引 言

近年来,心脏病的发病率不断上升,为了使病人能够随时随地得到诊治,科研人员研制了多种便携式移动心电监护设备。在研制便携式心电监护设备时,既要考虑使用者携带及使用方便,又要保证采集到高质量的心电信号。解决这一矛盾的惟一途径就是用尽量优化的软、硬件资源来完成相应功能。心电信号的频率在0.05~100 Hz之间,一个正常的心电图由P波、QRS波群、T波等组成。由频谱分析可知,QRS波群的中心频率在17 Hz带宽约为10 Hz,P波、T波等的频带都在此频带的低端以外[1]。心电信号采集过程中的噪声源主要有:50 Hz工频干扰及其各次谐波,呼吸运动和电极移动所产生的频率小于5 Hz的干扰,肌肉收缩产生的O~100 Hz肌电(EMG)噪声,用于信号处理的电子设备所产生的噪声等[2,3]。其中最明显
的是50 Hz工频干扰及其各次谐波和由于呼吸运动所产生的频率小于5 Hz的干扰。要得到清晰、准确的心电信号,必须在不影响正常心电波形的基础上将这些干扰滤除。这就要求滤波器具有良好的幅频特性和严格的线性相位特性。本文借助Matlab 7.0[4],采用窗函数法结合零、极点调整法[1]和试探法设计了一种滤除工频50 Hz干扰的FIR滤波器。

2基本原理

2.1 窗函数设计滤波器[6,7]原理简述

设滤波器的理想频率响应函数为Hd(ejw),则其对应的单位脉冲响应为:


窗函数法设计滤波器的基本原理就是用有限长度单位脉冲响应序列h(n)去逼近hd(n)。通常hd(n)是无限长序列,且是非因果的,所以用窗函数w(n)将hd(n)进行截断并作加权处理得到:

h(n)=hd(n)w(n)

h(n)就是实际设计的FIR数字滤波器的单位脉冲响应序列,其频率响应函数为:

其中,N为所选窗函数w(n)的长度。同时,如果要求滤波器具有线性相位特性,则h(n)必须满足:
h(n)=±h(N-1-n)

2.2方法改进及实现

设计中选用FIR I型滤波器[8,9],即满足h(n)=+h(N-1-n)且N为奇数。选用Hamming窗对理想滤波器的单位脉冲响应进行截断,窗函数为:

w(n)=0.54-0.46 cos(2nn/N),N=0,1,2,…,N-1

按常规设计方法直接设计50 Hz FIR陷波器,要达到较好的滤波效果,滤波器的阶数较高且滤波器系数多为小数,不利于通用单片机进行实时处理。设定采样频率Fs=200 Hz,先用窗函数法设计一个低频特性较好的30 Hz低通滤波器,然后利用Matlab FDATOOL工具箱里的量化工具对滤波器的系数进行量化和调整。量化前、后滤波器的幅频特性如图1所示。

量化后滤波器的传递函数为:

Hl(Z)=0.125+0.25 z1+0.375 z2+
0.25 z-3+0.125 z-4

3滤波器波形特性比较

由以上滤波器的幅频特性,结合零、极点调整法和试探法反复对滤波器系数进行调整,使其具有更好的低频特性和50 Hz衰减特性。系数调整后滤波器的幅频特性如图2所示。

系数调整后滤波器的传递函数为:

H2(z)=-0.25+z-1-0.5 z-2+z-3-0.25 z-4

由滤波器幅频特性曲线可以看出,经系数调整后滤波器具有更好的低频特性,-3 dB截止频率为35 Hz,同时对50 Hz工频干扰的衰减达到-38 dB。但是,系数调整也使滤波器的高频特性变差,在68.8 Hz处的增益超过+3 dB。为了滤除心电信号中的高频噪声,必须对50 Hz以上频段范围内的信号进行衰减。

同样,可以用窗函数法结合试探法设计了一个低频特性较好且具有良好高频衰减特性的40 Hz低通滤波器。利用Matlab FDATOOL工具箱里的量化工具对滤波器的系数进行量化和调整。量化前、后滤波器的幅频特性曲线如图3所示。

量化后滤波器的传递函数为:

H3(z)=0.25+0.5 z-1+0.25 z-2

由幅频特性曲线可以看出,量化后滤波器的一3 dB截止频率为36.3 Hz且具有良好的低频和高频特性。综合以上两种滤波器的幅频特性,将这两种滤波器进行级联。级联后滤波器的传递函数为:

级联后滤波器的幅、相频率特性如图4所示。

滤波器的幅、相频率特性由图4可以看出,级联后滤波器的一3 dB截止频率为28.1 Hz,在50 Hz频率处的衰减为-44.2 dB,高频最小衰减为-10 dB,且滤波器在通带内具有严格的线性相位特性。该滤波器的群延时为:

t=[(N-1)/2]*TS=3*5=15 ms

由心电信号的功率谱可知,-28 dB的截止频率能够满足心电监护的需要。

4滤波效果

将上述设计的滤波器用于实际心电信号滤波取得了良好的滤波效果。滤波前、后的心电信号波形如图5所示。

5 结 语

由滤波器的幅、相频率特性和实际滤波效果可以看出,该滤波器不但能够很好地滤除工频干扰而且具有良好的低频特性。同时,滤波器的系统函数中分子、分母的各相系数均为整数,便于乘法运算。并且分母正好是2的4次幂,在进行除法运算时可以直接由一条移位指令完成。这无疑给编程和运算都带来了极大的方便。
1楼 0 0 回复