Moving Average Filter Phasenverzögerung


Junge, PeterK. Ich kann mir nicht vorstellen, eine wirklich lineare Phase und Kausal-Filter, die wirklich IIR ist. Ich kann nicht sehen, wie Sie Symmetrie erhalten würden, ohne dass die Sache FIR wäre. Und, semantisch, würde ich ein Truncated IIR (TIIR) eine Methode der Implementierung einer Klasse von FIR aufrufen. Und dann erhalten Sie nicht lineare Phase, es sei denn Sie zum filtfilt Ding mit ihm, blockweise, sorta wie Powell-Chau. Ndash robert bristow-johnson November 26 15 am 3:32 Diese Antwort erklärt, wie filtfilt funktioniert. Ndash Ein Nullphasen-Gleit-Durchschnittsfilter ist ein FIR-Filter mit ungerader Länge mit Koeffizienten, wobei N die (ungerade) Filterlänge ist. Da hn für nlt0 Werte ungleich Null hat, ist es nicht kausal, und folglich kann es nur durch Hinzufügen einer Verzögerung, d. h. indem es kausal gemacht wird, implementiert werden. Beachten Sie, dass Sie einfach nicht verwenden können Matlabs filtfilt Funktion mit diesem Filter, denn obwohl Sie Null Phase (mit einer Verzögerung) erhalten würde, wird die Größe der Filterübertragungsfunktion quadriert, entsprechend einer dreieckigen Impulsantwort (dh Eingang Proben weiter entfernt von der Stromprobe weniger Gewicht). Diese Antwort erklärt im Detail, was filtfilt. FIR Filter Grundlagen 1.1 Was sind FIR Filterquot FIR-Filter sind einer von zwei primären Arten von digitalen Filtern in Digital Signal Processing (DSP) Anwendungen verwendet, der andere Typ ist IIR. 1.2 Was bedeutet "FIRquot" bedeutet "FIRquot" bedeutet "FInite Impulse Responsequot". Wenn Sie einen Impuls, das heißt, ein einziges quadratisches Beispiel, gefolgt von vielen quot0quot Proben, setzen, werden Nullen herauskommen, nachdem das quot1quot Beispiel seinen Weg durch die Verzögerungslinie des Filters gemacht hat. 1.3 Warum ist die Impulsantwort quotfinitequot Im allgemeinen Fall ist die Impulsantwort endlich, da es keine Rückmeldung in der FIR gibt. Ein Mangel an Feedback garantiert, dass die Impulsantwort endlich ist. Daher ist der Begriff "endliche Impulsantwort" annähernd gleichbedeutend mit einer Quotno-Rückmeldung. Wenn jedoch die Rückkopplung verwendet wird, ist die Impulsantwort endlich, der Filter ist jedoch immer noch ein FIR. Ein Beispiel ist das gleitende Mittelfilter, bei dem jedes Mal, wenn eine neue Probe eintritt, subtrahiert (rückgekoppelt) wird. Dieser Filter hat eine endliche Impulsantwort, obwohl er Rückkopplung verwendet: nach N Abtastungen eines Impulses die Ausgabe Wird immer Null sein. 1.4 Wie kann ich aussprechen firquot Einige Leute sagen, die Buchstaben F-I-R anderen Menschen auszusprechen, als wäre es eine Art von Baum. Wir bevorzugen den Baum. (Der Unterschied besteht darin, ob Sie über einen F-I-R-Filter oder einen FIR-Filter sprechen.) 1.5 Was ist die Alternative zu FIR-Filtern DSP-Filter können auch "Infinite Impulse Responsequot (IIR)" sein. (Siehe dspGurus IIR FAQ.) IIR-Filter verwenden Feedback, so dass bei der Eingabe eines Impulses die Ausgabe theoretisch unendlich klingelt. 1.6 Wie FIR-Filter mit IIR-Filtern vergleichen Jedes hat Vor - und Nachteile. Insgesamt aber überwiegen die Vorteile von FIR-Filtern die Nachteile, so dass sie viel mehr als IIRs verwendet werden. 1.6.1 Was sind die Vorteile von FIR-Filtern (im Vergleich zu IIR-Filtern) Im Vergleich zu IIR-Filtern bieten FIR-Filter folgende Vorteile: Sie lassen sich leicht als quasi-lineare Phasenquotten konzipieren (und sind in der Regel). Einfach ausgedrückt, verzögern lineare Phasenfilter das Eingangssignal, aber donrsquot verzerrt seine Phase. Sie sind einfach zu implementieren. Bei den meisten DSP-Mikroprozessoren kann die FIR-Berechnung durch Schleifen einer einzigen Anweisung durchgeführt werden. Sie eignen sich für Mehrpreisanwendungen. Mit Multi-Rate bedeuten wir entweder einen Dekrementquot (Reduzierung der Abtastrate), eine Interpolation (Erhöhung der Abtastrate) oder beides. Ob Dezimierung oder Interpolation, die Verwendung von FIR-Filtern erlaubt es, einige der Berechnungen wegzulassen, wodurch eine wichtige Recheneffizienz geschaffen wird. Im Gegensatz dazu, wenn IIR-Filter verwendet werden, muss jeder Ausgang individuell berechnet werden, auch wenn dieser Ausgang verworfen wird (so dass die Rückkopplung wird in den Filter integriert werden). Sie haben gewünschte numerische Eigenschaften. In der Praxis müssen alle DSP-Filter mit Hilfe einer Finite-Precision-Arithmetik, dh einer begrenzten Anzahl von Bits, implementiert werden. Die Verwendung von Finite-Precision-Arithmetik in IIR-Filtern kann aufgrund des Feedbacks erhebliche Probleme verursachen, aber FIR-Filter ohne Rückkopplung können gewöhnlich mit weniger Bits implementiert werden, und der Konstrukteur hat weniger praktische Probleme, die mit der nicht idealen Arithmetik zusammenhängen. Sie können mit Hilfe von fractional arithmetic implementiert werden. Im Gegensatz zu IIR-Filtern ist es immer möglich, ein FIR-Filter unter Verwendung von Koeffizienten mit einer Grße von weniger als 1,0 einzusetzen. (Die Gesamtverstärkung des FIR-Filters kann bei Bedarf an seinem Ausgang eingestellt werden.) Dies ist ein wichtiger Aspekt bei der Verwendung von Festpunkt-DSPs, da sie die Implementierung viel einfacher macht. 1.6.2 Was sind die Nachteile von FIR-Filtern (im Vergleich zu IIR-Filtern) Im Vergleich zu IIR-Filtern haben FIR-Filter manchmal den Nachteil, dass sie mehr Speicher und Berechnung benötigen, um eine gegebene Filtercharakteristik zu erreichen. Auch sind bestimmte Reaktionen mit FIR-Filtern nicht praktikabel. 1.7 Welche Begriffe werden bei der Beschreibung von FIR-Filtern verwendet? Impulsantwort - Der Impulsantwortfaktor eines FIR-Filters ist eigentlich nur der Satz von FIR-Koeffizienten. (Wenn Sie ein quotimplusequot in einen FIR-Filter setzen, der aus einem quotierten Quot-Sample besteht, gefolgt von vielen quot0quot-Samples, ist das Ausgangssignal des Filters die Menge der Koeffizienten, wenn sich die 1 Sample nacheinander um jeden Koeffizienten bewegt, um die Ausgabe zu bilden. Tippen - Ein FIR quottapquot ist einfach ein Koeffizientenverzögerungspaar. Die Anzahl der FIR-Anzapfungen (oft als "Anfasser" bezeichnet) ist ein Hinweis auf 1) die zur Implementierung des Filters erforderliche Speicherkapazität, 2) die Anzahl der erforderlichen Berechnungen und 3) die Menge des Filterfilters, Multiply-Accumulate (MAC) - In einem FIR-Kontext ist ein MACquot der Vorgang des Multiplizierens eines Koeffizienten mit dem entsprechenden verzögerten Datenabtastwert und dem Akkumulieren des Ergebnisses. FIRs erfordern normalerweise einen MAC pro Hahn. Die meisten DSP-Mikroprozessoren implementieren die MAC-Operation in einem einzigen Befehlszyklus. Transition Band - Das Frequenzband zwischen Passband - und Stopband-Kanten. Je schmaler das Übergangsband ist, desto mehr Taps werden benötigt, um den Filter zu implementieren. (Ein quotsmallquot-Übergangsband führt zu einem quotsharpquot-Filter.) Delay Line - Der Satz von Speicherelementen, die die quotZ-1quot-Verzögerungselemente der FIR-Berechnung implementieren. Zirkulärer Puffer - Ein spezieller Puffer, der zirkulär ist, weil eine Inkrementierung am Ende dazu führt, dass er an den Anfang wickelt, oder weil das Dekrementieren von Anfang an bewirkt, dass es bis zum Ende umwickelt. Zirkuläre Puffer werden oft von DSP-Mikroprozessoren bereitgestellt, um den Quotientenquot der Proben durch die FIR-Verzögerungsleitung zu implementieren, ohne die Daten im Speicher wörtlich bewegen zu müssen. Wenn ein neues Sample zum Puffer hinzugefügt wird, ersetzt es automatisch die älteste. Signalverarbeitung Digitale Filter Digitale Filter sind durch essenziell abgetastete Systeme. Die Eingangs - und Ausgangssignale werden durch Abtastwerte mit gleichem Zeitabstand dargestellt. Finite Implulse Response (FIR) - Filter sind gekennzeichnet durch ein Zeitverhalten, das nur von einer gegebenen Anzahl der letzten Abtastwerte des Eingangssignals abhängt. Anders ausgedrückt: Sobald das Eingangssignal auf Null abgesunken ist, wird der Filterausgang nach einer bestimmten Anzahl von Abtastperioden das gleiche tun. Der Ausgang y (k) ist durch eine Linearkombination der letzten Eingangsabtastwerte x (k i) gegeben. Die Koeffizienten b (i) geben das Gewicht für die Kombination an. Sie entsprechen auch den Koeffizienten des Zählers der Z-Domain-Filtertransferfunktion. Die folgende Abbildung zeigt ein FIR-Filter der Ordnung N 1: Bei linearen Phasenfiltern sind die Koeffizientenwerte um das mittlere symmetrisch und die Verzögerungsleitung kann um diesen Mittelpunkt zurückgeklappt werden, um die Anzahl der Multiplikationen zu reduzieren. Die Übertragungsfunktion der FIR-Filter pocesses nur einen Zähler. Dies entspricht einem Nullfilter. FIR-Filter erfordern typischerweise hohe Ordnungen in der Größenordnung von einigen Hunderten. Somit benötigt die Wahl dieser Art von Filtern eine große Menge an Hardware oder CPU. Trotzdem ist ein Grund, eine FIR-Filter-Implementierung zu wählen, die Fähigkeit, eine lineare Phasenreaktion zu erreichen, die in einigen Fällen eine Anforderung sein kann. Trotzdem hat der Fiter-Designer die Möglichkeit, IIR-Filter mit guter Phasenlinearität im Durchlaßband wie Bessel-Filter zu wählen. Oder ein Allpassfilter zu entwerfen, um die Phasenreaktion eines Standard-IIR-Filters zu korrigieren. Moving Average Filter (MA) Edit Moving Average (MA) Modelle sind Prozessmodelle in der Form: MA Prozesse ist eine alternative Darstellung von FIR Filtern. Durchschnittliche Filter Edit Ein Filter, der den Durchschnitt der N letzten Abtastwerte eines Signals berechnet. Es ist die einfachste Form eines FIR-Filters, wobei alle Koeffizienten gleich sind. Die Übertragungsfunktion eines Durchschnittsfilters ist gegeben durch: Die Übertragungsfunktion eines Durchschnittsfilters weist N gleich beabstandete Nullen entlang der Frequenzachse auf. Die Null bei DC wird jedoch durch den Pol des Filters maskiert. Daher gibt es eine größere Keule, die für das Filterdurchlassband verantwortlich ist. Cascaded Integrator-Comb (CIC) Filter Edit Ein Cascaded Integrator-Comb Filter (CIC) ist eine spezielle Technik zur Realisierung von mittleren Filtern in Serie. Die Serienplatzierung der mittleren Filter verstärkt den ersten Lappen bei DC im Vergleich zu allen anderen Lappen. Ein CIC-Filter implementiert die Übertragungsfunktion von N Durchschnittsfiltern, die jeweils den Durchschnitt von R M Abtastwerten berechnen. Seine Übertragungsfunktion ist folglich gegeben durch: CIC-Filter werden verwendet, um die Anzahl der Abtastwerte eines Signals um einen Faktor R zu dezimieren oder, anders ausgedrückt, ein Signal mit einer niedrigeren Frequenz erneut abzutasten, wobei R 1 Abtastwerte aus R weggeworfen werden. Der Faktor M gibt an, wie viel von dem ersten Lappen durch das Signal verwendet wird. Die Anzahl der mittleren Filterstufen, N. Wie gut andere Frequenzbänder gedämpft werden, auf Kosten einer weniger flachen Übertragungsfunktion um DC herum. Die CIC-Struktur ermöglicht es, das gesamte System mit nur Addierern und Registern zu implementieren, wobei keine Multiplikatoren verwendet werden, die in Bezug auf Hardware gierig sind. Eine Abwärtsabtastung mit dem Faktor R erlaubt die Erhöhung der Signalauflösung durch log 2 (R) (R) Bits. Kanonische Filter Bearbeiten Kanonische Filter implementieren eine Filterübertragungsfunktion mit einer Anzahl von Verzögerungselementen gleich der Filterreihenfolge, einem Multiplikator pro Zählerkoeffizienten, einem Multiplikator pro Nennerkoeffizienten und einer Reihe von Addierern. Ähnlich wie aktive Filter kanonische Strukturen zeigte sich diese Art von Schaltungen sehr empfindlich gegenüber Elementwerten: eine kleine Änderung in Koeffizienten hatte einen großen Einfluss auf die Übertragungsfunktion. Auch hier hat sich das Design von aktiven Filtern von kanonischen Filtern zu anderen Strukturen wie Ketten zweiter Ordnung oder Leapfrog-Filtern verschoben. Kette der Sektionen zweiter Ordnung Edit Eine Sektion zweiter Ordnung. Oft als Biquad bezeichnet. Implementiert eine Übertragungsfunktion zweiter Ordnung. Die Übertragungsfunktion eines Filters kann in ein Produkt aus Übertragungsfunktionen aufgeteilt werden, die jeweils einem Paar von Pole und möglicherweise einem Paar von Nullen zugeordnet sind. Wenn die Übertragungsfunktionen ordnungsgemäß ungerade sind, muss ein erster Ordnungsteil zur Kette hinzugefügt werden. Dieser Abschnitt ist dem realen Pol und dem realen Nullpunkt zugeordnet, falls einer vorhanden ist. Direct-Form 1 Direct-Form 2 Direct-Form 1 Transponierte Direct-Form 2 transponiert Das von der folgenden Abbildung transponierte Direct-Formular 2 ist besonders interessant in Bezug auf die benötigte Hardware sowie die Signal - und Koeffizienten-Quantisierung. Digitale Leapfrog-Filter Filterstruktur bearbeiten Digitale Leapfrog-Filter basieren auf der Simulation von analogen aktiven Leapfrog-Filtern. Der Anreiz für diese Wahl ist, von den ausgezeichneten Passband-Empfindlichkeitseigenschaften der ursprünglichen Leiter-Schaltung zu erben. Das folgende 4. Ordnung allpolige Tiefpass-Leapfrogfilter kann als digitale Schaltung implementiert werden, indem die analogen Integratoren durch Akkumulator ersetzt werden. Das Ersetzen der Analogintegratoren durch Akkumulatoren entspricht der Vereinfachung der Z-Umwandlung zu z 1 s T. Die die beiden ersten Terme der Taylorreihe von z e x p (s T) sind. Diese Näherung ist gut genug für Filter, bei denen die Abtastfrequenz viel höher ist als die Signalbandbreite. Transferfunktion Edit Die Zustandsraumdarstellung des vorangehenden Filters kann wie folgt geschrieben werden: Aus dieser Gleichung kann man die A, B, C, D Matrizen schreiben als: Aus dieser Darstellung lassen sich Signalverarbeitungswerkzeuge wie Octave oder Matlab grafisch darstellen Den Frequenzgang des Filters oder seine Nullen und Pole zu untersuchen. In dem digitalen Leapfrog-Filter stellen die relativen Werte der Koeffizienten die Form der Übertragungsfunktion (Butterworth, Chebyshev.) Ein, während ihre Amplituden die Grenzfrequenz einstellen. Das Dividieren aller Koeffizienten um einen Faktor von zwei verschiebt die Cutoff-Frequenz um eine Oktave (auch einen Faktor von zwei) nach unten. Ein spezieller Fall ist das Buterworth-Filter 3. Ordnung, das Zeitkonstanten mit relativen Werten von 1, 12 und 1 aufweist. Dadurch kann dieses Filter in Hardware ohne Multiplikator implementiert werden. Autoregressive Filter (AR) Edit Autoregressive (AR) Modelle sind Prozessmodelle in der Form: Wo u (n) die Ausgabe des Modells ist, ist x (n) die Eingabe des Modells und u (n - m) sind vorherige Abtastwerte des Modellausgangswertes. Diese Filter werden autoregressiv genannt, da die Ausgangswerte auf der Grundlage von Regressionen der vorherigen Ausgabewerte berechnet werden. AR-Prozesse können durch ein Allpol-Filter dargestellt werden. ARMA Filter Edit Autoregressive Moving-Average Filter (ARMA) sind Kombinationen von AR - und MA-Filtern. Der Ausgang des Filters ist als Linearkombination sowohl der gewichteten Eingangs - als auch der gewichteten Ausgangssamples gegeben: ARMA-Prozesse können als digitales IIR-Filter mit beiden Pole und Nullen betrachtet werden. AR-Filter werden in vielen Fällen bevorzugt, da sie mit den Yule-Walker-Gleichungen analysiert werden können. MA - und ARMA-Prozesse hingegen können durch komplizierte nichtlineare Gleichungen analysiert werden, die schwer zu studieren und zu modellieren sind. Wenn wir einen AR-Prozeß mit Abgriff-Gewichtungskoeffizienten a (einen Vektor von a (n), a (n - 1).) Einen Eingang von x (n) haben. Und eine Ausgabe von y (n). Können wir die yule-walker Gleichungen verwenden. Wir sagen, dass x 2 die Varianz des Eingangssignals ist. Wir behandeln das Eingangsdatensignal als Zufallssignal, auch wenn es ein deterministisches Signal ist, weil wir nicht wissen, was der Wert ist, bis wir ihn erhalten. Wir können die Yule-Walker-Gleichungen folgendermaßen ausdrücken: wobei R die Kreuzkorrelationsmatrix der Prozeßausgabe ist und r die Autokorrelationsmatrix der Prozeßausgabe ist: Varianzbearbeitung Wir können zeigen: Wir können die Eingangssignalabweichung als: , Expandiert und ersetzt r (0). Können wir die Ausgangsvarianz des Prozesses auf die Eingangsvarianz beziehen:

Comments