×

Node-REDのトラブルシューティング

2017-11-07

CTセンサーで測定したデータをグラフ表示させるプログラムを
Node-Redでつくってみましたが、動きませんでした。
原因はどこにあるのか、1つずつ確認していきたいと思います。

15

手順1.lazurite Rxの受信確認

まずは、CTセンサーで測定したデータを正しく受信出来ているかを確認します。

1.画面左側のdebugノードを配置し、lazaurite Rxと繋ぎデプロイをクリックします。
16

2.画面右側のデバックタブに値が出力されているか確認して下さい。
7

  • 出力 ○    受信できています  → 手順2.へ進んで下さい。
  • 出力 ☓    受信できていません → 【受信できていない時】を確認して再度試して下さい。

【受信できていない時】

送信側プログラムの無線設定と、受信側Node-redのlazurite Rxノードの設定を確認して再度、試して下さい。
8

手順2.node-configの設定確認

lazurite Rxの受信が正しく出来ていたら、次にnode-configの設定を確認します。
node-configは特定の無線信号とセンサーを紐付けしてくれるノードです。

1.画面左側のdebugノードを配置しdashboardと繋ぎます。
18

2.debugノード(msg)を開いて、対象を『msgオブジェクト全体』を選択して完了、デプロイします。
17

3-1.画面右側のデバックタブに値が出力されているか確認して下さい。
22

  • 出力 ○  設定OKです  → それでも動かない時は、補足を確認して下さい。
  • 出力 ☓  設定NGです  → 【node-configの設定NGの場合】 を確認し、再度試して下さい。

3-2.値をクリックすると詳細が表示されます。
19

その中の『src adrr』が送信機のアドレスです。
node-config設定画面のアドレスと一致しています。

24

表示の仕方が、10進数と16進数ですが、10進数の値をnode-config設定画面に入力しても大丈夫です。

【node-configの設定NGの場合】

node-configの設定で入力したアドレスか、選択したセンサーが間違っていると思われます。送信機のアドレスを再度確認して下さい。
23

debugノードの役割

debug

debugノードの役割はノードの出力側に繋いで、そのノード内で処理されたメッセージを表示させます。

表示対象が①msg(データのみ)、②msgオブジェクト全体(管理用データ含む)の2つから選択できます。
3

①msgを選択した場合

配置すると【msg.payload】に名前が変わります。
受信したデータをそのまま表示するので何種類かデータを受信していると、送信元の特定が難しいです。
4

②msgオブジェクト全体を選択した場合

配置すると【msg】に名前が変わります。
管理用のデータ(送信機のアドレスや時間)が表示されるので、送信機を特定したい時などはこちらを選択します。
5

まとめ

ノードが増えても、1つずつ設定を確認していけばどこかで間違いが見つかります。
繋いで表示するだけで間違いを見つけてくれるのがdebugノードです!
11

補足:ノードについて

12

左側が入力、右側が出力です。

三角のマークはエラーがあることを示しています。

ノードを配置しただけで設定せずにデプロイするとエラーになり、以下のメッセージが表示されます。その場合、ノードの設定を開いて、更新・完了ボタンなどをクリックして、設定を完了させて下さい。
13