I/O交換とデバイス状態の監視設定
監視ModbusTCPClientSideExampleプロジェクト
では
ModbusTCPClientSideExampleプロジェクトを開くPLC_PRG.prg.stプログラム。2 つの変数を宣言します。
readValueそしてwriteValueタイプのWORD。変数を定義する
maxValueタイプのWORD値100。以下のコードを実装に挿入してください。
IF writeValue > maxValue THEN writeValue := 0; END_IF IF readValue = writeValue THEN writeValue := writeValue + 1; END_IF
注記
Modbus通信が確立されるとすぐに、このコードは継続的に増加します。
readValueそしてwriteValue上限に達するまで。エディタを開く
Modbus_TCP_Serverデバイスに切り替えて入出力マッピングタブ。エントリを展開して
Channel 1そしてChannel 2。地図
PLC_PRG.readValueへChannel 2[0]エントリ。この変数は、後ほどリクエストによって読み取られた値を受け取ります。地図
PLC_PRG.writeValueへChannel 1[0]エントリ。この変数は書き込む値を指定します。結果は以下のようになります。

元に戻す
PLC_PRG.prg.stのModbusTCPClientSideExampleプロジェクト。変数を宣言する
serverComStateタイプのIoDrvModbusTCP.ModbusTCPComState。変数を宣言する
serverErrorCodeタイプのIoDrvModbusTCP.MB_ErrorCodes。実装に以下のコードを追加し、サーバー名を以下の名前と一致するように調整してください。デバイスこのサンプルプロジェクトでは、名前は
Modbus_TCP_Server。serverComState := Modbus_TCP_Server.ComState; serverErrorCode := Modbus_TCP_Server.byModbusError;
これにより、デバイスの機能ブロックの出力を使用して、通信状態と現在のエラーコードを監視できるようになります。
監視ModbusTCPServerSideExampleプロジェクト
では
ModbusTCPServerSideExampleプロジェクトを開くPLC_PRG.prg.stプログラム。2 つの変数を宣言します。
registerValueそしてtempValueタイプのWORD。以下のコードを実装に挿入してください。
tempValue := registerValue;
エディタを開く
ModbusTCP_Server_Deviceデバイスに切り替えて入出力マッピングタブ。エントリを展開して登録簿を保管する。
地図
PLC_PRG.registerValueへHolding Registers[0]エントリ。この変数にはレジスタの値が格納されます。結果は以下のようになります。

元に戻す
PLC_PRG.prg.stのModbusTCPServerSideExampleプロジェクト。変数を宣言する
serverDeviceClientConnectionsタイプのUINT。変数を宣言する
serverDeviceErrorCodeタイプのUINT。以下のコードを実装に挿入してください。
serverDeviceClientConnections := ModbusTCP_Server_Device.uiClientConnections; serverDeviceErrorCode := ModbusTCP_Server_Device.ErrorCode;
このコードを使用すると、このサーバーに接続されているクライアントの現在の数と、サーバーの現在のエラーコードを監視できます。
注記
これで、Modbus通信の設定とデバイスの監視が完了しました。