Benutzer-Werkzeuge

Webseiten-Werkzeuge


opc-ua

OPC-UA

Der OPC-UA Treiber vereint Server- und Client-Funktionalitäten in einem Treiber.

Der Name dieses Treibers lautet: opcua
Die Routing-Adresse des ersten OPC-UA Treibers lautet: 1620
Die Datenpunktdatei für den ersten OPC-UA Treiber heißt: opcua1.txt
Die Konfigurationsdatei für globale Einstellungen des ersten OPC-UA Treibers heißt: opcua1.cfg
Der Zertifikats-Pfad des ersten OPC-UA Treibers lautet: ./opcua1/

Bei dem OPC-UA-Treiber sowie allen weiteren Gateway-Treibern gilt für die Definition von Datenpunkten in der Datenpunktdatei:

Typ Beschreibung
M Ganzzahliger Wert (Binäre Datenpunkte, Zählwerte) der vom Gateway nur gelesen werden kann/soll.
S Ganzzahliger Wert, der vom Gateway gelesen sowie geschrieben werden kann/soll.
X Analogwert (mit Nachkommastellen) der vom Gateway nur gelesen werden kann/soll.
Y Analogwert (mit Nachkommastellen) der vom Gateway gelesen sowie geschrieben werden kann/soll.
A String findet z.B. Verwendung bei BACnet Trends und ESPA 4.4.4 Datenpunkten

Die OPC-UA Adressen sind wie folgt aufgebaut:

[<modifier> <system> <NodeId>; <specialType>]
[<modifier> <system> <<ns>;<Id>; <specialType>]
Beschreibung Wert
modifier M, S, X, Y (Setzt das OPC-UA AccessLevel für den Datenpunkt/Knote)
system Teilt dem Treiber mit, ob es ein Server (Srv) oder ein Client (Cli) Datenpunkt ist
NodeId Typische OPC-UA NodeId (Knoten-Id), terminiert mit einem Semikolon (';')
Der Namespace (ns) ist Teil der NodeId. Wird dieser weggelassen, so zeigt ns auf
den Namepsace 0 (definiert durch http://opcfoundation.org/UA/).
Dieser Namespace beinhaltet vordefinierte Adressen der OPCFoundation. Um Konflikte zu vermeiden, wird empfohlen den ns=1 or ns=2 zu benutzen!
ns=1 : Namespace-Index 1, bereits durch den Konfigurationsparameter ApplicationUri definiert.
ns=2 : Namespace-Index 2, optional und muss über den Konfigurationsparameter Namespace definiert werden.

i=nummerisch (z.B.: ns=1;i=4711;)
s=string (z.B.: ns=1;s=current-time;)
g=guid (z.B.: ns=1;g=C496578A-0DFE-4b8f-870A-745238C6AEAE;)

Bytestring (b) wird derzeit nicht unterstützt.
specialType Optional: Reserviert für spezielle Typen, wie dem Failure-Datenpunkt (failure) oder dem BadTime-Indication-Datenpunkt (badtime).

Alle Spezialtypen sind und sollten read-only sein!


Format

Das Format teilt dem Treiber den zu verwendenden Datentypen des Datenpunkts mit.
Mögliche Werte sind:

Wert Beschreibung
BIT Boolean true or false
SINT8 8 bit signed integer
UINT8 8 bit unsigned integer
SINT16 16 bit signed integer
UINT16 16 bit unsigned integer
SINT32 32 bit signed integer
UINT32 32 bit unsigned integer
SINT64 64 bit signed integer
UINT64 64 bit unsigned integer
FLOAT32 32 bit float
FLOAT64 64 bit float = double

Displayname

Setzt den OPC-UA Displaynamen des Datenpunkts

Description

Setzt die OPC-UA Beschreibung (Description) des Datenpunkts

Beispiele

[A Srv ns=1; i=9]
name = Timestamp
format = STRING

[M Cli i=4712;]
name = Client1 Datapoint (readonly) on namespace 0 index 4712
format = SINT16

[S Cli i=815;]
name = Client9 Datapoint (read-/writeable) on namespace 0 index 815
format = UINT16

[M Cli ns=1; i=4710; failure]
name = Cl1 Failure-Datapoint on namespace 1 index 4710
format = SINT32
 
[M Cli ns=1; s=FailureTime; badtime]
name = Client 1 Time-Failure-Datapoint on namespace 1 by name "FailureTime"
format = SINT32
 
[X Cli ns=2; s={Device,201};{BinaryInput,4016};PresentValue;]
name = Client-2 BI-4016
format = FLOAT64
 
[Y Srv ns=1; s=some_value;]
name = Server Datapoint (read-/writeable) on namespace 1 by name "some_value"
format = FLOAT32
ua_displayname = Server Datapoint 'some_value'
ua_description = another dp

[Y Srv ns=1; g=C496578A-0DFE-4b8f-870A-745238C6AEAE;]
name = Server Datapoint (read-/writeable) on namespace 1 by guid "C496578A-0DFE-4b8f-870A-745238C6AEAE"
format = FLOAT32

Treiber-Konfiguration

Allgemeine Einstellungen (Section: OPC_UA)

Parameter Standardwert Typ Wertebereich Beschreibung
PollInterval 3 int 0-255 Poll-Intervall
CommandsPerStep 3 int 0-255 Definiert die Menge an Befehlen, die in einem Poll-Intervall verarbeitet werden sollen
MaxRetries 3 int 0-255 Anzahl der Wiederholungen, bis ein Fehler signalisiert wird.
IsClient 0 int 0-1 Setzt den Treiber in den Server- or Client-Modus.

Server Einstellungen (Section: Server)

Parameter Standardwert Typ Wertebereich Beschreibung
Verbindung Interface LAN1 string Legt fest, auf welchem Interface der Server-Socket arbeitet.

Mögliche Werte sind:
- LAN1 für eth0
- LAN2 für eth1
- all für keine exklusive Bindung
PortNumber 4840 int 1-65534 Legt die Port-Number des Servers fest
UserTokenType anonymous string - anonymous
- username („gw“ & „service“)
- certificate
SecurityMode 0 int 0-2 - 0 „Keine“
- 1 „Signieren“
- 2 „Signieren and Verschlüsseln“
Encryption none string Um die Verschlüsselung zu nutzen, darf der SecurityMode nicht 0 (Keine) sein
- „none“
- „RSA“
- „B256“
- „SHA“

(Bei aktivierter Verschlüsselung, muss die ApplicationUri der URI des verwendeten Zertifikats entsprechen)
Certificate „“ string Zertifikats-Datei (e.g.: „/ugw/config/opcua1/server_cert.der“)
PrivateKey „“ string PrivaterSchlüssel-Datei (e.g.: „/ugw/config/opcua1/server_key.der“
Namespaces ApplicationUri http://www.mbs-solutions.de/OPCUA/ uri Namespace 1
(Bei aktivierter Verschlüsselung, muss die ApplicationUri der URI des verwendeten Zertifikats entsprechen)
Namespace „“ uri Namespace 2 (optional)
Discovery-Client RegisterServerAt uri Meldet den OPC-UA Server bei einem Discovery-Server an (z.B. opc.tcp://192.168.7.111:4840)
- Derzeit werden nur Open62541-Server unterstützt!
- Einem Server ist es nicht möglich sich bei sich selbst zu registrieren (führt zum Timeout)
RegisterPeriod 600 int Wieder-Registrier-Frequenz in Sekunden
RegisterDelay 500 int Verzögert die erste Anmeldung um x Millisekunden
RegisterTimeout 2 int Register-Timeout in Sekunden

Im Moment unterstützt der Treiber nur 2 Benutzer!

Benutzername Passwort
service SERVICE
gw GATEWAY

Client Einstellungen (Section: Client)

Parameter Standarwert Typ Wertebereich Beschreibung
Verbindung Timeout 5 int 0-4294967295 Antwort Timeout in Sekunden (5 Sekunden)
SecureChannelLifeTime 36000 int 0-4294967295 Secure Channel Lifetime in Sekunden (60 * 60 * 10 = 10 Stunden)
PollMode 0 int 0-1 Legt fest, wie der Client Wertänderungen erfragt:
- 0 für Subscriptions
- 1 für Polling
EndPointUrl opc.tcp://opcua-srv:4840 string ServerEndPoint für den Client
UserTokenType anonymous string - anonymous
- username
- certificate
SecurityMode 0 int 0-2 - 0 „Keine“
- 1 „Signieren“
- 2 „Signieren and Verschlüsseln“
Encryption none string Um die Verschlüsselung zu nutzen, darf der SecurityMode nicht 0 (Keine) sein
- „none“
- „RSA“
- „B256“
- „SHA“
Certificate „“ string Zertifikats-Datei (e.g.: „/ugw/config/opcua1/client_cert.der“
Privatekey „“ string PrivaterSchlüssel-Datei (e.g.: „/ugw/config/opcua1/client_key.der“
Username „“ string Benutzername für den Login (oder leer), erforderlich bei UserTokenType = username
Password „“ string Passwort für den Login (oder leer), erforderlich bei UserTokenType = username

Imprint/Impressum Disclaimer DSGVO/Privacy Policy

opc-ua.txt · Zuletzt geändert: 22.09.2022 13:26 von ppu

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki