Modbus/RTUマスタ 通信サンプルプログラム


■解説

 

C++、C#、VB.Netで作成された、Modbus/RTUマスターのサンプルプログラムです。

COMポートを指定し、ボーレートやパリティ等を設定し、Modbus/RTU通信を実行可能です。

 

■画面イメージ

 

 

 

■使用手順

 

  1. 利用するCOMポート及び、ボーレート、パリティビット、データビット、ストップビットを入力し、[modbus_new_rtu]を実行します
  2. [modbus_set_slave]にてスレーブIDを指定下さい。
    ※各種シリアル設定およびスレーブIDは、通信するデバイスの設定に合わせてください。
  3. [modbus_connect]でデバイスとの接続を開始します。
  4. Modbus通信にて入出力を行うには、各ファンクションコードのパラメータ設定後にボタン を押下してください。
    ※各ボタンに対応するファンクションコードは以下を参照下さい。

    ファンクションコード

    ボタン名(関数名)

    ReadCoils (FC 1)

    modbus_read_bits

    ReadDiscreteInputs (FC 2)

    modbus_read_input_bits

    ReadHoldingRegisters (FC 3)

    modbus_read_registers

    ReadInputRegisters (FC 4)

    modbus_read_input_registers

    WriteCoil (FC 5)

    modbus_write_bit

    WriteRegister (FC6)

    modbus_write_register

    WriteMultipleCoils (FC15)

    modbus_write_coils

    WriteMultipleRegisters (FC16)

    modbus_write_regsiters


    送受信する際のデータフォーマットは以下になります。

     

    ・送信データ(16進数)

      例) 01 0D AD

     

    ・受信データ(16進数)

      例) 01 0D AD

     

    本サンプルの読出し最大数は2000ビット/125ワード、書き込み最大数は1968ビット/123ワードです。
    ※Modbus仕様上の最大値となります。


  1. [modbus_close]でデバイスとの接続を切断します。
  2. [modbus_free]で割り当てられたメモリを開放します。
  3. 閉じるボタンを押すと、プログラムを終了します。