Embedded Grafik

Embedded Grafik

Visualisieren ohne
Programmieren

Die Anforderungen an die Anzeigequalität und Bedienmöglichkeiten von Mensch-Maschine-Interfaces von Anlagen oder Geräten steigen ständig. Hier setzten Vorbilder aus der ‚Consumerwelt‘ wie Smartphones Maßstäbe. Ansprechende, animierte Objekte sind inzwischen auch für Embedded-Anwendungen zunehmend von Interesse. Dazu werden u.a. aufwändige Grafiken mit Farbverläufen, Schattenwürfen, 3D-Darstellung, animierte Objekte für bewegte Darstellungen von Prozesszuständen oder Touch-Funktionen benötigt.

Entkoppelung der Visualisierung von der Maschinenlogik durch die Middleware (Bild: XiSys Software GmbH)

Entkoppelung der Visualisierung von der Maschinenlogik durch die Middleware (Bild: XiSys Software GmbH)


Programmierer von Maschinenprozessen sind mit der Umsetzung dieser Grafikanforderungen häufig überfordert. Mit der modellorientierten Methode ‚Visualisieren ohne zu Programmieren‘ bietet XiSys einen neuen Ansatz, schneller und kostengünstiger ans Ziel zu gelangen. Durch das Abbilden der Visualisierungsaufgaben in einem Modell und dem daraus resultierenden Wegfall der Hochsprachenprogrammierung reduziert sich der Aufwand zum Erstellen einer Visualisierung auf das grafische Design von Objekten und Bildschirmmasken und deren Verknüpfung mit den zu visualisierenden Daten. Stellen Sie sich vor, Sie entwickeln eine neue Maschine und müssen im Rahmen dessen auch eine Bedienung bzw. Visualisierung realisieren. Nach intensiver Analyse der zu erledigenden Aufgaben und der zur Verfügung stehenden Lösungen werden sich folgende Kernpunkte herauskristallisieren: Primär ist zu klären, welche Daten visualisiert werden müssen und wie der Zugriff auf diese Daten erfolgt. Für die spätere Anzeige müssen die Wertebereiche, Grenzwerte und Datentypen ermittelt bzw. festgelegt werden. Zudem wollen diese Daten auch verwaltet und organisiert werden. Für die Darstellung wird ein Anzeigemedium ausgewählt. Dies kann eine lokale Grafik, ein PC mit Windows oder ein Webbrowser sein. Dementsprechend müssen die Bildschirmmasken aufgebaut werden. In vielen Fällen ist eine Interaktion mit dem Bediener erforderlich. Das heißt, es müssen die Ereignisse, die vom Bediener ausgelöst werden, weitergereicht oder behandelt werden. Die Abarbeitung dieser Aufgaben erfolgt oft in einem individuellen Programm, das unter Zuhilfenahme einer Hochsprache erstellt wird. Hierfür stehen meist hohe Investitionskosten an. Bei genauer Betrachtung der Aufgaben des Visualisierungsprogramms ist festzustellen, dass für viele Visualisierungs- und Bedienaufgaben ähnliche Voraussetzungen anzutreffen sind und ähnliche logische Abläufe realisiert werden müssen. Warum also nicht diese Aufgaben durch ein Modell beschreiben und dieses Modell in einem allgemeinen Visualisierungsprogramm abbilden? Die individuellen Unterschiede der Visualisierungsaufgaben lassen sich in einer Konfigurationsdatei erfassen und von einem Visualisierungsprogramm zur Laufzeit interpretieren.
Das Visualisierungsmodell und seine Schnittstellen (Bild: XiSys Software GmbH)

Das Visualisierungsmodell und seine Schnittstellen (Bild: XiSys Software GmbH)

Voraussetzungen für das Abbilden im Modell

Das Abbilden der Aufgaben in einem Modell erfordert einige Voraussetzungen: Die Visualisierungslogik muss autark lauffähig und entkoppelt von der Ablauflogik der Maschine sein. Zudem muss sie automatisch generiert werden können. Interaktionen mit der Ablauflogik der Maschine erfolgen ausschließlich über eine Datenrepräsentanz im Datenmodell. Es muss eine Möglichkeit geschaffen werden, die es erlaubt, individuelle Anzeige- und Bedienobjekte zu entwerfen und zu dynamisieren, ohne expliziten Programmcode einer Hochsprache zu verwenden.

Notwendige Abstrahierung

Um Visualisierungsaufgaben von der Ablauflogik und der Hardware einer Maschine sauber zu trennen, ist eine Abstrahierung der Daten zwingend notwendig. Das Abstrahieren erfolgt in einer Zwischenschicht (Middleware), die alle für die Visualisierung und Bedienung der Maschine benötigten Größen verwaltet und zur Verfügung stellt. Mit Hilfe der Abstraktionsschicht können auch verschiedene Standards eingebunden und unterstützt werden, wie z.B. OPC UA, Gamma, lokale Datenmodelle, Soft-SPS usw. In der Middleware werden in hierarchisch organisierten Strukturen Variablen angelegt. Jede Variable kann über ihren Namen adressiert werden. Eine Variable repräsentiert u.a. einen Wert (physikalischer Wert, Zustand, Text etc.), einen Zeitstempel, optional Grenzwerte für Skalierungen und den Datentyp. Für Interaktionen mit der Ablauflogik der Maschine besteht die Möglichkeit, Variablen für die bidirektionale Verwendung zu definieren. Diese Variablen können durch eine Benutzereingabe geändert werden. Dadurch kann die Ablauflogik zu Reaktionen auf Ereignisse veranlasst werden.

Seiten: 1 2Auf einer Seite lesen

XiSys Software GmbH
www.xisys.de

Das könnte Sie auch Interessieren