Friday, November 11, 2016

Bewegungsfilter Filter Bode Plot

Master Scilab Inhalt: 1 Was ist Scilab 2 Zu diesem Dokument 3 Herunterladen und Installieren von Scilab 4 Die Scilab-Umgebung 5 Scilab-Hilfe 6 Scripts 7 Matrix-Operationen 8 Plotten 9 Funktionen für Dynamik und Steuerung 9.1 Simulation von Dauer-Übertragungsfunktionen 9.2 Frequenzgang von kontinuierlichen - Zeitübertragungsfunktionen 9.3 Simulation diskreter Zeitübertragungsfunktionen 9.4 Frequenzgang diskreter Zeitübertragungsfunktionen 9.5 Simulation von Dauerzustand-Raum-Modellen 9.6 Diskretisierung von Zeitsystemen 9.7 Ableitung von Übertragungsfunktionen aus Zustandsraummodellen 9.8 Kombinieren von Modellen: Serie, Parallel und Feedback 9.9 Frequenzanalyse und Simulation von Rückkopplungssystemen 9.10 LQ (linear quadratisch) optimaler Regler 9.11 Kalman Filtergewinne 1 Was ist Scilab Zitat von der Homepage von Scilab bei scilab. org: Scilab ist eine freie Wissenschaft Software-Paket für numerische Berechnungen, die eine leistungsstarke offene Rechenumgebung für Ingenieur - und Wissenschaftsanwendungen bieten. Scilab ist eine Open-Source-Software. Seit 1994 wurde es mit dem Quellcode über das Internet frei verteilt. Es wird derzeit in Bildungs-und Industrieumgebungen auf der ganzen Welt eingesetzt. Scilab umfasst Hunderte von mathematischen Funktionen mit der Möglichkeit, interaktive Programme aus verschiedenen Sprachen (C, C, Fortran) hinzuzufügen. Es verfügt über anspruchsvolle Datenstrukturen (einschließlich Listen, Polynome, rationale Funktionen, lineare Systeme), einen Dolmetscher und eine Programmiersprache auf hohem Niveau. Scilab ist ähnlich wie Matlab, und der Funktionsumfang ist vergleichbar. Der größte Vorteil von Scilab ist natürlich, dass es kostenlos ist :-). Auch Scilab ist einfach und schnell zu installieren (und Sie müssen Ihren PC nicht neu starten, bevor Sie es verwenden). Scilab ist auch ähnlich Octave, die auch frei Octave ist mehr ähnlich wie Matlab als Scilab. Ein Problem mit Octave besteht darin, dass Datenplotten in Octave umständlicher sind als in Scilab. (Sie können sowohl Scilab und Octave installiert haben :-) Eine schöne Sache über Scilab ist, dass Sie Scicos automatisch installiert, wenn Sie Scilab installieren. Scicos ist ein Blockdiagramm-basiertes Simulationswerkzeug ähnlich Simulink und LabVIEW Simulationsmodul. 2 Über dieses Dokument Dieses Tutorial führt Sie durch die Schritte zur Bewältigung von Scilab. Ich habe dieses Dokument geschrieben, weil ich kein richtiges Tutorial auf der Scilab-Homepage gefunden habe. Ich nehme an, dass Sie alle Aktivitäten in den blauen Kästen tun, wie hier: Aktivitäten werden in blauen Kästchen als dieser angezeigt. Bitte senden Sie Kommentare oder Vorschläge, um dieses Tutorial per E-Mail an finn. haugenhit. no zu verbessern. 3 Herunterladen und Installieren von Scilab Die Installationsdatei, die eine. exe-Datei ist, steht unter scilab. org zum Download zur Verfügung. Sobald Sie diese Exe-Datei heruntergeladen haben, öffnen Sie sie, und folgen Sie dann den Anweisungen auf dem Bildschirm. (Es sollte nicht notwendig sein, Ihren PC neu zu starten, bevor Sie Scilab nach der Installation starten.) Beachten Sie, dass bei der Installation von Scilab auch Scicos installiert ist. 4 Die Scilab-Umgebung Scilab starten: Doppelklicken Sie auf das Scilab-Symbol auf dem PC-Desktop oder auf Start / Alle Programme / Scilab / scilab (keine Scilab-Konsole auswählen). Starten von Scilab öffnet das Scilab-Befehlsfenster, siehe folgende Abbildung. Das Scilab-Befehlsfenster Scilab-Befehle werden in der Befehlszeile ausgeführt, indem Sie den Befehl eingeben und dann auf die Eingabetaste auf der Tastatur klicken. Führen Sie 11 (Typ 11 an der Befehlszeile aus und beenden mit Enter-Taste). Das Ergebnis wird im Befehlsfenster angezeigt (siehe Abbildung oben). 5 Scilab-Hilfe Öffnen Sie die Scilab-Hilfe, indem Sie auf die Schaltfläche Hilfe in der Symbolleiste klicken (die Schaltfläche mit dem Fragezeichen). Das Hilfefenster wird unten gezeigt. Scilab Hilfefenster Wie Sie im Hilfefenster sehen, sind die Befehle und Funktionen in einer Reihe von Kategorien organisiert. Klicken Sie zum Beispiel auf die Kategorie Elementare Funktionen, um die Funktionen in dieser Kategorie anzuzeigen. Die Funktionen sind in der obigen Abbildung dargestellt. Um detaillierte Hilfetexte zu einer bestimmten Funktion zu erhalten, klicken Sie auf diese Funktion. Klicken Sie auf die abs-Funktion (in der Kategorie Elementare Funktionen). Der ausführliche Hilfetext für die abs-Funktion ist in der folgenden Abbildung dargestellt. Der ausführliche Hilfetext für die abs-Funktion Sie können auch nach einer Funktion suchen, indem Sie zuerst auf die Schaltfläche Suchen im Hilfefenster (Lupe) klicken. Suche nach sine. Das Ergebnis der Suche ist eine Liste der relevanten Funktionen, siehe folgende Abbildung. Das Ergebnis der Suche nach sine 5 Basic Scilab Operationen In der Regel verwenden Sie Variablen in Ihren Berechnungen. Um die Variable a zu erstellen und ihr das Ergebnis 11 zuzuordnen, wird nachfolgend (Enter) nicht angezeigt, es wird jedoch davon ausgegangen, dass Sie auf die Schaltfläche Enter klicken. Die Antwort wird im Befehlsfenster angezeigt (aber hier gezeigt). Versuchen Sie jetzt, das Semikolon einzugeben: Die Antwort wird nicht im Befehlsfenster angezeigt. Der Befehl wurde tatsächlich ausgeführt, aber wegen des Semikolons wurde die Antwort nicht angezeigt. Um zu überprüfen, ob die Variable b tatsächlich existiert: Wie Sie aus der hier nicht dargestellten Antwort sehen, existiert d, während D nicht existiert (da wir D nicht erstellt haben). Scilab-Variablen sind im Arbeitsbereich vorhanden. Es gibt zwei Möglichkeiten, den Inhalt eines Arbeitsbereichs zu sehen: Ausführen des Befehls, der in der Befehlszeile nur die Variablen im Befehlsfenster auflistet. Menü-Anwendungen / Browser-Variablen. Die das Browser-Variablenfenster öffnet. Führen Sie den Befehl who aus. Die Antwort sollte ähnlich sein, wie in der folgenden Abbildung gezeigt. (Die benutzerdefinierten Variablen werden unter vielen anderen Variablen angezeigt.) Die Antwort des Befehls, der das Menü Programme / Browser-Variablen auswählt. Das Fenster Browser-Variablen wird geöffnet, siehe folgende Abbildung. Fenster Browser-Variablen Das Fenster Browser-Variablen enthält unten eine Anzahl von Utility-Buttons (hier nicht im Detail beschrieben). Wenn Sie Scilab verlassen, werden die im Arbeitsbereich erstellten Variablen gelöscht. Sie können Variablen in einer Datei mit der Funktion save speichern. Wenn Sie jedoch wirklich Variablen speichern müssen, die aus einigen Scilab-Ausdrücken resultieren, sollten Sie diese Ausdrücke in ein Scilab-Skript aufnehmen. Mehr über Scripts in Kürze. Es gibt verschiedene Möglichkeiten, Zahlen einzugeben (die pi ist eine eingebaute Konstante). Hier sind einige illustrative Beispiele (ich nehme an, dass Sie die Prinzipien aus diesen Beispielen sehen): 0.1, 1e-1, 23, exp (1), pi Die Antwort ist in der folgenden Abbildung gezeigt. Verschiedene Möglichkeiten, Zahlen einzugeben Mit der Formatfunktion können Sie festlegen, wie Zahlen im Befehlsfenster angezeigt werden, aber die interne Darstellung der Nummer in Scilab ist unabhängig vom Anzeigeformat. Wir werden nicht auf Details schauen. Wenn Sie das Anzeigeformat ändern müssen, konsultieren Sie die Scilab-Hilfe. Scilab-Funktionen sind vektorisiert, d. h. Funktionen können mit vektoriellen Argumenten aufgerufen werden. (Ein Vektor ist einfach eine eindimensionale Matrix. Wir kehren zu Vektor - und Matrixoperationen in einem späteren Abschnitt zurück.) Im folgenden Beispiel wird zuerst ein Vektor des Namens t erzeugt, dann wird dieser Vektor als Argument im Sinusfunktion (die Sinusfunktion setzt voraus, dass das Argument ein Winkel im Bogenmaß ist). Die Antwort ist in der folgenden Abbildung dargestellt. Das Ergebnis der vektorisierten Funktion sin (0.1t), wobei t ein Vektor ist. 6 Skripte Ein Scilab-Skript ist eine Textdatei mit dem Namen. sce, die Scilab-Befehle enthält. Sie können das Skript mit dem eingebauten Scipad Editor bearbeiten. (Scripts können auch Namen haben. sci Der Voreinstellungsname, wenn ein fle in Scipad gespeichert wird, ist. sce.) Sie sollten Skripte sogar für kleine Aufgaben verwenden, weil auf diese Weise Sie alle Ihr quotprojectsquot in den Akten gespeichert haben, die für Dokumentation und auch gut sind Sehr bequem, wenn Sie alle Ihre Befehle nach einigen Änderungen ausführen möchten. Wir erstellen nun ein einfaches Skript und führen es dann aus. Das Ausführen eines Skripts ist das gleiche wie das Ausführen aller Befehle (von oben nach unten im Skript) an der Befehlszeile nacheinander. Starten Sie den Scipad-Editor, indem Sie das Editor-Menü (oder durch Ausführen des scipad-Befehls) auswählen. Geben Sie dann die in der folgenden Abbildung dargestellten Befehle ein. Der Scipad-Editor wird in der folgenden Abbildung gezeigt. Beachten Sie, dass doppelte Schrägstriche (//) verwendet werden, um Kommentare im Skript zu starten. Scilab-Skript des Namens script1.sce wurde im Scipad-Editor geöffnet Beachten Sie, dass Sie mehrere Scripts im gleichen Scipad-Fenster mit dem Menü Datei / Neu öffnen können. Speichern Sie das Skript mit dem Namen script1.sce (natürlich kann ein anderer Name verwendet werden) im Verzeichnis (Ordner) C: temp oder in einem beliebigen anderen Verzeichnis, das Sie bevorzugen. Es gibt zwei Möglichkeiten, das script1.sce-Skript auszuführen: Mit dem Menü "Ausführen / Laden in das Scilab" in Scipad Durch Ausführen des Befehls exec script1.sce an der Befehlszeile starten wir zunächst das Menü Ausführen: Wählen Sie das Menü Ausführen / Laden in das Scilab-Menü In Scipad. Das Ergebnis wird im Befehlsfenster angezeigt. Scf (1) // Öffnet die neue Figur mit der ID 1. (scf set current fig) plot (y) // Plot y gegen y-Indizes (ganze Zahlen entlang der x-Achse) Unten ist die Scilab-Figur mit dem Plot dargestellt. Entlang der x-Achse sind die Indizes des y-Vektors. Die Indizes sind ganze Zahlen von 1 bis 101. Bevor wir mit weiteren Plotterbefehlen fortfahren, sehen wir uns einige Schaltflächen und Menüs im Grafikfenster an. Klicken Sie im Bildfenster auf die Schaltfläche GED. Dies öffnet das Klicken auf die GED-Taste öffnet den Grafik-Editor, siehe die folgende Abbildung. Der Grafikeditor Mit dem Grafikeditor können Sie Linienfarben, Linienstil ändern, Etiketten zur Achse hinzufügen, Raster hinzufügen, usw. Die verschiedenen Optionen werden hier nicht beschrieben, da es sehr einfach ist, die Möglichkeiten selbst zu untersuchen. Viele der Optionen im Graphics Editor können alternativ mit Optionen auf den Plotbefehl gesetzt werden. Dies wird in nachfolgenden Beispielen gezeigt. Sie können aus dem Plot verschiedene Grafikdateien erstellen: Wählen Sie im Bildfenster das Menü Datei / Exportieren. Daraufhin wird das Dialogfeld "Exportieren" geöffnet. Das Dialogfeld "Exportieren" im Grafikfenster Wenn Sie eine Graphikdatei erstellen möchten, die in einen Dokumentenprozessor eingefügt werden soll, sollten Sie als MS Word oder Scientific Workplace Enhanced Meta File (EMF) auswählen, wobei es sich um ein vektorisiertes Grafikformat handelt Kann vergrößert werden und immer noch scharf aussehen. EMF-Dateien können jedoch nicht in nativen Webdokumenten verwendet werden, z. B. In HTML-Dateien in einem Webbrowser angezeigt werden. In diesem Fall sollten Sie das GIF-Format auswählen (dieses Format gibt Ihnen keine vektorisierten Grafiken). Wir gehen weiter mit Blick auf weitere Optionen auf den Plot-Befehl. Nehmen Sie an, dass wir y gegen t in Abbildung 1, die die gleiche Figur ist, wie wir oben verwendet haben. Dies geschieht mit der Befehlsschrift (t, y), wobei natürlich angenommen wird, daß die Vektoren t und y die gleiche Länge haben (gleiche Anzahl von Elementen). Wenn Sie nur den Befehl plot verwenden, fügt das neue Diagramm dem vorherigen Diagramm zwei (oder mehr Kurven) hinzu. Normalerweise ist dies nicht das, was Sie wollen. Um das vorherige Diagramm zu löschen, verwenden wir den Befehl clf (clear figure), bevor wir den Plot-Befehl verwenden. // Löscht eine Zeichnung und zeichnet in der gleichen Abbildung auf: scf (1) // Setzt Abbildung 1 auf die aktuelle Figur clf // löscht die Figurplot (t, y) // Plots in Abbildung 1 Das Ergebnis wird in der Abbildung unten. Beachten Sie, dass die x-Achse nun die t-Werte enthält. Angenommen, Sie möchten den Plot in einer neuen Abbildung 2 anstelle der zuvor geöffneten Grafik zeigen. Abbildung 1: scf (2) // Setzt Abbildung 2, um ein aktuelles Diagramm zu werden (t, y) // Plots in Abbildung 1Frequency Response des Running Durchschnittlicher Filter Der Frequenzgang eines LTI-Systems ist die DTFT der Impulsantwort, Die Impulsantwort eines L-Sample-gleitenden Mittelwerts Da der gleitende Mittelwert FIR ist, reduziert sich der Frequenzgang auf die endliche Summe Identität, um den Frequenzgang zu schreiben, wo wir ae minus jomega haben. N 0 und M L minus 1. Wir können an der Größe dieser Funktion interessiert sein, um zu bestimmen, welche Frequenzen durch den Filter ungedämpft werden und welche gedämpft werden. Unten ist ein Diagramm der Größe dieser Funktion für L 4 (rot), 8 (grün) und 16 (blau). Die horizontale Achse reicht von Null bis pi Radiant pro Probe. Man beachte, daß der Frequenzgang in allen drei Fällen eine Tiefpaßcharakteristik aufweist. Eine konstante Komponente (Nullfrequenz) im Eingang durchläuft das Filter ungedämpft. Bestimmte höhere Frequenzen, wie z. B. pi / 2, werden durch das Filter vollständig eliminiert. Wenn es aber die Absicht war, ein Tiefpassfilter zu entwerfen, dann haben wir das nicht sehr gut gemacht. Einige der höheren Frequenzen sind nur um einen Faktor von etwa 1/10 (für den 16-Punkt-Bewegungsdurchschnitt) oder 1/3 (für die Vierpunkt-gleitender Durchschnitt) gedämpft. Wir können viel besser als das. Der oben genannte Plot wurde durch den folgenden Matlab-Code erzeugt: omega 0: pi / 400: pi H4 (1/4) (1-exp (-iomega4)) ./ (1-exp (-Iomega)) H8 (1/8 ) (1-exp (-iomega)) - (1-exp (-iomega)) - Geispiel (Omega (H4) abs (H4) abs (H8) abs (H16) Achse (0, pi, 0, 1) Copyright-Ausgabe 2000- Universität von Kalifornien, BerkeleyFilter: ein Eingangsausgangssystem Eingang x (t) Ax (t) gt ay (t) (wobei ascalarer Multiplikator und x (t) gt y (t)) Beachten Sie, dass die obige Bedingung impliziert, dass Null in gt Null aus. Das lineare Filter bewahrt immer die Form von Sinusoiden (und Exponentialen), dh wenn Eingang Sinusoid einer gegebenen Frequenz (oder exponentiell mit vorgegebener Zeitkonstante) ist, dann Ausgang ist Sinusoid mit der gleichen Frequenz (oder exponentiell mit dem gleichen tc). Keine anderen Wellenformen bleiben erhalten Weshalb Sinusoide bei der Signalverarbeitung so wichtig sind. Gleitender Durchschnitt ist eine Art Tiefpassfilter Impulsantwort eines Filters Filterung und Faltung Überprüfung komplexer Zahlen und Anwendung auf Sinusoide Faltung in Zeitmultiplikation in der Frequenz Filterung als Multiplikation im Frequenzbereich Übertragungsfunktion eines Filters (oder eines beliebigen linearen Systems) Definieren Sie in Beobachtungsausdrücke: Magn. Phase Mathematische Beschreibung von xfr fnc. In Form der komplexwertigen Funktion Amplitude, Phase und Verzögerung eines Filters. Amplitudengang: Verhältnis von Ausgangssignal zu Eingangssollwert. Gemessen bei sinusförmigen Eingängen bei vielen verschiedenen Frequenzen. (In dB oder in dB pro Oktave oder dB pro Dekade) Verzögerungsreaktion: Zeitverzögerung (in Sek. Oder Sek.) Zwischen Eingangs - und Ausgangswellenformen, Gemessen bei sinusförmigen Eingängen bei vielen verschiedenen Frequenzen. Die Verzögerung ist positiv, wenn der Ausgang anliegt. Phasengang (f). Differenz (in Grad oder Bogenmaß) zwischen Eingangs - und Ausgangswellenformen, gemessen bei sinusförmigen Eingängen bei vielen verschiedenen Frequenzen. Phase ist negativ, wenn Ausgang Eingang verzögert. F (f) - delay (f) 360 f (Phase in Grad, f in Hz) Lineare Phase bedeutet, dass die Phase linear mit der Frequenz variiert, was bedeutet, dass die Verzögerung von der Frequenz unabhängig ist. Lineare Phase ist gut, weil es bedeutet, dass alle Frequenzen um den gleichen Betrag verzögert werden, was bedeutet, dass Wellenformen nicht viel durch den Filter verzerrt sind. Zeigt Übertragungsfunktion an. Größe vs Frequenz, Phase vs Frequenz. Der Größenanteil eines Bode-Diagramms ist gewöhnlich ein log-log-Diagramm: Es verwendet eine dB-Skala (d. h. log) für die Grße und eine logarithmische Skala für die Frequenz. Der Phasenabschnitt des Plots ist lin-log: lineare Phasenwaage, logarithmische Frequenzskala. Filtertypen: Tiefpass. Hochpass. Bandpass Band-reject Reihenfolge eines Filtermaßes seiner Komplexität der Pole (Erklärungspole: Ordnung des Nennerpolynoms). Filter höherer Ordnung sind komplizierter zu implementieren, entweder elektronisch (für analoge Filter) oder rechnerisch (für digitale Filter), aber sie bieten eine verbesserte Leistung bis zu einem Punkt. Wenn die Filterordnung recht hoch wird (gt8. Ordnung für analoge, gt20. Ordnung für digital), können kleine Ungenauigkeiten dazu führen, daß die Filterleistung stark von der theoretischen Leistung abweicht. Siehe HampH Abb. 5.10 zum Beispiel der Wirkung der Filterreihenfolge auf die Schärfe der Filterabschaltung. Grenzfrequenz (oder Frequenzen, für Bandpass oder Bandsperre), Durchlassbandwelligkeit, Übergangsbandbreite, Stoppbanddämpfung (typischerweise in dB). Siehe HampH Abb. 5.13. Klassische Tiefpassfilter (siehe HampH Abb. 5.11 für Frequenzbereichsvergleich Abb. 5.14, 5.15 für Zeitbereichsvergleich.) Maximal flache Amplitude im Durchgangsbereich Übergangsbreite, Eckschärfe: OK aber nicht groß Phasengang: OK aber nicht groß Maximal flache Verzögerung Amplitude response: weiche Ecke, breites Übergangsband Chebyshev (andere Schreibweisen auch) Ampl-Antwort: nichtmonoton (hat Wellen) im Durchlaßbereich. Monoton im Stopband Sharp Cutoff, schmales Übergangsband Phase: ganz nichtlinear (d. H. Verzögerung weit von Konstante) Beispiel: siehe Datei chebyshev filter response. xls. Inverse Chebyshev (andere Schreibweisen auch) Ampl Antwort: monoton im Passband. Nichtmonotonisch (hat Wellen) im Stoppband Scharfe Abgrenzung, schmales Übergangsband Phase: ziemlich nichtlinear (d. H. Verzögerung weit von Konstante) Ampl-Antwort: nichtmonoton (hat Wellen) im Durchlaßband - Sehr scharfe Ecke, schmales Übergangsband Über den Beispielen für Filtertypen handelt es sich um alle klassischen Filter, die sich seit langem befinden und die erstmals in analoger Form entwickelt wurden. Um sie als digitale Filter zu implementieren, ist ein Ansatz erforderlich, der zu einer unendlichen Impulsantwort (IIR) führt: die Antwort oder Ausgabe des digitalen Filters auf einen einzigen Impuls (dh auf ein Eingangssignal, das überall null ist, außer zu einem Zeitpunkt , Zu welcher Zeit gleich Eins ist) für eine unendliche Anzahl von nachfolgenden Abtastwerten fortgesetzt. Vorteile von IIR-Filtern sind, dass sie die Implementierung von klassischen Filtertypen ermöglichen und dass sie gewünschte Filter-Spezifikationen mit einer niedrigen Filterordnung erreichen. Nachteil: Phase ist nichtlinear. Allgemeine Formel für kausales IIR-Filter der Ordnung n: wobei X (k) Eingangsfolge Y (k) Ausgangssequenz. IIR-Filter auch rekursiv genannt, da die Ausgabe unter Verwendung von Eingangs - und Ausgangswerten berechnet wird. Eine Alternative zu unendlichen Impulsantwortfiltern (IIR-Filtern) sind Filter mit begrenzter Impulsantwort (FIR). Eine einzelne Impulseingabe bewirkt eine Ausgabe, die nach einer endlichen Anzahl von Abtastungen auf Null zurückkehrt. FIR-Filter haben den Vorteil, einen wirklich linearen Phasengang zu liefern, der zu weniger Verzerrungen im Zeitbereich führt. Ein Nachteil von FIR-Filtern ist, daß sie gewöhnlich eine höhere Ordnung (als ein IIR-Filter) erfordern, um einen bestimmten Satz von Filterspezifikationen zu erreichen. Allgemeine Formel für das kausale FIR-Filter der Ordnung n: wobei X (k) die Eingangssequenz Y (k) die Ausgangssequenz ist. FIR-Filter auch als nichtrekursive. Da die Ausgabe mit dem aktuellen Ampereingabe-Eingang, aber nicht mit den vorherigen Werten des Ausgangs berechnet wird. Der Vorwärts-Rückwärts-Kaskadenfilter David Winter (Biomechanics amp Motor Control of Human Mvmt 1990) schlägt vor, verrauschte Daten mit einem Butterpassfilter des zweiten Tiefpassfilters zu filtern und dann den Ausgang dieses Prozesses umzukehren und erneut mit demselben Filter zu filtern. Indem es durch dasselbe Filter rückwärts gelegt wird, wird die ursprüngliche Phasenverzögerung exakt aufgehoben und das Nettoergebnis ist Nullphasenverzögerung bei allen Frequenzen. Eine geniale Idee. Es ist notwendig, bei diesem Verfahren eine höhere Grenzfrequenz (24,7 höher) für jeden zweiten Btrwth-Filter der zweiten Ordnung zu verwenden, als der letzte gewünschte Grenzwert. (Wenn Sie diese Einstellung nicht durchführen, bewirkt der erste Durchgang 3 dB Abschwächung am Cutoff, und der zweite Durchgang bewirkt weitere 3 dB für eine Gesamtdämpfung von 6 dB am Cutoff statt der gewünschten 3 dB Dämpfung bei Der Cutoff.) Wenn der endgültige gewünschte Cutoff 10 Hz beträgt, sollte jede Btrwth der zweiten Ordnung einen Cutoff von 12,47 Hz haben. Die Amplitudenreaktion des Vorwärts-Rückwärts-Kaskadenfilters ist 4. Ordnung, aber es ist kein Butterworth 4. Ordnung, weil ein Butterworth 4. Ordnung nicht gleichbedeutend ist, dass Butterworths 2. Ordnung kaskadiert wird. Der Kaskadenfilter hat ein weicheres Knie als ein Btrwth 4. Ordnung. Etwas mehr Dämpfung im Durchlaßbereich. Und etwas weniger im Stopband. Als mit einem wahren 4. Ordnung Btrwth. Siehe Excel-Datei butterworth zerolag filter. xls für detaillierte Transferfunktion Berechnungen, Graphen und Vergleich der Kaskade auf die wahre 4. Ordnung Btrwth. Die Verwendung von Vorwärts-Rückwärts-Kaskade wird dazu beitragen, die Phasenverzögerung für andere Filtertypen aufzuheben. Anstatt sie mit Btrwth zu verwenden (was ursprünglich gewählt werden konnte, weil ihre Phasenreaktion besser ist als die Phasenreaktion von Chebyshev. inverse Chebyshev oder elliptisch), sollten Sie sie daher nicht mit einem Filter mit einem scharfen Cutoff: elliptisch verwenden. Denken Sie daran, die Durchlassbandwelligkeitsvorgabe des Vorwärts - und Rückwärtsfilters einzustellen, um die gewünschte Welligkeit im Kaskadenfilter zu erhalten. Dies bedeutet, halb so groß (in dB) eine Passbandwelligkeit (PBR) spezifizieren, und halb so groß (in dB) ein Stopband Dämpfung spec, falls zutreffend. Zum Beispiel für elliptische Filter, geben 1 dB PBR und 30 dB Stopband Dämpfung, anstelle von 2 dB und 60 dB, da die Kaskade von zwei 1 dB Welligkeit. 30 dB Dämpfungsfilter haben 2 dB Welligkeit, 60 dB Dämpfung. Durch die Verwendung von elliptischen anstelle von Btrwth youll erhalten viel schärfere Größe Cutoff, und die Vorwärts-Rückwärts-Kaskade hebt die Phase, deren Nichtlinearität wäre ansonsten ein Nachteil. Vorwärts-Rückwärts-Kaskadenfilter (Btrwth oder andere) sind nicht kausal (d. h. Stromausgabe hängt teilweise von zukünftigen Werten des Eingangs ab) und sind IIR. Tatsächlich reicht die Antwort auf eine Impulseingabe unendlich weit in die Zukunft und in die Vergangenheit. Nächste Plots sind von file butterworth zerolag filter. xls. Plots zeigen die gleichen Informationen, aber ein Diagramm ist log-log und das andere ist linear-linear. Copyright 2003 William C. RoseMaybe you8217re lernen über Filter und wollen sehen, wie Ihr Filter reagiert im Bereich von 10Hz bis 1MHz. Dieser Leitfaden wird Ihnen zeigen, wie man eine niedrige Frequenz 8216spectrum Analysator mit Tracking-Generator8217 mit ein paar billige Module und ein Oszilloskop 8212 Basierend auf ein Video von Dave Jones über bei EEVBlog getan. Dave macht einen tollen Job geht in die Theorie, so schauen Sie sich das Video, wenn Sie sehen wollen, wie es funktioniert Er wird Ihnen auch zeigen, wie die Einrichtung des Umfangs. Schauen Sie sich mein Video unten für die Reader8217s Digest-Version. Einige wichtige Hinweise Für die Audio-Crowd 8212 ist die vertikale Skala immer noch in Volt, nicht Dezibel. Es gibt auch keine Informationen über die Phasenverschiebung. Die Schaltung von dieser Führung erzeugt eine Sinuswelle, und die Frequenz dieser Sinuswelle steigt exponentiell an. Dies erzeugt eine logarithmische Achse auf der horizontalen Achse Ihres Bereichs. Der zu testende Filter reagiert dann unterschiedlich, wenn die Frequenz hochgefahren wird. Schließlich wird alles auf dem Oszilloskop angezeigt, das über den externen Trigger synchronisiert wird. Das Oszilloskop und das Arduino benötigen ebenfalls die gleichen Zeiteinstellungen. 15Hz-10Khz Sweep mit Simulation 15Hz-1Mhz Sweep mit Simulation. Marker bei 50Khz (ca. Peak) Ein großes Problem ist, dass die oscilloscope8217s horizontale Achsenmarkierungen aren8217t korrekt platziert werden die ganze Zeit. Um dies zu beheben, wird der Mikrocontroller berechnen, wo die Achsenbalken sein sollen und erzeugen einen 1ms Puls bei 10Hz, 100Hz, 1000Hz, etc8230 Die beiden Screenshots zeigen verschiedene erzeugte Achse und es gibt einige Simulationen, um die Ergebnisse zu vergleichen. Für dieses Projekt habe ich ein Arduino (Breadboard freundlich), um die Timing / Mathe / Markierungen zu tun, aber der Star der Show hier ist der AD9850 DDS Sinus-Generator. It8217s am einfachsten, wenn Sie einen Ausbruch für die AD9850 verwenden. Glücklicherweise können sie auf ebay für ca. 5 mit kostenlosem Versand gefunden werden Diese scheint zu den Breakout-Spezifikationen aus dem ursprünglichen Schöpfer 8212 EIM377AD9850 (pdf) Schema, fügen Sie einige Entkopplungskappen wie im nächsten Foto Der AD9850 braucht auch einen Pufferverstärker. Ich entschied mich, den TS922IN von adafruit als Verstärker zu verwenden. Viele Operationsverstärker tun den Job gerade fein, aber erhalten Sie ein das doesn8217t erfordert eine doppelte Spg. Versorgungsteil und hat einen hohen Stromausgang. Wenn Sie eine Impedanzanpassung durchführen möchten oder wenn Ihr Filter eine niedrige Impedanz aufweist, achten Sie darauf, einen geeigneten Abschlusswiderstand hinzuzufügen. Wire alles up und bekommen Sie Umfang hooked Up Completed Schaltung (mit Filter auf der rechten Seite) Was für ein Durcheinander Ich codiert dieses ziemlich schnell und fudged ein paar Dinge P You8217ll wollen, springen Sie zu sweepTimems und machen Sie sich bereit, die richtigen Werte eingeben 8212 I8217ll Abdeckung Diese in dem Video. Warum hatte ich eine Menge von diesen DDS-Module schwimmenden um Sie hatten etwas mit einem LCR-Messgerät ich baute p 8212 mehr zu diesem hoffentlich soonSingle und Dreiphasen-Moving Average Filter PLLs: Digital-Controller Design-Rezept Dieses Papier präsentiert eine einfache Controller-Design-Methode Für eine PLL mit gleitendem Mittelfilter. Eine adäquate Auslegung einer PLL mit einfacher Struktur kann eine hervorragende Leistung aufweisen. PLL-Einschwingzeiten sind schneller als die in der Literatur vorgestellten. Diese PLL bietet eine hohe Dämpfung für die Netzoberschwingungen. Die Variable Moving Average-Fensterversion der vorgeschlagenen PLL verfolgt schnell die Netzfrequenzvariationen. Zusammenfassung Diese Arbeit schlägt eine einfache und einfach zu bedienende Designrezept für die proportionalndashintegral digitale Steuerung einer Phase Locked Loop mit Moving Average Filter und Multiplikator-Typ Phasendetektor. Basierend auf schnellen Reglern, die in diesem Papier für die gebräuchlichsten Situationen (50 / 60xA0Hz-Netzfrequenz, Ein - und Dreiphasensystem, Vorhandensein von ungeraden und / oder geraden Oberschwingungen) vordefiniert wurden, werden die neuen Proportional - und Integralreglerparameter mit Hilfe von analytischen Formeln für neue Betriebsbedingungen gewonnen (Eingangsamplitude und Abtastfrequenz). Die neuen Reglerparameter, die mit diesem Verfahren erhalten werden, vermeiden Test - und Fehlerprozeduren und halten die gleiche PLL-Transienten - und Steady-State-Leistung des ursprünglichen Designs. Simulation und experimentelle Ergebnisse validieren die vorgeschlagene Designrezept. Der Vergleich mit den jüngsten Ergebnissen in der Literatur bestätigt, dass die vorgeschlagene Designrezeptmethode ein schnelleres Einschwingverhalten und eine gute Steady-State-Leistung liefert. Schlüsselwörter Software PLL Synchronisation Variable Fenster gleitender Durchschnittsfilter Wechselstromsysteme Dezentrale Erzeugung Netzverbundene Umrichter Korrespondierender Autor. Tel. 55 11 3091 5483 Fax: 55 11 3091 5217.


No comments:

Post a Comment