OPC UA für logi.RTS in Betrieb nehmen
Diese Kurzanleitung beschreibt, wie Sie →OPC UA für →logi.RTS in Betrieb nehmen und mit Hilfe des freien Hilfswerkzeug UaExpert die aktuellen Werte von Variablen einer logi.CAD 3-Anwendung beobachten.
Die Anleitung wird für →Raspberry Pi unterstützt, aber nicht für →Revolution Pi.
Befolgen Sie die Anleitungen dieser Kurzanleitung in der angegebenen Reihenfolge.
logi.RTS installieren und lizenzieren
- Installieren Sie logi.RTS, wie unter "Installieren" für das entsprechende Zielsystem beschrieben.
Verwenden Sie unbedingt eine logi.RTS-Version ≥ V3.20.0.
- Installieren Sie eine Lizenz für logi.RTS, wie unter "Lizenz anfordern und installieren" für das entsprechende Zielsystem beschrieben ist.
logi.RTS konfigurieren
- Kontrollieren Sie, dass das Systemservice OPC UA standardmäßig geladen wird.
- Wechseln Sie in das Unterverzeichnis
PLC
des logi.RTS-Installationsverzeichnisses. Öffnen Sie die Datei
RTSIO.cfg
in einem Texteditor, suchen Sie die folgende Zeile:Benötigte ZeileLoadLibrary RTSS_OPCUA
- Falls diese Zeile nicht vorhanden ist, tragen Sie sie ein und speichern Sie die geänderte Datei
RTSIO.cfg
.
- Wechseln Sie in das Unterverzeichnis
- Definieren Sie den verwendeten OPC-UA-Port.
- Wechseln Sie in das Unterverzeichnis
bin
des logi.RTS-Installationsverzeichnisses. Öffnen Sie die Datei
ServerConfig.xml
in einem Texteditor, suchen Sie die folgende Zeilen:Anzupassende Zeile<UaEndpoint> ... <Url>opc.tcp://0.0.0.0:48010</Url>
- Überschreiben Sie den vorgegeben Port
48010
durch den verwendeten Port. - Speichern Sie die geänderte Datei
ServerConfig.xml
.
- Wechseln Sie in das Unterverzeichnis
- Bei Bedarf: Definieren Sie die zu inkludierenden Programminstanzen und zu inkludierenden Variablen.
- Weiterhin im Unterverzeichnis
bin
des logi.RTS-Installationsverzeichnisses: Erstellen Sie die DateiLogicalsOpcUaWhitelist
in einem Texteditor (bearbeiten Sie diese, falls die Datei bereits existiert). Für jede zu inkludierende Programminstanz tragen Sie den Namen der Programminstanz ein. Der Name muss in Großbuchstaben angegeben werden. Alle Elemente der Programminstanz (z.B. Funktionsbausteine, Variablen) werden dadurch dem OPC-UA-Adressraum hinzugefügt.
Beispiel für 2 zu inkludierende Programminstanzen und zu inkludierende globale VariablenPROGRAMINSTANCE1 TESTPROGRAM VAR_GLOBAL
Damit wird z.B. der Instanzpfad Programinstance1.myFB1.Var1 dem OPC-UA-Adressraum hinzugefügt. Alle globalen Variablen (
VAR_GLOBAL
) werden ebenfalls dem OPC-UA-Adressraum hinzugefügt.- Speichern Sie die Datei
.LogicalsOpcUaWhitelist
- Weiterhin im Unterverzeichnis
- Bei Bedarf: Definieren Sie die Einstellungen für →ARRAY-Elemente und →Referenzen zur Anwendung auf den OPC-UA-Client.
- Weiterhin im Unterverzeichnis
bin
des logi.RTS-Installationsverzeichnisses: Öffnen Sie die DateiLogicalsOpcUaSettings.xml
in einem Texteditor (erstellen Sie diese, falls die Datei noch nicht existiert). In der Datei korrigieren Sie die Werte für die Elemente laut Ihren Anforderungen.
Standardeinträge<?xml version="1.0" encoding="utf-8"?> <Properties> <EnableBaseTypeArrayElements>false</EnableBaseTypeArrayElements> <EnableWriteAccessToReferencedVariables>true</EnableWriteAccessToReferencedVariables> <MaximumReferenceDepth>1</MaximumReferenceDepth> </Properties>
Erläuterung der Elemente in der Datei
LogicalsOpcUaSettings.xml
:<EnableBaseTypeArrayElements>...</EnableBaseTypeArrayElements>
: definiert die Anzeige für Array-Elemente, die auf Basis eines elementaren Datentyp deklariert sind- Beim Wert
false
(= Standardeinstellung) wird für jedes Array-Element eine eigene OPC-UA-Variable erstellt. BeiVar1: ARRAY[1..10] OF INT
wird also nur eine VariableVar1
vom TypInt16 Array
erstellt. Im OPC-UA-Client wird nur eine Variable angezeigt. - Beim Wert
true
werden zusätzliche OPC-UA-Variablen erstellt. BeiVar1: ARRAY[1..10] OF INT
werden zusätzlich 10 Variable[0]
bis[10]
vom TypInt16
erstellt. In Folge können auch einzelne Array-Elemente im OPC-UA-Client gelesen und/oder darauf geschrieben werden.
- Beim Wert
<EnableWriteAccessToReferencedVariables>...</EnableWriteAccessToReferencedVariables>
: aktiviert oder deaktiviert das Schreibrecht auf Variablen, die überREF_TO
referenziert sind- Beim Wert
true
(= Standardeinstellung) ist das Schreibrecht aktiviert. BeiVar1 : INT
undVar1Ref : REF_TO INT := REF(Var1)
kann der Wert vonVar1
durchVar1Ref^
im OPC-UA-Client verändert werden. - Beim Wert
false
ist das Schreibrecht deaktiviert.
- Beim Wert
<MaximumReferenceDepth>...</MaximumReferenceDepth>
: definiert die maximale Anzeigetiefe von selbstreferenzierende Strukturdatentypen (also von Strukturen, bei dem ein Element durch REF_TO auf den eigenen Datentyp verweist)
Beim Wert1
(= Standardeinstellung) wird nur die 1. Ebene vonREF_TO
-Verknüpfungen im OPC-UA-Client angezeigt, beim Wert5
wird bis zur 5. Ebene angezeigt. Sonderfall: Beim Wert0
werden referenzierte Variable gar nicht im OPC-UA-Client angezeigt.
- Speichern Sie die Datei
.LogicalsOpcUaSettings.xml
- Weiterhin im Unterverzeichnis
logi.RTS starten
Starten Sie logi.RTS, wie unter "logi.CAD 3 und logi.RTS starten" für das entsprechende Zielsystem beschrieben.
logi.CAD 3-Anwendung auf SPS laden
Gehen Sie analog zu einer der Kurzanleitungen vor, z.B. "Anwendung auf Raspberry Pi laden".
Nach dem Laden der logi.CAD 3-Anwendung auf die SPS wird eine Meldung mit der Anzahl der gefundenen und ignorierten Variablen in der Konsole von →logi.RTS bzw. in der Sicht SPS-Logging von logi.CAD 3 angezeigt.
UaExpert für den Zugriff auf das OPC-UA-Service verwenden
Für den Zugriff auf das OPC-UA-Service benötigen Sie einen OPC-UA-Client. logi.cals empfiehlt das kostenfreie Hilfstools UaExpert von Unified Automation. Siehe https://www.unified-automation.com/products/development-tools/uaexpert.html für Details (in Englisch) und Download.
Hier eine Kurzanleitung zur entsprechenden Verwendung von UaExpert:
- Laden Sie UaExpert herunter und installieren Sie UaExpert.
Der OPC-UA-Port auf dem Zielsystem muss erreichbar sein (z.B. muss der Firewall-Port offen sein).
- Starten Sie UaExpert.
- Verbinden Sie sich zum Zielsystem (d.h., zur SPS):
- Drücken Sie die Schaltfläche (Add Server) in der Symbolleiste.
- Im Dialog Add Server klappen Sie Custom Discovery auf und doppelklicken Sie auf <Double click to Add Server...>. Geben Sie die URL-Adresse der SPs im Dialog Enter URL ein und drücken Sie OK.
Beispiel für URL-Adresse:opc.tcp://192.168.1.2:48010
(bei der IP-Adresse192.168.1.2
der SPS und dem Port48100
für OPC UA) - Im Dialog Add Server klappen Sie den neuen Eintrag auf, bis Sie die Untereinträge von LogicalsOpcUa... sehen. Selektieren Sie None - None und drücken Sie OK im Dialog.
- Wählen Sie die zu beobachten Variablen der logi.CAD 3-Anwendung aus.
- Im linken, mittleren Bereich Address Space von UaExpert wählen Sie einen Variablenpfad aus:
Root
,Objects
,LogicalsPlc
,Programs
,Programm-Name
,Variablen-Name
- Ziehen Sie die Variable in den Bereich Data Access View von UaExpert. Dort wird standarmäßig der aktuelle Wert angezeigt.
Beispiel für die Anzeige in UaExpert:
- Im linken, mittleren Bereich Address Space von UaExpert wählen Sie einen Variablenpfad aus:
Der OPC-UA-Client zeigt die Variablen mit den folgenden Datentypen so an:
Datentyp der Variable | Anzeige im OPC-UA-Client |
---|---|
|
|
|
|
|
|
|
|