如何确定巴特沃斯过滤器的顺序和截止值?

How to determine order and cut-off of butterworth filter?

提问人:RealSignal 提问时间:9/12/2023 最后编辑:RealSignal 更新时间:9/12/2023 访问量:92

问:

我正在尝试设计最佳的高通滤波器,以消除信号中的毛刺。一开始,我尝试在正弦 5 Hz 信号上应用巴特沃斯高通滤波器。

% Sample rate and time vector
Fs = 1000;            % Sampling frequency (Hz)
t = 0:1/Fs:1;         % Time vector (1 second duration)

% Create a simple signal with a glitch
signal = sin(2*pi*5*t);               % A sine wave at 5 Hz
signal(500:510) = signal(500:510) + 2; % Introduce a glitch

% Define high-pass filter characteristics
cutoff_frequency = 4; % Cutoff frequency (Hz)
order = 8;            % Filter order

% Design and apply the high-pass filter
[b, a] = butter(order, cutoff_frequency / (Fs/2), 'high');
filtered_signal = filter(b, a, (signal));

订货 8,截止频率 4 Hz

在这种情况下,一切似乎都很好,过滤器运行良好。然而,将截止频率更改为 3 Hz 以下会使一切变得复杂。

订货 8,截止频率 2 Hz

我不明白为什么输出信号会急剧失真。这是怎么回事?你对这个问题有什么建议吗?

滤波 信号处理 频率分析 巴特沃斯

评论

1赞 Matt Timmermans 9/12/2023
请参阅“限制”:mathworks.com/help/signal/ref/butter.html#bucsfmj
0赞 RealSignal 9/15/2023
那么,这是一种数值问题。在设计IIR滤波器时,由于从连续空间(s平面)到离散空间(z平面)的转换,零极点设计更加方便。谢谢你的建议。

答: 暂无答案