Edge Box RPi 200 と Node-RED および Modbus RS485
この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues
はじめに
Modbus RTU(リモートターミナルユニット)は、センサーやコントローラーなどのデバイスをシリアル通信ラインで接続するための産業オートメーションにおいて人気のあるプロトコルです。そのシンプルさと信頼性で知られ、産業プロセスの監視と制御に広く使用されています。Raspberry Pi をベースにした産業用 IoT ゲートウェイである Edge Box RPi 200 は、Modbus RTU デバイスを最新のネットワークに統合することを可能にします。この Wiki では、Node-RED を使用して Edge Box RPi 200 で Modbus RTU 通信を設定する方法を案内します。エネルギー管理、環境モニタリング、プロセス制御などのアプリケーションを強調しています。このリソースは、さまざまな産業シナリオで Modbus RTU を活用するための迅速で実用的なアプローチを提供します。
始める前に
このプロジェクトを開始する前に、以下に記載されているように、ハードウェアとソフトウェアを事前に準備する必要があります。
ハードウェアの準備
Edge Box RPi 200 |
---|
![]() |
ソフトウェアの準備
Edge Box は Raspberry Pi OS がプリインストールされた状態で手元に届きます。このデバイスを初めて起動する場合は、Getting Started Wiki をお読みください。また、Node-RED の Getting Started Guide を準備しています。このガイドを確認してから Wiki に進むことをお勧めします。このチュートリアルでは、YABE 室温シミュレーターを実行しているホスト PC を Edge Box 上で実行されている Node-RED に接続します。
RS485
Edge Box RPi 200 には RS-485 ポートが 1 つあります。詳細は こちら をご覧ください。Node-RED を操作する前に、デバイスを正しく配線する必要があります。
Modbusノードのインストール
Modbusノードをインストールするには、Edge BoxでNode-REDを起動します。通常、ウェブブラウザを開き、http://<your-edgebox-ip>:1880
にアクセスすることで利用できます。以下の手順に従ってください:
ステップ1. 右上隅にある三本線アイコンで示される設定ボタンをクリックし、Manage paletteを選択します。
ステップ2. パレットタブで、Installタブに移動します。
ステップ3. ノード検索バーを使用して、目的のModbusノードを見つけます。
ステップ4. ノードの横にあるInstallボタンをクリックします。
ステップ5. プロンプトが表示された場合は、警告ウィンドウのドロップダウンからInstallボタンをクリックしてインストールを確認します。
ステップ6. インストールプロセスが完了するのを待ちます。完了すると、InstallボタンがInstalledに変わります。

Modbusアドレスの特定
正しいModbusアドレスを特定することは重要なステップです。入力、出力、および保持レジスタを含むModbusアドレスに関する詳細情報については、PLC、デバイス、またはセンサーのメーカーのデータシートを参照することをお勧めします。
ここでは、SHT20 RS485温度センサーを使用します。このセンサーはRS485ハードウェアインターフェース(雷保護設計付き)を使用し、プロトコル層は標準的な産業用Modbus-Rtuプロトコルと互換性があります。データシートを調べると、温度と湿度データを提供する入力レジスタが見つかります。
デバイスからデータを取得する
必要なノード: Modbus Getter
、2つのFunction
ノード、2つのDebug
ノード、Modbus Response
。
これらのノードをドラッグ&ドロップし、以下の順序で接続します。
Modbus Getterノードの設定
- Modbus Getterノードをダブルクリックします。
- Unit IDを
1
に設定します。 - FCを
FC4: Read Input Registers
に設定します。 - Addressを
1
に設定します(シミュレーションデバイスのデータシートで提供されている値)。 - Quantityを
2
に設定します(2つのブロックを読み取るため)。
Modbusサーバーの設定
- Serverセクションで、鉛筆ボタンをクリックして新しいサーバー設定を作成します。
- サーバーに名前を付けます。
- Typeを
Serial Expert
に設定します。 - Serial Portを
/dev/ttyACM0
に設定します。 - Serial Typeを
RTU
に設定します。 - 他の設定はそのままにします。
Functionブロックの設定
Functionブロックを使用して、関連する温度と湿度の値を抽出します。Getterノードの出力は、整数部と小数部を含む10進数であるため、基本的な数学を使用して調整する必要があります。
温度の場合
var tempMsg = { payload: msg.payload[0] / 100.0 };
return tempMsg;
湿度の場合
var humidMsg = { payload: msg.payload[1] / 100.0 };
return humidMsg;
デプロイ
Deployボタンを押します。デバッグウィンドウに湿度と温度の値が表示されます。

技術サポートと製品ディスカッション
弊社製品をお選びいただきありがとうございます!お客様が弊社製品をスムーズにご利用いただけるよう、さまざまなサポートをご提供しております。異なる好みやニーズに対応するため、いくつかのコミュニケーションチャネルをご用意しています。