Techtalk

Fachthema

OPC UA Integration leicht gemacht

Mit GELin (der Ginzinger Embedded Linux Distribution) und open62541

Moderne Embedded Systeme werden vielfach im industriellen Umfeld eingesetzt. Die Kommunikation über standardisierte, plattformunabhängige Protokolle wie OPC UA (Open Platform Communications Unified Architecture) wird dabei zur Grundanforderung. Doch wie kompliziert ist es wirklich, OPC UA in ein Embedded System zu integrieren? Mit der GELin Hardware-/Software-Plattform von Ginzinger electronic systems lässt sich diese Aufgabe erstaunlich einfach und effizient umsetzen – wie unser jüngstes Beispiel in einem Kundenprojekt zeigt. 

Entscheidung für Software Stack open62541

Im ersten Schritt wurden unterschiedliche kommerzielle und nicht-kommerzielle OPC UA Software Stacks untersucht. Dabei fiel die Entscheidung auf open62541, den Open Source Stack, entwickelt von Fraunhofer und OSADL und das aus gutem Grund. 

Die Auswahl des passenden Stacks wurde von mehreren Faktoren beeinflusst: 

  • Umfangreiche Funktionalität: open62541 unterstützt nahezu alle relevanten Features des OPC UA Standards – inklusive Publish/Subscribe (PubSub). 

  • Schnelle Einarbeitung: Bereits nach kurzer Zeit lief ein funktionsfähiger OPC UA Server auf der Zielhardware. 

  • Open Source & kostenfrei: Keine Lizenzkosten und eine offene, transparente Entwicklung waren starke Pluspunkte. 

  • Technische Einfachheit: Durch die CMake-Unterstützung ließ sich der Stack nahtlos in bestehende Projekte integrieren. 

Reibungslose Integration

Die Integration des open62541 OPC UA Stacks auf der Ginzinger i.MX8 Hardware-Software-Plattform verlief reibungslos: 

  • Inbetriebnahme in zwei Tagen: Bereits nach ca. zwei Arbeitstagen lief ein einfacher OPC UA Server ohne Benutzerverwaltung und ohne Verschlüsselung auf der Plattform. 

  • Schrittweise Erweiterung: Weitere Features wie Security oder PubSub werden im Zuge des agilen Entwicklungs-Prozesses ergänzt. 

  • Keine Anpassungen an GELin notwendig: Dank CMake, FetchContent_Declare und FetchContent_MakeAvailable ließ sich open62541 direkt in die bestehende Softwareumgebung einbinden. 

Erfahrungen mit open62541 und GELin

Die bisherigen Erfahrungen mit open62541 und GELin sind durchweg positiv: 

  • Stabilität und Codequalität: Der Stack läuft bisher ohne Probleme und zeigte sich in der Praxis als stabil und sauber implementiert. 

  • Kleine Herausforderungen: Da open62541 in C99 geschrieben ist, kann es bei Verwendung in C++-Projekten zu kleineren Problemen bei der statischen Codeanalyse kommen. Diese sind jedoch lösbar und beeinträchtigen die Funktionalität nicht. 

Die Integration über CMake funktioniert zuverlässig und komfortabel. Desweiteren bietet die aktive Community rund um open62541 und die Modularität von GELin viel Flexibilität für Erweiterungen.

Software Entwicklung am Monitor mit Tastatur

Die Kombination aus der robusten GELin Plattform und dem leistungsfähigen, frei verfügbaren open62541 Stack bietet eine einfache, lizenzkostenfreie Möglichkeit, OPC UA in Embedded Systeme zu integrieren. Und das völlig ohne externe Unterstützung, ohne tiefe Systemeingriffe und mit einem sehr geringen Lernaufwand gelang die Integration in kürzester Zeit.

Für Unternehmen, die auf Industrie 4.0 setzen und dabei auf sichere, skalierbare Kommunikationstechnologien bauen wollen, ist GELin mit open62541 eine überzeugende Lösung.

Mehr über die Ginzinger Embedded Linux Distribution.