|
Coja |
Forum-Century
|
|
Beiträge: 166
|
|
|
|
Anmeldedatum: 20.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.06.2011, 21:04
Titel: Zustandsregler entwerfen
|
|
Hallo, ich würde gerne einen Zustandsregler für folgendes Modell (im Anhang) entwerfen:
*
6 Zustandsgrößen:
x1 x2 x3 x4 x5 x6
davon sind x1 und x2 meine Ausgänge (nur diese sind messbar).
*
4 Eingangsgrößen
u1 u2 u3 u4
davon sind u3 und u4 messbar
Ich möchte nun einen Zustandsregler entwerfen.
Der Rang der Beobachtbarkeitsnormalform ist 4, der der Steuerbarkeitsnormalform 6.
In einem 1. Schritt habe ich ein Modell, bei dem alle Größen Messbar sind.
Hieran soll der Zustandsregler entworfen werden (am besten in Simulink).
Wie gehe ich da am besten vor (wie Polvorgabe,...)?
Mit den Matlabbefehlen habe ich mich schon auseinandergesetzt, aber mir fehlt des regelungstechnische Knowhow...
vg
Coja
|
|
|
|
|
SeeSharp |
Forum-Anfänger
|
|
Beiträge: 44
|
|
|
|
Anmeldedatum: 18.06.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 28.06.2011, 14:40
Titel:
|
|
wenn du weißt wo du deine eigenwerte hinlegen willst dann würde ich dir den befehl acker empfehlen, sonst kannst du mit dem Befehl lqr in matlab schön deine werte mit entsprechenden gewichtungsfaktoren bestimmen.
|
|
|
Coja |
Themenstarter
Forum-Century
|
|
Beiträge: 166
|
|
|
|
Anmeldedatum: 20.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 05.07.2011, 21:31
Titel:
|
|
Hallo,
acker und place sind mir bekannt. Gibt es eine Empfehlung wo ich die Eigenwerte am besten hinlege?
Gruß Coja
|
|
|
bronsco |
Forum-Anfänger
|
|
Beiträge: 35
|
|
|
|
Anmeldedatum: 06.07.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.07.2011, 19:53
Titel:
|
|
Am besten links der imaginären Achse... Da du ja im realen System Stellgrößenbeschränkungen haben wirst, musst du ausprobieren (oder evtl. in einer Optimierung) ermitteln, wie weit links du diese legen kannst. Beim LQR ist das etwas "transparenter", da du hier mit den Gewichtungen von Zuständen und Eingängen das ganze kontrollieren kannst (z.B. allg. hohe Gewichtung eines Eingangs im Vergleich zu den anderen Gewichtungen führt zu geringerer Stellgröße).
Da dein System aber nicht vollständig beobachtbar ist (und falls du wirklich keine anderen Zustände messen kannst), ist eine vollständige Zustandsrückführung in der Praxis wahrscheinlich nicht zielführend.
|
|
|
Coja |
Themenstarter
Forum-Century
|
|
Beiträge: 166
|
|
|
|
Anmeldedatum: 20.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 25.07.2011, 20:37
Titel:
|
|
Hallo,
danke für die Hinweise. Wäre es möglich da mal eine Beispielabfolge zu bekommen. Also ich tu mich da noch schwer mit der Ermittlung der Rückführparameter usw. Bisher hab ich wirklich nur das Modell und komme nicht voran...
Ich schöage einfach mal mein Vorgehen vor:
1. Modellbildung, Matrizten a,b,c,d und Eingang x der Strecke
2. Vorgabe der Reglerpole mit place (was mache ich mit den Ausgabeparametern von place?)
3. Modellaufbau in Simulink mit Rückführungsfaktor k,ggf. Vorfilter entwerfen
4. Zustandsbeobachter ermitteln und in Simulink einbinden
Zu den einzelnen Punkten hätte ich gerne ein paar Tipps bzw. Matlabbefehle.
Viele Grüße
Coja
|
|
|
Georg J |
Forum-Century
|
|
Beiträge: 113
|
|
|
|
Anmeldedatum: 22.06.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2008a
|
|
|
|
|
|
Verfasst am: 26.07.2011, 10:39
Titel:
|
|
Hallo Coja,
Hier gibt es mehrere Beispiele zum Thema Regelungstechnik mit Matlab. Einfach die verschiedenen Buttons in der Matrix klicken.
http://www.engin.umich.edu/group/ctm/
Gruss, Georg
|
|
|
bronsco |
Forum-Anfänger
|
|
Beiträge: 35
|
|
|
|
Anmeldedatum: 06.07.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 31.07.2011, 11:23
Titel:
|
|
der Befehl lautet ja:
K = place(A,B,p)
mit A,B als Systemmatrizen und p als Vektor deiner gewünschten Pole (bzw. Eigenwerte). Als Ausgabe bekommst du deine Rückführmatrix. Wenn du kein Vorfilter einsetzt, lautet dein Regelgesetz u = -K*x, ansonsten eben u = -K*x + F*w (mit F = Vorfilter, w = Führungsgrößen). Das Vorfilter brauchst du aber nur, wenn du deine Ausgangsgrößen nicht in den Nullpunkt überführen willst. Da du keinen Durchgriff hast (d=0), gilt für F = inv( C * inv(B*K-A) * B ).
Wenn dein System nicht vollständig beobachtbar (Rang der Beobachtbarkeitsmatrix kleiner als die Systemordnung) ist, dann wirst du auch keinen Beobachter entwerfen können.
Buchtipp: http://www.amazon.de/Regelungstechn.....qid=1312107709&sr=1-1
Schau dir mal die entsprechenden Kapitel in dem Buch an, da ist alles wirklich sehr gut beschrieben.
|
|
|
Coja |
Themenstarter
Forum-Century
|
|
Beiträge: 166
|
|
|
|
Anmeldedatum: 20.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 01.08.2011, 22:32
Titel:
|
|
Hey,
viele Dank. Das hat mir schon einmal sehr weitergeholfen.
Werde jetzt mal ein wenig probieren..und melde mich dann ggf. nochmal.
Viele Grüße
Coja
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|