ネットワーク変数
ネットワーク変数の値は、ネットワーク内の異なるPLC間で交換できます。変数は、送信機デバイスと受信機デバイスの両方で厳密な同一のリストで定義する必要があります。この場合、デバイスの1つのアプリケーションのみがネットワーク変数を定義できます。リストは1つ以上のプロジェクトに含めることができます。
送信側のネットワーク変数リストは、特定のログおよび転送パラメータがオブジェクトプロパティで定義されているグローバル変数リストです。これらのプロパティを追加することで、通常の「ネットワーク変数リスト(送信者)」を作成します GVL。を挿入することもできます ネットワーク変数リスト(送信者) このオブジェクトにすでにこれらのパラメータが設定されている場合は、オブジェクトをデバイスツリーに直接挿入します。
受信機のネットワーク変数リストは ネットワーク変数リスト(受信者) タイプ。作成するときは、サーバーのそれぞれのネットワーク変数リストを選択します。別の方法として、送信者リストから生成されたエクスポートファイルからこの変数リストを読み取ることができます。別のプロジェクトで送信者リストを定義するには、とにかくエクスポートファイルが必要です。
ネットワーク変数は、送信者から受信者への一方向にのみブロードキャストとして送信されます。ただし、デバイスに送信者リストと受信者リストの両方を含めることもできます。
のために NetVarUdp
ライブラリバージョン3.5.7.0以降では、確認済み転送が選択されていない場合、受信者チャネルは割り当てられなくなりました。その結果、1つのハードウェアデバイス上の2つのコントローラー間でネットワーク変数の交換も可能です。
重要
交換デバイスが送信者と受信者である必要がある場合、異常な動作を防ぐために、変数リスト識別子は一意である必要があります。変数リスト識別子は、 プロパティ のダイアログ GVL 物体。
次の場合、ネットワーク変数を介したデータ交換はできません。
デバイス(ターゲットシステム)がサポートしていない場合
ファイアウォールが通信をブロックします。
別のクライアントまたはアプリケーションがネットワーク変数リストのプロパティで設定されているUDPポートを使用している場合
送信側デバイスと受信側デバイスごとに複数のアプリケーションがネットワーク変数リストを使用する場合
リテラルまたは定数で定義された制限を持つ配列のみがレシーバーアプリケーションに送信されます。この目的のために定数式は許可されていません。
例: "
arrVar : ARRAY[0..g_iArraySize-1] OF INT ;
「送信されませんが、」arrVar : ARRAY[0..10] OF INT ;
"が送信されます。ネットワーク変数の最大サイズは255バイトです。ネットワーク変数の可能な数は無制限です。
GVLのサイズがネットワークテレグラムの最大長を超える場合、データは複数のテレグラムに分割されます。構成によっては、これによりデータの不整合が発生する可能性があります。
重要
送信者から受信者への UDP 経由のデータ送信中に、各サイクルで次の位置またはイベントでデータが失われる可能性があります。
送信者(ネットワーク ドライバー、スタック)
ルーター
スイッチ
ネットワーク衝突
受信機(ネットワーク ドライバー、スタック)
これは、受信側がサイクル内で受信したデータが最新ではなく、古い可能性があることを意味します。
ヒント
PLCが異なるバージョンの開発システム(V2.3、 V3)。ただし、この場合、送信者プロジェクトと受信者プロジェクトで変数リストを正確に照合するためにエクスポート/インポートメカニズムを使用することはできません。その理由は、可変エクスポートファイル(*.exp
)V2.3から生成されたものには、受信NVLを作成するために必要な量の情報が含まれていません。 V3。以前に送信者からエクスポートしたGVLファイルとしてのそれぞれのネットワークパラメータ設定はありません。このファイルを取得するには、でV2.3NVLを再作成する必要があります。 V3 初め。次に、エクスポートファイルを生成し、で受信NVLを作成できます。 V3 これに基づいて。
ヒント
PLC間のデータ交換の代替手段は、データソースの使用です。ネットワーク変数を交換するためのブロードキャスト方式とは対照的に、定義されたポイントツーポイント接続は、1つのアプリケーションとリモートデータソースの間に作成されます。
詳細については、以下を参照してください。 ネットワーク変数