31.01.2013 Aufrufe

Objektorientierte Modellierung zur Simulation des Steuerverhaltens ...

Objektorientierte Modellierung zur Simulation des Steuerverhaltens ...

Objektorientierte Modellierung zur Simulation des Steuerverhaltens ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Simulation</strong> 23<br />

3.2 Zeitdarstellung in der <strong>Simulation</strong><br />

Ein wichtiges Merkmal von Simulatoren ist ihr Konzept <strong>zur</strong> Zeitsteuerung. Um Zeiten für<br />

Computerprogramme handhabbar zu machen, muß Zeit abstrahiert und diskretisiert werden.<br />

Kontinuierliche Darstellungen sind nur bei Analogrechnern möglich. Eine weitere erwünschte<br />

Abweichung von der Realität ist die Beeinflussung der Ablaufgeschwindigkeit durch den Benutzer.<br />

Einige schnell ablaufende Vorgänge erfordern eine „Zeitlupe“ <strong>zur</strong> Beobachtung, andere<br />

eine „Zeitraffung“, um möglichst schnell <strong>Simulation</strong>sergebnisse zu erhalten. Im Folgenden<br />

werden die verschiedenen Möglichkeiten, Zeit auf Programmebene darzustellen, beschrieben.<br />

3.2.1 Echtzeitsteuerung<br />

Die in allen gängigen Computern eingebaute Uhr kann abgefragt werden und als Eingangsvariable<br />

für zeitabhängige Funktionen genutzt werden. Hierfür müssen aber alle Größen als<br />

Funktion der Zeit bekannt sein. Bei Differentialgleichungen f(dt) oder den Zustandsvektoren<br />

komplexer oder stochastischer diskreter Systeme ist das aber nicht möglich. Das Verfahren läßt<br />

sich <strong>des</strong>halb in den meisten Fällen, wo <strong>Simulation</strong> interessant ist, nicht einsetzen. Bei Systemen,<br />

die simuliert werden sollen, können aber Aussagen über Zeitabschnitte getroffen werden.<br />

Bei der <strong>Simulation</strong> von Differentialgleichungen ist dieses jeweils das Zeitinkrement Δt, bei<br />

diskreter <strong>Simulation</strong> können wir Ereignisse vorausbestimmen, z.B. daß ein Werkstück n Sekunden<br />

nachdem es in eine Maschine eingetreten ist, diese wieder verlassen wird. Die so ermittelten<br />

Zeitpunkte können an der Rechneruhr synchronisiert werden. Das geschieht dadurch,<br />

daß in jedem Abfragezyklus getestet wird, ob die Systemzeit schon größer als die Endzeit eines<br />

Ereignisses ist, gegebenenfalls wird dieses Ereignis durchgeführt. Eine Voraussetzung für die<br />

<strong>Simulation</strong> in Echtzeit ist also die Gewährleistung, daß alle Berechnungsergebnisse vor der<br />

nächsten Zeitabfrage vorliegen.<br />

Bei schnell ablaufenden Vorgängen oder komplexen Berechnungen kann die Berechnung <strong>des</strong><br />

Endzustan<strong>des</strong> zu lange dauern, wodurch die Echtzeitanforderung verletzt wird. In Fällen wo<br />

dieses eintritt, ist das Echtzeitverfahren ungeeignet. Nützlich ist das Verfahren dort, wo Programme<br />

mit Prozessen interagieren, bei Steuerungen von Maschinen und Anlagen, bei der Prozeßüberwachung<br />

und der Steuerung durch <strong>Simulation</strong> wie beispielsweise bei Fernmanipulatoren<br />

der unbemannten Raumfahrt. Für die reine <strong>Simulation</strong>sanwendung ist der Programmablauf<br />

in Echtzeit meistens nicht von Interesse.<br />

3.2.2 Quasikontinuierliche Zeitsteuerung<br />

Eine gängige Methode, die Zeit von <strong>Simulation</strong>en zu steuern, ist die Definition einer programminternen<br />

Variablen t. Die Berechnungen und Abfragen <strong>des</strong> Programms werden wiederholt<br />

ausgeführt und nach jeder Ausführung wird die Variable t um ein Inkrement Δt erhöht. Bei<br />

zeitschrittabhängigen Funktionen f(dt) bzw. f(Δt) wird der aktuelle Zustand am Ende <strong>des</strong> Zyk-

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!