主要内容

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

実践に即したデジタルフィルター設計の紹介

この例では、信号处理工具箱®製品の関数设计过滤器を使用する,周波数応答仕様に基づいた冷杉およびIIRフィルターの設計法を説明します。ローパスフィルターのみを取り上げますが,結果の大部分は他の応答タイプにも該当します。

この例ではデジタル フィルターの適用でなく、その設計に焦点を合わせて説明します。デジタル フィルターの適用についての詳細は、実践に即したデジタル フィルター処理の紹介の例を参照してください。

冷杉フィルターの設計

ローパス フィルターの仕様

理想的なローパス フィルターは、信号のすべての周波数成分のうち、指定されたカットオフ周波数 ω C より小さい成分をすべて残し, ω C より大きい成分をすべて棄却するフィルターです。理想的なローパス フィルターの実装に必要なインパルス応答は無限に長くなるため、理想的な 冷杉ローパス フィルターを設計することはできません。理想的なインパルス応答での有限長の近似を行うと、フィルターの通過帯域 ( ω < ω C )および阻止帯域( ω > ω C ) の両方でリップルが発生するほか、通過帯域と阻止帯域の間の遷移幅が非ゼロになります。

通過帯域リップルおよび阻止帯域リップルと遷移幅の発生は望ましくありませんが,有限のインパルス応答で近似を行う場合には,理想的なローパスの応答からの偏差として避けることはできません。この偏差は以下の図で示されます。

  • 実践に即した冷杉設計は,一般的に,遷移幅と許容値を超えない最大の通過帯域リップルおよび阻止帯域リップルをもつフィルターで構成されます。それらの設計仕様に加えて,フィルター次数,または,それと等価の打ち切られたインパルス応答の長さを選択しなければなりません。

フィルター設計での設計仕様の位置付けは,各仕様を下の図に示す三角形の頂点の1つと考えるとわかりやすくなります。

三角形は,設計仕様を選択する際に使用可能な自由度を示すために使用されています。角度の合計は一定であるため,選択できるのは2つの仕様までです。3番目の仕様は該当する設計アルゴリズムによって決定されます。また,三角形での角度と同様に,仕様の1つを大きくするか小さくすると,他の仕様の一方または両方に影響します。

冷杉フィルターは本質的に安定性が高く線形位相をもつように設計できるため、非常に優れています。ただし、このフィルターは過渡応答が長く、適用する場合によっては非常に多くの計算を必要とすることがあります。

最小次数の 冷杉設計

最小次数設計を行うには、通過帯域周波数、阻止帯域周波数、通過帯域リップルおよび阻止帯域の減衰量を指定します。これにより、設計アルゴリズムが、仕様を満たす最小のフィルター長を選択します。

通過帯域周波数 0.37*piラジアン/サンプル、阻止帯域周波数 0.43*piラジアン/サンプル (よって、遷移幅は 0.06*piラジアン/サンプル)、通過帯域リップル 1分贝阻止帯域の減衰量 30分贝をもつ最小次数ローパス 冷杉フィルターを設計します。

Fpass=0.37;Fstop=0.43;Ap=1;Ast=30;d=designfilt(“lowpassfir”,“PassbandFrequency”成就,...“阻带频率”,Fstop,“通带波纹”,美联社,“StopbandAttenuation”, Ast);hfvt = fvtool (d);

設計された次数は関数菲尔托德を使用してクエリできます。

N = filtord (d)
N = 39

フィルター設計に使用するパラメーターの詳細は,関数信息を使用して入手できます。

信息(d)
ans=17 x44 char数组“FIR数字滤波器(实数)”-----------------------------------“滤波器长度:40”“稳定:是”“线性相位:是(类型2)”“设计方法信息”“设计算法:等波纹”“设计规范”“采样率:N/A(标准化频率)''响应:低通''规范:Fp、Fst、Ap、Ast''阻带衰减:30 dB''通带边缘:0.37''阻带边缘:0.43''通带纹波:1 dB'
  • 既定では,関数设计过滤器は等リップル設計アルゴリズムを選択します。与えられた次数における理想フィルターからの最大偏差が最も小さくなるため,線形位相等リップルフィルターが推奨されます。

しかし、最小次数設計は、カイザー ウィンドウを使用しても可能なことに留意してください。カイザー ウィンドウ法では同じ仕様に対してフィルター次数が大きくなりますが、そのアルゴリズムは計算コストが低く、設計仕様が厳しい場合でも収束問題が発生する可能性が小さくなります。収束問題が発生する可能性があるのは、フィルターの適用において、遷移幅を非常に狭くする必要がある場合か、阻止帯域の減衰量が非常に大きい場合です。

カイザー ウィンドウを使用して上記と同じ仕様のフィルターを設計し、応答を等リップル フィルターと比較します。

dk=设计过滤器(“lowpassfir”,“PassbandFrequency”成就,...“阻带频率”,Fstop,“通带波纹”,美联社,...“StopbandAttenuation”,Ast,“设计方法”,“kaiserwin”);addfilter (hfvt dk);传奇(hfvt“等波纹设计”,Kaiser窗设计的)

N=滤波器(dk)
N=52

赫兹での周波数パラメーターの指定

フィルターが動作するサンプルレートが既知の場合は,サンプルレートと周波数を赫兹で指定できます。2 kHzのサンプルレートに対する最小次数等リップルフィルターを再設計します。

成就= 370;Fstop = 430;美联社= 1;Ast = 30;Fs = 2000;d = designfilt (“lowpassfir”,“PassbandFrequency”成就,...“阻带频率”,Fstop,“通带波纹”,美联社,...“StopbandAttenuation”,Ast,“采样器”Fs);hfvt = fvtool (d);

固定次数、固定遷移幅

固定次数設計は計算負荷の影響を受けやすいフィルター適用や,フィルター係数の数に制限のあるフィルター適用を行う場合に役立ちます。通過帯域リップル/阻止帯域の減衰量の制御を犠牲にして遷移幅を固定するという選択肢もあります。

通過帯域周波数が 370赫兹阻止帯域周波数が 430赫兹サンプルレートが 2千赫の 30次ローパス 冷杉フィルターについて考えます。この仕様セットには、2.つの設計法が使用可能です。つまり、等リップルと最小二乗です。それぞれの方法でフィルターを設計し、結果を比較しましょう。

N = 30;成就= 370;Fstop = 430;Fs = 2000;当省略时,% Design方法默认为equiripple描述:= designfilt (“lowpassfir”,“过滤器订单”N“PassbandFrequency”成就,...“阻带频率”,Fstop,“采样器”Fs);dls = designfilt (“lowpassfir”,“过滤器订单”N“PassbandFrequency”成就,...“阻带频率”,Fstop,“采样器”Fs,“设计方法”,“ls”);hfvt=fvtool(deq,dls);图例(hfvt,“等波纹设计”,“最小二乘设计”)

等リップルフィルターは,指定された最小の阻止帯域の減衰量や指定された最大通過帯域リップルのあるフィルターを設計する場合など,特定の許容誤差を満たす必要があるフィルター適用に最適です。一方,この設計は,通過帯域や阻止帯域で(理想的なフィルターと実際のフィルターとの間の)誤差のエネルギーを最小化する必要がある場合,望ましくない可能性があります。

  • 特定の周波数帯域の信号エネルギーをできる限り減らす場合には,最小二乗設計を使用してください。

前述の例では,設計されたフィルターには通過帯域と阻止帯域で同じリップルがありました。フィルター次数を固定しながら,重みを使用してどちらかの帯域でのリップルを減らすことができます。たとえば,阻止帯域リップルを通過帯域リップルの1/10にするには,阻止帯域に通過帯域の10倍の重みを指定しなければなりません。この事実を使用して等リップルフィルターを再設計します。

deqw = designfilt (“lowpassfir”,“过滤器订单”N“PassbandFrequency”成就,...“阻带频率”,Fstop,“采样器”Fs,...“PassbandWeight”,1,“StopbandWeight”10);hfvt = fvtool(环保、deqw);传奇(hfvt“等波纹设计”,带加权止带的等效纹波设计)

固定次数、固定カットオフ周波数

ウィンドウ設計法を使用して、固定フィルター次数および固定カットオフ周波数をもつフィルターを設計できます。

  • フィルター次数を変更せずに,異なるウィンドウを使用することで阻止帯域の減衰量を制御できます。

たとえば、カットオフ周波数が 60赫兹サンプルレートが 1千赫の 100次ローパス 冷杉フィルターについて考えます。ハミング ウィンドウを使用して作成された設計と、チェビシェフ ウィンドウおよび 90分贝のサイド ローブ減衰を使用して作成された設計を比較します。

汉姆= designfilt (“lowpassfir”,“过滤器订单”,100,“截止频率”,60,...“采样器”,1000,“窗口”,“哈明”);dchebwin=设计过滤器(“lowpassfir”,“过滤器订单”,100,“截止频率”,60,...“采样器”,1000,“窗口”,{“切布温”90});hfvt = fvtool(汉姆,dchebwin);传奇(hfvt“海明窗”,“切比雪夫窗口”)

固定次数のあるフィルターを指定するには、他の方法もあります。つまり、固定カットオフ周波数、通過帯域リップルおよび阻止帯域の減衰量によるもの、固定遷移幅によるもの、そして固定電力半値 (3分贝)周波数によるものです。

IIRフィルターの設計

冷杉フィルターの欠点の 1.つは、特定の設計仕様を満たすために大きなフィルター次数を必要とすることです。リップルが一定に維持されると、フィルター次数は遷移幅に逆比例して増大します。フィードバックを使用することで、はるかに小さなフィルター次数で一連の設計仕様を満たすことができます。これが IIRフィルター設計の背景にある概念です。"無限インパルス応答" (IIR)という用語は、そのフィルターにインパルスが適用された場合に、出力がの減衰がゼロにならないという事実に由来しています。

  • 計算リソースが不足している場合には,IIRフィルターが役立ちます。ただし,安定した,因果性があるIIRフィルターは完全に線形な位相をもつことはできません。位相の線形性が要件である場合にはIIR設計は使用しないでください。

IIRフィルターを使用するもう1つの重要な理由は,冷杉フィルターに比べて群遅延が小さいため,過渡特性応答が短くて済むためです。

バタワース フィルター

バタワースフィルターは最大フラットIIRフィルターです。通過帯域と阻止帯域が平坦であると,遷移帯域が非常に広くなります。狭い遷移幅のフィルターを得るには,大きな次数が必要になります。

通過帯域周波数が100 Hz,阻止帯域周波数が300 Hz,最大通過帯域リップルが1 dB,阻止帯域の減衰量が60 dBである最小次数バタワースフィルターを設計します。サンプルレートは2 kHzです。

Fp = 100;置= 300;美联社= 1;Ast = 60;Fs = 2 e3;但= designfilt (“lowpassiir”,“PassbandFrequency”,Fp,...“阻带频率”,Fst,“通带波纹”,美联社,...“StopbandAttenuation”,Ast,“采样器”Fs,“设计方法”,“黄油”);

チェビシェフ 我型フィルター

チェビシェフ 我型フィルターは、通過帯域リップルを許容することで、同じ次数のバタワース フィルターより遷移幅が小さくなります。

  • バタワース フィルターとチェビシェフ 我型フィルターの両方に、最大フラット阻止帯域があります。与えられたフィルター次数において、通過帯域リップルと遷移幅の間にトレードオフがあります。

前述のバタワースフィルターと同じ仕様のチェビシェフ我型フィルターを設計します。

dcheby1 = designfilt (“lowpassiir”,“PassbandFrequency”,Fp,...“阻带频率”,Fst,“通带波纹”,美联社,...“StopbandAttenuation”,Ast,“采样器”Fs,“设计方法”,“cheby1”);

チェビシェフII型フィルター

  • チェビシェフII型フィルターには,最大フラット通過帯域および等リップル阻止帯域があります。

極端に大きな減衰量は通常必要ないため、いずれかの阻止帯域リップルを許容することで比較的小さな次数で必要な遷移幅を得ることができる可能性があります。

前の例と同じ仕様の最小次数チェビシェフ 二,型フィルターを設計します。

dcheby2 = designfilt (“lowpassiir”,“PassbandFrequency”,Fp,...“阻带频率”,Fst,“通带波纹”,美联社,...“StopbandAttenuation”,Ast,“采样器”Fs,“设计方法”,“cheby2”);

楕円フィルター

楕円フィルターは,通過帯域と阻止帯域の両方でリップルを許容することで,チェビシェフフィルターとバタワースフィルターを汎用的にします。リップルを小さくすると,楕円フィルターは,チェビシェフフィルターまたはバタワースフィルターの位相応答および振幅を任意の近傍で近似することができます。

  • 楕円フィルターは、与えられた遷移幅を最小次数で達成します。

dellip=设计过滤器(“lowpassiir”,“PassbandFrequency”,Fp,...“阻带频率”,Fst,“通带波纹”,美联社,...“StopbandAttenuation”,Ast,“采样器”Fs,“设计方法”,“ellip”);

4つのIIRフィルターの次数と応答を比較します。

  • 仕様上の制約が同じである場合は,バタワースメソッドの次数が最も大きくなり,楕円メソッドの次数が最も小さくなります。

FilterOrders = [filtord(dbutter) filtord(dcheby1) filtord(dcheby2) filtord(dellip)]
过滤器订单=1×47 5 5 4
hfvt=fvtool(dbutter,dcheby1,dcheby2,dellip);轴([0 1e3-80 2]);图例(hfvt,“巴特沃斯”,“切比雪夫型”,...“切比雪夫II型”,“椭圆形”)

通過帯域を拡大し、リップルの差を確認します。

轴([0 150 -3 2]);

通過帯域または阻止帯域仕様への完全な準拠

最小次数設計では,理想的な次数を次の整数に丸めなければなりません。この追加の非整数次数により,アルゴリズムは実際に仕様を超えることになります。

  • 正確に 1.つの帯域に一致するよう設計アルゴリズムを制約するには、“MatchExactly”パラメーターを使用します。その他の帯域は、その仕様を超えます。

既定の設定では,チェビシェフ我型設計は通過帯域に一致します。バタワースとチェビシェフII型は阻止帯域に一致し,楕円設計は通過帯域と阻止帯域の両方に一致します(阻止帯域のエッジ周波数は超えます)。

dellip1=设计过滤器(“lowpassiir”,“PassbandFrequency”,Fp,...“阻带频率”,Fst,“通带波纹”,美联社,...“StopbandAttenuation”,Ast,“采样器”Fs,“设计方法”,“ellip”,...“MatchExactly”,“通带”);dellip2=设计过滤器(“lowpassiir”,“PassbandFrequency”,Fp,...“阻带频率”,Fst,“通带波纹”,美联社,...“StopbandAttenuation”,Ast,“采样器”Fs,“设计方法”,“ellip”,...“MatchExactly”,阻带的); hfvt=fvtool(dellip,dellip1,dellip2);图例(hfvt,'匹配通带和阻带',“通频带匹配”,...匹配的阻带的);轴([0 1e3 -80 2]);

一致する通過帯域と一致する両方の設計のリップルは、通過帯域周波数値 100赫兹で正確に 1分贝です。

群遅延の比較

IIRフィルターの場合,リップルと遷移幅のトレードオフだけでなく位相歪みの度合いも考慮する必要があります。ナイキスト区間全体にわたって線形位相をもつことが不可能であることはわかっています。このため,位相応答がどの程度線形でないかを確認する必要があります。これを行うには,(理想的には一定の)群遅延を見てそれがどの程度平坦であるかを確認します。

前に設計した4つのIIRフィルターの群遅延を比較します。

  • 位相が問題となる場合は,バタワースおよびチェビシェフII型設計の群遅延が最も平坦であり,そのため発生する歪みが最小になることに留意してください。

hfvt = fvtool(但dcheby1、dcheby2 dellip,“分析”,“grpdelay”);传奇(hfvt“巴特沃斯”,“切比雪夫型”,...“切比雪夫II型”,“椭圆形”)

まとめ

この例では、设计过滤器を使用して、さまざまな制約と設計法をもついろいろなローパス 冷杉および IIRフィルターを作成する方法を学習しました。设计过滤器は、ハイパス、バンドパス、バンドストップ、任意振幅、微分器およびヒルベルトの設計にも使用できます。すべての利用可能なオプションの詳細については、フィルター設計ギャラリーを参照してください。

参考情報

フィルター設計および解析についての詳細は,信号处理工具箱®ソフトウェアドキュメンテーションを参照してください。フィルター適用についての詳細は,実践に即したデジタル フィルター処理の紹介の例を参照してください。

参考

||