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)?
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 , 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)
):
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:
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“ .
Neil_DE
Himmel v
Neil_DE