配列

配列"ARRAY"は、同じデータ型を持つ要素が、連続したデータブロックとしてまとめられた変数のグループです。プログラムの中では、配列全体、またはインデックス(定数、インデックス変数、式の結果)付きの個別の配列要素を指定することができます。

宣言

POUヘッダでARRAY型の変数を宣言するには、以下の文法を使用してください。

ARRAY[A...B,C...D,E...F] OF <データ型>

A=

最初の要素のインデックス

1次元

B=

最後の要素のインデックス

C=

最初の要素のインデックス

2次元(オプション)

D=

最後の要素のインデックス

E=

最初の要素のインデックス

3次元(オプション)

F=

最後の要素のインデックス

配列は、1次元、2次元、3次元のいずれかの配列変数として宣言することができます。配列は、それぞれの次元に対して、フィールドを持っています。要素のインデックスは正または負の整数です。最初の要素は最後の要素よりも小さくする必要があります。

注記
  • 配列は、別の配列の変数として使用することはできません。

  • 配列のインデックスにアクセスするとき、Control FPWIN Pro7は、配列の境界と照合して、インデックスをチェックしません。インデックスが、POU ヘッダで定義された範囲内にあることを確認してください。

例: ARRAY [1..5] OF INT

この例では、ai_array[99]は範囲外ですが、エラーメッセージは生成されません。

配列として使用できるデータ型:

注記
  • 必要がない場合は、アドレスを直接割り付けないでください。PLCの入出力(X, Y)あるいは、特定のメモリエリアにアクセスする必要がある場合に使用してください。
  • コンパイラが自動的にアドレスを割り付けます。それによって、二重割り付けによるエラーを防ぎ、PLCの機種変更時にも自動的にアドレスが更新されるようになります。

例1: グローバル変数リストで宣言された各配列

例えば、array_1d_BOOL0は5つの要素を備えた1次元配列です。インデックス2 (array_1d_BOOL0[1])を使用して最初の要素にアクセスし、インデックス5 (array_1d_BOOL0[5])を使用して最後の要素にアクセスします。

例2: POUヘッダで宣言された各配列

関連トピック

最終修正日: 2019-08-06このページに関するフィードバックお問い合わせ窓口