配列、構造体、ブロック内の変数へのアクセス
配列要素へのアクセス
構文:
<配列変数の名前> [<ディメンションインデックスのカンマ区切りリスト>】
<配列変数の名前> | 配列変数の名前 例: 詳細については、以下を参照してください。 識別子を割り当てる |
<ディメンションインデックスのカンマ区切りリスト> | 次元ごとに 1 つのインデックスがあるため、配列の 1 つの要素が識別されます 例: インデックスは、インデックスの最小値からインデックスの最大値まで有効です。例: |
例 194. 例
10 個のコンポーネントを含む 1 次元配列
//Declaration VAR aiCounter : ARRAY[0..9] OF INT; iLocalVariable : INT; END_VAR // Implementation iLocalVariable := aiCounter[2];
2 x 2 成分の 2 次元配列
//Declaration VAR aiCardGame : ARRAY[1..2, 3..4] OF INT; iLocal_1 : INT; END_VAR //Implementation iLocal_1 := aiCardGame[1, 3];
詳細については、以下を参照してください。 ARRAY OF
構造コンポーネントへのアクセス
構文:
<構造体変数の名前> 。 <コンポーネントの名前>
<構造体変数の名前> | 例: 詳細については、以下を参照してください。 識別子を割り当てる |
<コンポーネントの名前> | 例: |
例 195. 例
//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];
詳細については、以下を参照してください。 STRUCT
POU 内の変数へのアクセス
構文:
<POU 名> 。 <変数名>
<POU 名> | ファンクション ブロック インスタンスの名前 ( 例: 詳細については、以下を参照してください。 識別子を割り当てる |
<変数名> | POUの変数 例: |
例 196. 例
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;