4.4 关于MATLAB函数的一些其他的用法
在前面模拟低通滤波器的设计中,用到了buttord, butter, cheb1ord,cheby1, cheb2ord, cheby2等函数。实际上,这些函数还可以直接进行数字滤波器的设计,如下例。
例4.12 设计butterworth低通滤波器。
MATLAB程序如下:
输入:Wp =[0.2, 0.7] ,Ws =[0.1, 0.8] ,Rp =0.01,Rs =0.1,得到的滤波器如图4-19所示。
图4-19 例4.12设计的butterworth低通滤波器
b, a为其分子、分母的系数向量,其值如下:
MATLAB中下面两个函数的用法和前面模拟滤波器的设计相同:
[N, Wn]= buttord(Wp, Ws, Rp, Rs)
[b, a]= butter(N, Wn)
注意:在函数的参数中少了’ s’ 。此时表示得到的b, a直接是数字滤波器Z变换的分子、分母系数向量。
同样,其他的函数也有类似的用法。
这里还可以用buttord, butter, cheb1ord, cheby1, cheb2ord, cheby2等函数直接设计高通、带通、带阻数字滤波器,此时只需要修改输入参数中的Wp和Ws使之成为一个向量,便可设计带通、带阻滤波器。关于这几个函数的具体介绍请参考MATLAB的帮助,在此不再赘述。
习题
4.1 设计一个巴特沃斯型模拟滤波器,并用MATLAB验证结果,要求通带截至频率fp=5 kHz,通带的最大衰减αP= 3 dB,阻带截止频率fs= 10 kHz,阻带最小衰减αs=30 dB。
4.2 编写MATLAB程序,设计一个切比雪夫模拟低通滤波器,通带截止频率fp=5 kHz,阻带截止频率fs=10 kHz,通带衰减大于30 dB,要求画出滤波器的频率响应曲线,并写出其系统函数。
4.3 设计一个巴特沃斯型高通滤波器,并用MATLAB模拟结果,通带截止频率fp= 200 Hz,阻带截止频率fs= 100 Hz,通带的最大衰减为αp= 3 dB,阻带的最小衰减αs=15 dB。
4.4 设计一个数字带同滤波器,并用MATLAB验证结果,要求通带为300~400 Hz,通带最大衰减为3 dB,在200 Hz以下500 Hz以上衰减不小于18 dB,抽样频率为2000 Hz。
4.5 一个数字系统的抽样频率为1000 Hz,已知该系统收到频率为100 Hz噪声的干扰,设计一个数字带阻滤波器去掉该噪声。要求3 dB的带边频率为95 Hz和105 Hz,阻带衰减不小于14 dB。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。