State Machine Workbench

Entwurf, Simulation und Codegenerierung von Zustandsautomaten

In der Vergangenheit war es oft umständlich, eine Zustandsmaschine in BORIS umzusetzen. Mit Hilfe der neuen State Machine Workbench wird dies nun sehr einfach. Nachfolgend wird anhand einer Anlage zum Bohren von Werkstücken gezeigt, wie man die Realisierung einer Steuerung zukünftig mit Hilfe der State Machine Workbench vornehmen kann.

Die zu steuernde Anlage

Die Bohrvorrichtung ist in links stehender Abbildung zu sehen: Die Anlage kann in verschiedenen Betriebsarten gefahren werden. Grundsätzlich gilt es, das Werkstück (in der Grafik durch ein orangefarbenes Rechteck dargestellt) zunächst zu fixieren, wozu der Zylinder Z1 auszufahren ist. Anschließend muss durch den Zylinder Z2 die Bohreinheit in das Werkstück gefahren werden. In umgekehrter Reihenfolge fährt die Anlage wieder in den hier dargestellten Ursprungszustand.

Das Zustandsdiagramm

Das Zustandsdiagramm wird in einem speziellen Editor erstellt, der auf der Eclipse-Plattform basiert. Die nachfolgende Abbildung zeigt den Editor als eine in Eclipse eingebettete Anwendung.

Auf der rechten Seite befinden sich die Elemente, die innerhalb des Zustandsdiagramms verwendet werden können. Dies sind:

  • Region (s. u.)
  • Transition
  • Zustand
  • Startzustand (initial state)
  • Endzustand (final state)
  • Verzweigungsstelle (choice)
  • Zusammenführung (junction)

Der Aufbau des Zustandsdiagramms erfolgt nahezu intuitiv. Da die Zustandsmaschine auch parallele Zustandsdiagramme abarbeiten kann, werden die einzelnen Diagramme durch Regionen weiter geschachtelt. In der Grafik sind drei Regionen auf unterster Ebene zu sehen: zwei oben, von denen die linke ein Zustandsdiagramm mit zwei Zuständen und die rechte eines mit nur einem Zustand enthält. Die dritte Region ist sehr groß und umfasst zwei Zustände, die beide weitere Diagramme enthalten.

Grundsätzlich gilt:

  • Eine Region kann genau ein Zustandsdiagramm enthalten.
  • Ein Zustandsdiagramm besteht aus mindestens einem Zustand.
  • Ein Zustand darf beliebig viele Regionen enthalten.

Durch diese sehr simple Struktur lassen sich beliebig komplexe Zustandsdiagramme aufbauen und somit alle erdenklichen steuerungstechnischen Probleme lösen.

Zusätzlich zum Zustandsdiagramm werden mit Hilfe des Element-Explorers Variablen und Ereignisse definiert. Diese werden dann später von der Simulation gesetzt bzw. an diese gereicht. Das nachfolgende Bild zeigt den Element-Explorer auf der linken Seite. Im unteren Teil der Grafik ist ein Bereich zu sehen, der die Eigenschaften des gerade ausgewählten Elementes anzeigt.

Der Zustandsautomat in BORIS

Innerhalb von BORIS wird der Zustandsautomat durch einen speziellen Block dargestellt. Dieser ist auf der Palette der UserDLL-Blöcke zu finden und ist mit Statemachine benannt. Nach dem Einfügen in das Arbeitsblatt hat der Block zunächst keinerlei Eingänge.

Durch die Angabe der im Editor erstellten Datei konfiguriert sich der Block mit sämtlichen Ein- und Ausgängen, die innerhalb des Editors als Input bzw. Output definiert wurden. Die Blockein-/ausgänge lassen sich sehr leicht zuordnen, da bei Berührung mit dem Mauszeiger der entsprechende Name als Hinweis ausgegeben wird.

Damit der Anwender während der Simulation verfolgen kann, welcher Zustand des Zustandsdiagramms aktiv ist, wird während der Simulation eine Verbindung zum Editor aufgebaut. BORIS und auch der Zustandiagramm-Editor sind Anwendungen, die recht viel Platz auf dem Bildschirm beanspruchen. Aus diesem Grund wurde die Kommunikation durch TCP/IP gelöst. Der Anwender kann den Editor also auf einem anderen Rechner betreiben und dort die Arbeitsweise des Zustandsdiagramms verfolgen.

Im nachfolgenden Bild wurde das BORIS-Fenster entsprechend verkleinert, sodass nur noch die Visualisierung der Bohreinrichtung vor dem Zustandiagramm-Editor zu sehen ist.

Ist alles erfolgreich getestet, kann der der Statechart-Block ggf. mit weiteren Blöcken zu ANSI-C-Code generiert werden.

Demo-Version

Für eine Demo-Version sind nachfolgende Dateien erforderlich. Lesen Sie bitte vor der Installation unbedingt die zugehörigen Installationshinweise, um ein reibungsloses Zusammenspiel aller Komponenten zu gewährleisten! Die Nutzung der Demo-Version setzt eine bestehende Installation von WinFACT 7 (ggf. als Demo-Version) und einer Java-Laufzeitumgebung (ab Version 6) voraus.

installationstatemachineworkbench.pdf (359 KB)Installationshinweise (bitte vor Installation lesen!)
statemachineworkbench.pdf (3.1 MB) Vorläufiges Benutzerhandbuch Rev. 0.7
wfstatecharteditor.exe (158.3 MB)WinFACT Statechart-Editor
wfstatemachineworkbench.exe (29.6 MB)WinFACT State Machine Workbench

Dokumentationen und Produktinformationen

Produktinformation „WinFACT State Machine Workbench“ (deutsch/englisch)

Preise

Einzelplatzlizenz Industrie:EUR990,00
Studienlizenz:EUR790,00

Preis(e) netto zuzüglich Mehrwertsteuer

Die aktuellen Preise aller Produkte entnehmen Sie bitte unseren Preislisten!