Accesso alle variabili in array, strutture e blocchi
Accesso agli elementi dell'array
Sintassi:
<nome della variabile di array> [<elenco separato da virgole di indici di dimensione>]
<nome della variabile di array> | Nome della variabile di matrice Esempio: Per ulteriori informazioni, vedere: Assegna identificatore |
<elenco separato da virgole di indici di dimensione> | Un indice per dimensione, in modo che venga identificato un elemento dell'array Esempio: L'indice è valido dal minimo dell'indice al massimo dell'indice. Esempio: |
Array unidimensionale con 10 componenti
//Declaration VAR aiCounter : ARRAY[0..9] OF INT; iLocalVariable : INT; END_VAR // Implementation iLocalVariable := aiCounter[2];
Array bidimensionale con 2 volte 2 componenti
//Declaration VAR aiCardGame : ARRAY[1..2, 3..4] OF INT; iLocal_1 : INT; END_VAR //Implementation iLocal_1 := aiCardGame[1, 3];
Per ulteriori informazioni, vedere: ARRAY OF
Accesso ai componenti della struttura
Sintassi:
<nome della variabile di struttura> . <nome del componente>
<nome della variabile di struttura> | Esempio: Per ulteriori informazioni, vedere: Assegna identificatore |
<nome del componente> | Esempio: |
//Declaration type TYPE S_POLYGONLINE : STRUCT aiStart : ARRAY[1..2] OF INT := [-99, -99]; aiPoint1 : ARRAY[1..2] OF INT; aiPoint2 : ARRAY[1..2] OF INT; aiPoint3 : ARRAY[1..2] OF INT; aiPoint4 : ARRAY[1..2] OF INT; aiEnd : ARRAY[1..2] OF INT := [99, 99]; END_STRUCT END_TYPE //Declaration structure variable VAR sPolygon : S_POLYGONLINE; iPoint : INT; END_VAR //Implementation iPoint := sPolygon.aiPoint1[1];
Per ulteriori informazioni, vedere: STRUCT
Accesso alle variabili nelle POU
Sintassi:
<Nome POU> . <nome variabile>
<Nome POU> | Nome di un'istanza di blocco funzione ( Esempio: Per ulteriori informazioni, vedere: Assegna identificatore |
<nome variabile> | Variabile della POU Esempio: |
FUNCTION_BLOCK FB_Controller VAR_INPUT xStart : BOOL; END_VAR VAR_OUTPUT END_VAR VAR ControlDriveA : S_CONTROL; END_VAR IF xStart = TRUE THEN //Symbolic bit access ControlDriveA.bitEnableOperation := TRUE; END_IF PROGRAM PLC_PRG fbController : FB_Controller; END_VAR fbController(); fbController.xStart := TRUE;