Strategie zur Approximation eines FIR-Filters mit analogen RLC-Komponenten von Impulse Response

Ich habe eine gemessene digitale/diskrete endliche Impulsantwort von einem System. Wie aus der Signaltheorie bekannt, ist dies im Wesentlichen die Folge von Filterkoeffizienten des entsprechenden FIR-Filters.

Ich denke, in der Praxis sollte es möglich sein, die Impulsantwort nur mit Widerständen, Kondensatoren und Induktivitäten anzunähern. Verstärkung kann nach der Filterkette nachgeholt werden. Lärm kann vernachlässigt werden. Eine Realisierung mit idealen Komponenten in zB SPICE würde für meine Zwecke ausreichen.

Ich frage mich, was die beste Strategie wäre, einen solchen analogen Filter in Bezug auf die Genauigkeit wieder "rückwärts" von digital nach analog zu entwerfen. Was ich mit dem letzten Punkt meine, ist, dass ich mir bewusst bin, dass ein genauerer Filter mehr Komponenten benötigen würde, aber angenommen, ich möchte höchstens n Stufen in meinem Filter haben (ich denke an einen Leitertyp-Filter, wenn ich „Stufen“ sage ", aber jede Art von Filterstruktur wäre akzeptabel, solange es nur RLC ist), wie finde ich die optimale (Annäherungen innerhalb des Zumutbaren sind akzeptabel)?

Impulsantwort wie gewünscht.Beispiel einer Impulsantwort

Zeigen Sie uns die Impulsantwort. Die meisten (für die meisten Bedeutungen der meisten) FIR-Filter neigen dazu, eine akausale symmetrische lineare Phase zu sein, was mit passiven Komponenten unmöglich zu erreichen ist, die nur kausale Filter erzeugen können.
Ich wäre sehr überrascht, wenn die Impulsantwort eine akausale oder sogar lineare Phase wäre. Es ist eine physikalische Messung.
Die meisten FIR- Filter sind linearphasig, da sie darauf ausgelegt sind, gut zu sein. Eine Messung eines physikalischen Systems wird natürlich kausal sein. Wie viel des Impulses möchten Sie anpassen? Eine „richtige“ Anpassung passt zum Signal und unterdrückt das Rauschen. Underfitting folgt dem Signal nicht. Overfitting verfolgt das Rauschen originalgetreu. Ich sehe einen kurzen Hochfrequenzteil (nicht gut, Sie könnten Ihren Impuls auf 2000 Samples zuschneiden und etwas posten, das vergrößert werden kann), einen langen Niederfrequenzteil und einige Dinge, die Rauschen oder Signal sein können. Denkender IIR-Filter gibt Ihnen einen direkten Weg zur RLC-Implementierung.

Antworten (1)

Wie finde ich die optimale (Annäherungen innerhalb des Zumutbaren sind akzeptabel)?

Das klingt nicht nur sehr vage, sondern was Sie wollen, ist ein bisschen wie eine unmögliche Mission: Es ist nicht so, dass Sie keine analoge Version eines FIR bauen können, es ist nur so, dass es das Äquivalent des benötigen würde z 1 , das ist eine Art Verzögerungsleitung. Es gibt Verzögerungsleitungen, aber nicht für niedrige Abtastraten, und sie sind tendenziell etwas teuer (letztere erinnere ich mich). Und Padé-Annäherungen sind bandbreitenbegrenzt, aber Sie könnten sie verwenden, wenn ihre Bandbreite über Ihrer äquivalenten Nyquist-Frequenz liegt. Allerdings würde das mehr als eine mickrige 2. Ordnung erfordern.

Als kurzes Beispiel: Eine Padé-Näherung ist wirklich ein Bessel-Allpass, und seine Gruppenverzögerung ist τ=2/ω. Für eine Abtastrate von 1 Hz benötigen Sie eine Verzögerung von 1 ms. Dazu benötigen Sie ω=2/τ=2 rad oder ≈0,318 Hz. Aber ein Padé ist nur eine Annäherung an eine unendliche Reihe, daher hat die Gruppenverzögerung einen Abfall bei etwa ω (eigentlich knapp davor), sodass Sie mehr als eine 2. Ordnung benötigen. Tatsächlich wird eine 5. Ordnung nicht ausreichen, um eine konstante Gruppenverzögerung bei 1 Hz zu halten, da sie einen Abfall von ≈30 ms haben wird. Eine 6. Ordnung nur ≈3 ms.

Aber Sie könnten Ihr FIR theoretisch mit einer 4. Ordnung machen, da nur die Frequenzen über Nyquist ernsthaft verschlechtert werden. Sogar eine 2. Ordnung reicht aus, wenn Sie eine generische FIR bauen möchten, die einen schrecklichen Frequenzgang hat, aber, wenn Sie genug schielen, bis Nyquist mit der einer echten FIR übereinstimmen könnte - aber Sie müssen hier eine Impulsantwort anpassen. Hier ist ein Vergleich eines digitalen gleitenden Durchschnitts der Länge 5 ( V(d)) im Vergleich zu einer analogen Version mit Allpass-Verzögerungen 4. Ordnung ( V(a)):

Komp

Nicht schlecht, oder? Aber eine "Verzögerung" ist mindestens ein doppelter Operationsverstärker, und dies in Anbetracht von Delyiannis oder Friend oder ähnlichen Biquads mit einem Operationsverstärker, die 8 oder 10 RC-Elemente haben und die Komponentenvariationen nicht gerade tolerieren. Für eine bessere Anpassung und Empfindlichkeit benötigen Sie mindestens eine doppelte Operationsverstärkerstufe, und diese modifiziert, um einen Allpass zweiter Ordnung zu ermöglichen , denn das ist es, was Sie brauchen.

Wenn Sie glauben, dass Sie mit einem Tiefpass für eine geringere Anzahl von Komponenten schummeln können, denken Sie noch einmal darüber nach. Sie könnten sagen, dass Sie nur die Bandbreite bis Nyquist benötigen, und Sie hätten Recht, aber die Gruppenverzögerung ist jetzt halbiert, sodass Sie fast die doppelte Ordnung benötigen, um dies zu kompensieren. Sie können mit 6. oder 7. Ordnung davonkommen, aber mit sehr schlechter Reaktion. Du sparst also nichts.

Aber jetzt ist die analoge Welt nicht wie die digitale: Sie müssen sich mit Komponententoleranzen, Fehlanpassungen zwischen Operationsverstärkern, Parasiten, Temperaturdriften usw. auseinandersetzen. Was Sie oben sehen, ist der ideale Ansatz; in Wirklichkeit können Sie so etwas bekommen:

könnte

Und dies ist ein sehr schneller Hack für einen Frequenzfehler von 10% pro "Verzögerung", dh jede ideale Stufe hat alle ihre Kondensatoren um den gleichen Betrag variieren, um diese 10% zu ergeben. Sie werden dies im wirklichen Leben nicht sehen. Erwarten Sie eine noch verschmiertere Antwort. Wie, glauben Sie, passt dies zu Ihrem Ziel, die Impulsantwort auch nur annähernd nachzubilden? Denn wenn Sie es nicht mit einer ausreichend guten Näherung abgleichen, ist der Aufwand sinnlos.

Aber das ist eine kleine Bestellung. Angesichts Ihres Bildes ist das, was Sie dort brauchen, eine ziemlich hohe Ordnung. Diese Spikes sind sehr reich an hohen Frequenzen, was bedeutet, dass Sie Bandbreite benötigen, was wiederum eine lange FIR bedeutet. Ich spreche nicht von einer Länge von 20 oder 30 oder so, ich spreche im Bereich von 100 oder sogar mehr (ich denke Plural).

Aber dieser Impuls ist bei weitem keine symmetrische Antwort, und wenn das eine Raumantwort ist (wie ich mir vorstelle), dann kommt dieser Impuls von einem nichtlinearen Phasensystem (Wände in unterschiedlichen Winkeln, unterschiedliche Dämpfungsgrade durch Teppiche/Ziegelwände/ Sofa/etc, Mischung aus steifen/elastischen Oberflächen etc). Sie können das also möglicherweise mit einem IIR darstellen. Und diese können sehr steile Übergangsbreiten für sehr niedrige Ordnungen haben – wenn Sie die Empfindlichkeit verwalten können. Theoretisch können Sie einen Cauer mit (sagen wir) 1 dB Welligkeit, fp = 1 (ohne Einheit, hier zählt das Verhältnis), fs = 1,1 und 40 dB @fs mit einer 6. Ordnung bauen, aber ich wage es, Sie zu machen es mit Biquad-Stufen mit einem Operationsverstärker, während es der Antwort treu (oder nahe genug) bleibt.

Wenn Sie es bis jetzt geschafft haben, bis hierher zu lesen, haben Sie wahrscheinlich das Gefühl, dass ich absichtlich versuche, Sie davon zu überzeugen, es nicht zu tun. Ich bin nicht. Die Botschaft, die ich immer zu vermitteln versuche, ist nicht „Tu es nicht!“, sondern „ Wenn du es tust, dann bekommst du das hier“ .

Ich hatte vor, ein paar Dinge darüber zu sagen, wie es geht, falls es möglich ist, aber danach scheint es ein bisschen überflüssig zu sein.
Wenn die maximalen Eingangsfrequenzen niedrig sind, können Sie meiner Meinung nach eine analoge Verzögerung erstellen, indem Sie einfach einen Tiefpassfilter mit linearer Reaktion verwenden (da eine lineare Frequenzverschiebung einer Zeitverzögerung im Zeitbereich entspricht) ... zum Beispiel mit ein Bridged T-Verzögerungsentzerrer : Zählt er als "eine Art Verzögerungsleitung", die Sie im ersten Absatz erwähnen? Oder kann man das so verwenden?
@Joako Ich habe bereits die Verwendung von Bessel-Filtern als Verzögerung erwähnt, obwohl sie möglicherweise besser so verwendet werden sollten, wie sie sind. Es könnte jedoch eine relativ hohe Ordnung erforderlich sein, um ein einigermaßen flaches Durchlassband für die verfügbare flache Gruppenverzögerung beizubehalten. Ob diese Lösung für OP gut ist oder nicht ...