Dynamisch-graphische Abbildungen industrieller Anlagen zum Bedienen und Beobachten operativer Prozesszustände, kurz: Visualisierungslösungen, sind so vielfältig wie ihre Einsatzmöglichkeiten und die Endgeräte, auf denen sie ausgeführt werden. Dem bekannten Einsatz klassischer Desktop-Rechner in Steuerzentralen steht der Gebrauch von Tablet-PCs durch das Wartungspersonal oder Smartphones durch Bereitschaftsarbeiter gegenüber. Die Herausforderungen bei der Entwicklung einer Visualisierungslösung sind vielschichtig:
- 1. Den Geräten liegen verschiedene Betriebssysteme und Software-Stacks zugrunde, was spezifische Anforderungen an die Wahl einer Programmiersprache und damit an das Programmierwerkzeug stellt.
- 2. Die Geräte sind durch verschiedene Bildschirmabmessungen sowie Interaktionsparadigmen charakterisiert. Eine Visualisierung auf einem PC (Bild 1, links) erlaubt einen wesentlich höheren Detailgrad und ggf. andere Elemente als auf einem Smartphone (Bild 1, rechts). Daher müssen hierfür verschiedene Visualisierungslösungen erarbeitet werden.
- 3. Verschiedene Anwendungskontexte (s.o.) benötigen verschiedene Darstellungen: In einer Steuerzentrale erhalten beispielsweise die Operateure durch die Visualisierung einen Anlagenüberblick mit Bereichsbildern und Alarmlisten; das Wartungspersonal benötigt zur Erfüllung seiner Aufgaben Bereichsbilder mit erweiterten Sensorparametern. Auch hierfür sind verschiedene Visualisierungslösungen zu entwerfen. Insgesamt führen diese Herausforderungen dazu, dass für ein und dieselbe Anlage Visualisierungslösungen mit verschiedenen Programmiersprachen und verschiedenen Werkzeugen mehrfach entwickelt werden müssen. Die Kosten für diese Vorgehensweise sind enorm. Zudem wird für jede einzelne Plattform entsprechendes Know-how benötigt. So entstehen gleichzeitig eine Kostenexplosion und ein Personalengpass. Eine effiziente Entwicklung sieht anders aus.
Projektieren in zielführender Arbeitsumgebung
Das junge Unternehmen Monkey Works bietet mit dem Softwarewerkzeug Movisa eine kostengünstige Alternative. Movisa ermöglicht die Entwicklung von Visualisierungslösungen für verschiedene Endgeräte auf Knopfdruck. Folgende Entwicklungsschritte sind mit Movisa erforderlich:
- 1. Prozessdaten konfigurieren
- 2. Graphische Benutzungsschnittstelle (GUI) gestalten
- 3. Prozesstechnische Bedeutung der GUIElemente festlegen
Mit den ersten beiden dieser drei Entwicklungsschritte sind Automatisierungsingenieure bereits bestens vertraut. Für die Konfiguration der relevanten Prozessdaten bietet Movisa Automatisierungsingenieuren eine intuitive Arbeitsumgebung (siehe Bild 2). In einem leichtgewichtigen textbasierten Editor werden Datenpunkte mit Adresse, Datentyp, Bezeichner und weiteren Informationen spezifiziert; die Notation lehnt sich stets an die jeweilige Datenspezifikation an. Die verfügbaren Protokolle und Datenspezifikationen reichen von ModbusTCP über Profibus bis hin zu OPC UA. Die Eingabe der Informationen erfolgt entweder händisch, wobei Hilfsmittel wie Syntax-Highlighting und Code-Completion zur Verfügung stehen, oder durch automatisierte Import-Routinen. Im zweiten Schritt wird im GUI-Editor (Bild 3) die graphische Benutzungsschnittstelle gestaltet. Eine umfangreiche und erweiterbare Elementbibliothek wirkt hierbei besonders unterstützend. Von Haus aus enthält diese Bibliothek bereits typische Komponenten wie Schaltflächen und Eingabefelder sowie Alarmkomponenten und Trendgraphiken. Der GUI-Editor ist ein WYSIWYG-Editor, das heißt, eine Vorschau der Visualisierungslösung ist bereits während des Engineerings verfügbar. Gewünschte GUI-Elemente werden aus der Bibliothek ausgewählt, auf die Arbeitsumgebung \’gezogen\‘, angeordnet und schließlich mit Prozessdaten verbunden. Einmal parametrierte, beliebig komplexe Komponenten können auch in die Bibliothek zurückgeführt werden. So wird es möglich, Komponenten projektübergreifend zu verwenden. Im letzten Schritt – und dieser Schritt wird bisher von keinem anderen Werkzeug auf dem Markt unterstützt – legt der Entwickler die prozesstechnische Bedeutung der GUI-Elemente fest. Beispielsweise wird ein Eingabefeld (Sollwerteingabe) mit einem Textfeld (Istwertbeobachtung) und einer Schaltfläche (Aktion ausführen) sowie den relevanten Prozessdatenpunkten verbunden. Aus Informationen dieser Art und einem hinterlegten Regelwerk passen Algorithmen die graphische Benutzungsschnittstelle an die Bildschirmabmessungen verschiedener Endgeräte automatisch an. So werden bspw. weniger wichtige Elemente, die über keine Verbindung zu Prozessdaten verfügen, wie Rohrverbindungen, für die Darstellung auf kleineren Geräten entfernt; unverzichtbare Elemente werden ggf. umgeformt. Eine graphische Füllstandsanzeige wird z.B. in eine textuelle umgeformt, wenn es Bildschirmbegrenzungen erfordern. GUI-Elemente, die über eine -Beziehung verbunden sind, werden niemals getrennt.
Programmierung auf Knopfdruck
Movisa enthält sogenannte Codegeneratoren, die den Entwickler von Programmierarbeit befreien. Auf Knopfdruck werden Visualisierungsentwürfe in plattformspezifischen Quellcode überführt, der dann auf dem jeweiligen Endgerät ausgeführt werden kann. Sind weitere Endgeräte gefordert, so ist lediglich ein weiterer Knopfdruck notwendig. Movisa nimmt unter Umständen eine Anpassung der graphischen Benutzungsschnittstelle an die Eigenschaften des neuen Endgeräts vor und lädt anschließend den passenden Codegenerator. Dieser erzeugt automatisch den entsprechenden Quellcode. Es ist weder eine weitere Projektierungsleistung notwendig noch wird spezifisches Fachwissen über die Zieltechnologie benötigt. Nach der automatischen Anpassung der Visualisierung an die Eigenschaften der Endgeräte können manuelle Anpassungen vorgenommen werden. Beispielsweise muss nach der Umwandlung graphischer Füllstandsanzeige in eine textuelle Darstellung die Platzierung des Textelements gewählt werden. Der automatische Vorschlag des Generators kann jederzeit manuell optimiert werden und wird selbsttätig gespeichert. In jedem Fall hat der Codegenerator viel manuelle Entwicklungsarbeit bei der Anpassung der Visualisierungslösung an die verschiedenen Endgeräte erspart.
Innovativer Technologie-Mix
Ein Blick hinter die Kulissen von Movisa fördert schnell eine beachtliche Anzahl mächtiger Softwaretechnologien zutage. So basiert Movisa u.a. auf der Eclipse Plattform und verknüpft zahlreiche Erweiterungen, wie das Eclipse Modeling Framework (EMF) und EMFText der Firma DevBoost, zu einem innovativen Technologiemix. Die zentrale Komponente des Werkzeugs Movisa bildet ein formales Modell – ein spezifisches Datenformat. Dieses Datenformat ist auf die Beschreibung von Prozessdaten, die Spezifikation von Bedienoberflächen und der fachlichen Zusammenhänge spezialisiert. Automatisierungsingenieure müssen nicht direkt mit dem Modell arbeiten, da Movisa mit dem graphischen GUI-Editor sowie dem Prozessdaten-Editor eine intuitive Arbeitsumgebung bietet, die vertraute Konzepte realisieren. Das Modell wird im Hintergrund automatisch von Movisa erstellt und verwaltet. Besonders hervorzuheben ist der Prozessdaten-Editor von Movisa, der eine leistungsfähige textbasierte Arbeitsumgebung zur intuitiven Verarbeitung dieser Massendaten bietet (siehe Bild 2). Für die Entwicklung dieser Umgebung wurden die Technologien der Firma DevBoost verwendet. EMFText beispielsweise ist ein Werkzeugkasten zur einfachen Erstellung solcher textbasierten Editoren. Die Entwicklung der Editoren beschränkt sich mit EMFText nahezu ausschließlich auf die Ausarbeitung der domänenspezifischen Konzepte, d.h. auf die Frage: \“Welche Elemente gilt es zu editieren und wie werden diese dargestellt?\“ Ausgehend von einer Grammatik generiert EMFText einen vollständigen und sofort einsatzbereiten Editor, der u.a. über Möglichkeiten der Autovervollständigung, Syntax-Highlighting, Fehlererkennung sowie der Bereitstellung sogenannter Quickfixes (automatische Lösungsvorschläge) verfügt.