您的当前位置:首页正文

基于Matlab的FIR数字滤波器设计与仿真_尹玉兴

来源:爱够旅游网
 第12期 2011年12月

工矿自动化

IndustryandMineAutomation

No.12 Dec.2011 

文章编号:1671-251X(2011)12-0060-04   DOI:CNKI:32-1627/TP.20111128.1616.017

基于Matlab的FIR数字滤波器设计与仿真

尹玉兴, 刘振坚, 项止武

(中煤科工集团上海研究院,上海 200030)

  摘要:分析了FIR数字滤波器的原理,介绍了采用窗函数法设计FIR数字滤波器的实现过程。Matlab仿真验证了所设计滤波器可以根据需要调整参数,从而实现需要的滤波功能。设计简单、方便,实用性强。

关键词:采煤机;振动信号;FIR数字滤波器;窗函数;Matlab

  中图分类号:TD651;TN713   文献标识码:A   网络出版时间:2011-11-2816:16

  网络出版地址:http://www.cnki.net/kcms/detail/32.1627.TP.20111128.1616.017.html

DesignandSimulationofFIRDigitalFilterBasedonMatlab

YINYu-xing, LIUZhen-jian, XIANGZhi-wu

(ShanghaiResearchInstituteofChinaCoalTechnologyandEngineering

GroupCorporation,Shanghai200030,China)

  Abstract:ThepaperanalyzedprincipleofFIRdigitalfilterandintroducedimplementationprocessofdesigningFIRdigitalfilterwithWindowfunctionmethod.Matlabsimulationverifiedthatparametersofdesignedfiltercanbeadjustedaccordingtorepuirmenttoachievedesiredfilteringfunction.Thedesignissimpleandconvenient,andhasstrongapplicability.

Keywords:shearer,vibrationsignal,FIRdigitalfilter,Windowfunction,Matlab0 引言

随着计算机和微电子技术的飞速发展,数字信号处理的理论、算法及实现手段都得到了全面进步。数字信号处理技术在采煤机工作振动信号处理领域也得到广泛应用。数字滤波器作为数字信号处理技术的一个重要工具,可用来过滤时间离散信号和数字信号。因此,在处理采煤机振动信号时,可利用滤波器滤除振动信号中的噪声,这对采煤机振动信号的后期处理、机身振动情况的判断具有重要作用。根据冲击响应的时域特性,数字滤波器可分为2类:无限冲击响应(IIR)滤波器和有限冲击响应(FIR)滤波器。

一个离散时间系统H(z)=B(z)/A(z),若分母多项式A(z)的系数a0=1,a1=…=aN=0,那么该系统就是FIR系统[1]。

收稿日期:2011-08-10

作者简介:尹玉兴(1984-),男,河北邢台人,硕士研究生,研究方向为矿山电气自动化。E-mail:yiny x@163.com

FIR系统有其突出优点:其一,系统总是稳定的;其二,易于实现线性相位;其三,允许设计多通带

(或多阻带)滤波器。后两项是IIR系统不易实现的。IIR滤波器的稳定性难以保障且相位是非线性的。因此,具有线性相位等优点的FIR数字滤波器得到了广泛应用。

Matlab是FIR滤波器设计的有力工具,其自带的工具箱为设计应用提供了简便方法,使原来复杂的程序设计变成了简单的函数调用,因而减少了设计工作强度,提高了工作效率。本文主要介绍基于Matlab采用窗函数法设计FIR滤波器的实现过程。1 FIR滤波器原理与设计1.1 FIR滤波器原理

FIR滤波器系统的单位冲击响应在有限个n值处不为零;系统极点全部在z=0处,所以,系统总是稳定的;结构主要是非递归结构,没有输出到输入的反馈。

FIR滤波器的单位抽样响应是有限长的,系统传递函数为

2011年第12期H(z)=b0+b1z

-1

尹玉兴等:基于Matlab的FIR数字滤波器设计与仿真

M

   61

+…+bMz

-M

=

n=0

-n

∑bnz

hd(n)ω(n)。

按照卷积定理,在时域的乘积可表示为频域中的周期性卷积的关系,所以设计的FIR滤波器的频率响应为[2]

π1H(e)=Hd(θ)W(ω-θ)dθ2π-π

  式中:W(ω)为截断窗函数的频率特性。

(1)

  式(1)中,系数b0,b1,…,bM即为FIR滤波器系

统的单位抽样响应h(0),h(1),…,h(M),且当n>M时,h(n)=0。由于FIR滤波器系统只有零点,所以系统总是稳定的。但要取得较好的衰减特性,一般要求H(z)的阶次要高,也即M要大。

在有些情况下,要求设计的FIR滤波器具有线性相位特性,则系统的传递函数为

H(e)=H(ω)e(2)  式中:H(ω)为幅频特性;θ(ω)为相频特性。

线性相位是指系统的相频与频率成正比。FIR系统的单位抽样响应为有限长,所以可以实现对称性,从而获得线性相位。

FIR滤波器在结构上不存在输出到输入的反馈,即为非递归的,所以信号流中不存在环路。由于

M

jθ(ω)

∫(7)

可见,窗函数的频率特性W(ω)的好坏直接影响着FIR滤波器的频率响应逼近程度的好坏。

1.3 窗函数法设计步骤

(1)给出理想频率响应函数Hd(ejω);(2)由式(6)得出hd(n);

(3)按阻带和过渡带的最小衰减要求,选定窗函数的类型并计算FIR滤波器的阶次大小;

(4)求出FIR滤波器的单位冲击响应h(n)=ω(n)hd(n);  (5)利用傅氏变换求出所设计FIR滤波器的频率响应H(ejω)=DTFT[h(n)],检验是否满足要求。2 几种窗函数及其特点

设计FIR滤波器常用的窗函数主要有矩形窗、

H(z)=

所以其差分方程为

M

n=0

∑bz

n

-n

(3)

y(n)=

n=0

k)x(n-k)∑h(

(4)

三角窗、汉宁窗、海明窗、布莱克曼窗等[3],几种窗函数的幅频特性响应如图2所示。

  FIR滤波器运算结构示意简图如图1所示。

图1 FIR滤波器运算结构示意图

1.2 FIR滤波器窗函数设计法

FIR滤波器主要的设计方法有窗函数法[1]、频率抽样法及等波纹逼近法。本文采用窗函数法设计FIR滤波器。

FIR滤波器的基本思路就是用有限冲击响应来逼近给定的频率响应,即使其频率响应为

M

(a)矩形窗(b)汉宁窗

H(e)=

逼近理想的频率响应Hd(e)。

由于

π

jωjωn1d(He)edωhd(n)=

2π-π

n=0

n)e∑h(

-jωn

(5)

(c)海明窗(d)三角窗

图2 窗函数幅频特性

  从图2可知,矩形窗具有最窄的主瓣

(6)

[4]

,但也有

∫最大的边瓣峰值和最慢的衰减速度;三角窗具有较

宽的主瓣,旁瓣的衰减速度也较慢;海明窗和汉宁窗的主瓣稍宽,但有较小的边瓣和较大的衰减速度。几种较为常用的窗函数的主要性能指标比较如表1所示。

且hd(n)是无限长、非因果序列,而设计的FIR滤波器的冲击响应序列是有限长的,所以要用一个有限长的窗函数ω(n)序列来截取hd(n),即h(n)=

62

表1 常用窗函数的主要性能指标

窗函数矩形窗三角窗汉宁窗海明窗布莱克曼窗

主瓣宽度4π/N8π/N8π/N8π/N12π/N

旁瓣峰值/dB

-13-25-31-41-57

工矿自动化2011年12月     

N=ceil(6.6pi/wdelta);%由过渡带宽得滤波器所用窗函

数的最小长度

wc=(wp+ws)/2;%理想低通滤波器截止频率hd=ideal lp(wc,N);%理想脉冲响应win=hamming(N);%采用海明窗

h=hd.win';%在时间域乘积对应于频率域的卷积[H,f]=freqz(h,1,512,300);%采用300Hz的采样频率subplot(2,2,1),plot(f,20log10(abs(H)))xlabel('频率/Hz');ylabel('振幅/dB');gridon;subplot(2,2,2),plot(f,180/pi*unwrap(angle(H)))xlabel('频率/Hz');ylabel('相位/ o');gridon;f1=20;f2=120;%输入信号的2种频率成分

dt=1/fs;t=0:dt:1;%采样间隔和检测信号的时间序列x=sin(2pif1t)+cos(2pif2t);%检测信号y=fftfilt(h,x);%对信号进行滤波器的输出

subplot(2,2,3),plot(t,x),xlabel('时间/s'),ylabel('幅度'),title('输入信号')%绘输入信号

subplot(2,2,4),plot(t,y)%绘输出信号

holdon;plot([11]*(N-1)/2dt,ylim,'r')%绘出延迟到的时刻

xlabel('时间/s'),ylabel('幅度'),title('输出信号')程序结束

阻带最小衰减/dB

-21-25-44-53-74

  通常窗函数的性能指标不可能同时满足。当选择较小的旁瓣宽度时,虽然能得到平滑的幅度响应和较小的阻带波动,但过渡带加宽;当选择的主瓣宽度较窄时,虽然过渡带较陡,但通带和阻带的波动增加。所以实际选择时,在主瓣宽度达到要求的情况下,可适当牺牲主瓣宽度来换取旁瓣波动的减少。

由表1可知,在具有相同主瓣宽度的情况下,海明窗具有最小的旁瓣峰值和最大阻带衰减速度,滤波效果较好。所以,本设计采用海明窗设计低通滤波器。

3 FIR滤波器程序设计

Matlab已经成为数字信号处理应用中分析和仿真的主要工具。Matlab工具箱[5]提供了几种滤波器原型产生函数,给FIR滤波器的设计带来了极大的方便。利用Matlab设计滤波器可以根据设计

需要调整通带频率、阻带频率、采样频率和所调用的窗函数等参数,以满足所需滤波器功能,设计简洁、方便。

采煤机在工作情况下的振动信号为低频信号,实际应用中采用低通滤波器滤除高频的噪声信号以得到有用信号。本文通过Matlab模拟产生2种不同频率的正弦信号,并将信号通过基于海明窗设计的低通滤波器滤除高频正弦波,从而得到有用信号。实际应用时只需改变输入信号就可对信号进行滤波处理。

根据实际要求模拟产生20Hz和120Hz的2种正弦波。设计低通滤波器,要求通带的截止频率为90Hz,阻带下限截止频率为110Hz,采样频率为300Hz,通带波纹不大于0.5dB,阻带衰减不小于50dB。根据表1阻带衰减要求不小于50dB可选择海明窗。主要程序如下:

f1=90;f2=110;fs=300;%fs为采样频率wp=2f1pi/fs=0.6pi;%归一化频率ws=2f2pi/fs=0.73pi;%归一化频率wdelta=ws-wp;%过渡带宽

图3为Matlab绘出的滤波前后信号对比结果。图3(a)、(b)分别为所设计滤波器的幅频特性和相

频特性;图3(c)、(d)分别为输入信号和输出信号。

(a)幅频特性(b)相频特性

(c)输入信号(d)输出信号

图3 滤波器频率响应和滤波前后信号对比

  由运行结果可知,滤波前有用信号与无用信号无法分辨,滤波后高频噪声信号得到有效滤除,达到了预期指标。4 结语

介绍了基于Matlab、采用窗函数法设计FIR滤

 第12期 2011年12月

工矿自动化

IndustryandMineAutomation

No.12 Dec.2011 

文章编号:1671-251X(2011)12-0063-05   DOI:CNKI:32-1627/TP.20111128.1625.018

基于改进SVPWM算法的三电平PWM整流器研究

张杰, 王斌, 王峰

(中国矿业大学信电学院,江苏徐州 221008)

  摘要:分析了三电平中点钳位式整流器的拓扑结构,在d-q旋转坐标系下建立了其基于开关函数的数学模型,通过双闭环控制实现了电流的d-q轴解耦,使整流器的动态性能得到改善;针对传统的SVPWM算法在扇区判定和矢量作用时间求解过程中需要进行大量复杂的三角函数运算的缺点,提出了一种基于非正交60°坐标系的SVPWM算法,优化了三电平整流器的矢量运算过程。仿真和实验结果验证了该算法的

正确性。

关键词:三电平整流器;前馈解耦;SVPWM;非正交

  中图分类号:TD605   文献标识码:A   网络出版时间:2011-11-2816:25  网络出版地址:http://www.cnki.net/kcms/detail/32.1627.TP.20111128.1625.018.html

ResearchofThree-levelPWMRectifierBasedonImprovedSVPWMAlgorithm

ZHANGJie, WANGBin, WANGFeng

(SchoolofInformationandElectricalEngineeringofCUMT.,Xuzhou221008,China)

  Abstract:Topdogicalstructureofneutral-point-clampedthree-levelrectifierwasanalyzed.Amathematicalmodeloftherectifierwasestablishedbasedonswitchingfunctionind-qframes.Onthebasis,currentd-qdecouplecontrolwasrealizedbymeansofdualclosedloopscontrol,sodynamicperformanceoftherectifierwasimproved.InviewofshortcomingthattherearealargenumberoftrigonometriccalculationsindeterminingsectorandsolvingactiontimeofspacevectorintraditionalSVPWMalgorithm,aSVPWMalgorithmbasedonnon-orthogonal60°coordinatesystemwasproposed.Thealgorithmoptimizesvectorcalculationofthethree-levelrectifier.Theresultsofsimulationandexperimentvalifiedcorrectionofthealgorithm.

Keywords:three-levelrectifier,feedforwarddecouple,SVPWM,non-orthogonal

0 引言

收稿日期:2011-08-11

作者简介:张杰(1986-),男,安徽蚌埠人,硕士研究生,主要研究方向为电力电子与电力传动、风力发电技术。E-mail:jiehui13@126.com

随着大功率变频器在工业生产中日益广泛的应

用,高性能的整流器技术已成为电力电子学的热点研究内容。能够四象限运行的PWM整流器由于可

2007.

[2] 郑君里.信号与系统[M].北京:人民教育出版社,

1981.

[3] 陈怀琛.数字信号处理教程———MATLAB释义与实现

[M].北京:电子工业出版社,2005.

[4] 吴镇扬.数字信号处理原理与实现[M].南京:东南大

学出版社,2001.

[5] 刘波.MATLAB信号处理(MATLAB使用指南系列)

[M].北京:电子工业出版社,2006.

波器的实现过程,并通过Matlab仿真验证了所设计

滤波器的功能。设计简单、方便,大大减少了工作量。在应用中只需对程序中滤波器的起始频率、截止频率、采样频率和窗函数等参数进行修改就可实现需要的滤波功能,实用性强。

参考文献:

[1] 胡广书.数字信号处理[M].北京:清华大学出版社,

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