- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用MATLAB设计滤波器
用MATLAB设计滤波器
1 IIR滤波器的设计
freqz
功能:数字滤波器的频率响应。
格式:
[h,w]=freqz(b,a,n)
[h,f]=freqz(b,a,n,Fs)
[h,w]=freqz(b,a,n,whole)
[h,f]=freqz(b,a,n,whole,Fs)
h=freqz(b,a,w)
h=freqz(b,a,f,Fs)
freqz(b,a)
说明:
freqz用于计算由矢量和b构成的数字滤波器
H(z)==
的复频响应H(jω)。
[h,w]=freqz(b,a,n)可得到数字滤波器的n点的幅频响应,这n个点均匀地分布在
上半单位圆(即0~π),并将这n点频率记录在w中,相应的频率响应记录在h中。至于n
值的选择没有太多的限制,只要n0的整数,但最好能选取2的幂次方,这样就可采用
FFT算法进行快速计算。如果缺省,则n=512。
[h,f]二freqz(b,a,n,Fs)允许指定采样终止频率Fs(以Hz为单位),也即在0~Fs/2
频率范围内选取n个频率点(记录在f中),并计算相应的频率响应h。
[h,w]=freqz(b,a,n,whole)表示在0~2π之间均匀选取n个点计算频率响应。
[h,f]=freqz(b,a,n,whole,Fs)则在O~Fs之间均匀选取n个点计算频率响应。
h=freqz(b,a,w)计算在矢量w中指定的频率处的频率响应,但必须注意,指定的频
率必须介于0和2π之间。
h=freqz(b,a,f,Fs)计算在矢量f中指定的频率处的频率响应,但指定频率必须介于
0和Fs之间。
butter
功能:Butterworth(比特沃思)模拟和数字滤波器设计。
格式:有六种
[b,a]=butter(n,Wn)
[b,a]=butter(n,Wn,ftype)
[b,a]=butter(n,Wn,s)
[b,a]=butter(n,Wn,ftyPe,s)
[z,p,k]=butter(…)
[A,B,C,D]=butter(…)
说明:
butter函数可设计低通、带通、高通和带阻的数字和模拟滤波器,其特性为使通带内
的幅度响应最大限度地平坦,这会损失截止频率处的下降斜度。在期望通带平滑的情况
下,可使用butter函数,但在期望下降斜度大的场合,应使用椭圆和Chebyshev(切比雪夫)
滤波器。
butter函数可设计出数字域和模拟域的Butterworth滤波器。
(1)数字域
[b,a]=butter(n,Wn)可设计出截止频率为Wn的n阶低通Butterworth滤波器,其
滤波器为
H(z)= =
截止频率是滤波器幅度响应下降至1/处的频率,Wn∈[0,1],其中1相应于0.5fs(取样
频率,即Nyquist频率)。
当Wn=[Wl W2](WlW2)时,butter函数产生一2n阶的数字带通滤波器,其通带
为WlωW2。
[b,a]=butter(n,Wn,ftype)可设计出高通或带阻滤波器:
·当ftype=high时,可设计出截止频率为Wn的高通滤波器;
·当ftype=stop时,可设计出带阻滤波器,这时Wn=[Wl W2],且阻带为WlωW2
利用输出变量个数的不同,可得到滤波器的另外两种表示:零极点增益和状态方程。
·[z,p,k]=butter(n,Wn)或[z,p,k]=butter(n,Wn,ftype)可得到滤波器的零
极点增益表示;
·[A,B,C,D]=butter(n,Wn)或[A,B,C,D]=butter(n,Wn,ftype)可得到滤
波器的状态空间表示。
(2)模拟域
[b,a]=butter(n,Wn,s)可设计截止频率为Wn的n阶低通模拟Butterworth滤波
器为
H(s)= =
其中截止频率Wn0。
模拟域的butter函数说明与数字域的完全相同,它也有六种形式。
例1:设数据采样频率为900Hz,现要设计一9阶的高通Butterworth滤波器,截止频率为300Hz。
%ex104.m
[b,a]=butter(9,300/500,high);
freqz(b,a,128,1000)
例2:设计一10阶的带通Butterworth滤波器,带通为100--200 Hz,并画出滤波器的冲击响应。
%ex105.m
n=5;
Wn=[100 200]/500;
[b,
文档评论(0)