OPC UA Client mit Node-RED

Node-RED ist ein Programmiertool zum Verbinden von Hardwaregeräten, APIs und Onlinediensten auf neue und interessante Weise. Über einen browserbasierten Editor können Objekte (Flows) mit einer Vielzahl von verfügbaren Objekten verbunden werden.

Ich habe es bereits erklärt dieser Artikel So installieren Sie Node-RED auf unseren Himbeer-basierten Systemen. Jetzt erfahren Sie, wie Sie Node-RED für die Kommunikation mit anderen Systemen mithilfe des OPC UA-Protokolls (Open Platform Communications Unified Architecture) verwenden, einem Unified Communication-Protokoll für die industrielle Automatisierung.

OPC UA Node Installation

In der Standard-Node-RED-Installation ist eine Basis von Knoten installiert, die am häufigsten verwendet werden. Es gibt jedoch eine große Bibliothek verwendbarer Knoten. Installieren Sie zur Verwendung des OPC-UA-Protokolls die mitgelieferten Knoten node-red-Contrib-opcua. Die Installation kann über die Befehlszeile mit (npm) Node Package Manager oder einfach über einen Browser erfolgen.

Aus dem Menü wählen Sie Manage paletteSuchen Sie dann nach dem Formular node-red-contrib-opcua Um mit der Installation fortzufahren und das Beispiel zu testen, muss auch das Modul installiert werden node-red-dashboard.

Hier ist das Programm

Unten sehen Sie das Programm in Node-RED mit dem dazugehörigen Dashboard, das eine Verbindung zum Programm herstellt SimpleOPCUA Beide mit CODESYS entwickelten Programme werden vom selben Modul aus ausgeführt CPU SlimLine Himbeere.

Die Kommunikation mit dem CODESYS OPC UA Server erfolgt über den Knoten OpcUa Client in dem es definiert ist als Endpoint die Adresse und den Port des OPC-UA-Servers (im Beispiel opc.tcp: // 192.168.0.180: 4840). Natürlich könnte ich beim Einschalten beider Programme auf demselben Prozessor opc.tcp: // localhost: 4840 definieren. Bei Leseoperationen (Variablen DIStatus e Counter) wird definiert Action READin Schreiboperationen (Variable DOCommand) wird definiert Action WRITE.

Das Objekt befindet sich auf dem OpcUa-Client OpcUa Item die angibt, die NodeId der Variablen, auf die zugegriffen werden soll, um im Feld gemeldet zu werden ItemUm den zu schreibenden Wert zu ermitteln, verwenden Sie das Programm UaExpert hier gezeigt. Im Beispiel haben wir:

DIStatus: ns=4;s=|var|CODESYS Control for Raspberry Pi SL.Application.PLC_PRG.DIStatus
DOCommand: ns=4;s=|var|CODESYS Control for Raspberry Pi SL.Application.PLC_PRG.DOCommand
Counter: ns=4;s=|var|CODESYS Control for Raspberry Pi SL.Application.PLC_PRG.Counter

Im Feld Typ muss der Typ der Variablen definiert werden:

DIStatus: Boolean
DOCommand: Boolean
Counter: UInt32

Alle anderen Knoten werden verwendet, um die OPC-UA-Knoten gleichzeitig zu aktivieren und Daten im Dashboard anzuzeigen.

War dieser Artikel hilfreich?