Techtalk

Technik

SPS-Programmierung auf Embedded Linux-Systemen mit CODESYS

CODESYS ermöglicht effiziente SPS-Programmierung auf Embedded Linux – flexibel, vertraut, praxisnah und ideal für automatisierte Systeme.

CODESYS (Controller Development System) ist eine weit verbreitete Entwicklungs- bzw. Programmierumgebung (IDE) für industrielle Automatisierung, mit der plattformunabhängige SPS-Programme (Speicherprogrammierbare Steuerungen) intuitiv erstellt und ausgeführt werden können.

Programme werden dabei in der IDE entwickelt, kompiliert und schließlich auf das jeweilige Zielsystem übertragen. Dort sorgt eine systemspezifische CODESYS-Runtime (Ausführungsumgebung, in der das Softwareprogramm ausgeführt wird) dafür, dass das Programm auf dem Embedded System ausgeführt wird.

CODESYS zeichnet sich durch seine Flexibilität aus und ist auf zahlreichen Geräten einsetzbar – auch auf Linux basierten Embedded Systemen. Es verwendet die standardisierte Programmiersprache IEC 61131-3, die Automatisierer:innen bereits vertraut ist. Dies ermöglicht die effiziente Steuerung von Maschinen und Anlagen, ohne tiefgehende Kenntnisse in Programmiersprachen wie C++. Vor allem Anwender:innen mit vorhandener SPS-Erfahrung profitieren von erheblicher Zeitersparnis bei der Entwicklung.  

Praxisbeispiel: Automatisierung in Lager- und Fördersystemen

Ein konkretes Beispiel aus der Praxis ist ein automatisiertes Lagersystem, bei dem Embedded-Linux-Systeme klassische SPS-Steuerungen ersetzen. In diesem System fahren Shuttles entlang der Regalgänge, während Teleskoparme Waren gezielt entnehmen bzw. einlagern.

Ginzinger electronic systems setzte hierbei eine Embedded-Linux-Plattform auf Basis von CODESYS ein, welche die Funktionalität einer klassischen SPS übernimmt. So profitiert die Kundschaft von einer vertrauten Programmier-Umgebung, geringeren Wartungs- und Softwareaufwänden und den Vorteilen eines stabilen Linux-Kernels inklusive direkter Kernel-Befehlsausführung.

CODESYS auf Embedded Linux

Im Projektverlauf zeigte sich, dass die Installation von CODESYS auf einer kundenspezifischen Linux-Plattform anspruchsvoll sein kann. Obwohl der Hersteller generische Linux-Unterstützung verspricht, stellen unklare Mindestanforderungen und mangelhaft dokumentierte Fehlerzustände eine Herausforderung dar.  

Das Ginzinger Embedded-Linux-System "GELin" setzt üblicherweise auf ein speichersparendes und manipulationssicheres Read-Only-Dateisystem. Da CODESYS ein Standard-Linux voraussetzt und nicht dokumentiert ist, auf welche Dateien es Schreibzugriff braucht und somit potenziell alle Dateien änderbar sein müssen, wurde ein Overlay-Dateisystem aufgesetzt. Über das bewährte Dateisystem wird dabei eine Schicht gelegt, in der alle Änderungen stattfinden. Dateien können sogar gelöscht werden, ohne das Basissystem anzutasten. Durch Entfernen dieser Schicht kann jederzeit der Ausgangszustand wiederhergestellt („factory default“), oder eine ganze Sitzung kopiert, archiviert und analysiert werden.

Vorteile & Überlegungen bei Einsatz von CODESYS

CODESYS bietet klare Vorteile, insbesondere wenn:

  • Erfahrung in der SPS-Programmierung vorhanden ist.
  • vorhandene Bibliotheken und Schnittstellen eingesetzt werden können,
  • eine schnelle Implementierung mit geringem Softwareaufwand gewünscht ist.

Jedoch sollte beachtet werden, dass die Nutzung von CODESYS mit Lizenzkosten verbunden ist, welche bei höheren Stückzahlen relevant werden können. Alternativ könnte für spezifische oder sehr individuelle Anforderungen die Umsetzung direkt in C oder C++ wirtschaftlicher und flexibler sein. Mit sorgfältiger Planung und technischem Knowhow bietet CODESYS eine effiziente Lösung für die SPS-Programmierung auf Embedded Linux. Besonders sinnvoll ist der Einsatz, wenn vorhandene SPS-Erfahrungen und schnelle Ergebnisse im Vordergrund stehen.

Ab einer bestimmten Stückzahl lohnt es sich jedoch häufig, SPS durch individuell entwickelte Embedded Systems zu ersetzen, um Lizenzkosten zu reduzieren, die Flexibilität zu erhöhen und spezifische Anforderungen effizienter umzusetzen.

Maßgeschneiderte Lösungen für Sie!