AT宣言
I/O マッピング用の明確な設定エディタの使用
ここで説明したようにメモリアドレスを割り当てると、明確さが失われる可能性があるため、お勧めしません。
設定エディターで変数にメモリアドレスを割り当てることをお勧めします。 I / O画像を編集する デバイスの。
ザック AT 変数宣言のキーワードは、デバイスツリーで設定されているコントローラーの特定の入力アドレス、出力アドレス、またはメモリアドレスをプロジェクト変数に割り当てます。
AT宣言により、アドレスに意味のある名前を付けることができます。着信信号または発信信号に必要な変更を加えることができるのは、宣言などの1か所のみです。
ヒント
入力信号または出力信号に必要な変更は、1 つの場所 (たとえば宣言内) で行うことができます。
詳細については、以下を参照してください。
構文
<変数名> AT %<アドレス>:<データ型>;
| <変数名> | 必須 | 
| 
 | 必須 メモリ領域内のアドレス 
 | 
| <メモリ領域プレフィックス> | 必須 
 | 
| <サイズプレフィックス> | [オプション] 
 | 
| <メモリ位置> | <ポジション番号 >  例:  | 
| <ポジション番号 > | 必須 番号はターゲットシステムによって異なり、0 から始まります。 | 
| 
 | [オプション] 1 バイトの場合は 0.7 | 
| <データ型> | [オプション] データ型はサイズプレフィックスと一致する必要があります。 | 
| VAR 
    wInput AT %IW0 : WORD; 
END_VAR | 入力ワードのアドレス指定による変数宣言 | 
| VAR 
    xActuator AT %QW0 : BOOL; 
END_VAR | ブール変数宣言 注:シングルビットアドレスが指定されていない場合、1バイトはブール変数に内部的に割り当てられます。の値の変化  | 
| VAR
    xSensor AT %IX7.5 : BOOL; 
END_VAR | シングルビットアドレスを明示的に指定したブール変数宣言 アクセス時には、入力ビット7.5のみが読み取られます。 | 
| VAR 
    xSensor AT %IX* : BOOL; 
END_VAR | アドレスを指定する場合、保存位置の代わりにプレースホルダーが使用されます  注:これは機能ブロックで可能です。 | 
役に立つヒント
重要
シングルビットアドレスを明示的に指定しない限り、ブール変数はバイトごとに割り当てられます。
重要
Boolean 変数にマップされる個々のビットアドレスには制限があります。これらの変数を一緒に使用することはできません VAR_IN_OUT、 REFERENCE TO、または ADR オペレーター。
アドレスに変数を割り当てるときは、次のことを考慮する必要があります。
- 入力に割り当てられている変数に書き込むことはできません。これにより、コンパイラエラーが発生します。 
- あなたが作ることができます - AT宣言はローカル変数とグローバル変数のみで、POU の入力変数と出力変数の宣言は行いません。
- 使ってはいけません - AT永続変数リスト内の宣言。
- 使用する場合 - AT構造体メンバーまたは関数ブロック変数の宣言では、すべてのインスタンスが同じメモリを使用します。これは、「C」などの従来のプログラミング言語での「静的変数」の使用に相当します
- 構造体のメモリレイアウトもターゲットシステムによって異なります。 
例
PROGRAM PLC_PRG
VAR
    xVar AT %QW0 : BOOL;
END_VAR
xVar := TRUE;変数を書くとき xVar の開始メモリ領域です QX0.0 それまで QX0.7 影響を受ける。