- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
格式:有如下7种格式:
①[h,w]=freqz(b,a,n)
----得到滤波器n点的频率响应,这n点均匀分布在单位 圆的上半圆(0-π)。h中为频率响应H(f),w中为这n点的 频率。(缺省n=512) ② [h,f]=freqz(b,a,n,Fs) ----得到滤波器n点的频率响应,这n点均匀分布在单位 圆的 (0-Fs/2)范围内。h中为频率响应H(f),f中为这n点 的频率(Fs 和f以Hz为单位)。
butter
cheby1 cheby2 ellip yulewalk
Butterworth(巴特沃斯)滤波器的设计*
Chebyshev(切比雪夫)I型滤波器的设计 Chebyshev(切比雪夫)II型滤波器的设计 椭圆滤波器的设计 递归数字滤波器的设计
(1)butter函数 功能:Butterworth模拟和数字滤波器的设计。 (只讲数字滤波器的设计) 格式:[b,a]=butter(n,Wn,’ftype’) 说明:b、a---所要求的滤波器系数; n-------滤波器阶数; Wn----截止频率,即幅值下降1/√2处的频率。 此处,Wn∈[0,1],Wn=1相当于0.5fs。 ‘ftype’--类型:无--低通或带通(Wn=[w1 w2]); ‘high’--高通; ‘stop’且Wn=[w1 w2]---带阻。
第四章 数字滤波器
§4-1 数字滤波器的实现
1.数字滤波器的传递函数
•卷积滤波器(FIR滤波器):
ˆ ( z) H
i h z i i 0 N
•递推滤波器(IIR滤波器):
ˆ ( z) H
i h z i
N
1 g i z i
i 1
i 0 L
•综合以上两式,数字滤波器的一般表达式:
求频率特性。(ex42.m)
2.数字滤波器的脉冲响应函数 impz
格式:有如下4种格式:
①[h,t]=impz(b,a)
----得到滤波器的脉冲响应h,取样点数n由impz函数 自动选取并记录在t中(t=[0:n-1]’)。 ② [h,t]=impz(b,a,n) ----得到滤波器在指定点的脉冲响应h。当n为标量时, t= [0:n-1]’;当n为矢量时(其值应为整数),则t=n,即在 这些指定的点计算脉冲响应h。
③ [h,w]=freqz(b,a,n,’whole’) ----得到滤波器n点的频率响应,这n点均匀分布在单 位圆上 (0-2π) 。h中为频率响应H(f),w中为这n点的 频率。
④[h,f]=freqz(b,a,n,’whole’,Fs) ----得到滤波器n点的频率响应,这n点均匀分布在单 位圆上0-Fs的范围内 。h中为频率响应H(f),f中为这n 点的频率(Fs 和f以Hz为单位)。 ⑤h=freqz(b,a,w) ----得到滤波器在矢量w所给定频率上的频率响应。 注:w所给定频率必须在0-2π的范围内 。h中为频率 响应H(f)。
length(b)函数得到b的长度。
(3)filtfilt函数 格式:y=filtfilt(b,a,x)
功能:零相位滤波器。先将数据按顺序滤波,再将结 果逆转后反向通过滤波器,可得到零相位失真。
例4.1 对比上述几种滤波器。(ex41.m)
§4-2 数字滤波器的分析
1.数字滤波器的频率响应函数 freqz
求脉冲响应。(ex43.m)
3.数字滤波器的零极点图 zplane
格式:有如下3种格式:
① zplane(z,p)
----在z平面上画出系统的零点z(用‘o’表示)和极点p (用‘x’表示),并画出单位圆。 ② zplane(b,a) ----在z平面上画出用分子b和分母a表示的系统的零点 (用‘o’表示)和极点 (用‘x’表示),并画出单位圆。
③ [h,t]=impz(b,a,n,Fs) ----得到滤波器在指定点的脉冲响应h。取样间隔为1/Fs。
④不带输出变量的impz函数用stem(t,h)画出脉冲响应特 性曲线。 例4.3 对一数字滤波器
0.2 0.1z 1 0.3z 2 0.1z 3 0.2 z 4 H ( z) 1 1.1z 1 1.5 z 2 0.7 z 3 0.3z 4
⑥ h=freqz(b,a,f,Fs) ----得到滤波器在矢量f所给定频率上的频率响应。注: f所给定频率必须在0-Fs的范围内 。h中为频率响应 H(f)。
⑦不带输出变量的freqz函数画出幅频和相频特性曲线。
例4.2 对一数字滤波器
0.2 0.3z 1 z 2 H ( z) 1 0.4 z 1 z 2
1 2 N b ( 1 ) b ( 2 ) z b ( 3 ) z b ( N 1 ) z ˆ ( z) H 1 a(2) z 1 a(3) z 2 a( L 1) z L
注:Matlab的向量下标是从1开始的,故此处从b(1)开始
记向量 b=[b(1) b(2) b(3) …… b(N+1)] a=[1 a(2) a(3) …… a(L+1)] 则一个滤波器完全由向量a、b决定。
特例:a=1 时,为FIR滤波器。
2.滤波器函数
(1)filter函数 格式:y=filter(b,a,x) 功能:用给定的b、a作为滤波系数构成滤波器,对x进 行滤波,结果放在y中,长度为max(na,nb)。
注:既适用于IIR,也适用于FIR滤波器(a=1)。
(2)fftfilt函数 格式:①y=fftfilt(b,x) ②y=fftfilt(b,x,n) 功能:基于FFT的FIR滤波器 ①用给定的b作为滤波系数构成FIR滤波器,对x 进行滤波,结果放在y中。 ②用给定的b作为滤波系数构成FIR滤波器,对x 进行滤波,结果放在y中。其中FFT的长度为 nfft=2^nextpow2(n); 数据长度为nfft-length(b)+1. 注: nextpow2(n)函数得到大于n且与n最接近的2的幂。 如nextpow2(33)=6; nextpow2(32)=5
③ [hz,hp,ht]=zplane(z,p) ----返回三个句柄矢量:零点线句柄hz;极点线句柄 hz;坐标轴、单位圆及文本句柄ht。
例4.4在z平面上画出上例的零极点图。(ex44.m)
§4-3 数字滤波器的设计
1.递推滤波器(IIR)的设计
可以设计如下的模拟和数字滤波器:
besself Bessel(贝塞尔)模拟滤波器的设计