MIT DATEN MEHR BEWEGEN.

EdgeMethod

Funktionsbeschreibung und Anwendung

Der Edge Method-Block (Edge Method Invocation) ruft eine Edge Method auf und leitet deren Ergebnis in Abhängigkeit des Erfolgs an einen weiteren Processing- oder Output-Block weiter.

Tabelle 1. Konfigurationsparameter Edge Method-Block
Parameter Beschreibung

Name

Name der Blockinstanz.

Method

Name der Methode, die aufgerufen werden soll.

Parameter

Liste von konstanten Parametern zum Aufrufen der Methode

Beispiel: Aktualisieren eines OPC UA Nodes

Im Beispiel wird ein OPC UA Node gesetzt, sobald eine Nachricht den Block auslöst.

edge method invocation sample
Abbildung 1. Konfiguration des Edge Method-Block

Häufig verwendete Methoden

Im Folgenden werden Methoden des RoboGate Edge beschrieben, welche sich für Verwendung zusammen mit dem Edge Method-Block eignen.

robogate.opcua.writeNodeValue

Methode des OPC UA-Moduls. Setzt einen Node eines konfigurierten OPC UA Servers auf einen konstanten Wert.

Parameter Beschreibung

server

Name des konfigurierten Servers

nodeId

Node ID des zu setzenden Nodes

value

Wert des Nodes. Dieser kann auch dynamisch aus einem Topic erfolgen. Hierfür muss vor die Variable ein $-Zeichen gesetzet werden. Zum Beispiel $TOPIC_NAME.

robogate.opcua.readNodeValue

Methode des OPC UA-Moduls. Liest den Wert eines Nodes eines konfigurierten OPC UA Servers.

Parameter Beschreibung

server

Name des konfigurierten Servers

nodeId

Node ID des zu setzenden Nodes

value

Wert des Nodes

Antwortnachricht

Property Beschreibung

val

Ausgelesener Wert

robogate.rfc1006.readSignal

Methode des RFC1006-Moduls. Liest einen Wert aus einem Speicherbereich einer konfigurierten PLC.

Parameter Beschreibung

plc

Name der konfigurierten PLC

dataType

Speichertyp auf PLC

  • DataBlock

  • Memory

  • Timer

  • Counter

  • Input

  • Output

dataBlock

Name des DataBlocks (Bei DataType DataBlock)

startByte

StartByte des auszulesendes Wertes im Speicherbereich

count

Anzahl der zu lesenden Bytes des Speicherbereiches

bit

Zu lesendes Bit innerhalb des zu lesenden Bytes (bei VarType = Bit)

varType

Datentyp in den der gelesene Wert konvertiert werden soll

  • Bit (boolean)

  • Byte

  • Word

  • DWord

  • Int

  • DInt

  • Real

  • String

  • StringEx

  • Timer

  • Counter

  • DateTime

  • DateTimeLong

Antwortnachricht

Property Beschreibung

value

Ausgelesener Wert

robogate.rfc1006.writeSignal

Methode des RFC1006-Moduls. Schreibt einen Wert in einen Speicherbereich einer konfigurierten PLC.

Parameter Beschreibung

plc

Name der konfigurierten PLC

dataType

Speichertyp auf PLC

  • DataBlock

  • Memory

  • Timer

  • Counter

  • Input

  • Output

dataBlock

ID des DataBlocks

startByte

Start Byte des zu lesendes Wertes im Speicherbereich

varType

Datentyp in den der gelesene Wert konvertiert werden soll

  • Bit (boolean)

  • Byte

  • Word

  • DWord

  • Int

  • DInt

  • Real

  • String

  • StringEx

  • Timer

  • Counter

  • DateTime

  • DateTimeLong

value

Zu schreibender Wert

modbus-testread

Methode des Modbus-Moduls. Liest einen Wert aus einem konfigurierten Modbus Slave.

Parameter

Beschreibung

serverInstance

Name des konfigurierten Modbus

slaveId

ID des auszulesenden Slaves im Modbus

functionCode

Modbus Function Code

  • 1: Read Coil (Boolean)

  • 2: Read Input (Boolean)

  • 3: Read Holding Register (2 byte)

  • 4: Read Input Register (2 byte)

registerStartAddress

Startadresse des zu lesenden Speicherbereichs

registerLength

Länge des zu lesenden Speicherbereichs in Words (2 byte) bei FunctionCodes 3 und 4

type

Datentyp in den der augelesene Wert konvertiert werden soll

  • UInt16 (16 bit Ganzzahl ohne Vorzeichen, Länge: 1 Word)

  • Int16 (16 bit Ganzzahl mit Vorzeichen, Länge: 1 Word)

  • UInt32 (32 bit Ganzzahl ohne Vorzeichen, Länge: 2 Word)

  • Int32 (32 bit Ganzzahl mit Vorzeichen, Länge: 2 Word)

  • UInt64 (64 bit Ganzzahl ohne Vorzeichen, Länge: 4 Word)

  • Int64 (64 bit Ganzzahl mit Vorzeichen, Länge: 4 Word)

  • Float (Einfache Fließkommazahl, Länge: 2 Word)

  • Double (Genauere Fließkommazahl, Länge: 4 Word)

  • RawHex (Rohdaten des gelesenen Speicherbereichs als Hexadezimalstring)

Bei FunctionCodes 1 und 2: Bool, Länge 1

valueGain

Konstanter Faktor des gelesenen Wertes, um richtigen Wert zu erhalten (Default: 1.0)

valueOffset

Konstante Verschiebung des gelesenen Wertes, um richtigen Wert zu erhalten (Default: 0.0)

isLittleEndian

Wenn true, interpretiert beim Lesen des Wertes das erste gelesende Byte als kleinstwertiges Byte. (Default: false ⇒ big-endian)

Antwortnachricht

Property Beschreibung

resultCode

Ergebnis Code ("Ok" oder "Error")

data.Variable

Ausgelesener Wert

robogate.set_led

Diese Methode ist nur bei RoboGate Devices powered by Turck verfügbar. Konfiguriert das Blinkverhalten einer HMI LED am Gerät.

Parameter Beschreibung

name

Name der LED

  • red, green, blue : Obere LED

  • ered, egreen: Mittlere LED

  • bred, bgreen: Untere LED

modus

Blink Modus

  • off: Dauerhaft aus

  • on: Dauerhaft an

  • flash: Blinkt in der Frequenz von frequence

  • heartbeat: Blinkt im Rhythmus eines Herzschlags

robogate.opcua.triggerReadGroup

Diese Methode ermöglicht ein erneuetes Auslesen einer OPC-UA Poll oder Subscrptiongruppe. Dies kann zum Beispiel verwendet werden, um nur bei bestimmten Zuständen eine OPC-UA Gruppe auszulesen. So lässt sich unter anderem an der Rechnerauslastung sparen.

Parameter Beschreibung

server

Name des konfigurierten Servers

name

Name der zu triggerenden OPC UA Gruppe

Achtung: das Modul selbst triggert nur die angegebene Gruppe. Selbst gibt das Modul nur Statusinformationen aus ob die Aktion funktioniert hat. Siehe auch die Abbildung.

edgemethod opcuagruppe
Abbildung 2. OPC UA Gruppen Trigger in typischer Verwendung

Wenn die Gruppe ausschließlich auf den Trigger reagieren soll und nicht auf übliches Polling oder Subscriben, bieten sich folgende Optionen an:

Publishing Intervall Republishing Intervall On Change Submit Full Model On Republish Submit Full Modell Edge-Trigger

0

0

False

True

Funktioniert

0

0

True

False

Funktioniert nicht

0

0

True

True

Funktioniert nicht

0

0

False

False

Funktioniert

Wichtig ist hier vor allem das Publishing Interval und Republishing Interval auf 0 Sekunden zu stellen.

robogate.opcua.callMethod

Mit der callMethode können OPC-UA Methoden aufgerufen werden. Folgende Parameter sind dabei mit anzugeben:

Parameter Beschreibung

server

Name des konfigurierten Servers

objectNodeid

NodeId zum verwendenten Objekt

methodNodeid

NodeId zur benutzten Methode

inputParameter

Json mit den Eingabeparametern ( "<PARAMETER NAME>": <VALUE>, "<PARAMETER NAME>": <VALUE>, …​ )

robogate.opcua.<OpuUA Methode>

Diese Methode ähnelt der callMethod Methode, hat allerdings den Vorteil, dass objectNodeid und methodNodeid nicht in der EdgeMethode mit angegeben werden müssen. Diese wurden hier bereits im EdgeMapping des OPC-UA Modules definiert. Der Methodenname zum Aufrufen wird ebenfalls im OPC-UA Modul definiert. Der Inputparameter (im Beispiel x) muss hier dem Namen auf dem OPC-UA Server entsprechen. Siehe dazu die nächste Abbildung.

callquadrat
Abbildung 3. OPC UA Methoden Aufruf und das Korrespondant in OPC UA Expert