Die OPC UA Web API ist eine neue, REST-kompatible Schnittstelle, die seit OPC UA Version 1.05.04 verfügbar ist. Sie liegt als vollständige OpenAPI-Beschreibung vor. Die OPC Foundation stellt einen webbasierten OPC UA Server und eine dazugehörige API-Definitionsseite bereit.

Die Web API bildet das klassische Dienstmodell von OPC UA auf typische Webtechnologien ab, indem sie HTTP- und WebSocket-Aufrufe mit JSON-Payloads und standardisierter HTTP-Authentifizierung nutzt.

OPC UA Web API Definition

Der Hauptzweck der OPC UA Web API besteht darin, bestehende OPC UA-Server webfähig zu machen, sodass Browser- oder Cloud-Anwendungen ohne proprietäre SDKs auf OPC UA-Datenquellen zugreifen können.

Für den Zugriff sind damit nur noch einfache http-Aufrufe notwendig. Dies erspart Webclients einen Großteil der Komplexität, die beim binären Zugriff auf OPC UA über das TCP-Protokoll entsteht. So können bereits mit einfachen Aufrufen OPC UA-Werte abgerufen und in andere Anwendungen integriert werden.

Vorteile und Anwendungsbereich

Der wesentliche Vorteil der OPC UA Web API ist der Verzicht auf binäre Protokolle, die in Webanwendungen nur schwer zu integrieren sind. Stattdessen ermöglicht der Zugriff über Standardprotokolle wie HTTP/REST eine einfache und plattformunabhängige Integration.

Die Web API eignet sich besonders für Webanwendungen, die Standardtechnologien einsetzen und keinen Fokus auf extrem leistungsstarke Massenkommunikation legen.

Allgemeine Informationen zu APIs finden Sie hier: Was ist eine API?

Anbindung per REST

Die Anbindung der API erfolgt über klassische HTTP-Aufrufe. Über definierte Endpunkte (API-Definition) lassen sich verschiedene Funktionen eines OPC UA-Servers gezielt ansprechen. Der Datenaustausch erfolgt dabei in leicht lesbarem JSON-Format, was die Integration in unterschiedlichste Systeme und Plattformen erleichtert.

Auf Client-Seite können Anwendungen wie Web-Browser, IT-Systeme oder Mobile Apps auf Industriedaten zugreifen, die aus Quellen wie Speicherprogrammierbaren Steuerungen oder Sensoren stammen.

Komponenten bei der Kommunikation über die OPC UA Web API

Ablauf der Kommunikation über die OPC UA Web API

Die Kommunikation über die OPC UA Web API läuft folgendermaßen ab:

  • Ein Client sendet eine http-Anfrage an die Web API. Diese beinhaltet die auszuführende Operation (Lesen, Schreiben, Methodenaufruf …), die Zielobjekte (NodeId, MethodId, …) und weitere Informationen wie Authentifizierungstoken.
  • Die Web API validiert den Client, übersetzt die API-Anfrage in einen OPC UA-Aufruf und leitet diesen an den OPC UA Server weiter. Hierbei agiert die Web API als OPC UA Client.
  • Der OPC UA Server verarbeitet die Anfrage und liefert die entsprechende Antwort an die Web API. Der Datenaustausch zwischen Web API und OPC UA Server erfolgt über das OPC UA-Binärprotokoll und basiert auf der beidseitigen Implementierung des OPC UA-Kommunikationsstacks.
  • Die Web API übermittelt eine http-Antwort an den Client. Diese enthält die angeforderten OPC UA-Daten im JSON-Format.
Ablauf der Kommunikation über die OPC UA Web API

Einfache Funktionen, lesbare Ergebnisse

Die Funktionen, mit denen Daten abgerufen werden, sind klar definiert und leicht zu verstehen. Die einfachste Anwendung ist das Lesen und Schreiben. Über das Schreiben ist wie üblich bei OPC UA ein bidirektionaler Datenaustausch möglich.

OPC UA Web API Read & Write

Als Ergebnis wird lesbares JSON zurückgeliefert, das dann vom Client ausgwertet werden kann. Hier ein Beispiel einer Antwort auf einen „read“-Aufruf.

„ResponseHeader“: {
  „Timestamp“: „2025-05-19T07:53:27.7067381Z“,
  „RequestHandle“: 2
},
„Results“: [
  {
    „UaType“: 11,
    „Value“: 26.33,
    „SourceTimestamp“: „2025-05-19T04:28:20.6321852Z“
  },
  {
    „UaType“: 11,
    „Value“: 104.11,
    „SourceTimestamp“: „2025-05-19T04:28:20.6326211Z“
  }
]

OPC UA Web API in der Praxis

Einen Client für einen OPC UA Web Api Server zu erzeugen ist denkbar einfach. Im Prinzip reicht ein einfacher REST-Aufruf via http. Es stehen auch Generatoren für einige Programmiersprachen zur Verfügung, mit denen sich die OpenAPI Beschreibung zu Client-Code wandeln lässt.

Etwas schwieriger wird es auf der Server-Seite. Für eine Implementierung der API vom OPC UA Server-Hersteller wird man auf die Entwicklung durch den Hersteller und die Einführung warten müssen. Grundsätzlich wird auch eine Art Proxy, also ein Konverter von OPC UA auf OPC UA Web API denkbar sein.

OPC UA Web API: Anwendungsfälle

Anwendungsbeispiel mit manubes

In manubes kann der REST Edge Connector genutzt werden, um OPC UA-Server über die Web API anzubinden.

In unserem Beispiel wird der öffentliche OPC UA Demo Server der OPC Foundation verwendet. Mit der „read“-Methode der Web API lesen wir zyklisch zwei Datenpunkte aus und speichern sie im manubes TimeSeries Storage.

OPC UA Web API-Anwendungsbeispiel mit manubes: Datenpunkte lesen

Darstellung von Werten

Die aufgezeichneten Werte werden über die TimeSeries-Ansicht von manubes visualisiert. Auf diese Weise entsteht schnell Transparenz über die übermittelten OPC UA-Daten und deren zeitlichen Verlauf.

OPC UA Web API-Datenvisualisierung mit manubes als Client-Anwendung

Fazit

Da die OPC UA Web API noch sehr neu ist, entwickeln sich viele Anwendungsfälle derzeit erst. Aufgrund der Nutzung von Standard-Webtechnologien werden jedoch zahlreiche Clients – von Browsern bis hin zu Cloud-Diensten – in der Lage sein, OPC UA-Daten einfach zu lesen und zu verarbeiten.

manubes

Produktionsoptimierung mit manubes

manubes ist eine cloudbasierte Plattform für die Produktion, die eine gezielte Echtzeit-Überwachung, Steuerung und Automatisierung von Produktionsprozessen ermöglicht. Mithilfe intuitiver Designwerkzeuge entwickeln Unternehmen schnell individuelle Lösungen für verschiedenste Produktionsumgebungen und Anwendungsfälle.

Weitere Informationen zu manubes