数字信号处理matlab相关基础例题(7)

本文通过MATLAB详细介绍了如何设计不同类型的数字滤波器,包括使用Buttord函数设计低通巴特沃斯滤波器,以及利用Cheb1ord和Cheby1函数构建带通滤波器。同时,文章还阐述了如何设计针对特定信号xa(t)的IIR数字滤波器,并展示了输入输出信号的处理过程和波形图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

无限长冲激响应滤波器

试调用Buttord函数设计一个低通巴特沃斯数字滤波器,要求通带截止频率wp=30hz,阻带截止频率ws=35hz,通带衰减不大于Rp=0.5dB,阻带衰减不小于Rs=40dB,抽样频率Fs=100hz。

butterworth滤波器,设计方法:
(1)双线性变换法;(2)冲激响应不变法
buttord函数,输入参数为归一化参数,wp,ws,rp,rs,‘z’,,输出为butterworth滤波器的阶数以及3dB截止频率,n,Wn
butter函数,,升成一个n阶的巴特沃斯滤波器,输入参数为n,Wn,为buttord的输出参数,输出为滤波器系数,,即filter(B,A,x)中的B和A
freqz函数,生成滤波器频率响应函数,返回幅值响应H和相位响应W

%Butterworth滤波器的设计
%技术指标:通带截止频率wp=30hz,阻带截止频率ws=35hz。
%通带衰减不大于Rp=0.5dB,阻带衰减不小于Rs=40dB,抽样频率Fs=100hz。
wp=30;ws=35;Fs=100;rp=0.5;rs=40;%按技术要求依次定义就完事
[n,Wn]=buttord(wp/(Fs/2),ws/(Fs/2),rp,rs,'z');%计算butterworth滤波器的阶数以及3dB截止频率
%buttord函数中的wp与ws均为归一化值,取值范围在[0 , 1]之间
[num,den]=butter(n,Wn);%butter为生成一个n阶的巴特沃斯滤波器,Wn为3dB截止频率
%butter输出为滤波器系数,即filter(B,A,x)中的B和A
[H,W]=freqz(num,den);%freqz是滤波器频率响应函数,分别返回幅值响应和相位响应
plot(W*Fs/(2*pi),abs(H));grid;
xlabel('频率/Hz');
ylabel('幅值');

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值