Modbus

Modbus Master/Slaveのシュミレーターを試してみた

Modbus マスターシミュレーター

最近、Modbusを使う必要がでてきたためModbusのマスターやスレーブとして使えそうなModbusToolというソフトウェアを検証してみました。

(Windows用)

ダウンロード

下記リンクからmsiファイルをダウンロードしてインストール。

Releases · ClassicDIY/ModbusTool · GitHub

インストール方法はこちら。

Home · ClassicDIY/ModbusTool Wiki · GitHub

ModbusMasterとMosbusSlave

2022 06 15 18 57 17

インストールすると、ModbusMaster(Active)とModbusSlave(Active)というアイコンが生成されます。

MasterとSlaveなのでそれぞれを立ち上げます。

Modbus Master

2022 06 15 18 59 24  1

Masterの画面はこちら。今回は同じPCで立ち上げるModbusSlaveに接続するので、CommunicationのModeをTCPにして、IP Addressは同じPCを意味する127.0.0.1(デフォルト)にします。

Modbus Slave

2022 06 15 19 01 21  1

Modbus Slaveを立ち上げた後、右上のListenボタンを押します。

こうすることで、MasterがSlaveに接続することができます。

2022 06 15 19 02 34  1

これでListening状態になりました。

Modbus MasterからSlaveに接続

2022 06 15 19 03 26  1

Masterの右上のConnectボタンを押すと、Communication Log画面に接続されたと表示されました。

Slaveに書き込んでMasterでRead Coils

2022 06 15 19 15 17  1

Slaveにて、0に100と入力してからApplyを押します。

2022 06 15 19 16 52  1

Start とSizeを上記の様に設定し、FunctionsにあるRead Coilsを押すと、Slaveの0に記載した100がMasterにも読み込まれます。

2022 06 15 19 19 06

このときMasterから送られたのはTXのコマンド。

ここでRXでくるのは、

2022 06 15 19 20 11

SlaveからはTXで送られたものが、MasterのRXと一致しているのがわかります。

Pollにチェックをいれる

2022 06 15 19 21 24  1

Master側でPollにチェックをいれると定期的にMasterからTXを送信し、Slave側のデータを読み込みます。

Slaveにて複数のデータを書き込み

2022 06 15 19 23 41

Slave側で1と2に100を入力。

2022 06 15 19 24 22

Master側でRead Coilsを送ると、Slaveの0と1に記載した100が反映されます。

2022 06 15 19 25 16  1

Masterが受けるRXには、100の16進数の値 64が2箇所あるのでこれSlaveに書き込んだ100のようです。

まとめ

Modbusについて、フリーのソフトウェアを使ってMasterとSlaveそれぞれの通信ができることがわかりました。

次回はNode-REDのModbusのライブラリを使って、Modbus通信の検証をしてみたいとおもいます。

ABOUT ME
中畑 隆拓
スマートライト㈱ 代表取締役。IoTソリューションの開発、スマートホーム&オフィスのコンサルティング、DALI,KNX,EnOceanなどのインテグレーションを行っています。

COMMENT

メールアドレスが公開されることはありません。