|
Eko |
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 10.01.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.01.2012, 22:24
Titel: Parameterschätzverfahren
|
|
Hallo zusammen,
ich habe mit der Methode der kleinsten Quadrate die folgenden Parameter ermittelt:
(das System hat 2 Eingänge)
a1, a2, b11, b12, b21, b22
Ich versuche das System mit Simulink zu Testen aber es klappt nicht, und ich weiß nicht warum.
könnte mir jemand zeigen wie das modell in Simulink aussehen müsste.
Danke
|
|
|
|
|
Phate |
Forum-Guru
|
|
Beiträge: 283
|
|
|
|
Anmeldedatum: 09.11.09
|
|
|
|
Wohnort: Stuttgart
|
|
|
|
Version: R2008b
|
|
|
|
|
|
Verfasst am: 11.01.2012, 08:59
Titel:
|
|
Hallo,
Leider gibt deine Frage nicht viel Informationen her. Für was für ein System hast du die Parameter ermittelt, das müsstest du eigentlich wissen und dann kannst du das Modell auch in Simulink nachbauen.
Hast du dir ein Zustandsraummodell erstellt? (Sieht zumindest auf den ersten Blick so aus...).
Dann Fehlen aber noch die Parameter für die Matritzen C und D.
Testen kannst du das ganze auch in Matlab brauchst nicht unbedingt Simulink dazu. Wenn du es mit Simulink machen möchtest dann Hilft dir der Block
"State Space Block" weiter, allerdings nur wenn du das Modell in der Zustandsraumdarstellung hast. Alternativ kannst du das ganze noch mit Übertragungsfunktionen darstellen Stichwort "Transferfunctions" oder du bildest das Modell physikalisch nach.
Grüße
|
|
|
Eko |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 10.01.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.01.2012, 10:48
Titel:
|
|
Hallo,
erstmal danke für die schnelle antwort.
Also ich habe ein Zustandsraummodell mit mehreren Variablen die ich mit dem Least Squares Verfahren schätzen will.
Die Berechnung der Zustandgleichung ergibt: (vereinfachte Darstellung)
y = (p1*z+p2)/(z^2+p3*z+p4)*u1 + (p5*z+p6)/(z^2+p3*z+p4)*u2
Ich wollte nun die ergebnisse der Parameterschätzung direkt in Simulink als diskrete tf (oder digitales Filter) testen hab aber nicht das richtige Ergebnis bekommen, wenn ich es aber in Matlab teste dann funktioniert es
|
|
|
Phate |
Forum-Guru
|
|
Beiträge: 283
|
|
|
|
Anmeldedatum: 09.11.09
|
|
|
|
Wohnort: Stuttgart
|
|
|
|
Version: R2008b
|
|
|
|
|
|
Verfasst am: 11.01.2012, 11:07
Titel:
|
|
Hallo,
Das klingt merkwürdig. Ich könnte mir jetzt spontan vorstellen, dass ein Konvertierungsproblem vorliegt. Hast du die Koeffizienten in der richtigen Reihenfolge in der Übertragungsfunktion eingegeben?
Es kann zum Beispiel sein dass in Matlab die Übertragungsfunktion mit dem niedrigstens Term beginnt, in Simulink die Übertragungsfunktion aber mit dem höchsten Term anfangen muss.
Sonst wüsste ich grade keinen Grund warum es in Matlab geht aber in Simulink nicht.
Grüße
|
|
|
Eko |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 10.01.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.01.2012, 22:20
Titel:
|
|
Also ich habe jetzt raus bekommen warum es nicht funktioniert.
Wenn ich mit den gemessenen Werten Simuliere dann klappt es, aber die berechneten Fehler haben einen Rundungsfehler der sich dann aufsummiert, und bei einer abtastrate von 0.01 ms wird der Fehler schnell sehr groß.
Hab das gleich problem auch wenn ich es mit Matlab einlese und Teste, ich versuche jetzt nochmal das Schätzverfahren mit gerundeten Messdaten und hoffe ich komme der Lösung ein stück näher
|
|
|
al3ko |
Forum-Anfänger
|
|
Beiträge: 16
|
|
|
|
Anmeldedatum: 12.09.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.01.2012, 23:33
Titel:
|
|
Hi Eko,
ich habe dir eine PN geschickt
|
|
|
Phate |
Forum-Guru
|
|
Beiträge: 283
|
|
|
|
Anmeldedatum: 09.11.09
|
|
|
|
Wohnort: Stuttgart
|
|
|
|
Version: R2008b
|
|
|
|
|
|
Verfasst am: 12.01.2012, 10:07
Titel:
|
|
Hallo,
Danke für das Update. Würde mich interessieren in welchem Bereich sich der Rundungsfehler bewegt und falls du eine Lösung gefunden hast bin ich auch daran interessiert.
Wünsche noch viel Erfolg.
Grüße
|
|
|
Rock75 |
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 16.01.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.01.2012, 09:30
Titel:
|
|
Habt ihr schon mal Gedanke gemacht über dieMethode der Polvorgabe für den Zustandsregler? wäre auch eine Vorgehensweise ich denke ziemlich einfacher als eure .
Durock
|
|
|
Eko |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 10.01.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.01.2012, 21:50
Titel:
|
|
hmmm, kann mir einer mal kurz beschreiben wie ich vorgehen muss, wenn ich die Ordnung des Zustandsraummodells für die Parameterschätzung bestimmen will.
Weil ich vermute, dass ich da einen Fehler habe.
G = C * [(z*E-A)^(-1) * B];
D = 0;
E = Einheitsmatirx
|
|
|
|
|
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.
|
|