アドレス範囲

コンパイラは、直接的に物理アドレスが割り付けられていない、個々の変数にメモリエリアを割り付けます。

「拡張機能」 > 「オプション」 > 「コンパイルオプション」 > 「アドレス範囲」を選択すると、保持エリアと非保持エリアの割り付け、システム(コンパイラ)用とユーザ用の割り付けを行うことができます。スライダボタンを動かしたり、スライダボタンをダブルクリックして値を入力することによって、メモリエリアの範囲を調整することができます。

設定できるメモリエリアは以下のとおりです:

詳細については、アドレスの割り付けを参照してください。

「グローバル変数に従ってシステムエリアを最大化する」により、自動的にシステム(コンパイラ)に最大アドレスエリアを設けることができます。ユーザエリア(ユーザによって入力される変数に割り付けられるエリア)は、明示的なアドレスを持つグローバル変数によって割り付けられるエリアに限定されます。

注記

「グローバル変数に従ってシステムエリアを最大化する」を選択した場合、エディタのボディ内で、明示的なアドレスを使用しないでください。認識されなくなります。

例えば、ボディ内で変数名としてR110R200を直接使用した場合、WR11WR20には反映されません。

以下のように、明示的なアドレスをグローバル変数に割り付けることにより、WR11WR20が認識されるようになります。

電源が切断された場合やRUNからPROGモードへ切り替わったときなどに、非保持エリアの値は消去されますが、保持エリアの値は保持されます。保持エリアの値は、プログラムがPLCにダウンロードされるまで初期化されません。

「拡張機能」 > 「オプション」 > 「コンパイルオプション」 > 「コード生成」を選択し、「明示的なアドレスを持つグローバル変数(保持型)以外のすべての変数を初期化する」のチェックボックスをオンにすると、ユーザが直接アドレスを割り付けた変数は初期化されません。

注記
  • FP2FP3FP-C、およびFP5の場合、ファイルレジスタ(FL)のサイズを「プロジェクト」ペイン上の「PLC」 > 「システムレジスタ」 > 「メモリ容量」で設定することができます。

  • 保持エリアのアドレスは、「プロジェクト」ペイン上の「PLC」 > 「システムレジスタ」 > 「保持/非保持」を選択し、設定することができます。

  • コンパイルオプションを変更すると、プロジェクト全体を再コンパイルする必要があります。

  • グローバル変数リストでアドレスが入力されていない変数は、コンパイラによって自動的にメモリエリアが割り付けられます。

  • PLC機種によっては、使用できないメモリエリアもあります(灰色で表示されます)。

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

下表は、クラスとデータ型によって、コンパイラが変数に割り付けるメモリエリアを示しています:

クラス

データ型

メモリエリア

VARVAR_GLOBAL

BOOL

リレーワードWR非保持エリア

VAR_RETAINVAR_GLOBAL_RETAIN

BOOL

リレーワードWR保持エリア

VARVAR_GLOBAL

INTDINTWORDDWORDTIMEREALSTRING

データレジスタDT、非保持型

ファイルレジスタFL、非保持型

VAR_RETAINVAR_GLOBAL_RETAIN

INTDINTWORDDWORDTIMEREALSTRING

データレジスタDT、保持型

ファイルレジスタFL、保持型

コンパイラは、ループに必要なラベルも自動的に生成します。

システム(コンパイラ)用に予約されるラベルの数は、「拡張機能」 > 「オプション」 > 「コンパイルオプション」 > 「ラベル/インデックスレジスタ」の項で指定することができます。

注記

「初期値」ボタンを押すと、コンパイラの設定を標準設定に戻すことができます。

関連トピック

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