Deklaration von externen Variablen in ST

Der Applikationsnavigator bietet auch eine Möglichkeit, um externe Variablen auf Basis von bereits vorhandenen globalen Variablen zu deklarieren. Dabei ziehen Sie die globalen Variablen von einem Global-Objekt auf eine →POE. Details: Siehe "Externe Variablen mit Hilfe von "Drag and Drop" in POE deklarieren".

Syntax
VAR_EXTERNAL (* optional_begin *) CONSTANT (* optional_end *)
name_1, name_2, ..., name_n : data-type;
name_3, name_4, ..., name_n : STRING[length];
name_5, name_6, ..., name_n : ARRAY [x..y] OF type;
name_7, name_8, ..., name_n : ARRAY [x1..y1, x2..y2, x3..y3] OF data-type;
(* Zusätzliche Daten sind ebenfalls für die Variablen möglich. *)
END_VAR

Bedeutung

Deklaration einer bzw. mehrerer →externer Variablen, wobei name_1, name_2 usw. →IEC-Bezeichner sein müssen
Die Deklaration mehrerer solcher Abschnitte ist zulässig. Die Deklaration von externen Variablen ist innerhalb der Deklaration eines Funktionsbausteins, der Deklaration einer Funktion oder einer →Methode möglich. Solche externen Variablen ermöglichen den Zugriff auf →globale Variablen mit gleichem Namen und vom gleichen Typ. Diese globale Variablen sind in einem →Programm (im ST-Objekt) oder in einer →Ressource (im SPS-Objekt) deklariert.
Die Deklaration von externen Variablen ist aber auch innerhalb der Deklaration des Programms möglich. Solche externen Variablen ermöglichen den Zugriff auf globale Variablen, die in einer Ressource (im SPS-Objekt) deklariert sind.

Das optionale Schlüsselwort CONSTANT markiert alle externen Variablen dieses Abschnitts als →konstant (das Überschreiben solcher Werte ist dann während der Ausführung des Programms nicht mehr möglich). Falls die entsprechende globale Variable als konstant deklariert ist, muss die externe Variable mit dem Schlüsselwort CONSTANT als konstant deklariert werden.
Informieren Sie sich unter "Unterstützte Datentypen (in ST)", welche Datentypen Sie für die Deklaration angeben können. Es ist es auch möglich,

Gut zu wissen

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/lightbulb.svg logi.CAD 3 bietet außerdem die Möglichkeit, zusätzliche Daten bei der Deklaration anzugeben. Siehe "Beschreibung, Kommentar, JSON-String oder Typ für Variablen oder Datentypen angeben" für Details.

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/lightbulb.svg Falls Sie es bevorzugen, dass logi.CAD 3 für Sie die Syntax erstellt: Der Applikationsnavigator bietet auch eine Möglichkeit, um externe Variablen auf Basis von bereits vorhandenen globalen Variablen zu deklarieren. Dabei ziehen Sie die globalen Variablen von einem Global-Objekt auf eine →POE. Details: Siehe "Externe Variablen mit Hilfe von "Drag and Drop" in POE deklarieren". In diesem Fall müssen Sie die obige Syntax nicht kennen.

Beispiel 1
VAR_EXTERNAL
portSetting : INT;
upTime : TIME;
gVar1: ARRAY [1..2] of BOOL;
gVar2: STRING[10];
END_VAR
Beispiel 2
VAR_EXTERNAL
VALVE_POS : INT;
END_VAR