Howto

Armadillo-IoT A6E: 漏水監視システムをNode-REDとソラコムプラットフォームで構築する

この Howto により、以下のことができます:

  • 設備内の漏水を漏水センサで検知して、 IoT ゲートウェイからクラウド経由でメール通知する。
  • 漏水検知した時に、漏水センサ付近を USB カメラで撮影して、静止画をクラウドにアップロードする。
  • 漏水センサの漏水検知状態や、USB カメラで撮影した画像を、クラウドサービスのダッシュボードで閲覧する。
  • IoT ゲートウェイに接続したパトライトを、漏水検知した時に点灯させる。

システム構成

システム構成

※Node-RED は、 OpenJS Foundation の米国およびその他の国における登録商標または商標です。

必要機材

品名 数量 費用 備考
漏水検知IoT開発キット 1 90,200円(税込) エイブリック製「バッテリレス漏水センサ」
- 無線タグ: S-CBTGAAAC
- センサリボンⅠ 2.0m: S-CBSSAAAC-002)
Armadillo-IoTゲートウェイ A6E Cat.1モデル 開発セット
(AG6271-C03D0)
マイクロSDカード
(4GB以上; SDHC)
1 約2,000円 Armadillo-IoT A6Eセットアップ時に使用します。
コンテナのSWUイメージを使う手順でセットアップする場合は不要です。
(オプション)
パトライト(12V駆動型)
1 約9,300円 オプションです。
漏水を検知した時に点灯させることができます。
LR5-101PJNW-Rを使用しました。
(オプション)
USB Webカメラ
(UVC規格対応)
1 約8,500円 オプションです。
漏水を検知した時に撮影した画像をクラウドにアップロードできます。
今回はロジクールC920s を使用しました。
(オプション)
漏水センサ死活監視タイマ
1 オプションです。
価格はエイブリック社代理店にお問い合わせください。

利用する SORACOM サービス

  • SORACOM Air

    IoT 向けのデータ通信 SIM を提供するサービスです。 特定地域向け IoT SIM をArmadillo-IoT A6E に装着します。

  • SORACOM Harvest

    IoTデバイスからのデータやファイルを収集・蓄積するサービスです。 SORACOM Harvest Data と SORACOM Harvest Filesの2種類があり、今回は両方使用します。

  • SORACOM Lagoon

    ダッシュボード作成・共有サービスです。 IoT デバイスから SORACOM Harvest に集めたデータを可視化することができます。 今回はダッシュボード機能とアラート機能を使用します。

この後の手順

設置例 設置例

漏水センサと IoT ゲートウェイのセットアップ

漏水センサと無線タグの接続

無線タグ(右側)に接続した漏水センサ

漏水センサのマニュアルは、エイブリック社のダウンロードページから入手してください。

漏水センサと無線タグを箱から出して、接続します。 漏水センサの死活監視タイマを使う場合は、死活監視タイマも接続します。死活監視タイマの接続と使用手順は、漏水センサの設置と接続確認 で説明します。

漏水センサは、センサのリボンが水で濡れると微弱な電力を発電して、無線タグから BLE パケットを送信することで漏水を通知します。Armadillo-IoT A6E が、漏水センサの無線タグが送信する BLE パケットを WLAN コンボモジュールで受信して漏水監視動作を行います。 詳細は、エイブリック社の製品紹介ページをごらんください。

IoT ゲートウェイに漏水監視システムをインストール

Armadillo-IoT A6E が実行する漏水監視動作は、Node-RED フローで実装しています。 漏水監視用のソフトウェア一式を収録したインストールディスクイメージをダウンロードして、Armadillo-IoT A6E にインストールしてください。 手順は、次の通りです。 以下で述べる通り、この手順ではマイクロSDカードが必要です。

補足: コンテナのSWUイメージを使ってセットアップするで述べる手順を使うと、シリアルコンソールでの作業が最初に必要ですが、マイクロSDカードなしでセットアップできます。 Armadillo の開発環境を PC にセットアップ済みの場合や、インストールディスクで Armadillo を初期化したくない場合は、そちらの手順でセットアップしてみてください。

  • ケースの分解

    インストールディスクイメージをインストールするには、イメージを書き込んだマイクロ SD カードを Armadillo-IoT A6E に装着して、SD ブートしなければいけません。マイクロ SD カードのスロットは、Armadillo-IoT A6E のケース内部にあるため、ケースを分解してください。

    分解手順の詳細は、マニュアルを参照してください。

    A6E 本体のマイクロ SD スロット

    マイクロSDカードを装着する手順は、Armadillo-IoT A6E の Node-RED 開発ガイドのmicroSDカードの挿抜方法でも説明しています。

  • Armadillo-IoT A6E を、漏水監視システム用のインストールディスクイメージで初期化

    漏水監視システム用のインストールディスクイメージは、https://download.atmark-techno.com/sample/armadillo_iotg_a6e-water-leakage-sense-howto/a6e_water_leakage_sense_installer.img です。これをダウンロードして、マイクロ SD カードに書き込んでください。

    インストールディスクの作成手順は、マニュアルを参照してください。 Armadillo-IoT A6E の Node-RED 開発ガイドの、インストールディスクを使用してセットアップを行うでも説明しています。

    インストールディスクイメージの書き込みは、Linux の場合、マニュアル記載の通りに dd コマンドを使います。 Windows の場合は、Node-RED 開発ガイドで説明しているように、Win32 Disk Imager Renewal を使っても書き込むのが簡単です。

    インストールディスクイメージをマイクロ SD カードに書き込んだら、それを Armadillo-IoT A6E のマイクロ SD スロットに装着してください。 装着したら、SW2(起動デバイス設定スイッチ)を ON にしてから Armadillo-IoT A6E の電源を入れると、インストールが始まります。 インストールが完了すると、Armadillo-IoT A6E が自動でシャットダウンして LED が全て消灯します。 電源を入れてからインストール完了するまで10分ほどかかりますので、その間お待ちください。

    インストールの実行手順も、マニュアルに記載しています。 Node-RED 開発ガイドの、作成したインストールディスクを使用してセットアップするでも説明しています。

    SD ブート設定

  • インストール後の起動確認

    インストールが完了したら、Armadillo-IoT A6E の電源を切ってください。 その後、SW2(起動デバイス設定スイッチ)を OFF に戻してから Armadillo-IoT A6E の電源を入れると、インストールした漏水監視システムが起動します。 電源を入れてから2分ほどで、Armadillo-IoT A6E の三つの LED のうち、システムLED(LED_SYS) が点灯・アプリケーションLED(LED_APP) が消灯、という状態になれば、漏水監視システムが動作開始しています。 電源を入れた直後は、LED_SYS だけが点灯して、その後 LED_APP も点灯した状態になります。 その後、漏水監視システムが起動すると LED_APP が消灯します。

    Armadillo-IoT A6E と設定用の PC を LAN ケーブルで接続しておくと、PC の Web ブラウザで漏水監視システムの設定操作を行えます。 漏水監視システムが動作開始した後、PC の Web ブラウザで http://armadillo.local:1880 を開くと、漏水監視システムの Node-RED フローの画面が Web ブラウザに表示されます。IoT ゲートウェイの漏水監視システム設定 で述べる設定は、その画面で行います。

    インストール後の起動確認ができたら、Armadillo-IoT A6E の電源を再び切り、ケースを組み立ててください。この後の手順は、ケースに入れたままで行えます。

  • ケースの組み立て

    組立手順の詳細も、マニュアルを参照してください。

SORACOM SIM の設定

SIM 装着

Armadillo-IoT A6E のケースの、"SIM" と書かれたところにあるカバーパーツを取り外して、nanoSIM スロットに SORACOM SIM を装着してください。

nanoSIM の装着

SIM を装着したら、カバーパーツを付けて、LTE モジュールのアンテナを取り付けてください。

LTE アンテナの取り付け

SORACOM Harvest の有効化

SORACOM Harvest Data/Files は、SIMグループ単位で機能の有効/無効を設定します。 SORACOM コンソールにログインして、下記の手順で設定を行ってください。

SORACOM コンソールメニュー内 [SIM管理] を選択し SIM管理画面を開きます。

SORACOM コンソール

SIM一覧の中から今回使用するnanoSIMにチェックを入れ、[管理] > [所属グループ変更] を選択します。

SIM の所属グループ変更

[新しい所属グループ] の中から「新しいグループを作成…」を選択します。

SIM の所属グループ作成

グループ名に「漏水検知」と入力し、[グループ作成]をクリックします。 SIM の所属グループ設定

[変更後のグループ] が作成したグループ「漏水検知」になっていることを確認し、[グループ変更] をクリックします。 SIM の所属グループ設定

コンソールメニュー内 [SIMグループ] を選択し SIMグループ管理画面を開きます。 SIM グループの管理

グループ一覧の中から「漏水検知」を選択します。 SIM グループの設定

[SORACOM Harvest Data 設定] を ON にし、[保存]をクリックします。 Harvest Data 有効化

[SORACOM Harvest Files 設定] と [HARVEST DATA 連携] を ON にし、[連携対象のファイルパス] に 「camera_images」と入力、[保存]をクリックします。
(※Harvest Files の有効化と連携設定は、USB カメラを使用しない場合は不要です。) Harvest Files 有効化

SIM 接続設定

SORACOM SIM で LTE 接続するために、Armadillo-IoT A6E の WWAN 接続を設定します。 Armadillo-IoT A6E と設定用の PC を LAN ケーブルで接続してから、Armadillo-IoT A6E の電源を入れてください。 電源を入れた後、Armadillo-IoT A6E の LED_SYS が点灯し、その後 LED_APP が点灯したら、PC の Web ブラウザで https://armadillo.local:58080 を開いてください。 この URL を開くと、Armadillo-IoT A6E で動作する設定ツール(ABOS Web)の画面が現れます。 最初はパスワードを設定するよう求められますので、パスワードを設定してから、設定したパスワードでログインして設定操作を行ってください。

ABOS のパスワード設定と WWAN 接続設定は、マニュアルを参照してください。

注意: PC と Armadillo を1対1で接続した場合、つまり、LAN ケーブルで直接接続したり、ハブに PC と Armadillo だけを接続した場合は、ABOS Web との接続が不安定になり、接続して数分すると、https://armadillo.local:58080 を開いたブラウザがエラーして ABOS Web の画面が表示されなくなることがあります。 この症状は、PC で DHCP サーバーを動かすかまたは、PC と Armadillo の IPv4 アドレスをどちらも固定アドレスに設定することで解消できます。 または、Armadillo のネットワーク設定で、IPv4 接続を「auto」から「link-local」に変更することでも解消できます。

Armadillo と PC を USB ケーブルで接続してシリアルコンソールで操作できる場合は、シリアルコンソールで Armadillo にログインした後に、以下のコマンドを実行して ください:

armadillo:~# nmcli c mod 'Wired connection 1' ipv4.method link-local
armadillo:~# nmcli c up 'Wired connection 1'
armadillo:~# persist_file '/etc/NetworkManager/system-connections/Wired  connection 1.nmconnection'

この設定を行って運用した後、Armadillo を LAN に接続し直す時(つまり、PC と1対1で接続しない使い方に変える時)は、Armadillo の IPv4 接続設定を「auto」に戻さないといけません。 IPv4 接続設定を「auto」に戻す時は、ABOS Web の「各接続設定」の「接続を編集」機能を使うのが簡単です。 マニュアルの「各接続設定(各ネットワークインターフェースの設定)」で説明しているように、「現在の接続情報」に表示された "Wired connection 1" を選んで「接続を編集」をクリックして、LAN 接続設定を変更してください。 LAN 接続設定画面の「IPv4 取得モード (ipv4.method)」を「auto」に切り替えて、「保存」をクリックすれば設定変更できます。

USB カメラとパトライトの接続(オプション)

パトライトの接続

パトライトと DO1 の接続

パトライトに、Armadillo-IoT A6E の端子台にある接点出力を接続すると、漏水検出した時にパトライトが点灯します。この Howto では、赤色 LED が一つの、12V 駆動型のパトライトを使用します。パトライト(LR5-101PJNW-R)から出ている8本のリード線のうち、以下の3本を、Armadillo-IoT A6E の端子台と次の通りに接続してください:

  1. 赤 -> 端子台の6番ピン(DO1A)
  2. 灰 -> 端子台の2番ピン(GND)
  3. 黄 -> 端子台の1番ピン(VIN)

パトライトのリード線に加え、Armadillo-IoT A6E の端子台のピン同士の接続も必要です。7番ピン(DO1B)と2番ピン(GND)も接続してください。つまり、端子台の2番ピン(GND)には、2本の線を接続します。

  1. 端子台の7番ピン(DO1B) -> 端子台の2番ピン(GND)

USB カメラの接続

USB カメラ接続

Armadillo-IoT A6E の USB ポートに UVC 対応の USB カメラを接続すると、漏水検出した時に、USB カメラで撮影した静止画をクラウドにアップロードします。 USB カメラを USB ケーブルで Armadillo-IoT A6E に接続し、周囲を撮影したい漏水センサの方を向けて設置してください。

IoT ゲートウェイの漏水監視システム設定

漏水監視システム用 Node-RED フローの動作概要

Node-RED フローで実装した漏水監視システムは、次に述べる動作を行います:

  • 「漏水センサ情報初期化」ノードに識別番号を設定した漏水センサが BLE で送信する漏水通知を監視して、漏水検出したら以下を行う:

    • パトライトを点灯すると同時に、LED_APP を点滅する
    • クラウドサービスに、漏水センサの識別番号を含めた漏水検知通知を送信する
  • 漏水を通知したセンサが、撮影対象に設定したものであれば、USB カメラで撮影した画像をクラウドサービスにアップロードする

複数の漏水センサを監視対象に設定している場合、そのうちのどれか一つでも漏水検出したら、この動作を行います。 漏水検出した後、漏水が止まったと判定するまでの間、30分おきに、上の動作を繰り返します。

  • それぞれの漏水センサで漏水検出した後、漏水センサが漏水通知が5分以上漏水通知を行わなければ、漏水が止まったと判定して以下を行う:

    • パトライトと LED_APP を消灯する
    • クラウドサービスに、漏水センサの識別番号を含めた漏水検知解除通知を送信する

ここで、監視対象に設定できる漏水センサは、最大4個です。 上記の動作を行わせるために必要な設定の手順を、以下に述べます。

Node-RED フローに漏水センサ情報を設定

まず、Armadillo-IoT A6E と設定作業用の PC を LAN ケーブルで接続して、それから、PC の Web ブラウザで http://armadillo.local:1880 を開いてください。 ブラウザに Node-RED のフロー画面が表示されたら、以下に述べる手順で監視対象にする漏水センサを設定してください。 以下のキャプチャ画像に映っているノードのうち、「漏水センサ情報初期化」というノードと、「死活監視タイマ有無設定」というノードが、漏水監視システムの設定用のノードです。

注意: http://armadillo.local:1880 をブラウザで開けない場合は、「Node-RED 開発ガイド」の「Node-RED に接続する」に記載しているように、 armadillo.local の代わりに Armadillo-IoT A6E の LAN インタフェースに割当たっている IP アドレスを指定してみてください。 お使いのブラウザが Firefox でない場合は、Firefox を使うと http://armadillo.local:1880 を開けるかも知れません。

漏水監視システムの Node-RED フロー

  • 監視対象の漏水センサの識別番号

    監視対象の漏水センサを、「漏水センサ情報初期化」という名前の function ノードの初期化処理で設定します。漏水センサに記載されている識別番号(マイナー番号)を、この function ノードのプロパティ設定画面の「初期化処理」タブに表示される以下の部分の、"sensors" の値の配列に記入してください:

    // 監視対象にする漏水センサのマイナー番号を、配列に設定してください。
    flow.set("sense_context", {
        "sensors": [2741, -1, -1, -1],
        "camera_target": -1
        }
    );
    

    上の例では、識別番号として 2741 だけを設定しています。この値を、手元の漏水センサの識別番号で書き換えてください。 漏水センサの数が4未満の場合は、余る配列要素の値を上の例のように -1 にしてください。

    監視対象漏水センサの設定

  • USB カメラ撮影対象センサの設定

    漏水検出した時に、その周辺を撮影したい漏水センサの近くに Armadillo-IoT A6E と USB カメラを設置します。そして、その漏水センサの識別番号を、「漏水センサ情報初期化」ノードに設定してください。 監視対象の漏水センサの識別番号と同じく、USB カメラ撮影対象の漏水センサも、この function ノードの初期化処理で設定します。撮影対象の漏水センサの識別番号を、"camera_target" の値に記入してください。上の方の例では、camera_target の値が -1 となっていますので、これを書き換えてください。

    カメラ撮影対象漏水センサの設定

クラウドサービスに初期データを送信

Node-RED フローの設定が終わったら、初期データを IoT ゲートウェイからクラウドサービスに送信してください。

SIM 接続設定で説明した手順で WWAN 接続設定を行っていれば、SORACOM に LTE で接続できて、Armadillo-IoT A6E の LED_WWAN が点灯しているはずです。 その状態で、Node-RED の画面上端の右側にある「デプロイ」をクリックして開くメニューから「フローを再起動」を選択してください。 「フローを再起動」メニューを選択したら、すぐに Armadillo-IoT A6E から LAN ケーブルを抜いてください。

30秒ほどすると、Node-RED フローが、SORACOM Harvest に初期データを送信します。 LAN ケーブルを抜くのは、LAN ケーブルでの接続と LTE での接続が両方有効になっていて、どちらもインターネット接続可能な場合、SORACOM Harvest へのデータ送信に失敗する場合があるためです。

Node-RED フローの再起動

初期データが送信されたかどうかは、SORACOM コンソールのメニュー内 SORACOM コンソールメニュー内 [データ収集・蓄積・可視化] > [SORACOM Harvest Data] で開く SORACOM Harvest Data のダッシュボードで確認できます。

初期データを送信するのは、クラウドサービスのダッシュボード設定で説明する、アラートメール送信用の Alert rule 設定に必要なためです。

漏水センサの設置と BLE 受信確認

死活監視タイマの接続(オプション)

死活監視タイマを漏水センサに接続すると、漏水センサの無線タグから、約12時間おきに死活監視定時信号を送信します。この死活監視定時信号を監視することで、漏水センサが故障した時に検出できます。 漏水監視システムの Node-RED フローには、死活監視動作も実装しています。漏水監視システムが死活監視異常を検出すると、LED_WWAN を点滅するとともに、クラウドサービスに死活監視異常通知を送信します。 この Howto では使用しませんが、Armadillo-IoT A6E の DO2 にもパトライトを接続しておくと、死活監視異常検出した時もパトライトを点灯できます。死活監視異常検出した時もパトライトを点灯するには、LED をパトライトに増設してください。

  • 死活監視タイマを漏水センサに接続

    死活監視タイマと漏水センサの接続

    死活監視タイマは、漏水センサのリボンの、無線タグを接続したのとは反対側の端のコネクタに接続します。

  • Node-RED フローに死活監視ありを設定

    死活監視タイマを使用する時は、漏水監視システムの Node-RED フローを死活監視タイマ有効に設定してください。死活監視タイマの有効/無効の設定は、「死活監視タイマ有無設定」という名前の change ノードで行います。 この change ノードのプロパティ設定画面で、ルールの「代入する値」を true にすると死活監視タイマ有効になります。

    死活監視タイマ有効設定

設置と BLE 受信確認

漏水センサを設置したら、漏水センサが送信する BLE パケットを Armadillo-IoT A6E が受信できるかどうかを確認してください。 設置の際の確認用に、漏水監視システムの Node-RED フローは、Armadillo-IoT A6E の LED の点灯動作で受信状況を表示します。この動作は、次の通りです:

  • 漏水センサからの BLE パケットを受信すると、LED_SYS を10秒間ゆっくり点滅させて、10秒経つと点滅を停止する。
  • 漏水センサからの BLE パケットを受信した時に、受信信号強度が十分なら LED_APP を10秒間点灯させて、10秒経つと消灯する。

設置した漏水センサに BLE パケットを送信させてみて、送信した時に LED_SYS が10秒間点滅・LED_APP が10秒間点灯することを確認してください。LED_SYS が点滅するだけで LED_APP が点灯しなければ、受信信号強度が弱いので、漏水センサの設置場所を調整してください。 漏水センサに BLE パケットを送信させる方法は、次の通りです。詳細は、漏水センサのマニュアルをご覧ください。

  • 死活監視タイマなしの場合

    漏水センサのリボンに少量の上水(150ul~1cc程度)を垂らします。垂らした上水でリボンが濡れると、30秒~5分で BLE パケットを送信します。

  • 死活監視タイマありの場合

    死活監視タイマのスイッチを押します。スイッチを押すと、死活監視タイマの LED が点灯して、0~3分で BLE パケットを送信します。

クラウドサービスのダッシュボード設定

漏水センサと IoT ゲートウェイのセットアップが済んだら、次は、クラウドサービス側の設定です。

SORACOM Lagoon のダッシュボード設定

  • Lagoon3 コンソールにログイン

    SORACOM コンソールメニュー内 [データ収集・蓄積・可視化] > [SORACOM Lagoon] を選択します。

    Lagoon の選択

    SORACOM Lagoon のページが開いたら、ページの下端にある二つのボタンのうち、「SORACOM Lagoon 3 コンソール」をクリックして Lagoon 3 コンソールにアクセスしてください。 Lagoon3 コンソールにアクセス

    SORACOM Lagoon コンソールのログインページが開くので、SORACOM アカウントの email アドレスとパスワードを入力してログインしてください。 Lagoon3 コンソールにログイン

  • テンプレートのインポートによるダッシュボード作成

    SORACOM Lagoon 3 コンソール画面左端のサイドバーにある、ダッシュボードのアイコンの上にマウスカーソルを移動すると、"Dashboards" メニューがポップアップします。 このメニューから、「+ Import」を選択してください。

    インポートメニューを選択

    開いたインポート画面の「Upload JSON file]をクリックして、ダッシュボードテンプレートから作ったダッシュボード定義の .json ファイルをインポートします。 ダッシュボード定義の .json ファイルは、次の手順で作成してください。

    補足: 以下に述べる手順の、ダッシュボードテンプレートの内容書き換えを行うツールを、HTML ページとして提供しています。 こちらです。 詳細は、ダッシュボードファイルの作成ツールをご覧ください。

    1. https://download.atmark-techno.com/sample/armadillo_iotg_a6e-water-leakage-sense-howto/lagoon_dashboard.json をダウンロードする。 この .json ファイルが、ダッシュボードテンプレートです。

    2. ダウンロードした .json ファイルをテキストエディタで開き、${IMSI} を SIM の IMSI で全て置換する。 IMSI は、SORACOM コンソールの SIM 管理画面で、SIM を選択すると表示されますので、それをコピー&ペーストしてしてください。

    3. IoT ゲートウェイの漏水監視システム設定 で Node-RED フローに設定した、漏水センサの識別番号の前に _ を付けた文字列で、_01 を全て置換する。 たとえば、識別番号が 2741 なら _01 を _2741 で全て置換します。漏水センサを複数使用する場合は(※4つまで使用できます)、2番目~4番目のセンサの識別番号それぞれの前に _ を付けた文字列で、それぞれ _02, _03, _04 を全て置換します。

    4. 変更内容を保存します。

    「Upload JSON file]をクリックして開くオープンダイアログで、作成したダッシュボード定義の .json ファイルを選択してアップロードしてください。 ダッシュボード定義ファイルのインポート

    ダッシュボードのインポート画面にある「Harvest」では、Harvest (default) を選択します。 テンプレートのインポート

    選択したら、「Import」をクリックしてインポートしてください。 インポートした後、Lagoon コンソールのサイドバーにある Dashboard のアイコンをクリックして選択すると、作成された「漏水センサダッシュボード」がダッシュボード一覧に表示されます。 インポートしてできたダッシュボード

    「漏水センサダッシュボード」をクリックすると、ダッシュボード画面が開きます。何もデータがない状態では、一番上の、漏水センサ状態表示部に「No data」と表示されます。 IoT ゲートウェイから初期データを送っていれば、「正常」と表示されるでしょう。 ダッシュボードの初期状態

    ダッシュボードには、上から順に、漏水センサの現在状態、漏水センサからの通知の一覧、カメラ撮影画像が表示されます。

ここまでの手順で、漏水センサの検知状態表示用のダッシュボード設定が完了です。 次は、漏水検知や、漏水センサの死活異常検知の際にアラートメールを送信するための設定です。

  • 漏水検知の Alert rule 設定

    SORACOM Lagoon 3 コンソール画面左端のサイドバーにある、アラートのアイコンの上にマウスカーソルを移動すると、"Alerting" メニューがポップアップします。 このメニューから「Alert rules」を選択してください。

    Alert rules メニューを選択

    Alert rules 設定画面が開くので、「+ New alert rule」をクリックしてください。Alert rule の作成画面が開きます。 Alert rule の作成

    alert rule の作成画面では、四つの項目を順に設定します。

    まず、アラート対象のデータ項目と条件を指定する「1 Set a query and alert condition」です。ここでは、A の列を、左から順に「Air」、SIM 管理画面の SIM の名前、「Standard」、「leak_[漏水センサ識別番号]」に設定します。 下の画像は、漏水センサの識別番号が 2741 の場合の例です。B の列は、Function:Last, Input:A, Mode:Drop Non-numeric Values, に設定し、"Make this the alert condition" をクリックしてください。 アラート条件の設定

    次は、「2 Alert evaluation behavior」です。Evaluate every:1m, for : 0m, Alert state if no data or all values are null : No Data, Alert state if execution error or timeout : Error に設定してください。

    アラート動作の設定

    「3 Add details for your alert」は、Rule name : 漏水検知1, Folder : 「+Add new」を選択して Leakage sensor を入力, Group : No.1 に設定してください。 「Summary and annotations」の並びは、ドロップダウンリストで名前を選択して値を入力します。 それぞれ、Summary : センサ1で漏水を検知しました, Panel ID : 2, Dashboard UID : r-MfneKSz2 と設定してください。 アラート表示の設定

    「4 Notifications」は、Custom Labels の Labelに Sensor1 と入力して Enter、= の右側には leak を入力して Enter、という手順で設定してください。

    1から4までの設定入力を終えたら、画面上橋の方にある「Save and exit」をクリックして、設定内容を保存してください。 Alert rule の保存

    漏水センサを複数使用する場合は、それぞれのセンサについて、「+ New alert rule」以降の手順を繰り返して、各センサに対する alert rule を追加してください。

  • 死活監視異常検知用の Alert rule 設定(オプション)

    次は、死活監視異常検知用の Alert rule 設定です。漏水センサの死活監視タイマを使用しない場合、この設定は不要です。

    「1 Set a query and alert condition」では、A の列の右端の値を「leak_[漏水センサ識別番号]」にしてください。 下の画像は、漏水センサの識別番号が 2741 の場合の例です。 アラート条件の設定

    「2 Alert evaluation behavior」は、漏水検知用の設定と同じです。 アラート動作の設定

    「3 Add details for your alert」は、Rule name : 死活監視1, Summary : センサ1で死活監視異常を検知しました にしてください。 それ以外は、漏水検知用の設定と同じです。 アラート表示の設定

    「4 Notifications」は、= の右側に入力する値を dead にしてください。それ以外は、漏水検知用の設定と同じです。

    Alert rule の保存

    漏水検知と死活異常検知の Alert rule

    1から4までの設定入力を終えたら、画面上橋の方にある「Save and exit」をクリックして、設定内容を保存してください。 Alert rule の保存

    漏水センサを複数使用する場合は、それぞれのセンサについて、「+ New alert rule」以降の手順を繰り返して、各センサに対する alert rule を追加してください。

    注意: 死活監視タイマを使って漏水センサの死活監視を行う場合、全ての漏水センサに、それぞれ死活監視タイマを接続しなければいけません。

  • メール送信設定

    Alert rule の設定が終わったら、アラート条件が成立した時にメール通知するための設定です。 アラート設定画面の「Cotact points」をクリックして選択すると、アラート通知先の設定画面が表示されます。 「+ New contact point」をクリックしてください。

    メール送信設定の作成

    アラート通知先の作成画面では、Name:配信先につける名前(下の例では「漏水検知メール配信」), Contact point type:Email, Addresses:セミコロン区切りで、メールアドレスを入力, subject:メールの件名(下の例では、「漏水検知アラート」) と設定してください。 Optional Email settings の Message は、空のまましてください。空のままにしておくと、対応付けられた Alert rule の「Summary」に設定した内容がメール本文として送信されます。 メール送信設定 設定内容を入力したら、「Save contact point」をクリックして通知先設定を保存してください。

    最後は、アラート条件とメール通知を対応づける設定です。 アラート設定画面の「Notification Policies」をクリックして選択すると、通知ポリシーの設定画面が表示されます。 「+ New policy」をクリックしてください。 通知ポリシーの作成

    「Specific routing」の欄にある「+ Add macther」をクリックして対応付けの設定欄を作り、Label : grafana_folder, Operator : =, Value : Leakage sensor と設定してください。 Contact point には、先ほど作成した Contact point の名前(漏水検知メール配信)を設定します。 通知ポリシーの設定(1)

    通知ポリシーの設定(2) 設定内容を入力したら、「Save policy」をクリックして保存してください。

    保存すると、一覧に表示されます。 通知ポリシー一覧

以上で、クラウド側の設定も完了です。

漏水検知動作の確認

漏水センサと、IoT ゲートウェイ(Armadillo-IoT A6E)のセットアップと設定、およびクラウドサービス(SORACOM Harvest と SORACOM Lagoon)の設定が済んだら、漏水監視システムが完成です。さっそく、動作を確認してみましょう。

  1. 漏水センサを上水で濡らして数分待つ

    漏水監視システムを起動した後、漏水センサリボンに上水を少量垂らして濡らしてください。

  2. IoT ゲートウェイの通知表示確認(LED とパトライト)

    漏水センサリボンを濡らしてから数分待ち、Armadillo-IoT A6E の LED_APP が点滅を始めたら、漏水検知の成功です。 オプションでパトライトを接続していれば、Armadillo-IoT A6E の LED_APP が点滅を始めると同時に、パトライトが点灯します。

  3. メール通知確認

    SORACOM Lagoon のアラート機能で設定した送信先に、漏水検知を知らせるアラートメールが届けば、クラウド連携も成功です。

  4. クラウドサービスのダッシュボード表示確認

    漏水検知動作を確認できたら、SORACOM Lagoon のダッシュボードを開いてみてください。漏水センサの現在状態の表示が、「漏水検知」に変わっているはずです。 オプションで USB カメラを接続していれば、USB カメラで撮影した画像も、ダッシュボードに表示されます。

漏水センサリボンが乾き、漏水センサからの BLE 送信が止まったら、漏水監視システムは漏水が止まったと判定して、通知表示を停止します。

漏水監視システムの動作を確認できたら、SW を長押ししてください。 5秒以上押すと、Armadillo-IoT A6E が自動的にシャットダウンして電源オフします。 シャットダウン動作を開始すると、LED_SYS の点滅が始まり、シャットダウン完了して電源オフしたら LED がすべて消灯します。電源オフしたら、Armadillo-IoT A6E の AC アダプタのプラグを抜いてください。

付録

ダッシュボードファイルの作成ツール

漏水監視システムの SORACOM Lagoon ダッシュボードを作成する際に使用する、ダッシュボードテンプレートの内容書き換えを行うツールを、HTML ページとして提供しています。 このページです。

ダッシュボード定義ファイル作成ツール

「IMSI」に SIM の IMSI、「漏水センサマイナー番号」の入力フィールドには、漏水センサの識別番号を入力してください。 この識別番号は、Node-RED フローに漏水センサ情報を設定で設定したのと同じ値です。 「センサ名」は、空のままで構いません。このフィールドに設定した文字列は、ダッシュボードの表示で漏水センサ名として使われます。 「センサ名」を空にした場合は、'漏水センサ_[識別番号]' という形式のセンサ名が設定されます。 ダッシュボードの漏水センサ状態表示に、漏水センサの設置場所を示す名前を使いたい場合は、「センサ名」を設定してください。

IMSI と漏水センサマイナー番号(および、センサ名)を入力したら、「ファイルに保存」をクリックしてください。 ファイル保存ダイアログが開きますので、適当な名前(たとえば lagoon_dashboard.json)で保存してください。 保存した .json ファイルを SORACOM Lagoon にインポートすれば、漏水監視システム用のダッシュボードを作成できます。

コンテナのSWUイメージを使ってセットアップする

漏水監視システム用の Node-RED コンテナは、インストールディスクイメージに加え、コンテナの SWU イメージも提供しています。 漏水監視システムのインストールディスクイメージで Armadillo を初期化するかわりに、この SWU イメージをインストールしても、漏水監視システムをセットアップできます。

さて、漏水監視システム用 Node-RED コンテナの SWU イメージを、出荷状態の Armadillo-IoT A6E にインストールするには、次の作業が必要です:

  1. Armadillo と PC を USB ケーブルで接続する。
  2. 作業用 PC を Armadillo のコンソールに接続するための設定を行う。
  3. シリアル通信ソフトウェアで Armadillo のコンソールに接続してログインする。
  4. ABOS のコマンドを使って、プリインストールされているコンテナを削除する。

以上の作業を行うと、Node-RED コンテナの SWU イメージをインストールできるようになります。 それでは、漏水監視システム用 Node-RED コンテナの SWU イメージをインストールするまでの手順を述べます。

  • Armadillo と PC を USB ケーブルで接続

    Armadillo-IoT A6E のケースの、四つあるカバーパーツのうち、"COM" という印字のある場所に接したカバーパーツを取り外してください。 カバーパーツを取り外すと、USB microB コネクタがあります。

    マニュアルのArmadillo と開発用 PC を接続を参考にして、Armadillo と PC を、USB ケーブル(A-microB)で接続してください。 A-microB の USB ケーブルは、Armadillo-IoT A6E 開発セットに付属しています。

  • 作業用 PC を設定

    Aradillo のコンソールに USB ケーブルでシリアル通信接続するために、シリアル通信ソフトウェアを PC にインストールしてください。 作業用 PC が Windows なら、TeraTermを使用します。 Linux をお使いの場合は、マニュアルの開発環境のセットアップにある「シリアル通信ソフトウェア(minicom)の使用」で説明している、minicom を使用してください。

    作業用 PC が Windows の場合、デバイスドライバのインストールが必要になります。 こちらのページを参照し、インストールを行ってください。

    シリアル通信ソフトウェアの設定は、以下の通りにしてください。

    項目 設定
    COMポート Silicon Labs CP210x USB to UART Bridge
    転送レート 115,200bps
    データ長 8bit
    ストップビット 1bit
    パリティ なし
    フロー制御 なし
  • Armadillo のコンソールに接続してログイン

    Armadillo-IoT A6E の電源を入れ、起動完了すると、コンソールにログインプロンプトが表示されます。 root でログインしてください。 マニュアルのログインに記載しているように、パスワードの設定を求められますので、設定用にパスワードを二回入力してください。

  • プリインストールされているコンテナを削除

    root でログインしたら、以下のコマンドを入力してください。このコマンドを実行すると、Armadillo-IoT A6E 上のコンテナを 全て削除します。 もし、自分で作成したコンテナもある場合、そのコンテナも削除されてしまいますので、コンテナイメージやデータをバックアップしてから作業してください。

    armadillo:~# podman stop a6e-gw-container
    armadillo:~# abos-ctrl container-clear
    

    注意: この Howto の作成時点では、アットマークテクノが提供しているコンテナ SWU イメージでインストールできるコンテナは、一つだけです。 そのため、プリインストールされているコンテナを削除しないと、Node-RED コンテナをインストールできません。

以上で、漏水監視システム用 Node-RED コンテナの SWU イメージをインストールする準備が終わりです。 SWU イメージのインストール手順は、以下の通りです。

  • PC の Web ブラウザで ABOS Web にアクセス

    SWU イメージのインストールには、SIM 接続設定 の手順でも使う ABOS Web を使用します。

    まず、Armadillo-IoT A6E と設定作業用の PC を LAN ケーブルで接続してください。 それから、PC の Web ブラウザで https://armadillo.local:58080 を開いてください。 この URL を開くと、ABOS Web の画面が現れます。 最初はパスワードを設定するよう求められますので、パスワードを設定してから、設定したパスワードでログインして設定操作を行ってください。

    ABOS のパスワード設定は、マニュアルを参照してください。

    ABOS Web のパスワードを設定してからログインすると、トップページが開きます。

  • 漏水監視システム用 Node-RED コンテナをインストール

    ABOS のトップページにある「SWU インストール」をクリックすると、SWU インストール画面に遷移します。 SWU インストール画面に遷移したら、「SWU URL」の下にある入力フィールドに、以下の URL を入力してください。

    https://armadillo.atmark-techno.com/files/downloads/armadillo-iot-a6e/image/water-leakage-sense-node-red-a6e-1.0.0.swu
    

    これは、Armadillo-IoTゲートウェイ A6E 漏水監視システム コンテナのページで公開している SWU イメージの URL です。 この URL を入力してから「インストール」をクリックすると、インストールが始まります。 インストールが終わり、Armadillo の再起動が完了したら、IoT ゲートウェイに漏水監視システムをインストールの「インストール後の起動確認」で説明しているのと同じ LED の点灯状態になるかを確認してください。