【问题标题】:Cutoff frequencies to use in a bandpass butterworth filter in Matlab?在 Matlab 的带通巴特沃斯滤波器中使用的截止频率?
【发布时间】:2015-02-18 16:52:27
【问题描述】:

我正在尝试将两个不同频率的正弦波加在一起,然后使用巴特沃斯滤波器再次将它们分开。我无法弄清楚将高截止和低截止设置为什么。这是我一直在玩的代码。

x = 0:.1:40*pi;

% Plot sine wave
subplot(3,1,1)
plot(x, sin(x));
ylim([-2 2])

wave = sin(x) + 2*cos(x/3);

% Plot mixed wave
subplot(3,1,2)
plot(x, wave);

[c d] = butter(5, [.02 .05]);
y2 = filtfilt(c, d, wave);

% Plot recovered wave
subplot(3,1,3)
plot(x, y2);

如果我只是想获得正常的正弦波,频率不是 0.1/(2*pi) 还是 ~0.016?在手动尝试截止值后,我发现 0.02 和 0.05 给了我想要的。但是 0.016 超出了这个范围。

我做错了什么?

【问题讨论】:

    标签: matlab signal-processing


    【解决方案1】:

    您的采样频率似乎是 10Hz(x = 0:.1:40*pi; 所以dt0.1s)。所以0.02截止对应0.02*2*pi*10 = 1.25 rad/s0.2 Hz

    【讨论】:

      猜你喜欢
      • 2014-03-18
      • 1970-01-01
      • 1970-01-01
      • 2017-04-26
      • 2015-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多