ステップ応答がオーバーシュートしない非因果的ローパスフィルターの最もシャープな周波数応答は何ですか?


13

Butterworth、Bessel、Chebychev、およびsincローパスフィルターは、均一に減少する周波数応答、均一な位相応答、急峻なカットオフ、または「ブリックウォール」応答の間で異なるトレードオフがあるさまざまなケースで使用されます。このようなフィルターはすべて、場合によってはステップ応答でオーバーシュートする可能性があると考えられます。つまり、インパルス応答が負の値になる場合があります。

インパルス応答がどこでもネガティブにならないという唯一の制約があるフィルターで、最適な周波数応答とはどのようなものか、またはどのタイプの周波数応答が利用可能でしょうか?基本的なRCフィルターがそうするので、そのような制約を満たすローパスフィルターを持つことは確かに可能です(ただし、そのようなフィルターの応答は少しぎこちないです)。最適なインパルス応答は正規分布曲線でしょうか、それとも何かでしょうか?


1
@supercat、デジタルフィルタリングを含めると、オーバーシュートせずに応答がどのようにレンガ壁に到達するかは驚くべきことです。
-Kortuk

2
@Kortuk:本当ですか?ブリックウォールでフィルタリングされた方形波には、カットオフ周波数が高くなると幅がゼロに近づくが、振幅が大きくならないスパイクがほとんどないため、オーバーシュートを避けるのは難しいと思います。適切なリファレンスは何でしょうか?
-supercat

2
あなたは質問で「非因果的」と言いますが、あなたの例はすべて因果的です。どういう意味ですか?非因果性では、波形全体を記録してから、記録にフィルターを適用する必要があります。(または、おそらく、フラックスコンデンサと大規模な電源の使用。)
エンドリス

1
@endolith:因果関係である必要はないと仮定すると、最適なフィルターは何でしょう。
スーパーキャット

1
@Kortuk:信号をゼロでクリッピングすると、フィルタリングの利点が完全になくなります。また、DSPに投稿している間、オーディオフィルムレコーダーのようなもの(確かに実用的というよりも知的という観点から)にも興味があります。
-supercat

回答:


6

「オーバーシュートしないフィルター」のリストを作成します。この部分的な答えが、まったく答えないよりも良いと思います。「オーバーシュートしないフィルター」を探している人がこのようなフィルターのリストが役立つことを願っています。数学的に最適なフィルターがまだ見つかっていなくても、これらのフィルターの1つがアプリケーションで適切に機能する可能性があります。

1次および2次LTI因果フィルター

一次フィルター( "RCフィルター")のステップ応答はオーバーシュートしません。

2次フィルター( "biquad")のステップ応答は、オーバーシュートしないように設計できます。ステップ入力でオーバーシュートしないこのクラスの2次フィルターを記述する同等の方法がいくつかあります。

  • 減衰が非常に大きいか、過減衰です。
  • それは減衰不足ではありません。
  • 減衰比(ゼータ)が1以上
  • 品質係数(Q)は1/2以下
  • 減衰率パラメーター(アルファ)は、少なくとも減衰なしの固有角周波数(omega_0)以上です。

特に、コンデンサと抵抗が等しいユニティゲインサレンキーフィルタートポロジは、Q = 1/2のように非常に減衰しているため、ステップ入力でオーバーシュートしません。

2次ベッセルフィルターは、わずかにアンダーダンプされています。Q= 1 / sqrt(3)なので、オーバーシュートが少しあります。

2次バターワースフィルターはより減衰が小さく、Q = 1 / sqrt(2)であるため、オーバーシュートが大きくなります。

因果関係があり、オーバーシュートしない可能なすべての1次および2次LTIフィルターのうち、「最適な」(最も急な)周波数応答を持つフィルターは、「臨界減衰」2次フィルターです。

高次LTI因果フィルター

インパルス応答が負ではない(したがって、ステップ入力でオーバーシュートしない)最も一般的に使用される高次因果フィルターは、「ボックスカーフィルター」または「移動平均フィルター」とも呼ばれる「ランニング平均フィルター」です。「。

あるボックスカーフィルターを介してデータを実行し、そのフィルターからの出力を別のボックスカーフィルターに出力したい人もいます。いくつかのそのようなフィルターの後、結果はガウスフィルターの適切な近似になります。(カスケードするフィルターが多いほど、中心極限定理のために、ボックスカー、三角形、1次RC、またはその他のフィルターから始めても、最終出力はガウスに近くなります)。

実際には、すべてのウィンドウ関数のインパルス応答は決して負ではないため、原則として、ステップ入力でオーバーシュートしないFIRフィルターとして使用できます。特に、私はsinc()関数の中心(正の)ローブ(およびそのローブの外側のゼロ)であるLanczosウィンドウについて良いことを聞きます。いくつかのパルス整形フィルターには、決して負ではないインパルス応答があるため、ステップ入力でオーバーシュートしないフィルターとして使用できます。

これらのフィルターのどれがアプリケーションに最適かはわかりませんが、数学的に最適なフィルターはどのフィルターよりもわずかに優れていると思われます。

非線形因果フィルター

メディアンフィルタステップ関数入力にオーバーシュートすることはありません人気の非線形フィルタです。

編集:LTI非因果フィルター

関数sech(t)= 2 /(e ^(-t)+ e ^ t)はそれ自身のフーリエ変換であり、Aでオーバーシュートしない一種の非因果的ローパスLTIフィルターとして使用できると思いますステップ入力。

(sinc(t / k))^ 2インパルス応答を持つ非因果的LTIフィルターには、「abs(k)* triangle(k * w)」周波数応答があります。ステップ入力が与えられると、多くの時間領域リップルがありますが、最終的な整定点をオーバーシュートすることはありません。その三角形の高周波コーナーの上で、完全なストップバンド除去(無限の減衰)を提供します。そのため、ストップバンド領域では、ガウスフィルターよりも周波数応答が優れています。

したがって、ガウスフィルターが「最適な周波数応答」を与えるとは思えません。

考えられるすべての「オーバーシュートしないフィルター」のセットでは、単一の「最適な周波数応答」はないと思います-いくつかはより良い阻止帯域除去を持ち、他はより狭い遷移帯域などを持っています。


お返事をありがとうございます。私の質問を線形フィルターに限定することを怠っていましたが、もちろん非線形フィルターの周波数応答を特徴付けることは不明瞭な命題になる可能性があります。前述のように、ボックスカーフィルターをカスケードするとガウスに近づきます。ガウスフィルターにオーバーシュートなしで得られる最適な周波数応答があるかどうか疑問に思いました。質問を書く際に、定義されたインパルス応答フィルターのような何かを実行するさまざまなアナログプロセスについて考えていました。たとえば、エイリアシングを最小限に抑えるためにカメラやディスプレイのピクセルをぼかすことです。
supercat

各ピクセルが中心付近のさまざまなポイントからのさまざまな量の光をピックアップするようにカメラを構築することが可能です。理想的には、カメラはナイキストより上にあるすべてのものを、下にあるものをぼかすことなくフィルタリングしますが、実際にはそうなることはほとんどありません。
supercat

1
LTI?定義することはありません。「線形時不変」を意味することを追加すると、おそらく役立つでしょう。
コナーウルフ

1
Q = 0.5は非常に減衰していますか?特定の順序で、クリティカルダンプされたシステムが複数ありますか?Q = 0.5のバイカッドは、LR2 Linkwitz-Rileyフィルターと呼ばれます。ただし、LRフィルターの高次バージョンでは、ステップ応答にリンギングがあるように見えます。
エンドリス

「臨界減衰フィルタをカスケード接続すると、別の臨界減衰フィルタが生成されます」 それでは、ポールを-1にダンプし続けるだけで、常に臨界減衰されますか?(そして、数が増えるにつれてガウスフィルターの応答に近づきますか?)
エンドリス

2

デジタルの世界で使用されるフィルターのほとんどは、アナログ版のサンプル版です。これの大きな理由は、デジタルが登場する前にアナログフィルタリングで多くの作業が行われたため、ホイールを再発明するのではなく、ほとんどの場合以前のデザインが使用されていたことです。ただし、デジタルの利点は、アナログの世界よりも高次のフィルターをはるかに簡単に実現できることです。設計に別の順序を追加するたびに、回路が複雑になることを想像してください。

レンガの壁タイプのフィルターを使用する場合は、ガウス曲線を開始するのに非常に適しています。時間領域<->周波数領域について知っている場合; ガウスは他の領域でガウスに変換されます。一方がワインダーになると、もう一方が狭くなります。したがって、周波数領域で完全なスパイクを得るには、無限のサンプルが必要になります。

Matlabを使用できるようになった場合、組み込みのフィルター設計ツールのいくつかをチェックアウトする必要があります。ButterworthBesselについて話しているリンクを次に示します。設計ツールを使用すると、フィルターの特定の側面を指定できます。これらの側面はフィルタータイプごとに異なりますが、いくつかの例は通過帯域、阻止帯域、リップルなどです。デザイナーに必要な制約を与えると、エラーが発生します(つまり、そのフィルタータイプでそのフィルターを作成できないことを意味します) )または、仕様を満たすために必要な最小次数のフィルターを提供します。


A ガウスは非負インパルス応答の要件に適合しますが、それはレンガの壁の多くではありません。一方、バターワース、ベッセル、チェビシェフはインパルス応答にsincのような振動があり、オーバーシュートを引き起こします。これらのうち、ベッセルフィルターは、通過帯域でほぼ平坦な群遅延(線形位相)を持っているため、オーバーシュートが最も少なくなります。
エリクサン

ガウス以外のこれらのフィルターは因果関係があります。オフライン処理では、線形位相NNFIR(非負のFIR)がうまく機能します。または、filtfilt手法を使用して、因果的再帰フィルターの位相歪みをキャンセルできます。もちろん、NNIR LPFを設計する方法が必要オーバーシュート/アンダーシュートを避けます。誰か提案?参照?
エリック

@eryksunは、副次的な注意として、最大値の1.05倍で振動する場合、1.00で停止するように湿らせるだけで、ステップ応答は安定しているときの.96のように少し小さくなります。問題が解決しました。
Kortuk

@Kortuk:時間領域で解決された問題ですが、そのクリッピングは非線形であるだけでなく、周波数領域の特定の部分を開いて、以前にはなかった信号を通過させます。彼は、時間領域でオーバーシュートせずに、周波数で可能な限りタイトなパス/ノーパスフィルターを望んでいます。時間領域のオーバーシュートは、インパルス応答が決して負ではないということと同じではありません。
オリンラスロップ

1
@Kortuk:一部のドメインでは、最大値と最小値の中間点にゼロがあり、信号を中間点にスケーリングすることで、オーバーシュートの問題を回避できます。イメージングなどの他のドメインで、ゼロ最小であり、ダイナミックレンジが最も重要です。一般に、オーバーシュートしない「ファジーな」フィルターを使用する方が、シャープなフィルターを使用するよりも優れています。
-supercat
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.