Ursprünglich entstand die Open Source Bewegung aus Forschern und Idealisten, die durch die Offenlegung des Quellcodes eine Verbreitung und weitere Nutzung ihrer Programme erleichtern wollten. Seit einigen Jahren gibt es aber auch eine weitere Ausprägung, nämlich Open Source als Kooperationsmodell. Hier können (teilweise konkurrierende) Unternehmen gemeinsam an einer Problemstellung arbeiten, ohne dass komplexe rechtliche Rahmenbedingungen geprüft oder Verträge erstellt werden müssen. Dafür werden die Projekte oftmals von einer gemeinnützigen Organisation oder Stiftung verwaltet. Die bekanntesten Beispiele hierfür sind die Linux Foundation, die Apache Software Foundation oder die Eclipse Foundation. Diese Organisationen stellen üblicherweise die Infrastruktur und definieren die Spielregeln. Insbesondere haben diese Organisationen auch Prozesse und Erfahrung, um den Quellcode lizenzrechtlich zu prüfen und sicher zu stellen, dass eine Verwendung des bereitgestellten Codes keine rechtlichen Gefahren birgt.
Open Source in der Automatisierungstechnik
Auch wenn dieses Vorgehen für viele mittelständische Unternehmen in der Automatisierungstechnik ungewohnt klingt, gibt es hier seit Jahren ähnliche Strukturen. Einige Unternehmen arbeiten bereits in Arbeitsgruppen bei entsprechenden Branchenverbänden wie dem VDMA oder den IHKs. Sie bieten Plattformen, um Spezifikationen und Standards zu erarbeiten oder unternehmensübergreifende Entwicklungsprojekte zu koordinieren. Ähnliche Kollaborationsmodelle gibt es also in der Automatisierungstechnik seit geraumer Zeit.
Was ist Apache PLC4X?
Apache PLC4X ist ein Open-Source-Projekt mit dem Ziel Treiber für die gängigen Steuerungs- und Feldbusprotokolle zu implementieren, wo dies technisch möglich und sinnvoll ist. Die wichtigsten Neuerungen hierdurch sind:
- Alle Treiber werden kostenlos unter der sehr offenen Apache-2.0-Lizenz zur Verfügung gestellt, sind also insbesondere problemlos kommerziell nutzbar ohne einen Quellcode offen legen zu müssen. Dies ist bei anderen populären Implementierungen oftmals nicht der Fall.
- Die verfügbaren Treiber sind über eine einheitliche Programmierschnittstelle (API) ansprechbar. Das bedeutet insbesondere, dass man ein Programm schreiben kann, das ohne Änderungen mit mehreren Steuerungen kommunizieren kann.
- Üblicherweise sind die Treiber plattformunabhängig, d.h. sie können sowohl auf Windows wie auch auf Linux Systemen eingesetzt werden.
Einfache Entwicklung
Alle drei Punkte sind aus Sicht des Zusammenwachsens von IT und Operation Technology (OT) sehr interessant. Zudem ist zu beobachten, dass die alleinige Dominanz von Windows im Produktionsumfeld an einigen Stellen zu schwinden scheint und somit der Bedarf an plattformunabhängigen Lösungen steigt. Weiterhin hilft die einheitliche Schnittstelle der Treiber dabei, Software einmal zu entwickeln und sehr einfach auf alle unterstützen Steuerungstypen zu portieren. Ein wichtiger Aspekt hierbei: