OPC UA
Das OPC UA-Modul dient dem Auslesen eines OPC UA Servers.
Nodes können über zwei Varianten ausgelesen werden. Sie können abonniert werden, um sich ändernde Werte auszulesen (Subscription) oder sie können zyklisch abgefragt werden (Poll). Um das Nachrichtenaufkommen zu minimieren, werden Nodes mit der gleichen Abtastrate in einer Gruppe (Group) zusammengefasst. Die Nodes dieser Gruppe werden gleichzeitig abonniert bzw. abgefragt und eine Nachricht als Ergebnis der Abfrage versendet.
Konfigurationsparameter
Server Connection
Die in folgender Tabelle beschriebenen Parameter müssen für den OPC UA Server definiert werden.
Für den OPC UA Server kann eine Security-Konfiguration angelegt und über einen Switch ein- oder ausgeschaltet werden. In Abbildung 1 ist das Ein- bzw. Ausschalten der Security sichtbar.
Parameter | Beschreibung |
---|---|
Server Name |
Der Server Name stellt den Namen der Datenquelle dar. Dieser entspricht der Source in Auswertungen. |
URL |
Verbindung (Connection) zum OPC UA Server über die URL des Servers |
Node Blacklist Auto Reset Interval (ms) |
Ermöglicht eine automatisch zyklische Bereinigung der Blacklist des ausgewählten Servers. Das Default Interval beträgt 15 Minuten (900.000 Millisekunden). |
Security Level |
0 – 255 |
Security Policy |
Auswahloptionen:
|
Security Mode |
Auswahloptionen:
|
Authentication
Es wird zwischen zwei Authentication-Typen unterschieden:
-
Anonymus
-
Username and Password
„OptimizeNodeValueReadAccess“ ist die konfigurierbare Abschaltung der Leseoptimierung/des Pollings. Wenn diese Option aktiviert wird, werden mehrere Nodewerte in einer einzigen Anforderung gelesen. Andernfalls wird jeder Node separat über jeweils eine Anfrage angefordert.
Subscriptions
Das Auslesen des OPC UA Servers kann über Subscriptions erfolgen. Jede Subscription erzeugt eine Nachricht (Event) je Wertänderung der hinterlegten Nodes. Das Event entspricht einer Nachricht mit einem Datenpunkt. Es sind die in folgender Tabelle beschriebenen Parameter zu konfigurieren.
Parameter | Beschreibung |
---|---|
Field Name |
Der Name ist bestehend aus Buchstaben, Zahlen und ohne Sonderzeichen frei konfigurierbar. Dieser gibt die Bezeichnung des zu lesenden Wertes an. |
Node ID |
Die Node ID wird in Abhängigkeit vom Field Name automatisch vergeben. Diese ID kann manuell kopiert werden. Es besteht die Möglichkeit, Nodes des Servers mit dem OPC UA Node Browser zu durchsuchen und auszuwählen. |
Output Topic |
Die Module zur Dateneingabe veröffentlichen die Daten in einem Topic. Der Name des Topics ist bestehend aus Buchstaben, Zahlen und ohne Sonderzeichen frei konfigurierbar. |
Method Mapping
Über RoboGate Edge können auch OPC UA-Methoden aufgerufen werden. Solche Methoden sind in der Regel Auslöser für eine Aktion, die eine Maschine ausführen soll, beispielsweise einen Prozess zu starten und Parameter zu setzen.
Um mittels des RoboGate Edge eine OPC UA-Methode aufzurufen, muss diese Methode zuvor auf dem OPC UA-Server angelegt worden sein. Weiterhin muss die Object Node ID sowie die ID der Methode bekannt sein, da ein Node Browsing derzeit nicht verfügbar ist. Mit diesen Angaben (Tabelle 3) kann das Method Mapping vorgenommen werden. Dies meint das Mapping der OPC UA-Methoden auf die Edge Methods, welche beim Edge Broker des RoboGate Edge registriert werden.
Parameter | Beschreibung |
---|---|
Method Name |
Name der Methode (frei wählbar) |
Object Node ID |
Node ID des der OPC UA-Methode übergeordneten Objekts |
Method Node ID |
Node ID der OPC UA-Methode |
Wurde eine Methode für das Method Mapping angelegt, ist diese nun im Stream Processor via Edge Method Invocation und im Azure-Modul des RoboGate Edge aufrufbar.
Dort muss die Methode wie folgt angegeben werden: robogate.opcua.<name>
.
<name> beschreibt dabei den frei vergebenen Namen der Methode im Method Mapping.
Im Azure-Modul kann die Methode im Bereich "Direct Methods" aufgerufen werden. Hierzu ist ebenfalls ein Name für die Methode (Direct Method) zu definieren und die entsprechend zu referenzierende Methode (robogate.opcua.<name>) als Edge Method anzulegen.
Poll Groups
Poll Groups sind aktive Abrufe. Jede Poll Group erzeugt eine Nachricht (Model). Das Model entspricht einer Nachricht mit Werten mehrerer Datenpunkte.
Parameter | Beschreibung |
---|---|
Poll Group Name |
Der Name ist bestehend aus Buchstaben, Zahlen und ohne Sonderzeichen frei konfigurierbar. Es muss ein Name für die Poll Group eingegeben werden. Dieser Name entspricht den Namen des auszulesenden Bereichs. Der Name wird unter Scope in Auswertungen bereitgestellt. Mit dem Klick auf „Create“ wird eine neue Gruppe erzeugt. |
Interval (ms) |
Intervall in Millisekunden gibt die Taktung an, in der die Werte abgefragt werden. |
Output Topic |
An dieser Stelle wird ein vergebenes Output Topic z.B. OPCUAPOLL1 angegeben. Der Name ist bestehend aus Buchstaben, Zahlen und ohne Sonderzeichen frei konfigurierbar. |
Field Name |
Das ist die Bezeichnung des Feldes im OPC UA Server. |
Node ID |
Die Node ID wird in Abhängigkeit vom Field Name automatisch vergeben. Diese ID kann manuell kopiert werden. Es besteht die Möglichkeit, Nodes des Servers mit dem OPC UA Node Browser zu durchsuchen und auszuwählen. |
Subscription Groups
Subscription Groups definieren eine Menge von OPC UA Server Nodes, die abonniert werden. Der Zustand jedes Nodes wird in einem Puffer gehalten. Kommt es zu einer Datenwertaktualisierung, wird der entsprechende Wert aktualisiert und anschließend eine Nachricht mit Inhalt aller konfigurierten Nodes gesendet. Jede Subscription Group erzeugt eine Nachricht.
Parameter | Beschreibung |
---|---|
Subscription Group Name |
Der Name ist bestehend aus Buchstaben, Zahlen und ohne Sonderzeichen frei konfigurierbar. Es muss ein Name für die Subscription Group eingegeben werden. Dieser Name entspricht den Namen des auszulesenden Bereichs. Der Name wird unter Scope in Auswertungen bereitgestellt. Mit dem Klick auf „Create“ wird eine neue Gruppe erzeugt. |
Publishing Interval (ms) |
Intervall in Millisekunden gibt die Taktung an, in der die Werte abgefragt werden. |
Republishing Interval (ms) |
Intervall in Millisekunden gibt die Taktung an, in der die zuletzt gelesenen Werte erneut gesendet werden. |
On Change: |
Aktiv: Falls der OPC UA Server eine Änderung mittteilt wird der geänderte Datenpunkt gemeinsam mit den zuletzt gelesenen Werten der anderen Datenpunkte als Model-Nachricht übermittelt.
ACHTUNG: Gleichzeitige Änderungen mehrerer Datenpunkte innerhalb der Subscription Group werden individuell behandelt |
On Republish: |
Aktiv: Während des Republishing werden die Datenpunkte als eine Datamodelnachricht versandt. |
Output Topic |
An dieser Stelle wird ein vergebenes Output Topic z.B. OPCUASUB1 angegeben. Der Name ist bestehend aus Buchstaben, Zahlen und ohne Sonderzeichen frei konfigurierbar. |
Field Name |
Bezeichnung des Feldes im OPC UA Server. |
NodeID |
Die Node-ID wird in Abhängigkeit vom Field Name automatisch vergeben. Diese ID kann manuell kopiert werden. Es besteht die Möglichkeit, Nodes des Servers mit dem OPC UA Node Browser zu durchsuchen und auszuwählen. |
Konfiguration in der UI
Das OPC UA-Modul kann über die Auswahl des Moduls auf der Startseite oder über die linke Menüleiste der RoboGate Edge UI aufgerufen und konfiguriert werden.
Server konfigurieren
Über New kann ein neuer OPC UA Server hinzugefügt und konfiguriert werden. Entsprechend der Anforderungen können die zuvor näher beschriebenen Parameter definiert werden (Abbildung 1).
Wird diese Konfiguration gespeichert , lässt sich im Bereich Module State am Ende der Seite erkennen, ob das Modul eine Verbindung zum OPC UA Server herstellen konnte.
Nun können Subscriptions, Poll Groups und Subscription Groups mit den entsprechenden Datenfeldern (Node IDs) angelegt werden.
Subscription konfigurieren
Um eine Subscription zu konfigurieren, müssen Angaben zum Field Name, zur Node ID und zum Output Topic gemacht werden. Weitere Subscriptions zu Node IDs lassen sich durch einen Klick auf „+“ (Hinzufügen) eintragen. Diese Eingaben können, sofern die Node ID bekannt ist, manuell erfolgen oder mit Hilfe des OPC UA Node Browser. Im OPC UA Node Browser werden alle auf dem Server verfügbaren Node IDs angezeigt. Der Node Browser lässt sich über den Button mit dem Lupen-Icon auswählen. Mit einem Klick auf den Pfeil werden die Node IDs aktualisiert und eine Auswahl aller verfügbaren Node IDs angezeigt (Abbildung 2).
Für die Subscription gewünschte Nodes können im Node Browser markiert werden. Bei der Auswahl von Node Gruppen kann der Markierungsprozess länger dauern. Nachdem alle Nodes markiert wurden, können diese über den Button „OK“ übernommen werden (Abbildung 3).
Um zu prüfen, ob ein Node korrekt konfiguriert wurde, kann dieser über den Pfeil in der Spalte "Test" geprüft werden. Das ausgelesene Ergebnis wird nach einem Klick auf den Pfeil angezeigt bzw. bei Änderungen aktualisiert. Initial werden keine Werte angezeigt. Diese Funktion steht für das Anelgen einer Subscription, Subscription Group und Poll Group zur Verfügung.
Nach Fertigstellung der Konfiguration der Subscriptions wird diese über die Speichern-Schaltfläche in der rechten oberen Ecke übernommen.
Method Mapping konfigurieren
Abbildung 5 zeigt die Konfiguration der OPC UA-Methoden mit den in Tabelle 3 beschriebenen Parametern. Diese muss manuell erfolgen.
Group konfigurieren
Das Konfigurieren von Poll oder Subscription Groups funktioniert prinzipiell gleich.
-
Poll Groups erzeugen aktive Datenabfragen.
-
Subscription Groups reagieren auf Änderungen semantisch zusammenhängender Datenpunkte.
Zuerst erstellen Sie eine neue Poll/Subscription Group, indem Sie einen Namen der Poll/Subscription Group vergeben und auf "Create" klicken. Hierdurch wird eine neue Gruppe erzeugt (Abbildung 6). Anschließend sind Intervall und Output Topic zu definieren und die Node IDs zu konfigurieren (Abbildung 7). Das Browsen nach verfügbaren Node IDs ist identisch zum Vorgang für die Erstellung von Subscriptions.
Bei Subscription Groups muss zusätzlich konfiguriert werden, ob Nachrichten On Change und/oder On Resubmit verschickt werden sollen (Abbildung 8).
Nach Fertigstellung der Konfiguration des OPC UA-Moduls kann diese über die Schaltfläche „Save“ gespeichert werden. Durch das Speichern der Modulkonfiguration steht diese im RoboGate Edge zur Verfügung.
Node Browser-Konfiguration bearbeiten / löschen
Innerhalb der Konfiguration des OPC UA Moduls kann die Node-Auswahl im Node Browser für Subscriptions und Poll Groups entfernt werden. Über das Lupen-Icon in der jeweiligen Konfiguration wird die hinterlegte Konfiguration angezeigt und steht zur weiteren Bearbeitung zur Verfügung. Markierungen können entfernt oder hinzugefügt werden. Mit der Bestätigung der Änderung mit „OK“ und dem anschließenden Speichern der Konfiguration werden die Änderungen übernommen. Beim Entfernen aller Markierungen im Browser wird automatisch der gesamte Node Browser aus der Konfiguration entfernt (Abbildung 9).
Datenfeld löschen
Innerhalb der Konfiguration des OPC UA-Moduls können Datenfelder der Subscriptions und Poll Groups gelöscht werden. Dazu ist das zu löschende Datenfeld zu markieren und per Mausklick auf zu entfernen. Durch das Speichern der Konfigurationsänderung steht diese im RoboGate Edge zur Verfügung (Abbildung 10).
Group löschen
Groups können vollständig gelöscht werden. Durch Betätigen des Löschen-Buttons wird die markierte Poll oder Subscription Group gelöscht (Abbildung 11). Durch das Speichern der gesamten OPC UA-Konfiguration werden die Änderungen übernommen und stehen zur Verfügung.
Konfiguration zurücksetzen
Über die Schaltfläche in der horizontalen Menüleiste lässt sich die komplette Konfiguration des Moduls auf Werkseinstellungen zurücksetzen. Nach einem Klick auf die Schaltfläche folgt ein Bestätigungsdialog mit "Yes" und "No" zur Rückfrage ob der Vorgang wirklich ausgeführt werden soll.
Damit wird auch die gesamte Historie auf dem RoboGate Edge gelöscht!