|
|
Simulation Zustandsraummodell |
|
Kranich90 |
Forum-Newbie
|
|
Beiträge: 6
|
|
|
|
Anmeldedatum: 06.12.13
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 06.12.2013, 11:30
Titel: Simulation Zustandsraummodell
|
|
|
|
|
Hallo,
ich hoffe, ich finde hier eine Antwort auf meine Frage - vielen Dank schonmal im Vorhinein!
Es geht darum, dass ich einen Beobachter in Form eines Zustandsraummodells vorliegen habe.
Nun möchte ich den Ausgang des Beobachters simulieren.
Ich habe eine Reihe von Eingabewerten für mein beobachtetes System und die jeweiligen Ausgaben des beobachteten Systems. Nun möchte ich den Ausgang des Beobachters über die komplette Zeit ermitteln.
Erledige ich das mittels:
so funktioniert es einwandfrei und ich erhalte die Ergebnisse, die ich auch erhalten möchte.
Problematisch wird das ganze nun, wenn ich es nicht über die gesamte Zeit simulieren möchte, sondern immer von Eingabe zu Eingabe. Aus zeitgründen, kann ich nicht immer die komplette Beobachtertrajektorie in jedem Zeitschritt neu berechnen.
Mein Ansatz war der Folgende:
Die Ausgaben stimmen jedoch nicht überein. Anbei ist ein Plot mit der Differenz zwischen den beiden Ergebnissen. Es gibt eine konstante Abweichung.
Eine spannende Beobachtung ist auch diejenige: Wenn ich den folgenden Code ausführe:
,
so erhalte ich andere Werte, als wenn ich ausführe:
Also klar: Es ist ein Wert mehr, jedoch verändern sich auch die ersten Werte, die eigentlich identisch sein sollten.
Habt ihr Ideen, wie ich die simulierten Werte konsistent zueinander kriege?
Vielen Dank schonmal für Eure Hilfe - gerne bin ich für Tipps jeder Art offen!
Liebe Grüße
Kai
Beschreibung: |
Differenz beider Beobachterausgänge |
|
Download |
Dateiname: |
diff.png |
Dateigröße: |
2.93 KB |
Heruntergeladen: |
899 mal |
|
|
|
|
|
geieraffe |
Forum-Fortgeschrittener
|
|
Beiträge: 97
|
|
|
|
Anmeldedatum: 19.04.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.12.2013, 08:17
Titel:
|
|
Nun ja, ein Beobachter ist ja immer abhängig von den Anfangswerten die man ihm gibt. Wenn du also "mittendrin" anfängst ist es nicht verwunderlich, dass du andere Ergebnisse bekommst.
Was mich allerdings auch stuzig machst ist, dass du bei t(1:3) und t(1:4) andere Werte bekommst.
Sind deine Anfangsbedinungen identisch?
|
|
|
Kranich90 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 6
|
|
|
|
Anmeldedatum: 06.12.13
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.12.2013, 08:28
Titel:
|
|
Hey,
die Anfangswerte sind natürlich der jeweiligen Situation angepasst.
Daran liegt es leider nicht.
LG und Danke
Kai
|
|
|
geieraffe |
Forum-Fortgeschrittener
|
|
Beiträge: 97
|
|
|
|
Anmeldedatum: 19.04.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.12.2013, 08:33
Titel:
|
|
Du hast also unterschiedliche Anfangsbedingungen? Dann kann dir ein Beobachter natürlich auch keine gleichen Ergebnisse liefern.
Oder hab ich dich gerade falsch verstanden?
Du bekommst für t(1:3) und t(1:4) NUR DANN die gleichen Ergebnisse für t(1:3) wenn auch die Anfangsbedingungen beide male dieselben sind.
|
|
|
Kranich90 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 6
|
|
|
|
Anmeldedatum: 06.12.13
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.12.2013, 10:48
Titel:
|
|
Hey,
nein, das hast du falsch verstanden. Die Anfangsbedingungen sind natürlich identisch. Sonst macht es natürlich keinen Sinn.
Das wäre aber auch mit dem angehängten Fehler nicht konsistent - der Beobachtungsfrhler würde nicht auf einen konstanten Wert einschwingen, wenn es an den AB liegen würde. Daran liegt es also leider nicht.
LG
Kai
|
|
|
Kranich90 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 6
|
|
|
|
Anmeldedatum: 06.12.13
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.12.2013, 15:28
Titel:
|
|
Hey,
also ich habe mein Problem gelöst, bzw. vielmehr ein workaround gefunden.
Wenn ich nicht nur zwei Zeitpunkte zur Simulation heranziehe, sondern mindestens 3, so funktioniert es.
Warum es so ist, kann ich mir nicht erklären. Löst man die dem ZRM zu Grunde liegende DGL händisch, so macht es natürlich keinen Unterschied, wieviele Samples zur Berechnung zur Verfügung stehen.
Danke für die Klärungsversuche!
LG
Kai
|
|
|
|
|
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.
|
|