Funktion „Write variable value by name“

Index-Gruppe: IdxGrp = 0x122300 + Kanal_ID

Index-Offset: IdxOffs = 0x4A

Schreiben über
Namen

Mit dieser Funktion kann der Wert einer Variablen über ihren Namen geändert werden. Bei achsspezifischen Variablen muss der Achsname die Instanzkennung (Bsp. Achsnamen V.A.ACT_POS.X) beinhalten.

Übergabeparameter (hier mit Angabe der Stream-Offsets):

0

1...256

Variablenname mit Nullterminierung

Variablenwert

wobei

Inhalt

Typ

Größe

Variablenname (mit Instanzkennung bei achsspezifischen Variablen)

String

variabel, max. 256 Byte

Variablenwert

String, REAL64, SGN32, REAL64[ ], SGN32[ ][ ], ...

variabel, max. 2047 Byte

=> Streamlänge max. 2048 Byte

Diese Funktion besitzt keinen Rückgabewert.

Bei einer Array-Variablen kann neben einem Einzelwert auch das komplette Feld geschrieben werden, in dem im Variablennamen keine Indizes angegeben werden.

Beispiel Variable V.G.array[0 .. 9]:

Variablenname

Variablenwert

V.G.array[4]

Wert des 5. Elements V.G.array[4]

V.G.array

Wert der Array-Elemente 0 - 9

Anwendungsbeispiele

1. Beispiel für das Schreiben eines Arrayelements eines eindimensionalen Arrays:

Übergabeparameter:

V.E.test[4]

0

123

V.E.Testvar[4] Name der Variable

0 Nullterminierung

123 Neuer Wert des 5. Elements der Variablen

Rückgabewert: -

2. Beispiel für das Schreiben eines gesamten Arrays mit 5 Elementen:

V.E.test

0

123

234

345

456

567

V.E.Testvar[4] Name der Variable

0 Nullterminierung

123 Neuer Wert des 1. Elements der Variablen

234 Neuer Wert des 2. Elements der Variablen

345 Neuer Wert des 3. Elements der Variablen

456 Neuer Wert des 4. Elements der Variablen

567 Neuer Wert des 5. Elements der Variablen

Rückgabewerte: -