我正在尝试在Matlab中设计一个低通滤波器:
fc = 100; % Cutoff frequency
fs = 4020; % Sampling frequency
w_norm = 2*fc/fs;
filter_order = 1;
[num,denom] = butter(filter_order,w_norm)
sys = tf(num, denom)
[z,p,k] = zpkdata(sys)
Matlab给了我一个极点:
s = 0.8541
我的问题是:
非常感谢。
答案 0 :(得分:1)
默认情况下,butter
会生成离散时间过滤器设计。因此,传递函数是根据 z (z变换)定义的,而不是 s (拉普拉斯变换)。
n 阶的离散时间Butterworth滤波器在 z = - 1且 n <时 n - 阶零/ em>单位圆内的极点。这与您的结果一致。 (相比之下,连续时间巴特沃斯滤波器在无穷远处具有 n - 阶零,在左手单位半圆中具有 n 极点。)