1. TOP
  2. PCサンプル
  3. PCツール
  4. ModbusTcpMes

ダウンロード

ダウンロードされたときは利用規約に同意したものとみなします


関連資料

Modbus通信の説明はModbusを参照してください

概略

ModbusTcpMesはModbusコマンドの作成を補助して相手機器にModbusコマンドを送信するアプリケーションです
動作確認環境: Win10

使い方

接続先とポート

接続先はModbus対応機器のIPアドレスを指定します
ポートはModbusは502固定です

ユニットID (HEX)

Modbus対応機器で指定されているユニットIDを16進で指定します

ファンクション

ファンクションを選択してオペランドを設定します
Modbus対応機器によって全てのファンクションに対応しているわけではありません 対応しているファンクションはマニュアルで確認してください
FUNC名称内容オペランド
01Read Coil Statusコイルの読出アドレス, 個数
02Read Input Status入力ステータスの読出しアドレス, 個数
03Read Holding Register保持レジスタの読出しアドレス, 個数
04Read Input Register入力レジスタの読出しアドレス, 個数
05Force Single Coilコイルの書込みアドレス, データ
06Preset Single Register保持レジスタの書込みアドレス, データ
08Diagnostics通信の診断診断サブコード,データ
11Fetch Communication Event Counter通信イベントカウンタ読出しなし
12Fetch Communication Event Log通信イベントログ読出しなし
15Force Multiple Coils連続した複数のコイルの書込みアドレス,個数,バイト数,データ
16Preset Multiple Registers連続した複数のレジスタの書込みアドレス,個数,バイト数,データ1...
17Report Slave IDスレーブ情報読出しなし

アドレスについて

コイルのアドレスを指定するときに20番地を指定したい場合は20から1引いた19を指定します
同様に入力ステータス、保持レジスタ、入力レジスタの指定も-1した数値で指定します

書込みデータのフォーマット

コマンドデータの書き方
(05) Force Single Coil0000 = OFF, FF00 = ONFF00
(06) Preset Single Register12AB(16進で表記)12AB
(15) Force Multiple Coils1100 0000 01 を書込む場合
0000 0011 10
(バイト単位で反対側からビットを並び替える)
0000 0011 10
(06) Preset Multiple Registers複数ワードを続けて記載2ワード書き込む場合
1234ABCD

手順

  1. ファンクションを選択します
  2. オペランドを入力します
  3. [Create Command]ボタンを押すとコマンド枠にModbusコマンドが作成されます
    コマンドはバイト単位で'-'を繋げて表示します
  4. 作成したコマンドはそのまま送信できますが、編集することもできます
    編集する場合はバイト単位で'-'で区切ります

コマンドの送信

  1. [Send]を押すと送信コマンドのデータを送信します

送信したデータはDUMP枠に送信内容と受信内容を表示します

レスポンス

正常時

ファンクションに続いてデータ部分が付いて返信されます
(例)
ファンクションバイト数データ
0x030x020x00 0x01

異常時

異常時の受信データではファンクションの最上位ビットがONした値で返信されます
(例)
ファンクション異常コード
0x830x02

この記事へのコメント