Skip to main content

Überblick

Das CODESYS Control Extension Package bietet viele verschiedene Möglichkeiten und Schnittstellen, eigene Programme an das Linux-Laufzeitsystem und die IEC-Applikation anzubinden.

Dadurch können Sie beispielsweise die SPS kontrollieren, auf Ereignisse der SPS reagieren, oder die SPS oder die IEC-Applikation um eigene Funktionalität erweitern.

Sehen Sie im Folgenden die wichtigsten Schnittstellen und Funktionalitäten im Überblick. Beachten Sie dabei: „Von außerhalb der SPS“ bedeutet jeweils trotzdem, dass man sich auf dem Linux-System befindet. Die Schnittstellen sind nicht auf einem anderen Gerät verfügbar, sondern nur auf dem Linux-System, aber eben außerhalb des Laufzeitsystem-Prozesses.

  • Externe Ereignistask: Sie können den Ausführungszeitpunkt für eine IEC-Task selbst kontrollieren (von außerhalb der SPS).

  • Eventmechanismus: Sie können außerhalb der SPS auf Ereignisse der IEC-Applikation (z. B. Start/Stop/Exception) reagieren.

  • Zugriff auf die SPS-Shell: Sie können außerhalb der SPS auf die SPS-Shell zugreifen.

  • START/STOPP-Schalter: Sie können mit sehr einfachen Mitteln einen eigenen Start/Stopp-Schalter (außerhalb der SPS) anbinden.

  • Aufruf einer externen Funktion: Sie können sehr einfach eigene Funktionalität aufrufen, die außerhalb der SPS implementiert ist.

  • Anbindung eigener EA’s: Sie können sehr einfach eigene (beispielsweise lokale) E/A’s außerhalb der SPS anbinden.

  • Extension SDK: Sie können sehr einfach eigene Funktionen in C-Code implementieren, die dann von der IEC-Applikation aus verwendet werden können.

  • Retain-Daten im Shared Memory: Sie können Retain-Daten aus der Applikation über SHM in der Steuerung anbinden.

Eine Übersicht über die getroffenen Sicherheitsmaßnahmen sowie sicherheitsrelevante Hinweise finden Sie in Sicherheitsmechanismen.

Diese neuen Mechanismen und Schnittstellen basieren größtenteils auf Prozesstrennung auf Basis von Linux Standardresourcen (Dateien, Sockets, o. ä.).

Es werden unter anderem „unix domain sockets“ verwendet, eine „Gegenstelle“ kann somit technologieunabhängig umgesetzt werden (Python, C usw.).

Die Anbindung von eigenem C-Code (Extension SDK) ist eine Ausnahme, da hier kompilierter C-Code in Form einer dynamischen Laufzeitsystemkomponente (Shared Object) direkt zum CODESYS-Laufzeitsystem hinzugeladen und ausgeführt wird. Für weitere Informationen siehe: Extension SDK.

Die Beispiele liegen im Installationsverzeichnis des CODESYS Control Extension Package. Standardmäßig ist dies: C:\Program Files\CODESYS <version>\CODESYS\CODESYS Control SL Extension Package\<version>\Examples.