Accès aux variables dans les tableaux, les structures et les blocs
Accès aux éléments du tableau
Syntaxe :
<nom de la variable du tableau> [<liste d'index de dimension séparés par des virgules>]
<nom de la variable du tableau> | Nom de la variable du tableau Exemple : Pour plus d'informations, voir : Attribuer un identifiant |
<liste d'index de dimension séparés par des virgules> | Un index par dimension, afin qu'un élément du tableau soit identifié Exemple : L'index est valable du minimum d'index au maximum d'index. Exemple: |
Tableau unidimensionnel avec 10 composants
//Declaration VAR aiCounter : ARRAY[0..9] OF INT; iLocalVariable : INT; END_VAR // Implementation iLocalVariable := aiCounter[2];
Tableau bidimensionnel avec 2 fois 2 composants
//Declaration VAR aiCardGame : ARRAY[1..2, 3..4] OF INT; iLocal_1 : INT; END_VAR //Implementation iLocal_1 := aiCardGame[1, 3];
Pour plus d'informations, voir : ARRAY OF
Accès aux composants de la structure
Syntaxe :
<nom de la variable de structure> . <nom du composant>
<nom de la variable de structure> | Exemple : Pour plus d'informations, voir : Attribuer un identifiant |
<nom du composant> | Exemple : |
//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];
Pour plus d'informations, voir : STRUCT
Accès aux variables dans les POU
Syntaxe :
<Nom du POU> . <nom de la variable>
<Nom du POU> | Nom d'une instance de bloc fonction ( Exemple: Pour plus d'informations, voir : Attribuer un identifiant |
<nom de la variable> | Variable du POU Exemple: |
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;