Konzept
OPC UA Grundlagen
Einführung in die Grundbegriffe von OPC Unified Architecture (Nodes, NodeIds, Adressraum, Views, Node-Manager und Services).
Konzept
OPC UA Grundlagen
OPC UA
OPC UA steht für OPC Unified Architecture. Vom Vorgänger OPC unterscheidet sich OPC UA vor allem dadurch, dass es Maschinendaten wie Messwerte und Parameter nicht nur transportiert, sondern auch maschinenlesbar semantisch beschreibt.
OPC steht heute für Open Platform Communications, ursprünglich für OLE for Process Control. Unified Architecture bezeichnet die einheitliche, plattformunabhängige Architektur, mit der sich OPC UA von den klassischen OPC-Spezifikationen abhebt.
Node
Der Node ist das grundlegende Element von OPC UA. Nahezu jedes Element lässt sich auf einen Node zurückführen. Die Nodes stehen dabei in Beziehung zueinander.
Der Wikipedia-Artikel über OPC Unified Architecture beschreibt den Begriff Node treffend:
„Das OPC-Informationsmodell ist nicht mehr nur eine Hierarchie aus Ordnern, Items und Properties. Es ist ein sogenanntes Full-Mesh-Network aus Nodes, mit dem neben den Nutzdaten eines Nodes auch Meta- und Diagnoseinformationen repräsentiert werden.“[1]
- Ein Node ähnelt einem Objekt aus der objektorientierten Programmierung.
- Ein Node besitzt Attribute, die sich lesen lassen, zum Beispiel über Data Access (DA) und Historical Data Access (HDA).
- Nodes repräsentieren sowohl die Nutzdaten als auch alle anderen Arten von Metadaten.
- Der damit modellierte OPC-Adressraum enthält ein Typmodell, das sämtliche Datentypen spezifiziert.
NodeId
Die OPC-Spezifikation legt fest, dass sich jeder Node über einen Identifier, die NodeId, eindeutig im Adressraum (engl. Address Space) identifizieren lässt. Die NodeId besteht entweder aus einer GUID (= Globally Unique Identifier), einem numerischen Wert, einem Byte-Array oder einer Zeichenkette. In der Regel enthält die NodeId den Namespace. Das muss aber nicht zwangsläufig der Fall sein.
Adressraum
Sämtliche Nodes, die in OPC UA bereitgestellt und verarbeitet werden, liegen in einem sogenannten Adressraum. Der Adressraum ist eine Art logischer Speicher. Darin können die enthaltenen Nodes logisch auf einen oder mehrere Nodes im selben oder in einem anderen Adressraum verweisen.
View
Der oben gezeigte Adressraum lässt sich logisch in eine oder mehrere Views unterteilen.
Neben der Standardansicht gibt es benutzerdefinierte Ansichten, die einen oder mehrere Nodes enthalten können.
Node-Manager
Ein Node-Manager stellt einen oder mehrere Nodes bereit und definiert ihre Beziehungen zueinander. Vordefinierte System-Node-Manager sind:
- Core-Node-Manager (definiert unter anderem Typ-Nodes und System-Nodes)
- Diagnostics-Node-Manager (stellt Nodes für Diagnosezwecke bereit)
- Master-Node-Manager (verwaltet alle Node-Manager und delegiert Aufrufe an den zuständigen Node-Manager)
Service
OPC UA definiert eine Reihe von Services, über die der Client mit dem Server interagiert. Der Server implementiert diese Services als Methoden. Die Services decken unter anderem diese Aufgaben ab:
- Attribute und Werte von Nodes lesen und schreiben
- Referenzen von Nodes verwalten
- Nodes browsen
- historische Werte lesen und schreiben
- Methoden aufrufen
- Subscriptions verwalten

