Gibt es eine Faustregel für die Berechnung der ungefähren Filterreihenfolge eines FIR / IIR basierend auf dem Durchlassbereich gegenüber der Abtastrate? Ich erinnere mich, dass ich einmal in Undergrad darüber gelesen habe. Ich würde denken, Sie könnten eine grobe Schätzung wie Scaler * Passband / Stopband vornehmen.
Ich habe an der Implementierung verschiedener FIR / IIR-Filter gearbeitet und möchte eine grobe Formel, die besagt, wenn eine Variable geändert wird, dies ist ungefähr, wie viele weitere Abgriffe Sie benötigen würden, um eine ähnliche Leistung zu erzielen.
Kommentare
- Für FIR-Filter gibt es ' Eine Formel in dieser Antwort .
Antwort
Mein Favorit " Faustregel " für die Reihenfolge eines Tiefpass-FIR-Filters ist " Fred Harris Faustregel ":
$$ N = \ frac {f_s} {\ Delta f} \ cdot \ frac {\ rm atten_ {dB}} {22} $$
wobei
- $ \ Delta f $ ist das Übergangsband in denselben Einheiten von $ f_s $
- $ f_s $ ist die Abtastrate des Filters
- $ \ rm atten_ {dB} $ ist die Zielunterdrückung in dB
Wenn Sie beispielsweise ein Übergangsband von 100 Hz in einem mit 1 kHz abgetasteten System haben und Ihre Zurückweisungsanforderung im Stoppband 50 dB beträgt, ist die Die Reihenfolge kann angenähert werden durch:
$$ N = \ frac {1 \ \ rm kHz} {100 \ \ rm Hz} \ cdot \ frac {50} {22} = 23 \ \ rm taps \ tag {aufrunden} $$
Vielen Dank, Fred Harris!
Beachten Sie eine weitere detailliertere Formel, die das Durchlassband berücksichtigt Ripple ist Kaisers Formel dank James Kaiser von Bell Labs, den ich in meine Grafik unten aufgenommen habe.
Für die meisten Anwendungen, die ich durchgeführt habe, war der Fred Harris-Ansatz angesichts einer gewissen Ablehnung in Ordnung Die resultierenden Filter, die herkömmliche Filterdesignalgorithmen wie Parks-McClellan und Remez verwenden, haben meine Anforderungen an die Durchlasswelligkeit bei Erfüllung der Ablehnungsanforderungen überschritten. (Normalerweise schätze ich die Reihenfolge, entwerfe den Filter mit dieser Reihenfolge, überprüfe das Ergebnis und erhöhe oder verkleinere die Reihenfolge von dort aus, um eine Feinabstimmung vorzunehmen.) Die Ergebnisse der Schätzungen sind nur folgende: Schätzungen, die je nach den allgemeinen Entwurfsparametern stark variieren können und nicht als exakte Lösung angesehen werden können.
Wenn Sie mit dem Filterdesign unter Verwendung von Fensteransätzen vertraut sind, überprüfen Sie den Güterwagen oder das rechteckige Fenster (einfache Kürzung). zeigt, warum $ f_s / \ Delta f $ -Taps erforderlich sind (dies entspricht $ 2 \ pi / \ Delta \ omega $ , wenn die Einheiten für die normalisierte Frequenz Bogenmaß / Abtastung sind, wie dies häufig der Fall ist), um das Übergangsband zu vervollständigen. Sehen Sie sich die folgenden Bilder an, um dies zu erklären.
Das obere Bild unten zeigt die erwartete Sinc-Frequenz für ein rechteckiges Zeitfenster, in diesem Fall als nicht kausaler Rechteckimpuls, der auf $ t = 0 $ . Dies wird dann in diskreten Formen als kausale Wellenform ab $ t = 0 $ wiederholt, sowohl mit der diskreten Zeit-Fourier-Transformation (DTFT) als auch der diskreten Fourier-Transformation (DFT). wobei der Unterschied darin besteht, dass sich die Abtastwerte in der Zeit auf $ \ pm \ infty $ für die DTFT erstrecken, was zu einer kontinuierlichen Wellenform im Frequenzbereich führt. In beiden Fällen ist das Ergebnis eine Alias-Sinc-Funktion, die über das Intervall $ f = [0, f_s) $ periodisch ist, mit dem Schlüsselpunkt für $ N $ Abtastwerte in der Zeit der Rechteckfunktion, der Frequenzgang hat seine erste Null bei $ f = 1 / N $ (Wobei $ f $ die normalisierte Frequenz ist, wobei 1 die Abtastrate ist).
Dieses nächste Bild unten zeigt den rechteckigen Fensteransatz für das Filterdesign (den ich niemals empfehlen würde, der aber informativ ist). Das erste Diagramm in der oberen linken Ecke zeigt den Zielfrequenzgang für unseren Filter als idealen " Backsteinmauer ". Bitte verwechseln Sie dies nicht mit dem " Boxcar-Fenster " (oder " rechteckigen Fenster "), die ebenfalls eine rechteckige Form hat – das Fenster befindet sich im Zeitbereich!
Um ein solches Filter zu realisieren, würden wir die Impulsantwort des gewünschten Frequenzgangs als Koeffizienten in unserem FIR-Filter verwenden (die Koeffizienten des Filters sind die Impulsantwort – geben Sie einen Impuls ein und raus kommen alle Koeffizienten!). Die Impulsantwort für eine Rechteckfrequenzantwort (Brickwall) ist die inverse FT, bei der es sich um eine Sinc-Funktion im Zeitbereich handelt, die in der unteren linken Ecke als " erforderliche Impulsantwort angezeigt wird ". Eine Sinc-Funktion erstreckt sich auf plus und minus unendlich. Um einen solchen Filter tatsächlich zu realisieren, benötigen wir einen unendlich langen Filter und eine unendlich lange Verzögerung. Offensichtlich können wir das nicht tun, also kürzen wir die Koeffizienten auf etwas Realisierbares. Je länger der Filter, desto näher kommen wir der idealen Brickwall-Reaktion, aber auch desto länger wird die Verzögerung sein (und desto mehr Ressourcen würden wir in Bezug auf benötigen die Filterkonstruktion; mehr Abgriffe).
Das Abschneiden der Impulsantwort im Zeitbereich ist mathematisch identisch mit dem Multiplizieren mit einem rechteckigen Fenster im Zeitbereich. (Beachten Sie, dass die Impulsantwort auch um die Hälfte der Dauer verzögert ist des Multiplizierens im Zeitbereich entspricht der Faltung im Frequenzbereich. Der Frequenzbereich (FT) der Impulsantwort vor dem Abschneiden ist unser ursprünglich gewünschter Brickwall-Frequenzgang. Die Frequenz Die Antwort für das rechteckige Fenster ist eine Sinc-Funktion im Frequenzbereich.
Wenn wir also die gewünschte Impulsantwort abschneiden (zeitlich mit einem rechteckigen Fenster multiplizieren), falten wir die gewünschte Frequenzantwort e mit einer Sinc-Funktion, was zu einer Annäherung unseres Zielfrequenzgangs führt, wie in der oberen rechten Ecke des Bildes unten gezeigt.
Ein Schlüssel zum Mitnehmen für Sinc-Funktionen im Allgemeinen ist die erste Null $ 1 / T $ wobei $ T $ die Dauer der Rechteckfunktion ist. Für ein abgetastetes System wäre die erste Null bei $ 2 \ pi / N $ , wobei $ N $ darstellt die Anzahl der Abtastwerte für die Dauer der Rechteckfunktion. In den Bildern wird eine normalisierte Radianfrequenz für die Frequenzachse verwendet (wenn dies verwirrt, wissen Sie nur, dass $ 2 \ pi $ die Radianfrequenz für die Abtastrate ist). Während der Faltung breitet sich der scharfe Brickwall-Übergang aus und geht in diesem Fall über eine Frequenz von pan auf 0 (unser $ \ Delta \ omega $ ) class = „math-container“> $ 2 \ pi / N $ ! Also hier $$ N = 2 \ pi / \ Delta \ omega $$ und natürlich ist der Filter schlecht mit Nebenkeulen usw. Beachten Sie Folgendes: Dieser Übergang von der Sinc-Funktion ist die schärfste verfügbare für eine bestimmte Anzahl von Abgriffen; Es hat die beste Auflösung in der Frequenz, aber den schlechtesten Dynamikbereich (Zurückweisung). Andere Fenstertypologien (Blackman, Blackman-Harris, Kaiser (mein Favorit) usw.) verbessern den Dynamikbereich erheblich, jedoch immer auf Kosten des Übergangs.
Von oben sehen wir also den Ursprung des $ 2 \ pi / \ Delta \ omega $ , das in den Approximationsformeln verwendet wird, und wir sehen auch, warum es einen zusätzlichen Multiplikationsfaktor gibt, der die Anzahl der Abgriffe darüber für typische Filterdesigns erhöht; Das rechteckige Fenster würde uns den bestmöglichen Übergang mit $ N $ -Taps geben, wobei $ N = 2 \ pi / \ Delta \ Omega $ haben aber eine sehr schlechte Ablehnung. Weitere Abgriffe werden verwendet, um den Zeitübergang weiter über den scharfen Übergang des rechteckigen Fensters hinaus zu glätten und eine stärkere Zurückweisung auf Kosten der Übergangsbandbreite zu erzielen.
Kommentare
- Um Verwirrung zu vermeiden, verwenden Sie die Formel " Kaiser ' s Formel " ist eigentlich die Formel für Parks McClellan optimale Filter (tatsächlich von Kaiser gefunden), aber nicht für die Kaiser-Fenstermethode. Letzteres hat ' nicht zwei verschiedene $ \ delta $ -Werte, sondern nur einen.
- In der Tat, gute Klarstellung Matt, da es eine Kaiser-Fenstermethode gibt. Diese Formel wird jedoch als " Kaiser ' s Formel " bezeichnet Literatur, nur damit die Leser ' nicht glauben, dass ich diesen Begriff selbst verwendet habe. engold.ui.ac.ir/~sabahi/Advanced%20digital%20communication/…
li> Super!Sieht so aus, als stamme das von Seite 48 in Fred Harris ' Buch: " Multirate-Signalverarbeitung für Kommunikationssysteme "?
Antwort
Die Länge eines FIR-Filters oder die Reihenfolge eines IIR-Filters ist ungefähr umgekehrt proportional zum Verhältnis der Breite des Übergangsbandes (engste) , wenn viele) zur Abtastrate, wobei andere Dinge etwas äquivalent sind, mit Ausnahme von Filtern sehr kurzer oder sehr niedriger Ordnung.
Kommentare
- weiß nicht warum Jemand hat herabgestimmt. Ich habe es wieder auf Null gesetzt.
- Andere Dinge sind etwas äquivalent?
- Durchlassbandwelligkeit und Stoppbanddämpfung sind auch die anderen Hauptfaktoren, die die Filterlänge beeinflussen.