Schlagwort-Archive: Finite State Machine

Modellieren mit Zustandsautomaten (Teil 2): Der Faktor Zeit

Im ersten Teil dieser Reihe hatten wir mit Hilfe von YAKINDU Statechart Tools das Verhalten einer Jalousiesteuerung als Zustandsautomat modelliert und dabei grundlegende Elemente der Modellierungssprache kennengelernt, etwa Zustände (states), Zustandsübergänge (transitions) oder Ereignisse (events).

In diesem zweiten Teil schauen wir uns weitere Konzepte an und klären,

  • wie sich Aktionen zeitgesteuert auslösen lassen,
  • wie ein Zustand innere Zustände haben kann (zusammengesetzter Zustand, composite state) und
  • wie verschiedene Zustandsautomaten neben- und miteinander arbeiten können (orthogonale Bereiche, orthogonal regions).

Zustandsübergänge zeitgesteuert auslösen

Der Ablauf von Zeit und das Reagieren darauf ist ein wichtiges Konzept für Zustandsautomaten. Einige Beispiele:

  • Eine Ampelsteuerung gibt die jeweilige Zeitdauer von Rot-, Gelb- und Grünphase vor, entweder periodisch – also zeitgesteuert – oder ausgelöst durch Anforderungskontakte.
  • In technischen Anlagen – vom Kaffeeautomaten über das Kraftfahrzeug bis zum Kernkraftwerk – sind Wartungsintervalle einzuhalten, um das ordnungsgemäße Funktionieren des Systems zu gewährleisten. Eine Wartung kann durch eine bestimmte Laufleistung der Anlage oder durch Zeitablauf ausgelöst werden, je nachdem, was früher eintritt.
  • Ein Verwaltungsakt ist nach Verstreichen der Einspruchsfrist rechtswirksam, sofern der Betroffene nicht vorher Einspruch einlegt.
  • In einem Datenkommunikationsverfahren mit positivem Quittierungsverfahren gilt eine Nachricht als verloren, wenn der Sender innerhalb einer vorgegebenen Zeit (Timeout) keine Empfangsquittung von der Gegenstelle erhält.

Dies alles kann man mit Hilfe von Zustandsautomaten modellieren und per Software unmittelbar steuern (Ampel, Datenkommunikation) oder unterstützen (Wartung, Verwaltungsakt). Modellieren mit Zustandsautomaten (Teil 2): Der Faktor Zeit weiterlesen

Werbung

Modellieren mit Zustandsautomaten (Teil 1)

In der Informatik geht es darum, mit Hilfe von Computern oder computergesteuerten Anlagen bestimmte Aufgaben zu lösen. Beispiele dafür sind die Erstellung eines Eisenbahnfahrplans, die Visualisierung von Neutronenfluß und Leistungsverteilung in einem Kernreaktor, die Simulation physikalischer Vorgänge in Halbleiterbauelementen, die Implementierung einer Social-Media-App oder die Entwicklung von Maschinensteuerungen unterschiedlichster Art. Nicht zuletzt sind zahlreiche Steuerungsprogramme in Embedded Devices zu finden. Modellieren mit Zustandsautomaten (Teil 1) weiterlesen