Azure IoT mit OPC UA - Der Weg von der Maschine in die Cloud

Maschinen, die zuvor nicht vernetzt waren und somit nur Informationen direkt bei der Maschine anzeigten, können nun ihre Sensordaten und Informationen weiter geben. Eine zentrale Sammelstelle wie der OPC UA Server oder die Cloud erhält alle Daten, sodass eine ortsunabhängige Auswertung möglich ist. Dank dieser Vernetzung können gesamte Fabrikhallen überwacht werden, was zu einer effizienteren Produktion führt. Zudem kann so bei möglichen Störungen frühzeitig reagiert werden.
Azure bietet hierzu ihre eigene Lösung an, die teils On Premise sowie auch Cloud Komponenten verwendet, um die Brücke von der Maschine zur Cloud speziell für OPC UA zu ermöglichen. Wie genau das funktioniert zeige ich in diesem Beitrag.
Der OPC UA Standard
OPC UA Open Platform Communications Unified Architekture ist ein Datenaustauschstandard für die industrielle Kommunikation. Dieser Standard ist unabhängig gegenüber Herstellern oder Systemlieferanten der Anwendung. Des Weiteren ist er Multiplattformfähig und unabhängig von der Programmiersprache.
Ein Unterschied zur Vorgängerversion liegt darin, dass die Maschinendaten nicht nur transportiert werden können, sondern auch lesbar semantisch beschrieben sind. Um Daten auszutauschen, bietet OPC UA zwei Mechanismen an. Zum einen das Client-Server-Modell wie man es schon kennt und zum anderen das Publisher-Subscriber-Modell. Beide Varianten bieten dem Anwender unterschiedliche Einsatzmöglichkeiten.
Übersicht OPC UA Standard
Eine Beschreibung von OPC UA, sowie eine generelle Übersicht von verwendeten Transportprotokollen finden Sie hier auf unserer Novatec Webseite, sowie einen weiteren interessanten Blogbeitrag zum Thema.
Übersicht der verwendeten Architektur
Für den im Blog dargestellten Anwendungsfall des Condition Monitoring, wurde die Architektur entwickelt, welche auch Komponenten für die visuelle Darstellung und der Datenspeicherung beinhaltet.
Ziel ist hier eine Verbindung zwischen Maschine und Cloud herzustellen, damit die gewonnen Daten der Sensoren und Statusinformationen der Maschine visuell mit einem in der Cloud liegenden Dashboard (Grafana) dargestellt werden können. Dabei werden zum einen On Premise Komponenten sowie Clouddienste benötigt.

Architektur eines Condition Monitoring
In diesem Teil der Blogreihe konzentrieren wir uns auf den On Premise Bereich, der links in der Abbildung dargestellt ist. Hier gibt es drei Parteien die eine Rollen spielen. Die Produktionsmaschine, die an ein Netzwerk angeschlossen ist und die Daten zu einem OPC UA Server sendet. Der OPC UA Server, der die Anlaufstelle bildet und der Verbindungspunkt zu den Azure IoT Edge Services ist. Diese werden für die Übertragung der Daten in die Cloud und speziell zum IoTHub benötigt. Der Cloud Anteil bei dieser Architektur wird in dem zweiten Teil der Blogreihe näher betrachtet.
Einrichten von Azure
Das Ziel ist die Kommunikation mit der Azure Cloud und dem damit verbundenen IoTHub. Dieser muss erst einmal aufgesetzt werden und bietet anschließend eine ganze Reihe an Funktionen, um mit den gewonnenen Daten Analysen, Weiterleitungen oder sogar Machine Learning zu betreiben.

Konfiguration eines Azure IoT Hubs
Nach der Bereitstellung des IoTHubs benötigt man nun den internen Endpunkt des IoTHubs, um eine Verbindung mit dem On Premise Teil herzustellen und so die Daten zu übertragen. Diese Einstellungen findet man im IoTHub im linken Rand unter integrierte Endpunkte. Dieser String beinhaltet alle wichtigen Informationen zum SharedAccessKey und zum EntityPath, um nun ein IoT-Edge Geräte mit dem IoTHub zu verbinden und einen Datenaustausch anzustoßen.
Einrichten Azure Edge On Premise
Um Maschinen Daten von dem OPC UA Server zu erhalten, benötigt es eine Installation direkt vor Ort im eigenen Netzwerk. Hierzu kann man ein HMI (Human-Machine Interface) oder einen Industrie-PC verwenden, der die Verarbeitung übernimmt.
Microsoft hat hierzu für Windows IoT Systeme einen simplen Installer entwickelt, der die Installation direkt übernimmt, für Linux Systeme liegt jedoch eine Installations-Anleitung bei. Während der Installation wird das IoT Edge Gerät im Azure IoTHub registriert und gemeldet. Im On Premise Bereich erfolgt die Installation von zwei Containern in Docker.

Azure IoT Edge On Premise Installation
Nach erfolgreicher Installation und Registrierung werden automatisch der edgeHub und edgeAgent Docker-Container erzeugt. Diese sind für die Kommunikation zwischen angelegtem Azure Device und realem Device zuständig. So können Updates in der Konfiguration über die Azure Cloud ausgeführt und standortunabhängig auf das reale Device übertragen werden. Damit ist es nicht länger notwendig jedes Mal vor Ort das Gerät zu updaten. Somit können Zeit und Geld gespart werden.

Docker Container von Azure IoT Edge und OPCPublisher
Verbindung von OPC UA Publisher zu IoTHub
Zuletzt wird der Container OPCPublisher als Modul zum Device hinzugefügt. Dieser übernimmt die Kommunikation zwischen OPCUA Server und IotHub. Die übertragenen Daten landen dann im IoTHub und können zur weiteren Verarbeitung an eine Datenbank gesendet werden. Von dort aus können die Daten auf einem Dashboard visualisiert oder für weitere Analysen an ein Deep Learning Netzwerk angeschlossen werden.
Es gibt also wirklich viele Möglichkeiten, der Weg von der Maschine in die Cloud ist gut machbar und bietet aus meiner Sicht nur Vorteile.
Aktuelle Beiträge




Artikel kommentieren