NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

フィルタ Express VIについて

解決済み
解決策を見る

添付した画像のように、

サンプル数1000の50Hzの波形1と、同じくサンプル数1000の20Hzの波形2があったときに、

その合成波に対してハイパスフィルタを掛け、50Hzの波形1だけを取り出したいのですが、仮にフィルタのカットオフ周波数を30Hzに設定したところ、以下の画像の通り

0 < f_low <= f_high <= fs/2という条件を満たす必要があります。

というエラーが発生し、実行することが出来ません。

 

50Hzの波形のみをハイパスフィルタで取り出すには、どのようにしたら良いのでしょうか。

根本的に間違っている部分もあるかもしれませんが、教えていただけると幸いです。

 

環境は下記の通りです。

LabVIEW2020(32bit日本語版)

 

viファイルも添付させていただきます。

 

プログラム概要プログラム概要フィルタフィルタエラーエラー

 

 

0 件の賞賛
メッセージ1/2
695件の閲覧回数
解決策
トピック作成者SaltyOnionが受理

デジタルフィルタにはサンプリング周波数の情報が必要です。スカラ配列にはその情報がないので、フィルタVIはデフォルト(1Hz)を使います。

 

方法はいくつかありますが、生成時に波形データタイプにして含めてしまうのがすっきりしていいと思います。情報はdt(ポイント間の時間差=サンプリング周波数の逆数)として含まれます。

 

メッセージ2/2
660件の閲覧回数