Node-REDパレットに追加

「URD電流センサー」ノードは産業IoTのプロジェクト連携により、

Node-RED上で利用できる他のノードとあわせて、

「@ia-cloud/node-red-contrib-ia-cloud-fds」に含まれます。

右上のメニューから「パレットの管理」を選択します。

ノードを追加のタブから、入力欄に「@ia-cloud」を入れて検索します。

この時インターネットに接続されている必要があります。

候補に「@ia-cloud/node-red-contrib-ia-cloud-fds」のパレットと、

「@ia-cloud/node-red-contrib-ia-cloud-dashboard」 のパレットが表示されますので、

この2つを「追加」ボタンで追加します。  

現在のノードで追加されたパレットを確認します。

フロー編集で使用するノードの配置

画面左のパレットエリアをスクロールして、「iaCloud devices」の中から

「URD電流センサー」を探し、表示させます。

ノードをドラッグして、フロー編集エリアに配置します。

同じように「共通」パレットの「Debug」ノードも配置します。

 

見やすいように「URD電流センサー」と「debug」ノードを並べます。

 

「URD電流センサー」ノード右側の小さい□をドラッグするとノード接続線が現れます。

接続線をドラッグしたまま「Debug」ノードの左側の小さい□に重ね、

2つのノードを線でつなぎます。

※「URD電流センサー」の確認に、共通ノードの「debug」を使います。

ワイヤレス電流センサのノード設定

ここでは次の内容で、ワイヤレス電流センサの使用・設置を想定した

「URD電流センサー」ノード設定を行う紹介をしています。

・工場Aの1Fに照明が3系統あり、系統ごとの電流をモニタするため、無線部CWD-3-1を1個と、

 CTT-10-WLS50を3個とを1セットで用意して3ch分を接続したワイヤレス電流センサを使用。

・「Module ID:」にEnOcean IDである8桁の英数字「04013CF7」

 が記載されている無線部 CWD-3-1を使用。

  

フローに配置した「URD電流センサー」ノードをダブルクリックして、

「プロパティ」画面を開きます。

センサー種別をクリックし、ドロップダウンリストの中から、使用する無線部「CWD-3-1(3ch)」を選択します。

 

名前、オブジェクトキー、オブジェクトの説明を入力します。

 

名前の入力は、フロー上でのノード表示に反映されます。

空白の場合デフォルトのノード名で表示されます。説明も空白で構いません。

オブジェクトキーについては、出力先でセンサを特定するために使用される固有の情報となり、

他と重複しない文字列での設定が必須の項目です

ここでは無線部のモジュールID (EnOcean ID)を設定していますが、

重複しない設定であればよく、任意の名称で構いません。

 

引き続き「センサー詳細設定」右の鉛筆アイコンをクリックします。

 

センサIDにModule ID (EnOcean ID)を入力します。

このID情報は、EnOcean無線通信で利用されます。

必ず、無線部CWD-3-1のModule ID:(8桁の英数字、EnOcean ID)を入力してください。

センサのEnOcean ID とこのノードでのセンサIDが一致しない場合、

本ノードではデータが受信されません。

 

データ項目1~3に各Chの電流センサ(CT部)を設定します。

電流センサ(CT部)の変更や、使用しない(非接続)設定も

プルダウンリストから選択することができます。

 

右上の「追加」で設定を保存し、ノードのプロパティに戻ります。

 

引き続き、「通信オブジェクト」でUSB400Jの設定を行います。

「通信オブジェクト」の鉛筆アイコンをクリックします

 

シリアルポート」の鉛筆アイコンをクリックします。

シリアルポートには、接続されたデバイスの中からUSB400Jを選択します。

虫眼鏡を押すと、現在接続されているデバイスを検索できます。

Raspberry Piでは通常、末尾に数字のついた /dev/ttyUSB* に割り当てられます。

例えば、USB400Jの他に特別なUSBデバイスがなければ、

見つかるのは1つのポートだけになります。

 

右上の「追加」で設定を保存し、1つ前のプロパティに戻ります。

設定が反映されると、リストに登録されます。

※通信ノードの名称は空白を含め自由ですが、

システム全体で複数のEnOcean受信ノードを利用する場合などは、

USB受信機ごとに名称を付けたほうがよいケースもあります。  

「URD電流センサー」ノードの必要な設定が済みましたら、

編集プロパティの右上の「完了」をクリックします。

※これまでの設定で必須項目に不足・未設定内容があると、

後で行うデプロイ (フローの反映・実行)時に警告が出ます。

このメッセージが出る場合には、ノードを正常に動作させることができません。

デバックノードの設定

URD電流センサー」ノードへの設定が正しく行われたことをチェックするための、

デバッグノードの設定です。

 

フロー編集で配置した「デバッグ」ノード (表示”msg.payload”)をダブルクリックして

プロパティを開きます。

対象の▼msg をクリックして、「オブジェクト全体」を選択します。

デバッグウインドウの☑は付けたままで「完了」をクリックします。

編集結果を反映するため「デプロイ」をクリックします。

動作を確認する~デバッグの開始

デバッグノードの情報表示をするため、サイドバーの虫のアイコンをクリックして、

デバッグ表示に切り替えます。

サイドバーのタブが「デバッグ」にかわります。

   

ワイヤレス電流センサの無線部Ch1~Ch3にCT部 (CTT-10-CLS-WLS50)を接続し、

各電線に取り付けて計測を開始します。  

 

電流データを正常受信すると、ステータスが「データ受信済」になり、

その出力メッセージはデバッグで確認できます。

 

出力メッセージ展開・確認

▼をクリックすることで中身を展開できます。

  

※ia-cloudフォーマットのデータが格納されています

request:”store”

(規定のメッセージ)

objectKey:

設定したオブジェクトキー、

(今回の例:04013CF7)

timeStamp:

EnOceanデータの受信時刻、(Raspberry Piの時刻)

objectDescription:

ノードで設定した説明

 

objectContent:

 各Chの電流が格納されている

contentType:

(ia-cloud形式のデータ)

 

contentData:(※)

dataName:チャンネルの名称

dataValue:電流値 (測定値)

unit:単位 (A)

※電流センサの項目1~項目3のうち、測定対象に設定したチャンネルのデータが

この contentDataに格納されて出力されます。

 

デバッグで表示されない場合のチェックポイント

ここまでの内容で、デバッグにメッセージが出力・表示されない場合の

チェックポイントは、 主に以下のケースがあげられます。

 

ハードウェア周辺で考えられるチェックポイント

  

・Raspberry Piの電源容量が足りない

 本体、周辺機器を含めた容量の電源(ACアダプタ)が必要です。

 電源不足を示す稲妻マーク (警告)が表示されていないこと。

・EnOcean受信器USB400Jが接続されていない

 デプロイ済みで再起動した時にNode-REDコンソール画面のログ表示で

 通信ポートの内容に警告・エラーがないこと。

・ワイヤレス電流センサからのデータを受信していない

 距離が遠い、遮蔽物で電波が届いていない、測定対象に電流が流れていないなど、

 計測・通信自体が行われていない場合です。

 

 

Raspberry Piのソフトウェア環境のチェックポイント

 

・必要なソフトウェアがたりない

 Raspberry Pi OS (Raspbian Jessie以降)のrecommendedで

 導入される環境になっていないことが考えられます。

 Node-REDに合わせて導入されているNode.jsが必須です。

 ブラウザは推奨のChrome以外でも動作しますが保証されません。

・通信の制限設定、機能の無効化が行われている

 Raspberry Pi本体機能の有効・無効化の設定変更を行ったり、

 config(設定)ファイルの書き換えを行った場合。    

  

ノードのステータス表示のチェックポイント  

   

 青い〇:デプロイ未実施(設定未反映)、動作していません

 赤い△:ノード設定が未完了、または不足しています。

 警告例1: 未使用設定されたChに、センサが接続されている(出力されません)

 警告例2:設定済みのCh2に、センサが接続されていない(9999.99Aとして出力)

 設定通りに接続、受信の動作が行われています。