今回はABLICのPH-Bシリーズで積層表示灯を有線通信や、社内ネットワークではなく、メールサーバー(gmailやicloud)からの制御をしていきたいと思います。
これにより、積層表示灯やopenblocksの範囲を縛られることなく設置できます。
今回使うノード
今回は積層表示灯ということで、ablicさんのPH-Bのシリーズに変更をかけていきます。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-11_24_42-Node-RED-_-漏水検知-パトライト点灯サンプルプログラム-1-1024x439.png)
今回追加するノードは以下の3つになります。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/image-157.png)
ノードの移動と無効化
現在あるデータを整理していきます。必ず図も合わせて確認してください。
まずパトライトIPアドレス設定とパトライト警報&接点ON/OFF設定を選択。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-11_51_55--1024x589.png)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_10_33--1024x575.png)
右クリックでノード内、選択したノードを無効化にします。すると枠が点線になり薄くなります。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_13_25--1024x587.png)
そうしましたら、他のノードとつながっている線を削除し、切り離して下に移動させます。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_13_25-1-1-1024x587.png)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_14_29-openblocks-_-メモ-Discord-1024x586.png)
次に、音声繰り返し回数設定とセンサー識別を繋げている線を削除します。(ノードは消さないでください)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-11_54_35-openblocks-_-メモ-Discord-1-1024x592.png)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-11_54_44-新しい通知-1-1024x590.png)
そうしましたらセンサー番号取得とセンサー識別を線で繋ぎます。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-11_57_33-openblocks-_-メモ-Discord-1024x586.png)
次に、下図の方を変更していきます(右側の方)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-11_58_13--1024x590.png)
音声&光switch、接点switch、パトライト光&音声、パトライト接点出力1の4つを無効化して切り離し下に移動させます。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_00_57--1024x589.png)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_16_29-openblocks-_-メモ-Discord-1024x592.png)
この削除部分に、音声繰り返し回数設定を移動させ、左側にLED(赤黄緑)点灯設定1と接続、右側にdebugノードを接続します。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_17_25-1-1-1024x591.png)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_17_34--1024x587.png)
こちらで整理は完了になります。
ノードの追加
今回必要なノードを追加していきたいと思います。
左のノード一覧からchangeノードをドラック&ドロップします。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_22_25--1024x591.png)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_22_33--1024x592.png)
こちらの下図のように変更してください。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_23_54-.png)
この音声切り替えを音声繰り返し回数設定と繋げます。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_31_41--1024x587.png)
次に上にあるメール本文、メール件名、メール送信の3つをコピーします。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_33_55--1024x589.png)
そうしましたら、名前を以下のように変更してください。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_39_16-openblocks-_-メモ-Discord-1024x589.png)
メールコマンド、メールサーバーは複雑なため、まずはメール件名から見ていきます。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_40_33-openblocks-_-メモ-Discord.png)
こちらはその名の通り、メールの件名設定になります。
代入する値の右横の文字を変えることで、件名を変更することができます。
次にメール設定をしていきます。
メール送信設定(openblocks)
まずはopenblocksから見ていきます。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_39_16-openblocks-_-メモ-Discord-1-1024x589.png)
こちらのメールサーバーと書かれたノードを開き設定していきます。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_43_34-.png)
宛先はお使いのメールサーバーを指定してください。
サーバー、ポートはgmailであれば上図の設定でお使いできます。
なお、サーバー、ポートはお使いのメール(gmail、icloudなど)にサーバーポートと検索すれば出てきますので、検索してください。
最後にユーザーIDとパスワードです。
ユーザーIDは送信元のメールアドレスを設定してください。
パスワードはアプリパスワードというものが必要になります。gmailの場合は以下の手順になります。
こちらをクリックしログインします。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/image-158.png)
上記にアプリ名を入れて作成をクリック
パスワードが表示されますのでそちらを控えてください。
パスワードは閉じると2度と確認できないため必ずメモに取ってください
こちらで発行したパスワードを、先ほどのノード内に設定することでメールを送信できるようになります。
一度injectノードを入れ、メールノードと繋ぎデプロイします。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-12_59_14-一般-_-メモ-Discord-1024x619.png)
デプロイ横の四角を押し、メールが送られているかを送信先メールアドレスから確認してください。
確認できましたら、次に積層表示灯の設定に移ります。
メールの受信設定(積層表示灯)
積層表示灯の設定画面を開きます。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-13_04_14-一般-_-メモ-Discord-1024x451.png)
左の一覧の監視設定を開き、メールサーバー設定をクリックします。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-13_05_42-一般-_-メモ-Discord-1024x455.png)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-11_08_34--1024x478.png)
ここで、openblocksのノードと同じ設定をしていきます。
サーバーとポートの設定をし、ユーザー名はメールを受け取る側を設定します。
パスワードは先ほどと同じようにアプリパスワードで生成してください。(下記URLはgmailのもの)
こちらの設定ができましたら、右上にある設定をクリックして設定を保存してください。
次にメールサーバー設定の下にあるフィルタルール設定を開きます。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-13_12_01--1024x453.png)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-26-11_51_25-1-1-1024x454.png)
フィルタの設定は、差出人で判断するのがいいと思いますが、それ以外に件名、本文など設定は色々変えられますので、お好みで変更してください。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-13_15_48--1024x524.png)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-13_15_59--1024x509.png)
条件1-条件合致時動作に関しましては、設定を固定することもできますが、
今回はメール内容で制御するためメール内容で制御を選択してください。
これでメール受信設定が完了になります。
コマンドの設定
メールの送受信設定ができたので、最後にコマンドが送ることができれば動作させることができます。
まずは下記URLの73ページを開いてください。
制御コマンドがこちらに記載されています。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-13_22_15-JP_KF_0000000759_VkWTWux2.pdf.png)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-13_22_30-JP_KF_0000000759_VkWTWux2.pdf.png)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-13_22_42-JP_KF_0000000759_VkWTWux2.pdf.png)
簡単に説明しますと、
まずはコマンド部分を下記で囲います。
<command></command>
次に操作させたいパラメーターを入力します。今回はランプの赤を光らせたいとしたとき
<command>led=10000</command>
となります。説明書ではled=<r><y><g><b><c>となっていますので、
led=10000は
led=赤、黄色、緑、青、白 となっており、数字は1が点灯、0が消灯のため
led=点灯、消灯、消灯、消灯、消灯 となっています。
こちらの通りにNodeREDのコマンドノードに入力していきます。NodeREDのメールコマンドを開き下記のコマンドを入力します。(コマンド一覧参照)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-13_32_20-openblocks-_-メモ-Discord-1024x586.png)
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-13_33_55-openblocks-_-メモ-Discord.png)
<command>led={{payload.sensor_red}}{{payload.sensor_yellow}}{{payload.sensor_green}}00&speech= {{payload.sensor_location}}で漏水を検知しました。確認してください&repeat={{payload.patlite_repeat}}&voice={{payload.patlite_voice}}</command>
先ほどのコードとはまた違うコードなのですが
{{なになに}}
というものがいくつかあります。
これは{{}}で囲まれているものの代入を表しており、コードコマンドの前にある
・LED(赤黄緑)点灯設定1
・音声繰り返し回数設定
・音声切り替え
の代入する値を変えることで変更できるようになっています。(要は変更の際見やすくしました)
最後に正常に動くかテストするために、injectノードを追加し設置場所に接続したらデプロイします。
![](https://smartlight.co.jp/wp-content/uploads/2024/09/2024-09-27-13_42_49-Node-RED-_-漏水検知-パトライト点灯サンプルプログラム-1-1024x579.png)
追加したinjectノードの左の四角をクリックし、積層表示灯が動作すれば完了になります。