IBH Link UA:Benutzerdefinierte Variablen: Unterschied zwischen den Versionen
Axel (Diskussion | Beiträge) (→Benutzerdefinierte Variablen) |
Axel (Diskussion | Beiträge) (→Benutzerdefinierte Variablen) |
||
Zeile 54: | Zeile 54: | ||
Eine Struktur wird mit <struct> </struct> aufgebaut. Es sind beliebige Verschachtelungen möglich. | Eine Struktur wird mit <struct> </struct> aufgebaut. Es sind beliebige Verschachtelungen möglich. | ||
== Verbinden von Variablen mit externen OPCUA Server Variablen == | == Verbinden von Variablen mit externen OPCUA Server Variablen == | ||
+ | |||
+ | Beispiel: | ||
+ | <Object> | ||
+ | <OPCUAServer> | ||
+ | <S7-1500 uri="urn:SIMATIC.S7-1500.OPC-UAServer:CPU1500-Demo" EndpointUrl="opc.tcp://10.0.13.6:4840"/> | ||
+ | </OPCUAServer> | ||
+ | <Struktur> | ||
+ | <WertVon_S7-1500 type="UInt32" OPCUAServer="S7-1500" opcvar="ns=3;s="All-Scalar"."Var_UInt32""/> | ||
+ | </Struktur> | ||
+ | </Object> | ||
+ | |||
+ | Der OPCUa Server muss mit der Client Funktion eingerichtet werden. |
Version vom 28. Januar 2018, 12:23 Uhr
Benutzerdefinierte Variablen
Konfiguration der Variablen
Die Konfiguration erfolgt über eine XML Datei, die über einen OPC UA Client (z.B. UaExpert) eingelesen wird. Hierzu ruft man unter "Server.Generic" die Methode "WriteConfiguration" auf.
Beispiel:
<Object> <Struktur> <UnterStruktur name="untere Struktur"> <diesel type="UInt16" opcvar="ns=4;s=IBH_OPCUA.PLC.Programs.Diesel.Tank" name="Diesel/Kraftstoff"/> <struct1> <struct11> <E10 type="UInt32" opcvar="ns=4;s=IBH_OPCUA.PLC.Programs.E10.Tank"/> <u2 type="UInt32" const="12345678"/> </struct11> <u1 type="UInt32"/> <u2 type="UInt32"/> </struct1> </UnterStruktur> </Struktur> </Object>
Eine Varible wird folgendermassen definiert:
<variablenname type="Variablentype" opcvar="OPC UA Knotendefinition" name="Ersatzname"/>
Der Variablenname kann frei gewählt werden. Die Variable erscheint dann im OPC UA Server under einem eigenen Namespace. Unter dem optionalen Parameter "name" kann man einen Variablenname angeben, der Sonderzeichen wie z.B. '/' enthält.
Als Variblentype sind folgende Angaben möglich:
- "Boolean"
- "SByte"
- "Byte"
- "Int16"
- "Uint16"
- "Int32"
- "UInt32"
- "Float"
- "Double"
- "DateTime"
- "String"
- "SByteArray"
- "ByteArray"
- "Int16Array"
- "Uint16Array"
- "Int32Array"
- "UInt32Array"
- "FloatArray"
- "DoubleArray"
- "StringArray"
Falls keine opcvar angegeben wird, wird die Variable nicht automatisch besprieben. Die Variable kann jedoch mit der Client Funktion beschrieben werden. Eine Variable kann auch eine Konstante enthalten. In diesem Fall wird anstelle opcvar const angegeben. Bei Feldern ist keine Konstante möglich. Beispiel:
<u2 type="UInt32" const="12345678"/>
Eine Struktur wird mit <struct> </struct> aufgebaut. Es sind beliebige Verschachtelungen möglich.
Verbinden von Variablen mit externen OPCUA Server Variablen
Beispiel:
<Object> <OPCUAServer> <S7-1500 uri="urn:SIMATIC.S7-1500.OPC-UAServer:CPU1500-Demo" EndpointUrl="opc.tcp://10.0.13.6:4840"/> </OPCUAServer> <Struktur> <WertVon_S7-1500 type="UInt32" OPCUAServer="S7-1500" opcvar="ns=3;s="All-Scalar"."Var_UInt32""/> </Struktur> </Object>
Der OPCUa Server muss mit der Client Funktion eingerichtet werden.