Auch wenn die Hauptversionsnummer 3.5 gleich bleibt, hat der Kemptener Softwarehersteller Codesys in sein aktuelles Softwareupdate „Service Pack 17“ einiges an Neuerungen gepackt. Mit der Modularisierung seiner Software und der Einbindung von Git als Versionsverwaltung schreitet die Annäherung der Automations-OT-Programmierung an klassische IT-Prozesse weiter voran. Dass auch OPC UA nun nativ ansprechbar ist, ist daher nur logisch. Aber der Reihe nach.
Modularisierung und Einzel-Updates
Codesys ließ sich schon seit Version 3 durch Add-on-Komponenten erweitern. In Service Pack 17 wird diese Modularisierung konsequent fortgesetzt: Viele bisher fest integrierte Module sind ab sofort ebenfalls in Add-on-Komponenten mit eigener Versionierung ausgelagert. Dazu gehören u.a. Programmiereditoren für Ablaufsprache und Kontaktplan, Visualisierungstools, Motion Control sowie die Unterstützung unterschiedlicher Feldbussysteme. Übrig bleibt ein schlankes Kernprodukt mit den Basiskomponenten, genannt Codesys Essentials. Weil beim ersten Setup standardmäßig dennoch alle Komponenten installiert werden, bemerken Anwender zunächst einmal keinen Unterschied. Jedoch können diese Komponenten jetzt separat aktualisiert und auf Wunsch auch deinstalliert werden. Sobald neue Versionen einzelner Komponenten freigegeben sind, erhalten die User direkt im Tool eine Information per Push-Nachricht. Gewünschte Einzel-Updates lassen sich dann sofort installieren, ohne die Basisversion zu verändern.
Damit profitieren Anwender schneller als bisher von Verbesserungen. Beispielsweise muss ein Applikationsentwickler nicht mehr auf die Freigabe eines vollständigen Service Packs warten, um bei der Logikprogrammierung die neuen Funktionen des CFC-Editors zu nutzen und schneller arbeiten zu können. Mit dem Codesys Installer, der gleichzeitig mit dem Setup installiert wird, können Anwender sämtliche Installationen auf einem PC verwalten und anpassen. Er erlaubt unter anderem, ein und dieselbe Version des Basissystems mehrfach zu installieren – in unterschiedlichen Kombinationen der Add-on-Komponenten. Experimentelle Testinstallationen und produktiv genutzte Installationen lassen sich dadurch leicht und sicher voneinander trennen und parallel nutzen. Zusätzlich können sich Power-User individualisierte Versionen zusammenstellen, dabei z.B. auf ungenutzte Komponenten verzichten und damit den Ressourcenverbrauch sowie die Installationszeit optimieren. Alle Add-on-Komponenten lassen sich bei Bedarf von einem Online-Server nachladen. Die Integrität wird durch X.509-Zertifikate abgesichert.
Flüssige Visualisierung und integrierter Git-Client
Mit der im Codesys Development System integrierten Visualisierung erstellen Anwender im Editor grafische Bedienoberflächen – und zwar in einer einzigen Oberfläche parallel zur SPS-Applikation. Mit der neuen Version geht das einfacher: Über eine einzige Option lässt sich die Unterstützung von Client-Animationen und Overlay-Funktionen aktivieren. Verfügt das Zielgerät über einen grafischen Coprozessor (GPU), wird dieser aktiviert und die CPU der Steuerung für grafische Operationen nicht mehr belastet. Animationen wie das Einfliegen von Dialogen, das Wischen zur nächsten Bedienseite oder Ein- bzw. Ausblenden grafischer Elemente erfolgen mit der neuen Version erkennbar geschmeidiger. Mit dem Update ist es darüber hinaus möglich, aus verschiedenen Basiselementen zusammengestellte Visualisierungselemente gemeinsam zu rotieren – ebenfalls gerechnet in der GPU. Selbst die Nutzung animierter Grafikelemente wie Animated-Gif-Dateien ist möglich.
Zur Quellcodeverwaltung wurde bislang Apache Subversion unterstützt. Nun ergänzt ein integrierter Client für die beliebte Open-Source-Versionsverwaltung Git das Tool. Der Quellcode von Steuerungsapplikationen kann so in verteilten Datenbanken verwaltet werden, den Repositories. Werden im Entwicklungsprozess Änderungen am Quellcode vorgenommen, protokolliert das System diese automatisch. Bei Bedarf lassen sich ältere Stände der Applikation problemlos wiederherstellen. Wird ein Projekt aufgrund der Größe, Komplexität oder des Zeitdrucks mit mehreren Applikationsentwicklern gleichzeitig umgesetzt, dann lassen sich sie Aufgaben mit einem Tool wie Git sicher koordinieren. Dabei nutzen Anwender die Versionsverwaltung in einem logischen Workflow, der sich kaum von der Arbeit ohne Git-Anbindung unterscheidet.
Einfache OPC-UA-Unterstützung
In Codesys sind zahlreiche Kommunikationsprotokolle implementiert: Zum Beispiel für Download und Debugging der Applikation, zur Nutzung von E/A-Modulen per Feldbus, zum Auslesen von peripheren Modulen über proprietäre Schnittstellen oder zur Kommunikation zwischen anderen Steuerungen. Mit einem integrierten OPC-UA-Server unterstützt das Tool bereits seit einigen Jahren das wichtigste Protokoll für Industrie-4.0-Anwendungen. Mit dem neuen Service Pack wurde das OPC-UA-Angebot nun in mehrere Richtungen erweitert: Im Development-System können Anwender XML-basierte Informationsmodelle in ein entsprechendes Repository importieren. Über das Objekt „Kommunikationsverwalter“ lassen sich OPC-UA-Informationsmodelle ins Projekt einfügen. Die für zahlreiche Branchen getroffenen Vereinbarungen von Datenmodellen, insbesondere die OPC-UA-Companion-Specifications, lassen sich somit flexibel einbinden. Welche der verfügbaren Datenstrukturen oder -typen dabei verwendet werden sollen, kann der Anwender selbst auswählen. Per Knopfdruck erzeugt er IEC-61131-3-Deklarationen bzw. -Programmbausteine und instanziiert diese entweder manuell oder automatisch per Befehl. Diese Variablen kann er im SPS-Code sofort nutzen und über den OPC-UA-Server veröffentlichen. Enthält ein Informationsmodell OPC-UA-Methoden, so kann der Anwender deren Funktion im generierten Baustein selbst auskodieren. Davon profitieren verbundene OPC-UA-Clients: Sie können diese Methoden und damit Funktionen des Servers aufrufen. So führt der Server speziellen Applikationscode aus, auf Zuruf vom Client.