Instanzvariablen - VAR_INST

TwinCAT legt eine VAR_INST-Variable einer Methode nicht wie VAR-Variablen auf dem Methoden-Stack, sondern auf dem Stack der Funktionsbaustein-Instanz ab. Dies bedeutet, dass sich die VAR_INST-Variable wie andere Variablen der Funktionsbaustein-Instanz verhält und nicht bei jedem Aufruf der Methode neu initialisiert wird.

VAR_INST-Variablen sind nur in Methoden eines Funktionsbausteins erlaubt und Sie können nur innerhalb der Methode auf eine solche Variable zugreifen. Die Variablenwerte von Instanzvariablen monitoren Sie im Deklarationsteil der Methode.

Sie können Instanzvariablen nicht mit einem Attribut-Schlüsselwort erweitern.

Beispiel:

METHOD MethLast : INT
VAR_INPUT
    nVar  : INT;
END_VAR
VAR_INST
    nLast : INT := 0;
END_VAR
MethLast := nLast;
nLast    := nVar;

Siehe auch: