Friday 3 November 2017

Dsp Moving Average Filter Design


Ein einleitender digitaler Filter Nun öffnen Sie MicroModeler DSP und wählen Sie einen digitalen Filter von der Symbolleiste an der Oberseite und ziehen Sie sie zu unserer Anwendung. Nun wählen Sie einen gleitenden Durchschnitt Filter, weil seine eine der einfachsten Arten von Filtern. Nach dem Löschen des Filters werden die Anzeigen automatisch aktualisiert. (Klicken Sie auf MicroModeler DSP in einem neuen Fenster zu starten) Wir alle wissen, was ein Durchschnitt ist - fügen Sie die Zahlen zusammen und teilen, wie viele es gibt. Ein gleitender Durchschnitt filtert genau das. Es speichert eine Historie der letzten N Zahlen und gibt ihren Durchschnitt aus. Jedes Mal, wenn eine neue Zahl kommt, wird der Mittelwert effektiv aus den gespeicherten Mustern neu berechnet und eine neue Zahl ausgegeben. Der Frequenzgang eines Filters Oben rechts sehen wir den Graphen von Magnitude vs Frequency, oder wie viel unterschiedliche Frequenzen durch den gleitenden mittleren Filter verstärkt oder reduziert werden. Wie Sie vielleicht erwarten, wird ein Mittelwert der letzten N Abtastwerte eine Art Glättung auf das Signal anwenden, wobei die niedrigen Frequenzen beibehalten und die hohen Frequenzen entfernt werden. Wir können die Anzahl der vorherigen Eingaben oder Proben, die sie durch die Einstellung der Filterlänge N steuert, steuern. Durch Anpassen dieser Funktion können wir sehen, dass wir eine grundlegende Kontrolle darüber haben, welche Frequenzen passieren und welche verworfen werden. Das Innere eines Filters Wenn wir die Strukturansicht betrachten, können wir sehen, wie das Innere eines gleitenden Durchschnittsfilters aussehen könnte. Das Diagramm wurde kommentiert, um zu zeigen, was die verschiedenen Symbole bedeuten. Die Z -1 - Zeichen bedeuten Verzögerung um ein Mal und die Symbole bedeuten addieren oder kombinieren die Signale. Die Pfeile bedeuten multiplizieren (denken verstärken, reduzieren oder skalieren) das Signal um den Betrag rechts neben dem Pfeil angezeigt. Für einen Durchschnitt von 5 Proben nehmen wir ein Fünftel (0,2) der letzten Probe, ein Fünftel der zweitletzten Stichprobe und so weiter. Die Verzögerungskette wird als Verzögerungsleitung bezeichnet, wobei das Eingangssignal um einen weiteren Zeitschritt verzögert wird, wenn man entlang der Verzögerungsleitung fortschreitet. Die Pfeile werden auch als Hähne, so können Sie fast sie als Hähne wie die in Ihrem Küchenspüle, die alle eine fünfte offen sind. Man könnte sich vorstellen, dass das Signal von links einfließt und sich fortschreitend verzögert, wenn es sich entlang der Verzögerungsstrecke bewegt und dann in unterschiedlichen Stärken durch die Abgriffe wieder zusammengeführt wird, um den Ausgang zu bilden. Es sollte auch leicht zu sehen, dass die Ausgabe des Filters werden: Das entspricht dem Durchschnitt der letzten 5 Proben. In der Praxis wird der von MicroModeler DSP erzeugte Code Tricks verwenden, um dies effizienter zu machen, so daß nur erste und letzte Abtastungen beteiligt sein müssen, aber das Diagramm ist zu illustrativen Zwecken gut. Wenn Sie dies verstehen können, dann können Sie eine Idee, was ein FIR-Filter ist. Ein FIR-Filter ist identisch mit dem gleitenden Durchschnittsfilter, aber stattdessen können alle Zapfstärken gleich sein, sie können unterschiedlich sein. Hier haben wir einen gleitenden Mittelfilter und einen FIR-Filter. Sie können sehen, dass sie strukturell gleich sind, der einzige Unterschied ist die Stärken der Hähne. Im nächsten Abschnitt werden wir Ihnen Finite Impulse Response (FIR) Filter vorstellen. Durch die Variation der Zapfwellenstärken können wir nahe jedem beliebigen Frequenzgang erzeugen, den wir wollen. FIR-Filter-Grundlagen 1.1 Was sind FIR-Filterquot FIR-Filter sind einer von zwei Primärtypen von Digitalfiltern, die in Digital Signal Processing (DSP) - Anwendungen eingesetzt werden 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 / oder 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 Koeffizient / Verzö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 bewirkt, dass er sich zum Anfang wickelt, oder weil das Dekrementieren von Anfang an bewirkt, dass es bis zum Ende wickelt. 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.

No comments:

Post a Comment