バターワースのバンドバスフィルタ 

15 views (last 30 days)
neshin
neshin on 25 Oct 2018
Commented: neshin on 28 Oct 2018
Fc1=0.5;
Fc2=50;
N = 30;
バターワースでローカット周波数0.5Hz ハイカット周波数60Hzの バンドパスフィルタですが、フィルタの遅延を補正すう方法を教えていただきたいです。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Hd = butter(Fc1,Fc2,N);
freqz(Hd);
filt_data = filter(Hd, buttLoop); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
filt_data = filter(Hd, buttLoop);
filterの関数を
filt_data = filtfilt(Hd, buttLoop);
に変更すればよいのでしょうか。
ノッチフィルタではfiltfiltで上手く補正できたのですが。
このようなエラーが出ます。
エラー: filtfilt (line 78)
入力引数が不足しています。
エラー: tougou3 (line 84)
filt_data = filtfilt(Hd, buttLoop);
もし、ご存知の方がいたら教えてください。

Accepted Answer

Hirokazu Tanaka
Hirokazu Tanaka on 25 Oct 2018
Fc1=0.5;
Fc2=50;
N = 30;
Hd = butter(Fc1,Fc2,N);
は、実行すると
エラー: butter (line 62)
カットオフ周波数は (0,1) の区間内になければなりません。
とのエラーになりますが、
Hd = butter(Fc1,Fc2,N);
は自作の関数でしょうか?それとも https://jp.mathworks.com/help/signal/ref/butter.html ?
  3 Comments
neshin
neshin on 28 Oct 2018
ありがとうございます。 参考にさせて頂きます。

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!