Von Raspberry Pi & Co. befeuert
Erlebt Linux in der Automation einen zweiten Frühling?
Um Linux ist es im Automationsumfeld in den vergangenen Jahren relativ still geworden. Mit der Entwicklung des Einplatinen-Computers Raspberry Pi und vergleichbaren Geräten hat das Open-Source-Betriebssystem in jüngster Zeit allerdings wieder neue Impulse bekommen.
Anfang der 1990er-Jahre entwickelte der Finne Linus Torvalds maßgeblich das Betriebssystem Linux – ein klassisches Beispiel für Software, die unter der GPL-Lizenz (GNU Public License) zur Verfügung steht. Diese auch als Open Source bezeichnete Lizenzierung bedeutet, dass Endnutzer die Software beliebig nutzen, verbreiten und ändern dürfen. Im Gegensatz zu einer Software, die von einem Unternehmen lizenziert ist – Beispiele hierfür sind die Windows-Betriebssysteme von Microsoft –, fallen hierbei keine Lizenzgebühren für den Nutzer an.
Zunächst war das Open-Source-Betriebssystem lediglich eine Spielwiese für Spezialisten. Durch das Aufkommen von sogenannten Distributionen, in denen Linux mit verschiedenen Anwendungsprogrammen zusammengefasst erhältlich ist, hat es eine gewisse Verbreitung auf Desktop-Rechnern erreicht. Denn solche Distributionen ermöglichen es auch Anwendern, die sich nicht eingehender mit der Software-Entwicklung beschäftigen wollen, Linux relativ problemlos einzusetzen. Seine größte Verbreitung hat das Betriebssystem aber auf Servern, in Routern, Mobiltelefonen und in Embedded-Systemen gefunden.
Nachdem es über die Jahre etwas ruhiger um Linux geworden war, ist es in den letzten zwei Jahren wieder stärker in den Fokus der Öffentlichkeit gerückt. Grund hierfür ist die rasante Verbreitung von Einplatinen-Computern – speziell des Raspberry Pi –, die Linux als Betriebssystem verwenden. Die gemeinnützige Raspberry Pi Foundation hat zum Ziel, junge Menschen für die Computertechnik zu begeistern, um so dem Trend der sinkenden Studentenzahlen bei den Informatikstudenten entgegenzuwirken. Durch den niedrigen Preis der Einplatinen-Computer haben sich schnell Anwendungen auch außerhalb des Bildungsbereichs gefunden und so zur weiteren Verbreitung von Linux beigetragen.
Die Anforderungen aus der Automatisierung
Auch in der Automatisierungswelt hat Linux eine große Anhängerschaft und wird häufig „stillschweigend“ – sprich ohne groß darüber zu sprechen – eingesetzt. Der Vorteil, dass keine Lizenzgebühren anfallen, spielt hierbei allerdings eine untergeordnete Rolle.
Eine integrierte Entwicklungsumgebung vereinfacht die Arbeit mit einem Linux-System erheblich.
© WagoAuch in der Automatisierungswelt hat Linux eine große Anhängerschaft und wird häufig „stillschweigend“ – sprich ohne groß darüber zu sprechen – eingesetzt. Der Vorteil, dass keine Lizenzgebühren anfallen, spielt hierbei allerdings eine untergeordnete Rolle. Speziell die Offenheit und Transparenz des Systems machen Linux hier zu einer ernstzunehmenden Alternative zu den „üblichen“ Betriebssystemen.
Außerdem zeichnet sich Linux durch eine sehr hohe Stabilität aus – eine Eigenschaft, die gerade in Automatisierungsanwendungen eine besonders wichtige Rolle spielt. Der Embedded-Programmierer hat mit Linux ein stabiles System zur Verfügung, das er beliebig an seine Anforderungen anpassen kann. Bei proprietären Systemen hingegen muss man mit den vorgesehenen Funktionalitäten beziehungsweise den am Markt erhältlichen Erweiterungen auskommen. Durch die Offenheit, die Linux bietet, lässt sich dieses Betriebssystem sehr flexibel ergänzen.
Außerdem hat ein Open-Source-Betriebssystem bei der langfristigen Verfügbarkeit Vorteile. Eine Abkündigung, die in der Regel damit verbunden ist, dass der Hersteller den Support einstellt, kann es bei Linux nicht geben, da der Quellcode offenliegt. Zudem entwickelt eine sehr aktive Community das Betriebssystem ständig weiter.
Sicherheit und Echtzeit
Das Internet der Dinge und Industrie 4.0 sind aktuell die am häufigsten und intensivsten diskutierten Themen in der Automatisierungstechnik. Eine der Grundvoraussetzungen für diese Weiterentwicklungen der Automatisierung ist eine umfassende Vernetzung sämtlicher Systeme. Diese Vernetzung, wie sie in der Büro-EDV schon lange üblich ist, verlangt jedoch nach entsprechenden Sicherheitsvorkehrungen.
Der 2010 bekannt gewordene Stuxnet-Angriff, der es speziell auf bestimmte Automatisierungssysteme abgesehen hatte, schreckte die Fachleute in der Automatisierungstechnik auf. Er hat eindrucksvoll gezeigt, dass proprietäre Systeme, wie sie in der Automatisierungstechnik häufig zum Einsatz kommen, keineswegs eine absolute Sicherheit bieten. Diese Problematik besteht bei allen Automatisierungslösungen von proprietären SPS-Systemen bis hin zu Windows-basierten Industrie-PCs. Und auch Linux-Systeme sind davon nicht generell ausgenommen, obwohl es deutlich weniger Schadsoftware für dieses Betriebssystem gibt. Zudem lassen sich sichere Lösungen, wie IPSec, Open-VPN oder Firewall-Lösungen, problemlos in Linux integrieren und sorgen so für die notwendige Sicherheit.
Ein weiteres Thema, das speziell für zeitkritische Automatisierungslösungen von entscheidender Bedeutung ist, ist das Echtzeit-Verhalten. Gerade in den Anfangsjahren der PC-basierten Automatisierungssysteme war dies ein ausführlich diskutiertes Thema. Festzuhalten bleibt, dass weder Windows noch Linux von Haus aus Echtzeit-Betriebssysteme sind. Während man bei Windows auf Echtzeit-Erweiterungen von Drittanbietern zurückgreifen muss, gibt es für Linux den „realtime peemption patch“, der den Kernel an sich echtzeitfähig macht.
Distributionen erleichtern den Einstieg
Viele Unternehmen, die vor der Entscheidung für eine Automatisierungslösung auf Basis von Linux stehen, sind zunächst skeptisch, da es nicht den Ansprechpartner beim Hersteller gibt, an den man sich bei Supportfragen wenden kann. In aller Regel kommt aber beispielsweise eine Steuerung zum Einsatz, die bereits mit Linux als Betriebssystem ausgestattet ist. Für Supportfragen stehen also zunächst die Hardware-Hersteller parat. Diese statten ihre Steuerungen mit erprobten Distributionen aus, bei denen Linux zusammen mit unterschiedlichen Ergänzungen bereits vorinstalliert ist. Der Anwender kann diese bereits lauffähigen Systeme beliebig mit zusätzlichen Komponenten ergänzen und so an seine spezifische Anwendung anpassen. Jedem Anwender sollte allerdings klar sein, dass Open Source nicht gleichbedeutend mit kostenlos ist. Lediglich die Lizenzgebühren fallen nicht an; die Kosten für Wartung und Support bleiben dagegen bestehen.
Unterstützung erhalten Linux-Anwender aus der Automatisierungsbranche bei dem als Genossenschaft organisierten Open Source Automation Development Lab (OSADL), in der Unternehmen und wissenschaftliche Institutionen zusammenarbeiten. Ziel der 2006 gegründeten Organisation ist es, die Voraussetzungen dafür zu schaffen, dass Linux als Betriebssystem für die Automatisierungstechnik eingesetzt werden kann. Dazu gehört insbesondere die Erweiterung des Betriebssystems um echtzeitfähige Funktionen.
Eine weitere Frage, die häufig in Zusammenhang mit der Verwendung von Linux auftaucht, ist: „Wie schütze ich mein eigenes Know-how?“ Ein verbreiteter Irrglaube ist es, dass Anwendungen prinzipiell immer unter der GPL-Lizenz veröffentlicht werden müssen. Denn bei den sogenannten Userspace-Anwendungen – also bei Anwendungen, die nicht irgendwie Bestandteil des Betriebssystems (vergleichbar mit einem „normalen“ Programm unter Windows) – ist dies nicht zwingend gefordert. Auf diese Weise ist es entsprechend durchaus möglich, das eigene Know-how trotz des Open-Source-Systems zu schützen. Es soll an dieser Stelle nicht verschwiegen werden, dass eine Prüfung der Lizenzbestimmungen von den zu verwendenden Software-Paketen unumgänglich ist.
Selbstverständlich lebt eine Automatisierungslösung auch wesentlich von der eingesetzten Hardware. Auf der Website des OSADL (http://www.osadl.org) finden sich viele Firmen, die Automatisierungslösungen anbieten, bei denen Linux als Betriebssystem Verwendung findet. Deren Controller werden in der Regel mit einem installierten Linux ausgeliefert, das der Anwender dann individuell an seine Bedürfnisse anpassen beziehungsweise erweitern kann.
Kurzum: Die Stabilität, die Offenheit und die Langlebigkeit von Linux machen es zu einem Betriebssystem, das sich ideal für unterschiedlichste Automatisierungsaufgaben eignet. Zusammen mit den Echtzeit-Erweiterungen sind auch zeitkritische Steuerungs- und Automatisierungsaufgaben problemlos realisierbar. Der aktuelle Hype um Einplatinen-Computer wie den Raspberry Pi lässt hoffen, dass eine breite Schicht von zukünftigen Software-Entwicklern bereits in der Ausbildung mit Linux in Berührung kommt. Diese Software-Entwickler von morgen werden dem Vormarsch von Linux in der Automatisierungstechnik weiteren Schwung geben.
Autor: Andreas Halter ist Produktmanager für Steuerungstechnik und HMI bei Wago Kontakttechnik.
Linux-Controller – ein Beispiel
Mit dem Controller PFC200 hat beispielsweise Wago eine Steuerung im Programm, die auf Linux basiert. Der Controller verfügt über zwei Ethernet-Ports sowie eine serielle Schnittstelle und lässt sich mit den Klemmen aus dem I/O-System 750 ausstatten. Das verfügbare Board-Support-Package (BSP) bietet Embedded-Entwicklern alle Möglichkeiten des Open-Source-Betriebssystems Linux. Das Wago-Basis-Image lässt sich durch Open-Source-Pakete erweitern. Auf diese Weise können verschiedenste Ausführungsumgebungen wie Java, PHP oder Python installiert und genutzt werden. Zudem sind über externe Codesys-Bibliotheken Erweiterungen der SPS-Funktionalität aus beliebigem C-Code heraus möglich. Der Embedded-Programmierer kann die SPS-Laufzeitumgebung auch vollständig durch eigene Anwendungen mit Zugriff auf den Klemmenbus (K-Bus), CAN und Profibus ersetzen. Eine Benutzerverwaltung, Speicherschutzmechanismen und überprüfbare Datenintegrität sorgen für die geforderte Sicherheit. Neben Linux selbst stehen Software-Tools für nahezu jede Aufgabe als Open-Source-Lösungen bereit.















