温度湿度センサ(WTR10-E)とModbus_ToolでRS485/Modbus RTU通信テスト

温度湿度センサ(WTR10-E)とModbus_Tool(Windowsパソコン)でRS485/Modbus RTUの通信テストをする方法について紹介します。

【準備物】スレーブ側(温度湿度センサ)とマスタ側(Modbus_Tool)

Modbus(モドバス)とは、Modicon社がPLC (プログラマブルロジックコントローラ) 用途に開発したシリアル通信プロトコルです。 通信方式はマスタ・スレーブ方式で、マスターからのクエリー(コマンド:通信の開始)とスレーブからの応答メッセージで通信します(詳細は以下記事参照)。

【Modbus通信とは】RTU/ASCII/TCPの違い・ライブラリ
シリアル通信の1つであるModbusとは?RTU/ASCII/TCPの違い・ライブラリについて解説します。

今回は、温度湿度センサ(WTR10-E)とWindowsパソコンでModbus/RTUの通信確認を行いました。

機器
スレーブ側 温度湿度センサ(WTR10-E)・・・2000円
マスター側 Windowsパソコン(Modbus_Toolという無料のマスタシミュレータソフトを使用) + USB/RS485変換器(CH340)・・・6000円

温度湿度センサ(WTR10-E)の仕様は以下のとおりです。

仕様 概要
材質 ABSプラスチック
温湿度センサ SHT20
電源範囲 DC8V〜48V(正と負の極性を区別せず、極性を逆にすることもできます)
電力 0.1W
温度測定範囲 -40℃〜125℃
湿度測定範囲 0〜100%RH
測定精度と分解能 温度:±0.3℃、0.1℃湿度:±3.0%、0.1RH
応答時間 2秒
通信出力インタフェース RS485(AとBの2端子)
シリアルボーレート 1200,2400,4800,9600bps(2桁のダイヤルスイッチ)、デフォルトは9600bps
バイトフォーマット データビット:8、ストップビット:1、チェック不要
通信プロトコル Mobus-RTU
スレーブアドレス ID1〜63(ケース内のDIPスイッチで変更可能)、デフォルト1
サイズ 65 * 46 * 28.5mm
重量 42g
詳細 KKmoonRS485温度湿度 トランスミッタ RS485 Modbus-TRU データ ロガー 無線 温度 センサ 温度湿度モニタ

【結果】通信確認

● 「Modbus_Tool」を以下のリンクから入手します。
Modbus_Tool:https://www.fa.hdl.co.jp/jp/html/app/Modbus_Tool/index.html

● USB/RS485変換器をPCに接続します(Windows10だとネットに繋がっていれば自動でドライバをインストールしてくれます)。

● デバイスマネージャーを開き、CH340があることを確認します。

● USB/RS485変換器のAとBを温度湿度センサ(WTR10-E)のAとBに接続し、温度湿度センサ(WTR10-E)のVcc, GND間にDC8V〜48Vを印加します。

● Modbus通信通信確認ソフト「Modbus_Tool.exe」を起動します。

● 接続設定を以下のようにします。

項目 設定値
USB ポートを選択
通信速度 9600bps
データ 8bit
パリティー なし
ストップビット
フロー制御 なし

● 送信クエリ欄に以下の内容を入力します。

01 03 00 00 00 02
項目 概要
スレーブID 01
ファンクションコード 03
レジスタアドレス 00 00
読み出すデータの長さ(データ数) 00 02

【補足】
※1 C4 0B(CRCチェック)が送信クエリの末尾に自動的に付加されるので送信ボックスには入力しません
※2 RS485 Modbus-RTU での測定データの読み出しは Read Holding Register function で、開始アドレス 0x0000 から2 つのレジスター値を取得する方法を使います。

● 受信データ(Rx)が返ってきたら通信成功です。

01 03 04 00 E2 01 F2 DA 10
項目 概要
スレーブID 01
ファンクションコード 03
データ長さ(byte数) 04
データ1 00 E2(10進数:226 → 温度28.6℃)
データ2 01 F2(10進数:498 → 湿度49.8%)
CRC DA 10

データ1が温度データ、データ2が湿度で、測定値を 10 倍した値の符号付き整数値となります。

【M5Stack入門】できること・使い方
M5Stackできること・使い方について入門者向けに紹介します。

コメント

タイトルとURLをコピーしました