OPC Unified Architecture (OPC UA)

OPC Unified Architecture (kurz OPC UA) ist die neueste OPC Spezifikation der OPC Foundation und unterscheidet sich erheblich von ihren Vorgängern (DA, A&E, HDA, Commands, Complex Data). OPC UA schafft einen neuen Standard, der vollständig auf einer service-orientierten Architektur basiert.

Einer der Gründe für eine neue OPC Architektur ist die Abkündigung von Microsoft der Komponentenschnittstelle COM. Die bisherige Bindung von OPC an COM/DCOM wurde durch einen eigenen Kommunikationsstack ersetzt.

Welche Funktionalität vom WinCC OA OPC UA Client bzw. Server unterstützt wird, entnehmen Sie dem Kapitel Unterstützte OPC UA Profile.

Vorteile von OPC UA

  • Neueste Spezifikation (aufgeteilt auf 11 Spezifikationen).
  • Fasst OPC DA, A&E, HDA und Commands zu einem neuen Standard zusammen.
  • Plattformunabhängigkeit, damit erstmals auch auf Linux verfügbar.
  • Redundanz-Unterstützung.
  • Skalierbarkeit (eingebundene Devices, Source vorhanden).
  • Schnelligkeit (im Vergleich zu Webservices).
  • Sicherheit (Sicherheitsmodell als fixer Bestandteil).
  • Service-orientierte Architektur (SOA, Request <-> Response).
  • Konfigurierbare Timeouts für jeden Service.
  • Datenaustausch erfolgt über Messages.
  • Messages mit großen Datenmengen sind in mehrere Messages aufteilbar.
  • Server unterstützen Profile (DA und/oder AE).
  • Client kann abfragen, welche Profile der Server unterstützt.
  • Heartbeat zur Verbindungsüberwachung in beide Richtungen, d.h. sowohl Server als auch Client erkennen Unterbrechungen.
  • Buffering von Daten und Quittierungen von übertragenen Daten. Verbindungsunterbrechungen führen nicht mehr zu Datenverlust. Verlorene Daten können erneut angefordert werden.
  • Server merkt sich gesendete Daten (Zeit konfigurierbar).
VORSICHT: Bei der Verwendung von OPC UA sind die bestehenden Einschränkungen und Hinweise zu beachten!

Architektur und Verbindungsaufbau (-ablauf)

Architektur OPC UA Server

Der Server akzeptiert gleichzeitige Verbindungen zu mehreren Clients.

Architektur OPC UA Client

Verbindungsaufbau und Ablauf

Beim Treiberstart werden die Server, zu denen eine Verbindung aufgebaut werden soll, aus der WinCC OA Konfigurationsdatei ausgelesen. Zugleich wird vom Client der erste Verbindungsversuch zu allen aktiven Servern gestartet. Bei einem Fehlschlag wird ein erneuter Verbindungsversuch nach Ablauf der Zeit, die im Client-Parametrierpanel in der Einstellung Reconnect Timer eingetragen wurde, gestartet.

Sobald die Verbindung zum Server hergestellt wurde, ist das Browsen nach Items möglich. Eine Auswahl des Knotens (Node), von dem die Daten empfangen bzw. an welchen die Daten gesendet werden sollen, ist vor dem Browsen möglich.

Nach der Definition einer Peripherieadresse legt der Treiber die angegebene Subscription an und fügt dieser Subscription ihre Monitored Items hinzu. Jede Subscription enthält eine Anzahl ihrer Monitored Items. Ab diesem Zeitpunkt ist es möglich, Daten von den Monitored Items zu empfangen.

Eine Generalabfrage kann sowohl auf alle Server, auf einem Server oder nur auf eine Subscription durchgeführt werden (siehe Datenaustausch).

Der Client ist in der Lage sich zu mehreren Servern gleichzeitig zu verbinden (ausschließlich UA Native Binary wird unterstützt). Wir empfehlen, dass Sie nicht mehr als 50 Server mit einem Client verbinden. Starten Sie zusätzliche Clients für den Fall, dass mehrere Server benötigt werden.

Parametrierung in WinCC OA

OPC UA Server

Alle Daten, auf die über OPC UA zugegriffen werden soll, müssen innerhalb von Datenpunktgruppen definiert werden. Die Zuweisung der Datenpunktelemente = "Items" erfolgt über die Datenpunktgruppen OPCUARead (lesbar), OPCUAWrite (lesbar und schreibbar), OPCUAAlarm (Alarme) und OPCUAHARead (History Access). Für weitere Informationen siehe Zugriff auf WinCC OA Daten.

Einstellungen für den WinCC OA OPC UA Server erfolgen in der WinCC OA Konfigurationsdatei in der Sektion [opcuasrv], wenn der Eintrag für alle WinCC OA OPC UA Server gilt bzw. in der Sektion [opcuasrv_x], wenn der Eintrag für einen bestimmten WinCC OA OPC UA Server gilt (x steht für die Managernummer) - siehe Mögliche Config-Einträge des OPC UA Servers. Informationen für den WinCC OA OPC UA Server werden im internen Datenpunkt vom Typ _OPCUAPvssServer gespeichert (siehe Interne Datenpunkte des OPC UA Servers).

OPC UA Client

Parametriereinstellungen für den WinCC OA OPC UA Client erfolgen im Panel für die Parametrierung der Server, wo für jede Verbindung vom Client zu einem Server individuell die Parameter einstellbar sind und im internen Verbindungsdatenpunkt vom Typ _OPCUAServer abgelegt werden.

Die Parametrierung einer Subscription erfolgt im Panel zur Parametrierung der Subscription.

Statische Einstellungen für den WinCC OA OPC UA Client werden in der Config-Datei in der Sektion [opcua] bzw. [opcua_x] definiert (siehe Mögliche Config-Einträge des OPC UA Clients).