-

Felder (ARRAYs)

Felder (ARRAYs) werden im Datentyp-Arbeitsblatt durch einen TYPE...END_TYPE-Deklarationsblock deklariert. Das Feld kann mehrdimensional sein. Felder setzen sich aus mehreren Elementen des gleichen Datentyps zusammen. Auf jedes Element kann über seinen eindeutigen Index zugegriffen werden.

Hinweis
(Verschachtelte) Felder können auch in der 'Variablen'-Tabelle und 'Datenliste' in der Spalte 'Typ' in folgender Form definiert werden:
 
ARRAY_<lower bound>_<upper_bound>_OF_<type>.
 
Der Feldtyp wird automatisch im Hintergrund erzeugt. Der Datentyp Array ist in einem Datentyp-Arbeitsblatt nicht verfügbar.
 
Beispiele:
ARRAY_0_9_OF_INT (eindimensionales Feld)
ARRAY_0_9_OF_ARRAY_0_5_OF_BYTE (verschachteltes Feld)

Arraygröße (Grenzen) mit Literalen und konstanten Variablen definieren

Die Arraygröße (Anzahl der Elemente oder Werte, die das Feld enthalten kann) kann entweder über Literale (feste Werte), globale oder lokale Konstanten definiert werden. Eine globale Konstante erzeugen Sie, indem Sie für eine in der Variablentabelle/Datenliste definierte Variable das Attribut 'Konstante' markieren. Lokale Konstanten deklarieren Sie im Datentyp-Arbeitsblatt als VAR CONSTANT innerhalb eines VAR CONSTANT...END_VAR-Deklarationsblocks (siehe unten stehendes Beispiel). Der Initialisierungswert einer konstanten Variablen muss ein Literal sein (ein Ausdruck als Initialisierungswert wird nicht unterstützt).

Hinweis
Lokale Konstanten können nur im gleichen Datentyp-Arbeitsblatt verwendet werden.

Beispiele

Beispiel: Eindimensionales Feld mit 10 Integer-Werten; Literalwerte als Feldgrenzen

Datentypdefinition
Variablen-Deklaration
(Variablentabelle/Datenliste)
Verwendung im Code

Beispiel: Eindimensionales Feld mit 10 Integer-Werten; konstante Variablen als Feldgrenzen

Datentypdefinition
Variablen-Deklaration
(Variablentabelle/Datenliste)
Verwendung im Code

Beispiel: Zweidimensionales Feld; zweidimensionale Felder sind möglich, indem ein Feld eines bereits deklarierten Feldes deklariert wird

Datentypdefinition
Variablen-Deklaration
(Variablentabelle/Datenliste)
Verwendung im Code

Weitere Infos
Lesen Sie dazu auch das Thema "Anwenderdefinierte Datentypen".

Felder (ARRAYs) initialisieren

Felder, oder genauer gesagt die in einem Feld enthaltenen einzelnen Elemente, können folgendermaßen initialisiert werden: Der Array-Initialisierer besteht aus einer Liste von in eckigen Klammern eingeschlossenen kommagetrennten Literalen (feste Werte) oder globalen bzw. lokalen Konstanten (siehe oben).

Um Felder mit sehr vielen Werten zu initialisieren, können sogenannte Wiederholwerte verwendet werden.
Beispiel für die Initialisierung in einem Datentyp-Arbeitsblatt

Diese Initialisierung ist gleichbedeutend mit:

Diese Wiederholwerte können im 'Init-Werteeditor'-Editor als Statements zur Initialisierung von Feldern eingegeben werden.

Hinweis
Wenn Sie PLCnext Engineer in einer anderen Benutzeroberflächensprache und/oder unter einem anderen Windows System Locale als Englisch verwenden, müssen Sie numerische Werte mit einem '.' als Dezimaltrennzeichen eingeben (gem. des englischsprachigen Standards). Dies gilt zum Beispiel beim Festlegen eines Anfangswerts in Variablentabellen oder für REAL/LREAL-Literale im Code.