node-red
ECHONET
Home@KAIT

Node-REDを使ってECHONET Lite機器を制御する2

More than 1 year has passed since last update.

Node-REDを使ってECHONET Lite機器を制御する2

本記事ではWindows PCにNode-REDを走らせ、ECHONET Lite機器を制御する方法を説明します。


ECHONET Lite機器もしくはエミュレータの準備

ECHONET Lite機器はない場合は、下記のエミュレータを準備する。 

・MoekadenRoom

Windowsなどで利用可能なエアコン・照明・ブラインド・電子錠・温度計のエミュレータ

http://kadecot.net/blog/1479/

*Node-REDと同じPCでは起動しないこと。

 


ECHONET Liteパケットの受信

「input」カテゴリの「udp」ノードでECHONET Liteパケットを受信する。

pic3.png

「output」カテゴリの「debug」ノードで受信したパケットをデバッグ窓に表示する。

pic4.png

★「Deploy」し、パケット受信するか確認する。

 同じネットワークに接続されたECHONET Lite機器の動作状態を変更するなどして、INFパケットを出す操作を行い、そのパケットを受信できることを確認する。


送信相手のIPアドレスを表示

「output」カテゴリの「debug」ノードで受信したパケットの送信元IPアドレスをデバッグ窓に表示する。

pic5.png

★「Deploy」し、パケット受信した際、IPアドレスが表示されるか確認する。


機器検索

マルチキャストアドレス(224.0.23.0)に対し、EPC=0xD6(自ノードインスタンスリストS)をGetする。

「function」カテゴリの「function」ノードに上記機能を実装する。

pic6.png

「output」カテゴリの「debug」ノードで、デバッグ窓に「function」ノードで指定した文字「Search」を表示する。

*function「Search」が実行された時に表示する。

pic7.png

「input」カテゴリの「inject」ノードで、 function「Search」を実行するトリガを作成する。

pic8.png

★「Deploy」し、機器検索するか確認する。

 「Start」ノードの左をクリックで機器検索する。

 同じネットワーク内にECHONET Lite機器があれば、EPC=0xD6(自ノードインスタンスリストS)をGet_RESしてくる。


受信したELパケットをParse

「function」カテゴリの「function」ノードに上記機能を実装する。

pic9.png

Parseした結果をデバッグ窓に表示する。

pic10.png

★「Deploy」し、デバッグ窓に表示される結果を確認する。


照明を制御

マルチキャスト向けに、一般照明クラス(0x0290)の動作状態(0x80)をON(0x30)にSet(0x61)する。

pic11.png

★「Deploy」し、照明がONするか確認する。

照明をOFFするものも作る。

「Light_ON」ノードをコピーし、「Light_OFF」ノードを作成する。

edt = 0x31;

に変更する。

「function」カテゴリの「delay」ノードと、「input」カテゴリの「inject」ノードを使って、照明のON/OFFを繰り返し制御する。

pic12.png


エアコンを制御

ユニキャスト向けに、家庭用エアコンクラス(0x0130)の動作状態(0x80)をON(0x30)にSet(0x61)する。

まずはIP指定。 *IPアドレスはそれぞれの環境にあわせて設定すること。

pic13.png

エアコンONのパラメータ設定

pic14.png

ECHONET Liteパケット送信

pic15.png

デバッグ窓へ表示

pic16.png

★「Deploy」し、エアコンがONするか確認する。

制御するエアコンを増やす場合、

pic17.png


鍵の状態に応じてエアコン制御

電気錠クラス(0x026F)は施錠設定(0xE0)が変化するとINFがでることを利用する。

pic19.png

「function」カテゴリの「switch」ノードで施錠設定(0xE0)の値に応じて、条件分岐を行う。

pic20.png

「output」カテゴリの「link」ノードを使う。

pic21.png

「input」カテゴリの「link」ノードを使う。

pic22.png

追加したノードに線をつなげます。

pic23.png

★「Deploy」し、鍵の状態に応じてエアコンが制御されるか確認する。

以上。