Automatisierung Safety-Funktionen via Add-in als Bibliothek bereitstellen

Autor / Redakteur: Carsten Weber und Harry Koop * / Gerd Kucera

Die Integration neuer Sicherheitsfunktionen erfordert in der Regel ein Firmware-Update der Sicherheits-SPS. Dieser Aufwand muss nicht sein. Eine Alternative zeigt das Beispiel der Safety-SPS RFC 4072S.

Firmen zum Thema

Bild 1: Benötigte Sicherheitserweiterungen lassen sich in bekannten Entwicklungsumgebungen erzeugen und über ein Add-in als Safety-Bibliothek in der Engineering-Software PLCnext Engineer der Sicherheitssteuerung RFC 4072S zur Verfügung stellen.
Bild 1: Benötigte Sicherheitserweiterungen lassen sich in bekannten Entwicklungsumgebungen erzeugen und über ein Add-in als Safety-Bibliothek in der Engineering-Software PLCnext Engineer der Sicherheitssteuerung RFC 4072S zur Verfügung stellen.
(Bild: Phoenix Contact)

Verfolgt man das Ziel einer vernetzten, flexiblen Produktion im Sinne des Industrie-4.0-Ansatzes, muss die zugrunde liegende Automatisierungslösung anpassungsfähiger und kommunikativer werden. Alle Teilnehmer des Automatisierungsverbundes lösen ihre bislang statischen Verbindungen, um dynamisch über Anlagen und Unternehmensgrenzen hinweg Daten miteinander auszutauschen. Basis dazu ist die offene Steuerungsplattform PLCnext Technology, die Phoenix Contact Ende 2016 etablierte und seitdem regelmäßig weiterentwickelt.

Die dynamische Lösung erlaubt das parallele Programmieren auf Basis etablierter Software-Tools wie Visual Studio, Eclipse, Matlab Simulink sowie die frei wählbare Verknüpfung von deren erstelltem Programmcode. Mit der PLCnext Technology lassen sich beispielsweise Funktionen nach IEC 61131-3 mit Routinen von C/C++, C# oder Matlab Simulink kombinieren. Die einfache Integration von Software aus der Open Source Community in das Automatisierungssystem von Phoenix Contact ist auf diese Weise ebenfalls möglich.

Bildergalerie
Bildergalerie mit 5 Bildern

Für das Programmieren gemäß IEC 61131-3 gibt es mit PLCnext Engineer eine adaptive Engineering-Plattform. Neben der Programmierung ermöglicht diese Software die Konfiguration, Diagnose und Visualisierung des Gesamtsystems in einem Tool. Die Engineering-Umgebung bietet eine individuell anpassbare, aufgeräumte und intuitiv bedienbare Oberfläche und erlaubt die Nutzung weiterer Funktionen. Die Grundversion der Software ist kostenlos. Zahlreiche Erweiterungsbausteine lassen sich bei Bedarf zukaufen, sodass der Anwender durch diese Funktions-Add-ins seine eigene, individuelle Software zusammenstellen kann. Da sich wiederverwendbare Automatisierungsmodule nutzen lassen und PLCnext Engineer Safety- und Security-Konzepte umfassend unterstützt, reduziert sich die Entwicklungszeit. Die Software-Plattform erweist sich somit als effizientes und zukunftssicheres Engineering-Werkzeug.

Integration der Bibliothek in die Engineering-Software

Der Artikel beschreibt nachfolgend die flexible Erweiterung der Safety-SPS von Phoenix Contact um komplexe Funktionen. Aus der Erhöhung der funktionalen Sicherheit ergeben sich regelmäßig umfassendere Anforderungen an die notwendige sicherheitsbezogene Applikationssoftware. Mit dem offenen Ecosystem PLCnext Technology lassen sich die jeweiligen Funktionen in den bekannten Entwicklungsumgebungen erstellen und über ein Add-in als Safety- Bibliothek in der Engineering-Software PLCnext Engineer zur Verfügung stellen.

Die Maschinenrichtlinie in der Automatisierung

Nicht nur in der Automatisierungstechnik, sondern in vielen Bereichen des täglichen Lebens nimmt das Bewusstsein zu, Vorkehrungen für die Sicherheit von Menschen, Maschinen und der Umwelt zu treffen. Aufwendige Berechnungen zur flexiblen Raumüberwachung oder die Integration von Antriebssicherheitsfunktionen in die sicherheitsbezogene Steuerung erfordern oftmals eine Erweiterung der sicherheitsbezogenen Firmware. Im Maschinenbau werden häufig Steuerungen eingesetzt, die für die einfache Programmierung von Sicherheitsfunktionen ausgelegt sind und einem Sicherheits-Level entsprechen. Sie unterliegen der Maschinenrichtlinie oder der DIN EN ISO 13849. Beide Standards schränken den Sprach- und Funktionsausbau jedoch erheblich ein, weshalb von einer Low Variability Language (kurz LVL) gesprochen wird. Komplexere Funktionen werden gemäß der Norm IEC 61508 entwickelt und der Firmware der Sicherheitssteuerung als fester Bestandteil hinzugefügt. Allerdings ist der Austausch der Firmware mit hohen Aufwendungen verbunden, sowohl beim Hersteller der Firmware als auch beim Anwender in den Maschinen und Anlagen. Phoenix Contact bietet daher eine flexible Lösung, bei der die Erweiterung zusammen mit dem Applikationsprogramm auf die sicherheitsbezogene Steuerung geladen wird. Das Adjektiv flexibel bedeutet in diesem Zusammenhang, dass nicht mit jeder neuen Funktion ein Firmware-Update unerlässlich ist.

Einfachere Umsetzung in Hochsprache

Sicherheitsfunktionen mit komplexen Berechnungen erweisen sich insbesondere im Umfeld der Robotik als notwendig. Die kartesische Raumüberwachung bedingt zum Beispiel trigonometrische Funktionen mit Gleitkommakalkulation. Bei Berechnungen im Bereich der Roboterkinematik sind ebenfalls meist aufwendige arithmetische Operationen erforderlich. Solche Aufgabenstellungen lassen sich einfach in Hochsprache umsetzen, da es hier entsprechende Bibliotheken gibt, die sich bewährt haben. In der Programmiersprache C kann beispielsweise die Bibliothek math.h verwendet werden, bei der es sich um eine Standardsammlung mathematischer Funktionen handelt. Als weiteres Anwendungsgebiet sei die Implementierung von proprietären Sicherheitsprotokollen genannt. Damit in bestehenden Applikationen nicht das gesamte Netzwerk erneuert werden muss, lässt sich das eingesetzte Sicherheitsprotokoll als C-Funktion einbauen und dann weiter nutzen. Oftmals ist der dafür benötigte C-Code schon vorhanden und hat sich bereits etabliert.

Sicherheitsbezogene Steuerungen sind häufig zweikanalig ausgeführt. Das heißt, dass zwei unabhängige Prozessoren den Code abarbeiten und das Resultat in einem Kreuzvergleich überprüfen, was die korrekte Ausführung des Programms sicherstellt. Auf diese Weise werden die sogenannten Common-Cause-Fehler verhindert. Um die Anforderungen der funktionalen Sicherheit zu erfüllen, lässt sich für jeden Kanal ein anderer Compiler verwenden. Der so erzeugte diversitäre Binärcode läuft sogar diversitär auf den Sicherheitssteuerungen ab. Dies wird auch als redundante Diversität bezeichnet (Bild 2). Weil die Funktionen direkt als Maschinencode auf die sicherheitsbezogene Steuerung geladen werden, zeigen sie sich meist als kompakter und deutlich effizienter als IEC61131-3-basierte Programme. Durch die direkte Abarbeitung in der Firmware ergibt sich somit ein Performance-Gewinn.

Zur Erstellung der C-Funktionen lässt sich die gewohnte und schon im Entwicklungsprozess eingesetzte Umgebung nutzen. Die Entwickler brauchen sich also nicht in ein neues Tool einzuarbeiten. Der kompilierte Code muss im standardisierten ELF-Format (Executable and Linking Format) vorliegen. Diese plattformunabhängige Lösung wird von vielen bekannten Programmiersprachen unterstützt. Durch die Verwendung von Standard-Entwicklungssystemen und -Programmiersprachen sowie standardisierten Dateiformaten können während der Entwicklung ebenfalls Standard-Tools zur Unterstützung eingesetzt werden, die zum Beispiel nicht für IEC61131-3-basierte Programme verfügbar sind. Darunter fallen u.a. Software-Werkzeuge zur Messung der Code-Abdeckung (Code Coverage), Software zur Feststellung der Testabdeckung oder lediglich einfache Anbindungen an Versionsmanagementsysteme wie GIT oder Subversion.

Die Integration der abgeschlossenen Bibliothek

Aus der Nutzung von Standard-Entwicklungssystemen resultiert darüber hinaus der Vorteil, dass sich das Programm mit einfachen Mitteln überprüfen lässt. Die zu generierenden Funktionen müssen allerdings gemäß den einschlägigen Normen – wie der IEC 61508 – in der Full Variability Language (FVL) entwickelt werden. Dazu bietet sich häufig die Beauftragung eines geeigneten Dienstleisters an, der die Aufgabenstellung im Rahmen eines passenden Entwicklungsprozesses realisiert. Der erarbeitete Code muss anschließend in der richtigen Form mit der sicherheitsbezogenen Anwenderapplikation an die Steuerung gesendet werden. Die Engineering-Software PLCnext Engineer (Bild 3) des offenen Ecosystems PLCnext Technology stellt zu diesem Zweck ein zusätzliches Add-in bereit, das es dem Ersteller der sicherheitsgerichteten Funktionen erlaubt, eine abgeschlossene Bibliothek zu erzeugen. Dies geschieht innerhalb von PLCnext Engineer mit wenigen Mausklicks (Bild 4).

Keine speziellen Kenntnisse zur Hochsprache nötig

Um sicherzustellen, dass der Erzeuger der Bibliothek sowie der Code jederzeit identifizierbar ist, muss der Bibliothek ein Zertifikat beigefügt werden. Dieser Mechanismus stellt nach heutigen Maßstäben die beste Variante der Security-Absicherung dar. Die fertiggestellte Bibliothek lässt sich mit der in PLCnext Engineer enthaltenen Simulation der Sicherheitssteuerung sogar testen. Außerdem kann der Code über das verwendete Entwicklungssystem – wie etwa Visual Studio – anwenderfreundlich geprüft und von Fehlern befreit werden. Die eigens entwickelten Funktionen erweisen sich meist als Differenzierung zu anderen Anbietern. Durch die abgeschlossenen Bibliotheken, die nicht automatisch an jeden Steuerungsanwender geliefert werden, bleibt dem Hersteller der komplexen Funktionalität ein Wettbewerbsvorteil erhalten.

Die in der Branche aktiven Dienstleister können die genannten Bibliotheken jedoch online in den verschiedenen Software Stores zugänglich machen und sich auf diese Weise ein weiteres Geschäftsmodell aufbauen. Im einfachsten Fall sind die von einem Prüfinstitut zertifizierten Bibliotheken auf dem digitalen Marktplatz PLCnext Store von Phoenix Contact erhältlich (Bild 5). Bei der Nutzung der Bibliothek muss der Anwender der komplexen neuen Sicherheitsfunktion keinerlei Kenntnis hinsichtlich der eingesetzten Hochsprache, des verwendeten Entwicklungssystems oder der Norm IEC 61508 aufweisen. Die Bibliothek ist lediglich in seiner Applikation zu referenzieren. Danach findet der Nutzer sämtliche neuen Funktionen in seinem Katalog über die Funktionen und Funktionsbausteine. Zur Kontrolle der Zertifikate kann er die Informationen im Safety-Informations-Editor jederzeit einsehen und mit den Herstellerangaben vergleichen. Während der Referenzierung der Bibliothek zur Anwenderapplikation überprüft PLCnext Engineer die Gültigkeit der Zertifikate automatisch.

Die vorgestellten Möglichkeiten bieten also nicht nur Anwendern, sondern auch Herstellern sicherheitstechnischer Technologiefunktionen viele Vorteile, die allerdings lediglich durch eine flexibel erweiterbare Sicherheitssteuerung wie den RFC 4072S von Phoenix Contact umgesetzt werden können.

* Carsten Weber ... ist Manager Product Management bei Phoenix Contact Software, Lemgo. Harry Koop ... ist Manager Safety Software bei Phoenix Contact Software, Lemgo.

Artikelfiles und Artikellinks

(ID:47241211)