一阶为一次方,二阶为二次方,等等;
从一个滤波电路看,阶数的简单判断,数与频率有关的元件(电容、电感)个数,有几个就是几阶;
电路结构形式大致有T形,π形等;图中为双T网络构成的二阶无源RC带阻滤波器,其中上面二个R1和C1构成一阶低通滤波器,它只容许低通滤波器截止频率以下低频率信号通过,让Ui输入端过来的超过这个低通滤波器截止频率以上的高频率信号通过电容C1入地而衰减。下面二个电容C2和R1构成一阶高通滤波器,它只容许这个高通滤波器截止频率以上的高频率信号通过,低于这个高通滤波器截止频率以下的低频率信号不能通过。在这个二阶无源RC带阻滤波器上、下二个截止频率点之间的频率被阻止通过,也可以说在这个二阶无源RC带阻滤波器上、下二个截止频率点之间的频率被陷波。(带阻滤波器的另一个名字也叫陷波滤波器)使用Matlab的Filter设计工具即可。
使用带通滤波器,阻带1是100Hz,阻带2是8KHz,衰减60dB以上。有了这些参数可以使用自动化工具FDAtool得出其他参数。
%设计数字巴特沃斯带通滤波器,
%通带025pi rad<w<045pi
%通带最大衰减为3dB,阻带最小衰减为40dB
%阻带范围0<w<015pi,055pi<w<pi
clc;
clear all;
close all;
wp=[025,045];
ws=[015,055];
rp=3;
rs=40;
[N,wc]=buttord(wp,ws,rp,rs);
[B,A]=butter(N,wc);//这里的N是最低阶数,我想将N改变一下就可以了吧
plot(linspace(0,pi,1024),20log10(abs(freqz(B,A,1024))))
grid on;
xlabel('\\omega(0,pi)');
ylabel('dB');
title('滤波器衰减函数曲线图');
模拟频率和数字频率转换关系:
w=2pif/Fs;
我想这样也行吧:
wc=wp(10^(01ap)-1)^(-1/(2N))
wc为中心频率;
wp为通带截止频率
ap为通带衰减;
N为滤波器阶数
再用[B,A]=butter(N,wc)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)