4.2.2. Node-RED 例: LoRa®パケットの送信
このセクションではNode-REDによるLoRa®パケットの送信例を紹介します。
この例ではinject入力ノードを作成し、injectノードの左部分をクリックすると、図4‐9に示すようにゲートウェイを介してパケット送信がトリガーされます。
図4‐9 LoRa®パケットの送信例
最初に入力タブからinject、関数タブからfunction、出力タブからdebugおよびloraを[フロー 1]タブにドラッグし、これらのノードを図4‐9のように接続します。
次にinjectノードをダブルクリックすると、図4‐10のダイアログがポップアップ表示されます。データ型として「文字列」を選択し、[Payload]フィールドに実際の文字列(ここでは「Hello LoRa」)を入力します。
図4‐10 injectノードの編集
次のステップではfunctionノードをダブルクリックし、図4-11のJavaScriptコードを入力します。
そしてこのフローをデプロイし、injectノードの左側をクリックすると毎回送信されるパケットがトリガーされます。
var send_string = new Buffer(msg.payload).toString('Base64'); var send_json = '{' + '"imme":true, ' + '"freq": 915.5, ' + '"rfch": 0, ' + '"powe": 14, ' + '"modu": "LORA", ' + '"datr": "SF11BW125", ' + '"codr": "4/6", ' + '"ipol": false, ' + '"size": ' + msg.payload.length + ', ' + '"data": "' + send_string + '"' + '}'; msg.payload = send_json; return msg;