複数のCTセンサのデータをグラフとメールでお知らせ
2019-06-05
最近、工場のIoT化に取り組む企業が増えており、Lazuriteで装置の状態をモニタリングしたいという要望が増えています。
ラピスセミコンダクタでは、簡単に工場の見える化をしたいというお客様のご要望に応えるため稼働率モニタリングシステムの販売を開始しました。
一方で、自らシステムを構築したいというご要望も多くあります。
そこで、今回はCTセンサーユニット(CT sensor shield2)とRaspberryPi+Lazurite Pi Gatewayを使用した見える化システムの構築方法をご紹介していきます。
CT センサーは製造装置に取り付けることで、電流が流れているときは稼働中、電流が止まったら稼働停止として判断するのに使うことができるので、
- 電流が停止したらメールを通知する
- 電流値のグラフをプロットする
を行ってみたいと思います。
準備するもの
使用環境 | 使用するもの | |
センサ | CTセンサーシールド2、Lazurite 920J | ![]() |
ゲートウェイ | Raspberry pi 、Lazurite Pi Gateway | ![]() |
メールサーバー | 今回は社内のネットワークに置かれているメールサーバーを活用しました。最近、インターネット上には簡単に利用できるメールサーバーがないので、皆様ご自身でメールサーバーは準備してください。 |
全体構成と立ち上げ方法
センサーユニットで読み取った電流値をゲートウェイに送信します。センサーユニットに使用するLazurite 920JにはLazurite IDE に入っているプロジェクトのサンプル>05Other_Sensor>CT_sensor_vDetect2のプログラムを書き込んでください。
ゲートウェイには、Node-REDを使用して、電流の閾値を判定したり、グラフ描画の機能を動かしたりします。Node-REDでLazuriteのインストールをする方法は、こちらをご覧ください。
また、今回のフローで使用している「node-red-dashboard」もインストールをしてください。
フローの読み込みを行う
まずはこちらのNode-REDのフローをダウンロードしてください。
続いて、フローの読み込みを行っていきたいと思います。
写真右上のメニューから、「読み込み」→「クリップボード」を選択してください。選択すると下の写真の画面がでてきます。
「読み込むファイルを選択してください」をクリックし、先ほどダウンロードしたファイルをZIP解凍して出来たflow.jsonを読み込みます。
読み込まれたフローの初期設定とメールの設定を変更するだけで使用できます。
*初期設定
初期設定のファンクションノードを開くと下の写真のような画面が出てきます。
コードを書き換えてCTセンサーの設定を行ってください。
1つのオブジェクトにCTセンサーを一つ設定できるようになっています。
- addr:920Jのアドレス(下四桁)
- name:CTセンサーの表示する名前(任意)
- thres:電流の閾値
を入力すると設定完了です。
複数CTセンサーを設定するには接続するセンサの数のオブジェクトを作成してください。
上の写真の例では3台を接続できるようになっています。
*メール設定
メールノードを開くと下のような写真が出てきます。
このプロパティからご自身のサーバーの設定を行ってください。
設定の概要
ここでは各ノードについて簡単に説明したいと思います。
タイムスタンプ:日時を定期的に初期設定に出力します。
初期設定:CTセンサーの設定を行っています。
Lazurire Rx:920Jからの無線を受信しています。
msg:出力しているデータを表示させます。
メール用閾値判定:それぞれのCTセンサーの電流値の比較を行い電流が閾値を超えている状態から下回った時にだけメッセージを出力します。
グラフ用:それぞれのCTセンサーの電流のみの値を縛り込み出力させる。
chart:送られてきた値をグラフ形式にプロットします。
メール:メール用閾値判定で送られてきたメッセージをメールで通知します。
さっそく動かしてみる
設定が終わったら電流センサーに電流を流し、電流を止めるとメールで通知されます。
実際にやってみると下の写真のように通知がきました。
電流値のグラフの見方
電流が止まっているか目視ですぐに確認できるように今回は電流値のグラフをプロットする機能を付け加えています。グラフの表示のさせ方は以下のようになります。
上の写真のように動作を行うと別のタブに電流値がプロットされたグラフが表示されます。
実際におこなってみた結果下のようなグラフがプロットされました。
無事にメールを受け取ることができたでしょうか。お疲れ様でした。