Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

フィルター デザイナー

アルゴリズムの選択から始めるフィルターの設計

説明

フィルター デザイナー アプリによって、デジタル フィルターを設計および解析できます。また、既存のフィルター設計をインポートおよび変更できます。

このアプリを使用して以下ができます。

  • 応答タイプとフィルター設計法の選択

  • フィルター設計仕様の設定

  • フィルター設計の解析、編集、最適化

  • フィルター設計のエクスポートまたは MATLAB® コードの生成

詳細については、フィルター デザイナーの紹介を参照してください。

DSP System Toolbox™ 製品がインストールされている場合、フィルター デザイナーは高度なフィルター設計法とフィルターの量子化機能を統合します。詳細については、filterDesigner (DSP System Toolbox)を参照してください。

メモ

このアプリを使用するには、画面解像度が 640 × 480 より大きくなければなりません。

Filter Designer app

フィルター デザイナー アプリを開く

  • MATLAB ツールストリップ: [アプリ] タブの [信号処理と通信] でアプリのアイコンをクリックします。

  • MATLAB コマンド プロンプトで、filterDesigner と入力します。

すべて展開する

フィルター デザイナーアプリを使用して、1 kHz でサンプリングされた信号で使用される 50 次等リップルの FIR バンドパス フィルターを作成します。

N = 50;
Fs = 1e3;

パスバンドの周波数の範囲を 200 ~ 300 Hz で指定し、いずれかの側の遷移領域の幅を 50 Hz に指定します。

Fstop1 = 150;
Fpass1 = 200;
Fpass2 = 300;
Fstop2 = 350;

次のように最適化適合の重みを指定します。

  • 低周波数阻止帯域に 3

  • パスバンドに 1

  • 高周波数阻止帯域に 100

フィルター デザイナーアプリを開きます。

Wstop1 = 3;
Wpass = 1;
Wstop2 = 100;

filterDesigner

アプリを使用してフィルターの残りの部分を設計します。周波数制約と振幅仕様を指定するには、作成した変数を使用します。

  1. [応答タイプ][バンドパス] に設定します。

  2. [設計法][FIR] に設定します。ドロップダウン リストから [等リップル] を選択します。

  3. [フィルター次数] で次数に N を指定します。

  4. [周波数仕様] で、[Fs]Fs を指定します。

  5. [フィルター設計] をクリックします。

次の区分的周波数応答で FIR フィルターを設計します。

  • 0 と 0.19π ラジアン/サンプルの間の正弦波。

    F1 = 0:0.01:0.19;
    A1 = 0.5+sin(2*pi*7.5*F1)/4;
  • 0.2π ラジアン/サンプルと 0.78π ラジアン/サンプルの間の区分的線形セクション。

    F2 = [0.2 0.38 0.4 0.55 0.562 0.585 0.6 0.78];
    A2 = [0.5 2.3 1 1 -0.2 -0.2 1 1];

  • 0.79π ラジアン/サンプルとナイキスト周波数の間の 2 次セクション。

    F3 = 0.79:0.01:1;
    A3 = 0.2+18*(1-F3).^2;

フィルター次数を 50 に指定します。周波数ベクトルと振幅ベクトルを統合します。最適化適合時にすべての帯域に等しい重みを与えるには、すべての重みベクトルを 1 に指定します。フィルター デザイナーアプリを開きます。

N = 50;

FreqVect = [F1 F2 F3];
AmplVect = [A1 A2 A3];
WghtVect = ones(1,N/2);

filterDesigner

アプリを使用してフィルターを設計します。

  1. [応答タイプ] で、[微分器] の横のボタンを選択します。ドロップダウン リストから [任意振幅] を選択します。

  2. [設計法][FIR] に設定します。ドロップダウン リストから [最小二乗] を選択します。

  3. [フィルター次数] で、変数 N に次数を指定します。

  4. [周波数と振幅の仕様] で、作成した変数を指定します。

    • 周波数ベクトルFreqVect

    • 振幅ベクトルAmplVect

    • 重みベクトルWghtVect

  5. [フィルター設計] をクリックします。

  6. プロットの y 軸を右クリックし、[振幅] を選択して、振幅応答を線形単位で表します。

関連する例

R2006a より前に導入