连续传递函数G(s)
离散传递函数G(z)
差分方程形式
二阶巴特沃斯滤波器参数设计
设计采样频率100Hz,截止频率33Hz。
注意:设计参数使用在离散系统中!
同理,其他不同阶数不同类型的滤波器设计,如二阶高通滤波器、二阶带通滤波器等,使用离散形式写成Matlab或C语言进行使用。
二阶巴特沃斯滤波器比一阶巴特沃斯滤波器的滤波效果更好
function y = fcn(u)
persistent Y_k2;
persistent Y_k1;
persistent X_k2;
persistent X_k1;
% 采样频率100Hz,截止频率20Hz
c = 0.2065720856; % 分子系数1
d = 2*0.2065720856; % 分子系数2
e = 0.2065720856; % 分子系数3
a =-0.3695273697; % 分母系数1
b = 0.1958157122; % 分母系数2
if isempty(Y_k2)
Y_k2 = 0;
end
if isempty(Y_k1)
Y_k1 = 0;
end
if isempty(X_k2)
X_k2 = 0;
end
if isempty(X_k1)
X_k1 = 0;
end
y = -a * Y_k1 - b * Y_k2 + c * u + d * Y_k1 + e * X_k2;
Y_k1 = y;
Y_k2 = Y_k1;
X_k1 = u;
X_k2 = X_k1;