- Home
- Node-REDとプロトコルの統合
- Node-Redでデコーダーを使用する方法
Node-Redでデコーダーを使用する方法
説明
MilesightのLoRaWANゲートウェイはノードレッド機能をサポートしており、関連ソリューションのシミュレーションやセットアップを簡単に行うことができます。また、Milesightは直接使用できる独自のコンポーネントをいくつか開発しました。
この記事では、MilesightゲートウェイのNode Redでデコーダーを使用する方法を説明します。
必要条件
Milesight ゲートウェイ UG56、UG65、UG67
あらゆるLoRaWANセンサー
設定方法
Node-REDでデコード機能を使用する前に、Milesight LoRaWANノードがMilesight LoRaWANゲートウェイに追加されていることを確認してください: LoRaWANノードをMilesightゲートウェイに接続する方法。
方法 1:ペイロードコーデックページでデコード
1. 記事「Milesight ゲートウェイでペイロードコーデックを使用する方法」を参照して、ペイロードコーデックページにペイロードデコーダーを追加します。パケットページでセンサーデータがデコードできることを確認してください。
2. アプリ > Node-RED に移動して Node-RED 機能を有効にし、有効にした後、[Launch] をクリックして Node-RED Web GUI に移動し、ゲートウェイと同じユーザー名とパスワードでログインします。
3. 下図のような Node-RED フローを作成します。
LoRa Input:LoRa データを受信します。このノードを使用する前に、ネットワークサーバーモードが有効になっていることを確認してください。
Device Filter (オプション):1 つ以上の特定の LoRaWAN® ノードのデータをフィルタリングします。
debug:選択したメッセージのプロパティをデバッグサイドバータブに表示し、必要に応じて実行時ログも表示します。LoRa Input ノードまたは Device Filter ノードのいずれかに追加できます。
4. 任意のdebugノードを選択し、出力をcomplete msg objectに変更し、Doneをクリックして設定を保存します。
5. Deployをクリックしてフローを保存します。その後、debugページに移動し、オブジェクト部分でデコードされたデータを確認できます。
方法2: 関数ノード経由でデコード
1. 以下の図のようにNode-REDフローを作成します:
2. 関数設定
Milesight センサーおよびコントローラーの場合は、GitHub で Java Script を使用して開発された SensorDecoders を見つけてください(TTN タイプのデコーダーを選択してください)。サードパーティ製の LoRaWAN センサーの場合は、センサーデコーダーについてメーカーにお問い合わせください。
AM107 を例にとって説明します。
AM100_TTN.js デコーダーを関数にコピーします。
デコーダーが Java Script を使用して開発されている場合、関数ヘッダーは次の形式になります。
function Decoder(bytes, port) {}
さらに、関数の最後に以下のコード行を追加してください。
var buffer = Buffer.from(msg.payload, 'base64');
var aa = Decoder(buffer);
msg.payload =aa;
msg.buffer =buffer;
return msg;
Deploy をクリックして設定を保存すると、デバッグページでデコードされたデータを確認できます。
. RSSI、SNR など、デコードされたデータに特定の属性変数を追加する必要がある場合。return decoded」文の前に、以下の文を追加してください。
decoded.rssi = msg.rssi;
decoded.snr = msg.snr;
decoded.data = msg.payload;
decoded.addTime = msg.time;
Deploy をクリックしてフローを保存すると、デバッグページで特定の属性変数を含むデコード結果を確認できます。
注:Milesight ゲートウェイは、以下の変数の追加に対応しています。
—-以上- —
関連記事
Node-REDとプロトコルの統合
Gateway に組み込まれた Node-Red を使用して SMS アラームをトリガーする方法Milesight UG6X/UG56ゲートウェイはビルドインNode-Redをサポートしています。このNode-Redの例では、Node-Redを使用してSMSアラームをトリガーするソリューションを提供し、EM300の温度が26℃を超えた場合にSMSアラームをトリガーする例を取り上げます。
Milesightゲートウェイ経由でLoRaWANデバイスをBACnet BMSシステムに統合する方法MilesightゲートウェイはBACnetサーバーとして動作し、LoRaWANデバイスとBMSシステムまたはBACnetデバイス間の通信を設定することができます。
MilesightゲートウェイによるLoRaWAN to Modbus機能の実現方法Milesightゲートウェイは、Modbus RTU over TCPまたはModbus TCPプロトコルを介して、LoRaWANデバイスとModbusクライアント(マスター)間の通信をセットアップするModbusサーバー(スレーブ)として動作し、LoRaWANデバイスをBMSやPLCシステムに迅速かつ簡単に統合することができます。
MilesightゲートウェイでAzureのダウンリンク制御を実現する方法Azure IoT Hub からダウンリンクコマンドを送信し、Node-red 経由でダウンリンクデータを変換することで、デバイスを遠隔操作する方法について、とりあえずの解決策を説明します。
Node-Red の例: VS121&WS202 – WS50xスイッチリンク制御VS121またはWS202を使用して、WS50Xを点灯/消灯させるNode-REDの例を示します。
Node-Red の例: バックネットサーバーの有効化/無効化Node-RED経由でバックネットサーバー機能を有効または無効にするためのソリューションを提供します。
Node-Red ユーザー名とパスワードの変更方法ゲートウェイ WEB GUI と異なる Node-red のログインパスワードを必要とし、Node-red を通じて Node-red のログイン認証情報を直接変更できるアプリケーションに適用されます。
Node-Redの読み取り専用ユーザーを追加する方法Node-Red に読み取り専用のユーザーを追加する方法を説明します。読み取り専用のユーザーは、Node-Red にのみアクセスできますが、フローの変更やフローの展開は許可されていません。
Node-RED を使用してゲートウェイのルートパスワードを変更する方法この node-red の例は、Milesight ゲートウェイの root パスワードを変更するソリューションです。変更後、root アカウントにログインして、必要に応じてさらにコマンドを実行することができます。
Node-Redを使用してシェルコマンドを実行する方法node-red でシェルコマンドを実行する方法について説明します。
BACnetシステムからMilesightゲートウェイ経由でダウンリンクを送信する方法Milesightゲートウェイは、BMSシステムやBACnet機器からのコマンドをエンコードし、LoRaWAN機器にコマンドを送信することで、遠隔制御を実現します。
Milesight ゲートウェイの Node Red でダッシュボードを使用する方法Milesight ゲートウェイの Node Red ダッシュボードを使用して、センサーのデータを表示する方法について説明します。
Milesight ゲートウェイに追加の Node-RED ノードをインストールする方法ゲートウェイに Node-RED ノードを追加インストールする方法について説明します。
Milesightゲートウェイ経由でLoRaWANセンサーをBACnet BMSシステムに統合する方法Milesight ゲートウェイは、LoRaWAN センサーのデータをデコードし、センサーデータを BMS システムまたは BACnet デバイスで使用される BACnet オブジェクトにマッピングできます。これにより、LoRaWAN デバイスをビル管理システムに迅速かつ容易に統合できます。
Gatewayに組み込まれたNode-Redを使用してDOを制御する方法ゲートウェイに組み込まれた Node-Red 機能を使用して UC501 のデジタル出力ステータスを変更し、EM500-SMT が検出した土壌の湿度に応じて灌漑装置が動作するようにします。