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
影響を受ける。