どうも、CHASUKEです。
先日手に入れたIFTTT対応スマートコンセントで、寝室の扇風機をAIスピーカーから音声操作できるようにしました。
▼先日のスマートコンセント紹介記事はこちら
https://chasuke.com/wp/smacon/
こちらの製品は、Google HomeとAmazon Echoともにスマートホームスキルに対応しており、電源ON/OFFの操作ができます。
ベッドに寝転んだ状態で音声操作できて便利になったのですが、スマートホームスキルでは「1時間だけ扇風機をつけて」とはお願いできません。
今回は、この問題をどうにか解決するため、IFTTTとMESHアプリを駆使して「扇風機タイマーオフ」を実現してみました!!
AIスピーカーとIFTTT対応製品は、MESHアプリとの相性が良い事が判明して、とても感動したのでメモしておきます♪
MESHとは
MESHは、SONYが新規事業開発の一貫として開発した小さなIoTデバイスです。これを使ったビジュアルプログラミングが可能なMESHアプリでレシピを作ることで、簡単にIoTを実現できます。
▼2年前に紹介してますね
https://chasuke.com/wp/iot_mesh_tag_sony/
こちらのMESHアプリを使って、『扇風機タイマーオフ』を実現するレシピを作ってみました!!
本来は市販されているMESHタグを使ってアプリ内でレシピを作成するのですが、今回は、MESHタグをレシピに含めていませんw
それではいってみましょう。
作成したMESHレシピがこちら
Google Homeに「扇風機をまわして」と音声指示すると、「扇風機オン→指定した時間待機→扇風機オフ」と動作するMESHレシピを作成しました。
MESHアプリでは、このように視覚的にタグをつなぎ合わせてレシピを完成させます。これなら小学生くらいの子供でもできます^^
このレシピの最大のポイントが、スタートが「IFTTTタグ」となっている点。
これによりIFTTTからMESHレシピのフローをキックすることができて、MESHアプリ内の豊富な機能が使えるようになる。もちろんタイマー機能も用意されている。
▼処理の流れとしては、以下のようになる。
- IFTTTタグ → IFTTTから呼び出し
- IFTTTタグ → IFTTT経由で扇風機ON
- タイマータグ → 待機(最大60分)
- IFTTTタグ → IFTTT経由で扇風機OFF
MESHレシピの作り方
では、MESHアプリを使って自動化レシピを作っていきます。
連携タグ(IFTTT)を利用可能にする
まず、MESHレシピのスタートになるIFTTTアイコンを用意します。
▼新規レシピ画面を開いて、一番右に連携タグというのがあります。
ここから外部サービスとやりとりするためのタグを追加できます。
▼今回は、IFTTTタグを追加します。
MESHアカウントにサインインすれば利用できます♪
▼アカウントを持っていなければ、アカウントを作りましょう。
これで無事にIFTTTタグが利用できるようになりました♪
タグを繋げる
IFTTTタグと、MESHに最初から用意されているタグ配置して、タグ同士を線で繋いで、レシピを完成させます。
こんな感じにつなげました。
各タグの属性を入力する
続いて、配置した各タグの内容属性を入力していきます。先ほど作成したレシピと同じですが、説明のため、縦に並べています。
▼配置したIFTTTタグをタップすると属性画面になります。
一番上は、IFTTTから呼ばれるものなので、起動条件を「受信したら」を選んで、イベントIDをセットします。イベントIDは、IFTTT側とMESHアプリ側で合わせてセットする合言葉みたいなものです。任意の文字でOKですが、僕は「Coooool」としました。
▼続いて、2つ目のIFTTTタグです。
今度は、MESHからIFTTTを呼び出すので動作内容は「送信する」となります。IFTTTからスマートコンセントを操作できるMerossチャンネルで扇風機の電源ONにします。ここもイベントIDは任意ですが、「ononon」としました。
▼3,4つ目は、タイマー設定になります。
タイマータグは、下部のロジックというところに用意されています。電源ONにしてからタイマー分、待ってから電源OFFにします。
ここでは、動作内容を「待つ」にし、30分にしました。ちなみに1つのタイマータグで60分(※正確には59分59秒)しか設定できないので、何時間もタイマーしたい場合は、タイマータグを何個も連ねる必要があります。
▼最後は、電源OFFにするためのIFTTTタグです。
電源ONのときと同様に、動作内容を「送信する」として、Merossチャンネルからスマートコンセントの電源をオフにします。ここもイベントIDは任意ですが、「offoffoff」としてます^^
これでMESHアプリ側の設定はおしまい。
IFTTT側を設定する
IFTTT側の設定をしてきます。
IFTTTはトリガーチャンネルとアクションチャンネルを連携する自動化サービスです。詳しくはこちらに書きました。
https://chasuke.com/wp/smarthome-ifttt/
今回、IFTTTで作成するアプレットは3つです。
- IFTTT→MESH呼び出しアプレット
- MESH→IFTTT(扇風機ON)アプレット
- MESH→IFTTT(扇風機OFF)アプレット
IFTTT→MESH呼び出しアプレット作成
最初に、①のMESHを呼び出すときのIFTTTアプレットを作成します。今回は、Google Homeから音声操作で扇風機のタイマー起動させたいので、トリガーを「Google Assistant」とし、アクションを「MESH」にします。
▼まずは、トリガーを設定
「風をちょうだい」で扇風機が回るってお洒落じゃん..w
▼アクション側は、MESHチャンネルです。
設定できる項目はイベントIDのみ。MESHアプリ側で設定した文字を入力します。
本当は「#時間扇風機をまわして」のようにしたかったのですが、MESHアプリ側に送れる項目がないので、諦めました。
MESH→IFTTT(扇風機操作)アプレット
こちらは、MESHから呼び出されるアプレットになります。
▼トリガーに「MESH」を選びます。
MESH側の電源ON用IFTTTタグにセットしたイベントIDを、こちらに入力すればOKです。
▼続いて、アクションに「Meross」を設定します。
こんな感じですね♪
電源OFFアプレットも同様に作成して3つ完了です!!!
MESHレシピを動かしてみた
動いた!!
さて、MESHアプリの作成したレシピ画面を起動した状態で、Google Homeから「風をちょうだい」と言ってみましょう。
扇風機がまわり、指定時間後に電源オフになれば成功です♪
※IFTTTからMESH呼出は、10〜20秒ほどかかるようです..
バックグラウンド起動にMESHタグが必要
残念ながら、レシピ画面を開いた状態でないと自動化レシピが起動できないのです。
▼レシピからバックグランド起動の設定はできるのだが..
本来は、市販されているボタンタグやセンサータグなどを購入して、IoTを実現するためのものです。
注意書きにあるように、販売されているMESHタグと接続されていないとバックグラウンド起動できずに、動いてくれません!!
▼アプリを閉じると、実行が停止との通知がすぐに来ます。
▼なんでも良いからタグを購入して連携させれば、問題は解決します♪
小さいIoTガジェットのMESHは、見た目は可愛いですが、少々高い。バラ売りなら1つ5〜6000円ほどです^^
例えば、温度・湿度センサータグを購入すれば、5分置きにセンサータグで気温を確認して電源ON/OFFとかもできますね。
▼こちらのLEDタグを使えば、電源ON/OFFを視覚的に伝えるためのインジケータの役割を担ってくれるかも
IFTTT→MESHの呼出に時間がかかる
その時々によって違うのだが、すぐ起動するときもあれば、30秒くらいかかることもある。
IFTTT(イフト)だけでは実現できない内容でも、MESHアプリを使えば、簡単に機能拡張が可能だ。Nature RemoなどIFTTT対応した家電リモコンと組み合わせれば、さらに面白いことができそうです。
以前、Integromatで実現した赤外線リモコンの連続実行も可能になりそう。
IFTTT→MESHは、呼出時間が許容できる場合のみ使えそう。今回のように寝る前の扇風機の起動くらいなら30秒くらいなんともないですが、テレビ電源などは30秒も待ってられませんからね。
ラズパイハブでバックグラウンド起動
今回、作成したMESHレシピを起動するためには、アプリをインストールしたスマホが近くにないと使えない。
ラズパイをハブにすることで、スマホやタブレットが近くになくても、MESHハブアプリをインストールしたRaspberry Pi を利用して、あなたのMESHレシピを常時動作させることが可能です。
もしかしてと思って、こちらも試したが、やはりこちらもMESHタグが接続されてなければ、使えませんでした。
これはこれで便利なので、次回試した結果をお伝えします♪
最後に
IFTTT製品とMESHアプリを組み合わせて、自動化の仕組みを作ってみました。
MESHアプリと意外と相性が良く、なかなか使える印象です。ただし、バックグラウンド起動にはMESHタグが必要だったり、起動に少し時間がかかるといった制約もあるので注意です。
面白いと思ったら、是非試してみてください!!
それでは良いスマートライフを。