巴特沃斯高通数字滤波器Word格式文档下载.docx
《巴特沃斯高通数字滤波器Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《巴特沃斯高通数字滤波器Word格式文档下载.docx(17页珍藏版)》请在冰豆网上搜索。
2、数字滤波器的设计步
设计一个IIR数字滤波器主要包括下面5个步骤:
(1)确定滤波器要求的规范指标。
(2)选择合适的滤波器系数的计算(如图一流程图所示)。
(3)用一个适当的结构来表示滤波器(实现结构)。
(4)有限字长效应对滤波器性能的影响分析。
(5)用软件或硬件来实现滤波器。
友1法52友1
本次设讣的IIR数字滤波器系数的讣算是根据已知的模拟滤波器的特性转换到等价的数字滤波器。
本次设讣用双线性变换法得到数字滤波器。
而且,双线性变换法得到的数字滤波器保留了模拟滤波器的幅度响应特性。
频率变换法设计思想:
1、从归一化模拟低通原型出发,先在模拟域内经频率变换成为所需类型的模拟滤波器;
然后进行双线性变换,IIIS域变换到Z域,而得到所需类型的数字滤波器。
2、先进行双线性变换,将模拟低通原型滤波器变换成数字低通滤波器;
然后在Z域内经数字频率变换为所需类型的数字滤波器。
(1)设计要求
设计一个巴特沃斯数字高通滤波器,要求通带截止频率=°
,32;
rrad,通带衰减不大于ldB,阻带截止频率^=0,16;
Trad,阻带衰减不小于lodB
(2)确定数字高通的技术指标:
通带截止频率
op=032龙
rad,
通带最小衰减
竹=1
dB
叫=0.16^
阻带截止频率
阻带最大衰减
as=15
(3)将巴特沃斯高通数字滤波器的技术指标转换成巴特沃斯高通模拟滤波器的设计指标:
令T二2s,预畸变校正得到的模拟边界频率:
=tan—con=0・5494门/〃/s,2卩=tan—e,=0・2566s〃/s,
2s
(4)模拟低通滤波器的技术指标计算如下:
对通带边界频率归一化,山于本设
计的为ldB截止频率,所以
人二&
二1,Qp=1dB
把^_1和-带入'
求得归一化巴特沃斯低通滤波器的阻带截止频率为:
爲音i,…dp
(5)
设计归一化巴特沃斯模拟滤波器G(p)o
N=lgksp=3.1349
所以取\二4,根据巴特沃斯归一化低通滤波器参数表(见附录)可得归一化模拟低通原型系统函数G(p)为:
G(p)=—;
//+2.613//+3.4142/?
+2.6131p+l1(”2+0.7654”+l)(p2+1.8478p+1)
p—
(6)利用频率变换公式s将G(p)转换成模拟高通Hhp(s):
弘(s)=G(p)l侶"
p=—T-
S4-Q4/?
/?
+2.613Q3/?
/;
S+3.4142Q2/;
/zS2+2.6131Q7,/?
S3+S4
把5=°
5494代入此式可得:
0.0911+0.4333$+1.030552+1.4356?
+54
用双线性变换法将模拟高通转换成数字高通H⑵:
令71+乙
_0.3647-1,4587f1+2.188If2-1,4587f3+0.3647^aS止一1-2.057妒+1.8545尹-0.7895尹+0.133If1
二、软件仿真工具及实现环境简介1、计算机辅助设计方法
在优秀科技应用软件MATLAB的信号处理工具箱中提供了一整套模拟,数字滤波器的设计命令和运算函数,方便准确,简单容行使得设计人员除了可按上述传统设计步骤快速的进行较复杂高阶选频滤波器的讣算、分析外,还可通过原型变换直接进行各种典型数字滤波器设讣,即应用MATLAB设计工具从模拟原型直接变换成满足原定频域指标要求有数字滤波器。
2、MATLAB直接设计IIR巴特沃斯数字高通滤波器
MATLAB编程如1、:
fs=5000;
wp二800*2/fs;
ws=400*2/fs;
rp=l;
rs=15;
Nn=128;
[N,二buttord(wp,ws,rp,rs)
[b,a]=butter(N,wn,'
high'
)freqz(b,a,Nn,fs)
MATLAB运算结果如下:
N=4
wn=0.2388
b=0.3647-1.45872.1881-1.45870.3647
a=1.0000-2.05781.8545-0・78950.1331
三、滤波器结构对数字滤波器性能指标的影响分析1、HR系统的基本网络结构
IIR系统的基本网络结构有三种,即直接型、级联型和并联型。
N阶差分方程如下:
MN
y(〃)=x—Z)+工a.ty{n-i)
/=O;
=1
对应的系统函数为
M
Ph
H(z)=
1-
1=1
设Mh(二2,按照差分方程可以直接画出网络结构如下图(&
)所示。
图中第一部分系统函数用Q(z)表示,第二部分用HE表示,那么H⑵胡⑵血⑵,当然也可以写成H(z)=H2(z)H|(z),按照该式,相当于将下图@)中两部分流图交换位置,如下图(b)所示。
该图中节点变量wl=w2,因此前后两部分的延时支路可以合并,形成如下图(c)所示的网络结构流图,我们将下图(c)所示的这类流图称为IIR直接型网络结构。
M二N=2时的系统函数为
H⑵弋+处:
+E弓
对照下图(c)的各支路的增益系数与H(z)分母分子多项式的系数可见,可以直接按照H(z)画出直接型结构流图。
IIR网络直接型结构
IIIbz和az写出数字滤波器系统函数:
H⑵二
0.3647-1.4587Z-1+2.188『-14587八+0.3647^
1-2.0578Z"
+1・8545zJ-0.7895z‘+0・133『
有H(z)写出差分方程如下:
y(n)=2.0578),-l)-1.8545y(n-2)+O.7895y(〃—3)-0.133ly⑺-4)
+0.3647灾H.4587x(〃-l)+2.1881x(/「2)-1.4587x(”-3)+0.3647x(〃-4)直接型网络结构如下图:
n
0旅
vfn
在后面的分析中我们将发现,直接型系统对滤波器的性能控制作用不明显,极点对系数的变化不灵敬,易出现不稳定或较大误差,而且运算的累积误差较大。
因此,在设计时一般不选用直接型。
级联型结构是将系统传递函数H(z)写成具有实系数的二阶节的乘积。
将分子和分母多项式分解为各自的根,然后将一对复数共辄根(或者任意两个实数根)组合成二阶多项式。
在直接型表示的系统函数H(z)中,分子、分母均为多项式,且多项式的系数一般为实数。
现将分子、分母多项式分别进行因式分解,得到:
口(1—*)H(z)=4口(1-心)
/=!
上式中,A是常数;
Cr和dr分别表示H(z)的零点和极点。
由于多项式的系数是实数,Cr和dr是实数或者是共轨成对的复数,将共辘成对的零点(极点)放在一起,形成一个二阶多项式,其系数仍为实数;
再将分子、分母均为实系数的二阶多项式放在一起,形成一个二阶网络比⑵。
如下式:
Qoj+QljZ」+02jZ-2
~i=4^2-
]—dyZ_d2jZ
上式中表示一个一阶或二阶的数字网络的子系统函数,每个"
j(z)的网络结构均采用前面介绍的直接型网络结构,如下图所示,H(z)则由k个子系统级联构成。
一阶和二阶直接型网络结构
级联型的MATLAB的表示与实现:
将数字滤波器系统函数H(z):
0.3647-1.4587Z-1+2.188If2-1,4587f3+0.3647^
H(z二,;
7—
1-2.0578Z-1+1.8545f2-0.7895f3+0.133If4
用MATLAB转换成级联型的程序如下:
bz二[0.3647-1.45872.1881-1.45870.3647];
az二[1.0000-2.05781.8545-0.78950.1331];
[S,G]=tf2sos(bz,az)
freqz(bz,az)
说明:
[S,G]=tf2sos(bz,az):
实现直接型到级联型的变换。
B和A分别为直接型系统函数的分子和分母多项式系数向量。
返回L级二阶级联型结构的系数矩阵S和增益常数G。
1.19881.0000-0・89760.2272
0.83411.0000-1・16020.5859
S=1.0000-2.1807
1.0000-1.8190
G=0.3647
IIIS和G写出数字滤波器级联型系统函数:
级联型网络结构图
在级联型结构中,每一级分子的系数确定一对零点,分母的系数确定一对极点,因为子网络的零极点也即整体网络的零极点,所以整个系统的零极点都可以准确的山每一级的系数来调整和控制,这样便于调整滤波器的频率响应性能,其灵敬度特性优于直接型和正准型结构。
其次,级联结构具有最少的存储器。
并联支路的极点也是整个网络的极点,而并联支路的零点却不是整个网络的零点,因此并联网络能独立的调整系统的极点位置,但不能控制零点。
并联结构的灵敬度山于直接型和正准型,运算累积误差比级联型小。
如果将级联形式的H(z)展成部分分式形式,则得到:
H(z)=H1(z)+//2⑵+…+Hk⑵
对应的网络结构为这k个子系统并联。
上式中,Hi(z)通常为一阶网络或二阶网络,网络系统均为实数。
二阶网络的系统函数一般为
式中,0(”、卩百、a”和灯“都是实数。
如果久二色二0,则构成一阶网络。
由上式,其输出Y(z)表示为
Y⑵=H,⑵X(z)+H2⑵X(z)+…+比⑵X⑵
上式表明将x(n)送入每个二阶(包括一阶)网络后,将所有输出加起来得到输出y(n)o
在并联型结构中,每一个一阶网络决定一个实数极点,每一个二阶网络决定一对共轨极点,因此调整极点位置方便,但调整零点位置不如级联型方便。
另外,各个基本网络是并联的,产生的运算误差互不影响,不像直接型和级联型那样有误差积累,因此,并联形式运算误差最小。
山于基本网络并联,可同时对输入信号进行运算,因此并联型结构与直接型和级联型比较,其运算速度取咼。
四、有限字长运算在网络结构中对数字滤波器的影响1、运算量化效应对数字滤波器的影响
在实现数字滤波器时,将遇到相乘与求和运算。
在定点制运算中,每一次乘法运算之后都要作一次舍入(或截留)处理,研究定点实现相乘运算的流图如下图所示。
图(a)表示无限精度乘积y(n);
图(b)表示有限精度乘积》("
),[•】表示舍入运算。
采用统计分析方法时,可以将舍入误差作为独立噪声e(n)叠加在信号上,如图(c)所示。
X(n)a〉'
(〃)班〃)ay(n)卜]y(n)x(n)a
.a.L』》[
e("
)
a理想相乘b实际相乘的非线性流图c统计模型的线性流
图
定点相乘运算的流图表示
显然,釆用统讣分析方法后,实际的输出可以表示为:
y(n)=y(n)+e(n)
对于舍入处理,e(n)的均值为零,方差为:
现在以一个一阶IIR巴特沃斯数字高通滤波器为例来讨论分析方法。
表示其输
入与输出关系的差分方程为
式中Ia|<
lo它含有乘积项这将引入一个舍入噪声,其统计分析流
图示于下图。
一阶IIR滤波器的幅频特性整个系统可以当作线性系统来处理。
输出噪声勺是山噪声源e(n)造成的输岀误差,可山量化误差通过线性系统的方法求得输出噪声。
山于e(n)叠加在输入端,因此
ef(n)=e(n)*fi(n)=e(ri)*anu(ri)
式中h(n)=anu(n)是一阶系统的单位脉冲响应,山式
00X00
<
7~=工工=o■:
工、
吩()山吩0(巧为输出噪声方差)
bF•占护(zW(z
可求得输出噪声的方差
8
bf=比2^a
"
7=0
式中H(z)为一阶IIR系统的传递函数,即
H⑵二丄
z-a
有此可以求得
2=21二g2二2也5_61—“2-12(1一/)_3(1_C?
)(q=2~h)
山此可见,字长b越大,数字滤波器输出端的噪声越小。
2、参数的字长对数字滤波器性能指标的影响2.1、系数量化对数字滤波器的影响
系统对输入信号进行处理时需要若干参数或者称为系数,这些系数都要存储在有限位数的寄存器中,因此存在系数的量化效应。
系数的量化效应误差直接影响系统函数的零、极点位置,如果发生了偏移,会使系统的频率响应偏移理论设讣的频率响应,不满足实际需要。
下面分析系数量化误差对极零点位置的影响。
如果极零点位置改变了,严重时不仅IIR系统的频率响应会发生变化,还会影响系统的稳定性。
因此研究极点位置的改变更加重要。
为了表示系数量化对极点位置的影响,引入极点位置灵敬度的概念,所谓极点灵敬度,是指每个极点对系数偏差的敬感程度。
相应的还有零点位置灵敬度,分析方法相同。
下面讨论系数量化对极点位置的影响。
现分析一个X阶直接型结构的IIR滤波器的传递函数
H⑺=
1-
k=\
上式表示了一个'
阶直接型结构的IIR数字滤波器的系统函数,该滤波器的极点都在单位圆内聚集在Z二1附近。
系数灸和bk必须用有限位二进制数进行量化,存储在有限长的寄存器中,经过量化后的系数误差为△吐和△br,量化后的系数用"
,和即
ar-ar+Aar
br=br+A/?
r
则实际的系统函数可表示为:
H⑵二
1-£
处"
显然,系数量化后的频率响应已不同于原来设计的频率响应。
用直接型结构来实现该滤波器时,系数dk和bk都将直接出现在信号流程图中,其中dk影响着极点的位置。
当山于系数量化误差使一个极点从单位圆内移动到单位圆上或单位圆外时,滤波器的稳定性即受到破坏。
所以,只要有一个系数III于量化产生很微小的误差,就有可能使系统失去稳定。
反馈支路的阶次'
越高,使滤波器失去稳定的系数量化误差的绝对值就越小,则越容易使滤波器变得不稳定。
设滤波器的传输函数HQ,系数宓和bk经舍入量化后为△①.
■
和这里△吐和Abr是量化误差。
分母多项式有'
个极点,用几(i二1,2,…N)表示。
这样,实际的滤波
器的传输函数为:
H⑵=
1-£
心厂
上式中,是第i个极点的偏差,称为极点误差,它应该和各个系数偏差都
有关,
它和各系数偏差的关系用下式表示:
z=i-^^akk=lCak
opj
上式中,认的大小决定着系数绞的偏差△©
对极点偏差勾入的影响程度。
8Pi如
加£
越大,人纨对△门影响也越大。
称欣"
为极点卩对系数变化的灵敏度。
五、运用MATLAB的辅助工具FDATOOL画出系统函数图勺
系统函数系数向量经过1位二进制舍入量化前后幅频特性和相位响应
系统函数系数向量经过4位二进制舍入量化前后幅频特性和相位响应
Filter#1:
QuantizedZerosFilter^;
ReferenceZerosFilter#1:
QuantizedPoles
Filter#1:
ReferenceZeros
-2.5-2-1.5-1-0.500.511.522.5
RealPart
-1
creu&
eE-
系统函数系数向量经过1位二进制舍入量化前后零极点特性图
—role/ZeroPlot
系统函数系数向量经过4位二进制舍入量化前后零极点特性图
由MATLAB运算1位和4位二进制舍入量化后结果可以看出,因为系数的量化,使极点位置发生变化,系数量化的相对误差(p-pq)不到10%,极点位置的相对误差&
P达到了70%。
问题不但是数量的变化,算一下极点的模,可以发现所有根的模都变大了,说明量化后的极点离单位圆稍远一些,如系统函数系数向量经过1和4位二进制舍入量化前后的零极点特性图如图(c)、(d)所示。
这致使数字高通滤波器的幅频特性降低,运用MATLAB的辅助工具FDATOOL画出1位和4位量化墙后的幅频特性曲线分别如图(a)、(b)中的实线和虚线所示,这说明山于系数量化效应,使极点位置发生了变化,从而改变了原来设计的频率响应特性。
另外,我们还注意到4位二进制舍入量化后极点都在单位圆内部,但在系统函数系数向量经过1位二进制舍入量化后,原来较小的系数相对误差变化较大,使滤波器性能偏离原设讣指标要求,使本来稳定的系统变成了不稳定滤波器。
从以上分析可以看岀,系数的量化效应误差直接影响系统函数的零、极点位置,如果发生了偏移,会使系统的频率响应偏移理论设讣的频率响应,不满足实际需要。
因此,在设计滤波器的时候应尽量选择合理的系数量化,以减小量化误差,以便设计出较为理想的实用滤波器。
六、设计心得:
在课设之前,我对MATLAB软件,特别是滤波器设计中的函数基本上处于一种模糊状态。
但是通过与同学不断的交流,最后完成了这次课设,对滤波器的设计有了比较清楚的了解。
这次课设的完成,真的不太容易。
我的理论基础不是很扎实,所以完成起来要比其他同学费劲。
在课程设计的过程中,我学到了很多东西,比如设计滤波器的一些基本函数的用法,各种模拟滤波器的特性,设讣滤波器的一些基本方法。
但更为重要的是,我对于解决一个问题的思路更加清晰,找到了属于自己的方法。
当然,在设计的过程中,不可能避免的遇到了很多问题,如刚开始思路比较混乱,没有明确的方向。
也III于一些基本的概念了解的不够清楚,比如模拟频带变换,我理解为是做模拟滤波器,而老师的课程设讣题上有一句话似乎要求是要做数字滤波器。
所以,在这个问题上,走了很多弯路。
但通过与同学交流终于弄清楚数字滤波器而不是模拟滤波器。
模拟频带变换只不过是一种变化方式或者说一种变化过程。
是山模拟低通变为模拟高通,再山模拟高通变为数字高通的过程。
总的来说,这次课程设计让我对MATLAB有了更深刻的了解,对数字滤波器的设计流程有了大致的了解,掌握了一些设计滤波器的基本方法,提高了理论用于实践的能力,掌握了更多专业相关的使用知识与技能。
同时,也暴露了我很多的不足,在以后的学习中,将进一步发现并克服缺点。