#oikawa

ミニスマートWi-FiプラグをNode-REDで制御する

前の記事

次の記事

今回やること

WindowsのNode-REDからミニスマートWi-Fiプラグを制御する。今回大分ややこしかったので注意点とともに解説していく。

前提

Kasa スマートプラグ

KasaとTapo

Node-REDの知識→Node-REDの記事も多数書いているので参考にすること

使用する機器

Kasa HS105

Tapo P110M

Tapoの機器についてはアプリへの接続方法を解説していないが基本的にはKasaの時と同じ。デバイスの追加から指示に従えばとりあえずは接続することが可能。

Tapo P110Mからやってみる

アドレスの確認

  • アプリを立ち上げデバイスのボタン以外のところをタップすると端末の設定画面が出てくる。
  • 左下図右上の設定ボタンを選択して「端末情報」でIPアドレスを確認する。

Node-REDに接続

コマンドプロンプトから「node-red」と入力しNode-REDを立ち上げる。

http://127.0.0.1:1880/にをクリックしてフローにアクセス。

Node-REDの挙動がおかしくなったら

今回私が操作しているときにおこったことなので念のため共有するとあるときフローが動かず何処を押しても反応しなくなってしまった。またフローを実行しても動作しないこともあり、コマンドプロンプトを確認すると何故か勝手にnode-redが終了していた。

皆さんもNode-REDの挙動に違和感などを感じたら再起動をおすすめする。

パレットから下記のノードを新しく追加。

ノードの追加方法について

接続は下図のように行う。図は完成図なので真ん中に使用するノード(tapo connect)を記す。injectノードはON/OFFを真偽値の出力で設定。

tapo connectノードの中身

Email、Passwordには設定したTP-Linkのアカウントの物を使用する。

Tapo ipには先程確認したデバイスのIPアドレスを入力。

そのほかmode selectはプルダウンから別のものが選べるがどちらでもよい。名前も区別しやすいものを自分で入力する。私はデバイスの名前と統一した。

デプロイして実行

injectノードを押すと、「カチッ」という音と共にプラグの電源がON/OFFする。

デバッグノードの中身を確認するとtrueが返ってきている。因みに上がfalse入力で下がtrue入力の時なのでinjectした結果が成功したかのステータスが返ってきているということだろう。

Kasa HS105の場合

2つのアプリで操作すると

Kasa HS105デバイスは以前の前の記事の続きでKasaアプリとTapoアプリと両方にデバイスが登録されている状態でどちらかに右図のような注意が表示されることがある。Kasa、Tapoのいずれかのアプリしか操作できなくなるので注意。基本的に方法は同じだがIPアドレスについてだけ異なるので今回は両方とも解説する。

同じ部分

Node-REDのフローに関してはどちらも同様。Tapo P110Mの時と違いkasaというノードをパレットから追加する。injectノードはTapoの時と変わらない。

Device IPにIPアドレスを入力し接続が確立されると名前が勝手にデバイスに設定したものに変更される。

実はスマートライト株式会社の100本ノックに同様の趣旨のブログが掲載されている。Device IPの入力の隣の🔍マークからkasa対応機器をサーチしてくれるというがサーチングでアドレスを取得できなかったので別の方法で取得する。

Tapoアプリの場合

前半のTapo P110Mで紹介した方法と同様にデバイスの設定画面からIPアドレスを確認することができる。

こちらは特に問題ない。

Kasaアプリの場合

Kasaアプリも同様に端末情報からIPアドレスを確認しようとしたが・・・。

IPアドレスが見当たらない。

IPアドレスが分からなければデバイスをNode-RED側で特定することができない。

そこで今回はMACアドレスを使用してIPアドレスを特定していく。

なので今回はMACアドレスを覚えておく。

コマンドプロンプトから

arp -a

と入力。PCがネットワークに繋がっているIPアドレスとMACアドレスをサーチしてくれる。そこで先程確認したMACアドレスをたどってIPアドレスにたどり着くことができた。

arp -aでもない

因みに私がarp -aを入力した際、同一のMACアドレスすら検出されなかった。原因は分からないがデバイスがネットワークに接続されていないということなのでデバイスの再起動などを行ってネットワークに接続されている状態を作り直すことを試してみてください。

デバッグ画面

少し手間はかかったがIPアドレスからデバイスに接続することに成功。デプロイ終了後injectノードからの入力に対してデバイスが「カチッ」と小気味よい音を奏でてくれる。

先程とはデバッグ画面が異なるのが興味深い。

Tapo P110Mの時と違い大量の情報がオブジェクトの中に含まれている。

まとめ

今回はNode-REDとスマートプラグを接続してみた。アプリに縛られず動作させることができるのでアレンジの幅が広がりそうな予感がする。