基于MATLAB的数字滤波器结构实现与仿真.docx
- 文档编号:12120186
- 上传时间:2023-06-04
- 格式:DOCX
- 页数:13
- 大小:79.62KB
基于MATLAB的数字滤波器结构实现与仿真.docx
《基于MATLAB的数字滤波器结构实现与仿真.docx》由会员分享,可在线阅读,更多相关《基于MATLAB的数字滤波器结构实现与仿真.docx(13页珍藏版)》请在冰点文库上搜索。
基于MATLAB的数字滤波器结构实现与仿真
第21卷第3期湖南理工学院学报(自然科学版V01.21No.3;Z塑§堡!
旦!
些呈坚!
!
!
塑些垫望壁i望堡垡量!
i望望彗垒!
墼塾些!
呈垒垡垫壁!
:
§!
墅!
墼L。
一一。
.。
。
塑呈;!
些!
基于MATLAB的数字滤波器结构实现与仿真
张登奇,周婷,李斌
(湖南理工学院计算机系,湖南岳阳414006
摘要:
数字滤波是数字信号处理的重要环节,描述滤波器有多种形式,实现滤波器有多种结构.本文以实例介绍了数字滤波器的设计方法,重点阐述了IIR滤波器的基本结构及相互转换,并在Simulink环境下对级联型网络结构进行了系统仿真.
关键词:
MATLAB;数字信号处理;数字滤波器:
网络结构
中图分类号:
TP391.75TN713文献标识码:
A文章编号:
1672-5298(200803—0019—04
RealizationandSimulationofDigitalFilterFrameworks
BasedonMatlab
ZHANGDeng—qi,ZHOUTing,LIBin
(DepartmentofComputerScienceandInformationEngineering,
HunanInstituteofScience
andTechnology,Yueyang414006,China
Abstract:
Thedigitalfilterisoneofthemostimportantpartsindigitalsignalprocessing,whichcanbedescribedinvariouswaysandrealizedbydifferent行ameworksa8well.Thispaperintroducesthedesignmethodsofdigitalfilterthroughtheexamples.especiallyemphasizesthebasicframeworkwiththeirconversionsofIIRdigitalfilterwhichCascadeNetworkArchitectureissimulatedunderSimulinkenvironmentofMATLAB.
Keywords:
MATLAB;digitalsignalprocessing;digitalfilter;networkarchitecture
数字滤波是数字信号处理的重要环节,是由乘法器、加法器和单位延时器组成的一种运算过程,其功能是将输入的离散信号通过一定的运算处理后转变成另一组频谱结构不同的离散信号.实现数字滤波的离散时间系统,其系统函数可用多种算法实现,各种算法又对应有各自不同的网络结构.”网络结构可以清晰地看到系统的运算步骤、加乘法运算次数和存储单元的多少,故是滤波器软、硬件实现的基础.本文实例介绍了利用FDATool设计数字滤波器的基本方法,重点阐述了IIR滤波器的基本结构及相互转换,并在Simulink环境下对级联型网络结构进行了系统仿真.
1数字滤波器的设计
数字滤波器的系统函数可用传输函数、零极点增益和极点留数等形式描述:
日(z=
射M
∑6jz一丌(1一吼z。
—%—一=k・专L—一
l+∑口』z。
n(1-P,z。
1
j=l,=I
二窆db+掣印一.1
匀一pfz。
1岔。
设计滤波器就是确定系统函数中各系数的过程.斥]MATLAB设计数字滤波器有多种方法【1,21,其中,利用滤波器设计与分析工具(FDA-T001既简单又方便.在命令窗口输,kFDATool,打TFFilterDesign&Analysis
Tool窗口,该窗口分为上下两部分:
上面是设计结果显示,下面用来设置参数.参数项目主要有响应类型、设计方法、滤波器阶数及选项、频率参数和幅度参数等等.设置好技术参数后,点击DesignFilter按键,即可完成设计.
收稿日期:
2008-06-13
作者简介:
张登奇(1968一,男,湖南临湘人。
硕士,湖南理工学院计算机系副教授.主要研究方向:
信号与信息处理
20
湖南理工学院学报(自然科学版
第2l卷
‘实例l设计一个ChebyshevType
II型IIR数字低通滤波器,要求通带临界频率fp=3000Hz,阻带临界频
率‘=4000Hz,通带内的最大衰减昂=2da,阻带内的最小衰减R,=lOdb,采样频率E=44100Hz.
在FDATool窗口中设置好上述参数,点击DesignFilter按键,运行File/Export…命令后,即可在工作
空间得到零极点增益结果(共轭零极点进行了合并.
G=0.1816SoS=1.0000
1.00000
1.0000-0.374701.0000
一1.5894
1.0000
1.0000
—1.4994
0.7379
如要将设计结果以分子分母传输函数形式输出,则要先运行EdiVconvert
to
single
section命令,再运
行File/Export…命令,在弹出的对话框中给变量命名为b和a,即可在工作空间得到如下结果.
b=0.1816
-0.1070
-0.10700.1816a=1.0000一1.8740
1.2996
-0.2765
2数字滤波器的基本结构
滤波器的系统函数有多种描述形式,实现系统函数可用不同的网络结构,而网络结构又直接影响系统的运算误差、运算速度、调整难度及系统成本.这里以IIR数字滤波器为例,重点介绍四种最基本的网络结构.
I直接型根据系统的传输函数,其差分方程可描述为:
旦卫
y(n=∑b,x(n—i一∑ajy(n—J・
i=0
j=l
由这个差分方程可以直接看出,实现系统的网络结构可由两部分构成:
一是对输Ax(n进行M阶延时加权相加,二是对输出“疗进行Ⅳ阶延时加权相加,再将这两部分进行组合构成输出.因其网络结构可由
传输函数直接得到,故名直接型结构,其网络结构如图l(a所示.
II正准型直接型网络结构虽然直观明了,但延时器过多.将网络结构的两部分交换次序,不会影响
整个系统的传输函数,但此时对中间变量的延时可取长合并(这里假设N=M不足系数补零,得到如图
l(b所示的正准型(也称直接II型网络结构.正准型因延时单元少取代了直接型,但在高阶系统中存在零
极点调整困难,对系数变化过于敏感,易出现不稳定和误差较大等缺点,故只应用在低阶网络中.
鞫‘酋蛋1露波嚣的王本缓柯
(d
Ⅲ级联型一级联型网络结构对应于系统函数的零极点增益形式,为了不出现复系数,实际采用的是
二阶级联,即将共轭零点或共轭极点合并构成一个实系数二阶节,整个系统函数是若干个二阶节的乘积(实根因子可看成是二次项系数为零的二阶节:
日cz,29‘卉k=l%芸舞。
g‘垂%c九
每个二阶节用正准型结构实现,得到的级联型网络结构如图l(c所示.由于每个二阶节控制一对共轭
零极点,零极点调整方便,且有延时单元少,运算误差小等优点而广泛应用,利用FDATool设计数字滤波
器的默认输出也正是这种结构.
Ⅳ并联型并联型网络结构对应于系统函数的极点留数形式,为了不出现复系数,也采用了二阶分
割,即将共轭极点合并构成分母是一个实系数二次项,分子是一个实系数一次项的二阶节,整个系统函数
。
时宁
设
可P
由目
第3期张登奇等:
基于MATLAB的数字滤波器结构实现与仿真2l
是若干个二阶节的和(实根因子可看成是二阶节的特例.当M2N时,系统函数等效为一个FIR滤波器或常数与一个IIR滤波器的并联:
酢,=蓍V‘+喜尝=蓍∥+荟L删.
每个二阶节仍用正准型结构实现,得到的并联型网络结构如图l(d所示.由于各并联支路的极点也是整个网络的极点,故系统极点调整简单,零点调整虽不如级联型方便但系统误差小.
3数字滤波器的结构转换
滤波器的系统函数有多种描述形式,也对应有不同的网络结构,系统函数及不同结构之间的转换如用手工计算非常麻烦且容易出错.MATLAB提供了一系列的转换函数,使得这些复杂的转换问题变得非常简单,一些常用的转换函数如表I所示.
函数中的2是to的英文谐音,各函数的应用参见help命令,也可参见MATLAB帮助系统:
SignalProcessingToolbox/Functions/LinearSystem
Transformations.现以实例1的设计结果为例,分别介绍从直接型到级联型和并联型的转换方法.“3.1直接型到级联型转换
根据系统的传输函数很容易实现直接型和正准型网络结构,但要实现级联型和并联型结构,则需进行必要转换.实现从直接型到级联型的转换,可先用求根函数roots分别求出系统传输函数的零极点,再用poly函数合并共轭零极点即可完
裹l系统函数及不同结构之间的转换函数裹
传输函数零极增益极点留数级联结构
皇:
璺鱼:
里!
竺P!
曼竺墨!
璺竺!
传输函数tf2印residuez
t
t
2
s
o
r
o
o
t
s
s
零极增益zp2.ffzp2sos
poly
极点留数residuez
级联结构sos2tfsos2zp
成结构转换.也可调用函数tf2sos直接实现,其调用格式为:
【SOS,G】_tf2sos(b,a
实例2实例1得到了传输函数的系数b和a,经tf2sos函数处理后输出的级联型结构为
SOS=1.00001.000001.0000-0.37480
1.0000—1.58921.00001.0000-1.49920.7377
G=0.1816
SOS矩阵的每行按b雠,blb6zbl,alba2t顺序表示第K个二阶节,转换得到的级联型结构系统函数为
H(z=0.1816・
1+z~1—1.5892z一1+z一2
1一O.3748z~1—1.4992z一1+0.7337z一2’
本例中输入的系数b和口只保留了4位小数,其精度不够,故输出的结果与FDATool直接输出的级联型结构稍有不同.、
3.2直接型到并联型转换
实现从直接型到并联型的转换,要先用留数函数residuez求出极点、留数和多项式系数,再将共轭极点进行合并即可.MATLAB没有提供从直接型到并联型的直接实现转换函数,但可将[3】中提供的dir2par.m文件作扩展函数直接调用.
实例3实例,l输出的系数b和a,经扩展函数dir2par处理后输出的并联型结构为
C=-0.6568
B=-0.30920.2667
1.14760
A=1.0000一1.49920.7377
1.0000-0.37480
其中c是当length(b≥lengm(a时的多项式系数,B的第珩是第K个二阶节的分子系数,A的第珩是第K个二阶节的分母系数,转换得到的并联型结构系统函数为
/4(z:
-0.6568+二塑丝当墼+J坚..
22湖南理工学院学报(自然科学版第2l卷
1一1.4992z1+0.7377z‘l一0.374821
4数字滤波器的结构仿真
滤波器是由乘法器、加法器和延时器构成的离散时间系统,在Simulink环境下按网络结构调用这些仿真模块,可方便地构建各型滤波器的仿真模型.这里仅以前述实例中并联型网络结构为例,对数字滤波器进行结构仿真,具体操作如下.
第l步:
在Simulink环境下新建一个SOS.mdl文件,按并联型网络结构创建仿真模型.Gain、Sum和Scope模蜷均来自Simulink中的Mathoperations库和Sinks库,SineWave和Delay模块均来自DSPBlockset中的DSP
Sources库和SignalOperations库.
圈2级联型网络结构的仿真模型圈3数字滤波器的仿真结果第2步:
修改SineWaveJ膜块的名称与参数对应,Frequency分别设为1000Hz和5000Hz,Sampletime均设为1/44100;Sum漠块的Iconshape选rectangular,Listofsigns按需设置,多个十(一符号表示多路输入相加(减;Gain模块的名称与网络结构对应,参数按实例2设置,由于有增益G,60七总可化为1,故无需该模块.创建好的仿真模型如图2所示.
第3步:
设置仿真参数,这里主要是修改仿真时间,运行仿真模型,适当调整Scope窗口,得到如图3所示仿真结果.比较四路信号可知,包含有两个频率成份的输入信号,经低通滤波后高频成份受到了抑制,如果滤波器的设计指标和滤波器系数精度都再高些,滤波效果会更好.
5结束语
滤波器的系统函数有多种描述形式,实现滤波器有多种结构.利用FDATool可方便地实现滤波器设计,提高了设计效率;利用转换函数可灵活实现结构转换,免除了各种转换的计算麻烦;利用Simulink工具可直接仿真滤波器的网络结构,形象直观地呈现了滤波器的工作过程.
参考文献
【l】张登奇,周婷.基于MATLAB的IIR数字滤波器设计田.湖南理工学院学报,2007(3
【2】张登奇,李望移.基于MATLAB的FIR数字滤波器设计闭.计算机时代,200701
【3】陈怀琛.MATLAB及在电子信息课程中的应用【M】.北京:
电子工业出版社,2004:
212
[4】刘顺兰.数字信号处J里fM].西安:
匿安电子科技大学出版社,2003
【5】吴湘淇.信号、系统与信号处理的软硬件实现【M】.北京:
电子工业出版社,2002
【6】张志涌.精通MATLABIM].北京:
北京航空航天大学出版社。
2003
基于MATLAB的数字滤波器结构实现与仿真
作者:
张登奇,周婷,李斌,ZHANGDeng-qi,ZHOUTing,LIBin
作者单位:
湖南理工学院,计算机系,湖南,岳阳,414006
刊名:
湖南理工学院学报(自然科学版
英文刊名:
JOURNALOFHUNANINSTITUTEOFSCIENCEANDTECHNOLOGY·NATURALSCIENCES
年,卷(期:
2008,21(3
引用次数:
0次
参考文献(6条
1.张登奇.周婷基于MATLAB的IIR数字滤波器设计[期刊论文]-湖南理工学院学报(自然科学版2007(3
2.张登奇.李望移基于MATLAB的FIR数字滤波器设计[期刊论文]-计算机时代2007(11
3.陈怀琛MATLAB及在电子信息课程中的应用2004
4.刘顺兰数字信号处理2003
5.吴湘淇信号、系统与信号处理的软硬件实现2002
6.张志涌精通MATLAB2003
相似文献(10条
1.期刊论文夏平.向学军.吉培荣基于MATLAB的信号与系统、数字信号处理实验体系教学实践-电气电子教学学报2004,26(5
信号与系统、数字信号处理分别从系统分析和系统综合两个角度讨论线性时不变系统对激励信号的响应.本文探讨了信号与系统、数字信号处理二者的理论体系结构,在此基础上提出了基于Matlab的信号与系统、数字信号处理的实验体系结构.通过对此实验体系的教学实践,能较有效地加深学生对信号与系统、数字信号处理的基本理论、原理、以及它们之间的联系的认识和理解.作为示例,本文采用Matlab仿真IIR数字滤波器的级联与并联的结构.
2.期刊论文贾君霞.JIAJun-XiaMATLAB在数字信号处理教学中的应用-电脑知识与技术(学术交流2007,4(22数字信号处理的概念抽象,其中的基本理论和分析方法不易掌握.而MATLAB软件具有强大的计算仿真功能和方便易用的图形绘制能力,能够将数字信号处理的抽象理论以易于理解的可视化形式展示出来.本文通过介绍离散时间信号的基本运算和信号处理系统的分析与设计,将MATLAB和数字信号处理相结合的实践与体会加以介绍.
3.期刊论文阙大顺.胡金.陈铖.QUEDa-shun.HUJin.CHENCheng基于VC++与Matlab的数字信号处理实验平台设计-实验科学与技术2009,7(1
针对数字信号处理课程的内容和特点,采用基于Matlabengine的VC++与Matlab混合编程方法,开发设计了数字信号处理实验平台,使抽象的理论实例化.实践证明,该平台可以使学生更好地理解和掌握课程的基本理论,有利于提高学生分析问题的能力和综合实践能力.
4.期刊论文周春.吴东升基于Matlab的数字信号处理课程教学改革-世界华商经济年鉴·高校教育研究2009(2
本文结合"数字信号处理"课程教学现状,提出在教学中引入Matlab软件,从课堂教学,课程设计两个方面阐明Matlab软件的引入激发了学生学习兴趣、培养了学生的动手能力、量著增强了教学效果.
5.期刊论文沈媛媛基于Matlab的数字信号处理综合性实验设计-实验室研究与探索2009,28(8
针对数字信号处理实验课程教学情况,以巩固学生理论知识,提高实际动手能力为目的,利用Matlab软件平台,对"数字信号处理"课程的综合性实验设计进行了探讨和研究.通过综合性实验的设计,使学生深刻地掌握信号处理的方法,培养学生的创新能力和实际动手能力.
6.期刊论文陈爱萍.CHENAi-pingMATLAB在"数字信号处理"课程教学中的应用-湖南工程学院学报(自然科学版2005,15(3
"数字信号处理"是一门理论性和实践性都很强的课程,其概念抽象,计算量大.将MATLAB应用于"数字信号处理"课程教学中,对分析方法、算法及处理结果作现场仿真,丰富了教学内容和教学手段,使学生能直观地领会、理解数字信号处理的理论知识、分析方法和设计方法,提高教学质量.
7.期刊论文宁长春.陈天禄.索郎桑姆.胡海冰.厉海金数字信号处理中常用的matlab工具箱函数简介-西藏科技2007(12
本文就数字信号处理中所涉及到的一些典型MATLAB工具箱函数进行了简要的介绍,希望能为专门从事数字信号处理的人士,在使用MATLAB这门应用性工具方面,提供一些适当的帮助.
8.期刊论文李强.明艳.吴坤君.LIQiang.MINGYan.WUKun-jun基于MATLAB的《数字信号处理》辅助教学方法-重庆邮电大学学报(自然科学版2007,19(z1
针对数字信号处理课程教学的特点和MATLAB软件可视化编程和数值计算的优势,开发出能辅助《数字信号处理》教学演示系统,并编写MATLAB编程作业,既能丰富老师的教学手段,又能提高学生学习质量.
9.期刊论文李新.LIXinMATLAB在"数字信号处理"双语教学中的应用-电脑知识与技术(学术交流2007,1(4
针对MATLAB软件在国外高校和工程中的广泛应用,本文结合数字信号处理双语教学改革,将MATLAB引入双语教学,介绍了其在数字信号处理双语教学中的具体应用,以提高学生的学习效率与学习积极性,培养学生的创新能力.
10.期刊论文张萌.武攀基于Matlab的多采样率信号处理教学设计-电气电子教学学报2009,31(4
Matlab工具深入讨论多采样率数字信号处理的辅助教学,有助于加强学生对相关概念的理解,从而提高该课程的教学效果.本文链接:
下载时间:
2009年11月12日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MATLAB 数字滤波器 结构 实现 仿真
![提示](https://static.bingdoc.com/images/bang_tan.gif)