Alles in einem Fluß

PROGRAMMIEREN - Der Kern jeder Steuerungslösung ist die Software. An ihr entscheidet sich die Dauer eines Steuerungsprojektes und wie viel Nerven der Programmierer verliert. Die Anforderungen an die Programmiersprachen und -oberflächen haben sich ebenso gewandelt wie die der gesamten Steuerungstechnik. Jetter geht mit seienr JetWeb-Technologie den Weg der grafischen Flussdiagramm-Programmierung. Diese prozessnahe Darstellung vereinfacht die Programmierung, das Arbeiten in Teams und den Zugang für Prozesstechniker. Von der Mechanik zur Elektronik, von der Hardware zur Software - so kann die Entwicklung im Maschinen- und Anlagenbau beschrieben werden. Gemeint sind dabei die Schwerpunkte, die sich immer weiter in Richtung Software verschieben.

26. März 2002

Bei all diesen Veränderungen kommt der Engineering-Software eine ganz zentrale Bedeutung zu. Von der Projektierungsphase bis zur Inbetriebnahme begleitet diese Software den Programmierer quasi auf Schritt und Tritt. Von der Hardware- und Netzwerkkonfiguration über die Einbindung der einzelner Geräte beziehungsweise deren Funktionen in das Programm, der Programmstrukturierung bis hin zur Fehlersuche.

Ein modernes Software-Tool muß den Programmierer und Inbetriebnahmetechniker in jeder Phase der Realisierung optimal unterstützen. Ein einziges Tool für alle Funktionen eines Steuerungsprojektes ist dabei der Idealfall. Man bewegt sich in einer bekannten Umgebung, hat keine Umstellungsprobleme, keine unnötigen Schnittstellen und hat eine gemeinsame Datenbasis.

Genau das ist das Merkmal des Programmierstudios JetLab, der Software für die JetWeb-Technologie. Eine Software für den gesamten Programmier- und Inbetriebnahmeprozess und auch für alle Steuerungen und Geräte. JetLab beinhaltet also alle Funktionalitäten für: Hardwarekonfiguration, Programmierung von Steuerungen und anderen Netzknoten, Gemeinsamer Datenpool für alle Module, Sämtliche Befehle und Funktionen für Bediengeräte, Visualisierung, Inbetriebnahme, Debugging, Netzwerkmanagement auf Basis SNMP sowie Simulation.

Die strukturelle Integration aller Automatisierungsfunktionalitäten bei Jetweb - das Netz ist die Steuerung - wird von der Software vollständig unterstützt. Die Tatsache, daß bei JetWeb alle Geräte gleichberechtigte Teilnehmer im Netz sind und in Echtzeit miteinander kommunizieren macht diese konsequente Integration erst möglich.

Diese Struktur verteilter Intelligenz von JetWeb ermöglicht die Programmierung ohne die Berücksichtigung von Hardwaregrenzen. Mit einem einzigen Programm wird die gesamte Anlage programmiert. Das Programm teilt sich auf in Parallelprogramme (Tasks). Multitasking macht es möglich, einzelne Anlagefunktionen voneinander unabhängig zu programmieren. Jetweb erlaubt beliebig viele Tasks und Untertasks (Threads). Die einzelnen Tasks werden auf die beteiligten intelligenten Netzknoten verteilt. Intelligente Netzknoten sind Geräte mit eigenem Betriebssystem, auf denen Programme laufen können. Da auf dem Netz eine Echtzeitkommunikation zwischen den Geräten stattfindet, kann ein Objekt auch Funktionen aufrufen, die auf einem anderen Knoten außerhalb des Gerätes liegen. Der Programmierer ist also bei der Programmerstellung nicht an Hardwaregrenzen gebunden, sondern kann sein Programm rein Prozeß-orientiert schreiben.

IDA Objektmodell - JetWeb nutzt Standards

Eine ganze Reihe bekannter Unternehmen der Automatisierungstechnik sind dabei, die Standardschnittstelle IDA (Interface for Distributed Automation) für die Automatisierungstechnik zu entwickeln. IDA definiert alle Schnittstellen und Protokolle zwischen verschiedenen Automatisierungsgeräten und für die Einbindung derselben in entsprechende Softwaretools auf Basis Ethernet TCP/IP. Der IDA-Standard befaßt sich vor allem mit der Laufzeit-Kommunikation, so daß Objekte unterschiedlicher Hersteller miteinander Daten austauschen und Funktionen aufrufen können. IDA beinhaltet auch XML-Gerätebeschreibungen, die von den Herstellern in verschiedener Form mit den Geräten geliefert werden:

- Auf Diskette oder CD-Rom,

- Im Internet zum Download,

- Im Gerät abgelegt.

Mit Hilfe dieser Gerätebeschreibungen lassen sich alle IDA-kompatiblen Geräte in IDA-kompatible Softwaretools einbinden. Die XML-Beschreibungen beinhalten sowohl Parameter als auch Geräteeigenschaften. Die Jetter AG beteiligt sich bei der Entwicklung von IDA und wird alle Geräte IDA-konform gestalten.

Programmieren in Flußdiagramm

Das bekannte Stichwort „parametrieren statt programmieren“ zeigt, daß die grafische Programmierung bereits seit einiger Zeit Thema in der Steuerungstechnik ist. Im Bereich der Meß- und Regeltechnik ist man in dieser Sache schon einiges weiter, dort gibt es bereits eine ganze Reihe interessanter grafischer Programmiertools.

Mit JetLab wird die konsequente grafische Programmierung in der Steuerungstechnik realisiert. Basisdarstellung ist das Flußdiagramm, im Bereich der Software wohlbekannt. Wird mit Flußdiagrammsymbolen programmiert, so hat der Programmierer damit gleich drei Fliegen mit einer Klappe geschlagen: Programmvorbereitung, Programmierung und Programmdokumentation.

JetLab bietet darüber hinaus auch die Möglichkeit der textuellen Programmierung. Diese kann entweder innerhalb solch eines Flowchart-Elementes erfolgen, oder aber als völlig eigenständiger Programmteil, z.B. ein vollständiger Task. Der Programmeditor erlaubt also die Kombination von grafischer und textueller Eingabe. Dies ermöglicht es dem Programmierer, die Vorteile beider Eingabearten individuell einzusetzen. Die Flussdiagramme selbst können dabei in beliebig viele Detaillierungsstufen münden, an deren jeweiligen Enden dann Ausführungselemente in textueller Form stehen können. Mit anderen Worten: jeder Flußdiagrammblock kann sich durch Doppelklicken in ein unterlagertes Flussdiagramm öffnen. Durch diese Multilayer-Programmierung wird maximale Übersichtlichkeit garantiert.

Verschiedene Technologiefunktionen für die Handhabung und Initialisierung von Achsen oder auch digitalen Reglern sind bereits vordefiniert. Der Programmier kann sich aber auch eigene Funktionen definieren, zum Beispiel ganze Programm-Module. Solch eine Technologiefunktion ist eine abgeschlossene funktionelle Einheit, die bei der Programmierung lediglich noch parametriert werden muß.

Das Programmiermodell von JetLab ist objektorientiert und beinhaltet die Definition von Klassen und von deren Objektinstanzen. Verschiedene in einer Baumstruktur aufgebaute unabhängige Namensbereiche vereinfachen die praktische Nutzung der Möglichkeiten, welche der objektorientierte Ansatz mit sich bringt. Objektorientiertes Programmieren bedeutet, daß ein Funktionsobjekt innerhalb einer Anlage nur ein einziges Mal definiert werden muß. Dasselbe Objekt kann dann an jeder Verwendungsstelle in der Anlage instantiert werden. Wird zum Beispiel das Objekt Servoachse definiert (dessen Funktion und seine Eigenschaften) und die Anlage enthält zwölf Servoachsen, so ist eine einmalige Objektdefinition ausreichend. Über die Instantierung dieser Objektdefinition erfolgt dann die entsprechende Zuordnung zu den zwölf verschiedenen Achsen.

Alles unter einer Oberfläche

JetLab bietet unter einer Oberfläche sämtliche für Programmierung und Inbetriebnahme notwendigen Funktionalitäten. Die Software läuft unter Windows NT 4.0 und Windows 2000.

Die Bedienung der Software ist optimiert auf wenige Mausklicks und eine komfortable Tastaturunterstützung. Der Aufbau eines Programms via Flowchart-Element kann durch Drag and Drop oder durch die Eingabe von Befehlskürzeln erfolgen. Die Elemente werden auf der Oberfläche automatisch plaziert und an das letzte Flowchart-Element angehängt.

Ein Projektbaum mit allen für das Projekt relevanten Informationen, Geräten, Daten und Parametern erleichtert die Navigation ganz erheblich. Die Hardwarekonfiguration erfolgt ebenfalls grafisch per Drag and Drop. JetLab bietet für alle Geräte ein Icon, welches auf die Oberfläche gezogen wird. Die Netzwerkverbindung wird in Form von grafischen Verbindungselementen dargestellt. Kommt zum Beispiel eine Steuerung zum Einsatz, so wird zunächst das Icon des entsprechenden Gerätes auf der Oberfläche plaziert. Danach können die Icons verschiedener Einsteckmodule ausgewählt werden und ebenfalls per Drag and Drop auf die Steuerung positioniert werden. Damit ist dieses Gerät softwareseitig mit den richtigen Modulen bestückt, die zu den Modulen und Geräten zugehörigen Parameter stehen automatisch im Daten-Definitions-File zur Verfügung.

Visualisierung in einem Web

JetView-Soft ist eine webbasierte Visualisierung für JetWeb-Automatisierungslösungen, und ist ein integraler Bestandteil von JetLab; es kann aber auch ohne JetLab verwendet werden. Die mittels eines grafischen Editor erstellten Masken liegen dann im DHTML-Format vor. Für die Runtime-Situation gibt es zwei Möglichkeiten:

- Visualisieren mit Standard Web-Browser (Internet Explorer)

- Visualisieren mit einer JetWeb-Runtime

Die JetWeb-Lösung bietet gegenüber der Standard-Browser-Lösung den Vorteil, daß die Bedienung ohne Maus unterstützt wird. Zudem sind auch spezielle Funktionalitäten realisierbar, wie zum Beispiel Sicherheitsmechanismen.

Der grafische Editor entspricht in seiner Funktionalität der PROZESS-SPS-Visualisierung JetLink. Es lassen sich zudem Active-X Komponenten einbinden, von denen es viele auf dem Markt gibt. Die Dynamisierung der Seiten erfolgt durch Java-Script. Die Erstellung einfacher Dynamisierung wird durch einen Wizard unterstützt. Der Java-Script-Code wird in der HTML-Seite mit abgespeichert. JetView-Soft beinhaltet einen Java-Script-Editor. Die Datenkommunikation zu anderen Applikationen erfolgt via OPC, SOAP und IDA.

Für die Verwaltung von Daten bietet JetWeb eine ganze Reihe von Möglichkeiten, die jeweils auf IT- und Automatisierungsstandards basieren.

Simulation wird Realität

Es ist nicht nur möglich, die gesamte Anlage in einem Programm zu beschreiben, auch die Simulation des gesamten Ablaufs wird mit Jetweb Realität. Dies bringt eine deutliche Verkürzung von Inbetriebnahme- und Debugzeiten. Programme können parallel zur Fertigstellung der Anlage getestet werden, so daß sich die Inbetriebnahme im Wesentlichen auf die eigentliche Prozesstechnik und die Hardware reduziert.

Erschienen in Ausgabe: 02/2001