Raspberry pi+Homebridge+IRKitで自宅をスマート化し、Google Home/Android/HomeKitから操作する

コロナ以降は夫婦ともに完全リモートワーク生活になったので、二人とも長時間自宅にいることが多くなりました。このため、自宅を快適にするべくスマートホーム化を少しずつ進めています。

スマートホームの全体像

全体像は次の絵のような感じで、私がiPad/Mac/iPhoneのApple Homeアプリからエアコン、テレビ、フロアランプ、スマートロック等を、妻はAndroidスマホのGoogle Homeアプリから家電を制御しています。
世の中にはスマートホーム(Google Home、HomeKit、Alexa)対応の家電がたくさんありますが、我が家には普通の家電しかありません。HomebridgeとIRKitを使うことで、普通の家電をGoogle HomeやApple Homeアプリから使えるようにしています。

スマートホームでできること

スマートホームといっても声でテレビをオンオフできても別に嬉しくないしなぁ…という人は多いと思います。正直私もそうでしたし…。しかし、家電の音声制御はスマートホームのパーツの1つに過ぎず、さらに整備を進めることで徐々に「スマート」「オートメーション」といった感じになっていきます。

Level1. 家電を単体で操作する:Google Home/Apple Home

一番イメージしやすいのはこれだと思います。各種Homeアプリからタップで、もしくはSiri、Googleアシスタントから声で、個々の家電をオンオフしたり、ボリュームを変えたり、設定温度を変えたりできます。ただ正直これだけでは、赤外線リモコンをスマホから使っているのとたいして変わりません。そもそも声による操作もそう実用的には思えません。

Level2. 家の状況を一望する:Apple Home

HomeKitでスマートホームを構築すると、Apple Homeアプリから家全体の状況をダッシュボードのようにひと目で把握できるようになります。部屋ごとに個別に状況を見ることもできます。少しずつスマート感が出てきます。


Level3. シーンで家全体の状態を制御:Apple Home

そしてさらに、複数の家電の状態を「シーン」として登録すれば、シーンを切り替えることで家全体の状態を一気に切り替えることができるようになります。
例えば [仕事中] という名前をつけたシーンなら、次のようになります。
  • LDK:リモートワーク向けに不要な家電はOFF、照明は昼白色
    • LDKのエアコン:状態継続
    • ダイニングのシーリングライト:OFF
    • ダイニングの間接照明:OFF
    • リビングのシーリングライト:ON、昼白色
    • リビングのテレビ:OFF
  • 寝室:妻のリモートワーク向けにサーキュレータはON、照明は昼白色
    • シーリングライト:ON、昼白色
    • サーキュレータ:ON
    • 寝室のエアコン:状態継続
  • 玄関の鍵:施錠
また、[リラックス]という名前をつけたシーンなら、次のようになります。
  • LDK:ゆったり過ごすため間接照明を点灯、照明は電球色
    • LDKのエアコン:状態継続
    • ダイニングのシーリングライト:ON、電球色
    • ダイニングの間接照明:ON
    • リビングのシーリングライト:ON、電球色
    • リビングのテレビ:状態継続
  • 寝室:基本的に不在になるためすべてOFF
    • 寝室のシーリングライト:OFF
    • 寝室の間接照明:OFF
    • 寝室のエアコン:OFF
  • 玄関の鍵:施錠
※ 残念ながらイタリック体の部分に関しては今後の予定です。Hueの値段さえ戻れば。。

こんな風にシーンを設定すると、シーンがApple Homeの画面上に表示され、家は今どのシーンに該当しているかひと目でわかるようになります。そしてシーンを直接タップすることで、設定した状態へと家電が一斉に切り替わり、かなり便利になってきます。

Level4. オートメーションによるシーンの自動切り替え:Apple Home

そしてオートメーション機能を使うことで、日が沈むと自動で[リラックス]シーンに切り替えたり、始業時間になると自動で[仕事中]シーンに切り替えたりできるようになります。モーションセンサーを使えば、朝リビングに人が立ち入ったら照明とテレビをつけ、サーキュレータをまわしつつニュースを読み上げさせたりもできます。

ほかにも、家から離れた、家に戻ってきた、特定の家電を操作した、センサーが反応した、等の様々なイベントを条件にシーンを遷移させることができます。

このあたりまで来ると、スマホからリモコンでポチポチ家電を操作するとか、「OK Google、テレビをつけて」といった状況から格段に進歩し、ホームオートメーション・スマートホームという言葉が似つかわしく感じるようになってきます。

Apple HomeとGoogle Homeの思想の違い

Google Homeではシーンを使うことはできませんが、ルーティン機能を使うことで複数の操作をまとめて実行できるため、Apple Homeと似たようなことはできます。例えば「おやすみ」ルーティンですべての照明を消す、などです。しかし、Google Homeではシーンのような形で家の状態をわかりやすく把握することはできませんし、個々の家電の状態を確認するのも面倒です。

Apple Homeが家全体の状況を常に可視化しつつ状態を適宜切り替える、という思想であるのに対し、Google Homeは可視化は重視せず、あくまで声を中心に個々の家電を操作させる、という思想のようです。



これは個々人で好き嫌いが分かれるところでしょう。家電の制御に関して私は、Apple Homeのアプローチの方が圧倒的に好みです。しかし、家電以外の処理…例えばニュースの読み上げと連携させるのはApple Homeでは面倒です。Google Homeではルーティンにこうした使いやすいアクションがあらかじめ並べられており、その点非常に実用的です。

具体的に利用した製品やサービス

あまりお金を使いたくないので、家に転がっているものを使って実現しています。

IRKit/Nature Remo:3,000〜1万6,000円

スマホや自作プログラムから自由に操作できる学習リモコンで、赤外線リモコンで操作できる家電ならほぼ全て遠隔操作できます。また、APIが用意されているため他の製品と連携させやすく、Homebridgeと連携することでスマートホームの使い勝手を大きく改善させることができます。


IRKitは既に販売終了しており、現在は後継製品のNature Remoに移行していますが、この構成だと出来ることはそんなに変わりません。IRKitは3,000円程度、Nature Remoは6,000〜1万円程度で入手できます。

Homebridge + homebridge-irkit:0円

HomeKit非対応の製品を仲介し、まるでHomeKit対応製品かのように操作させてくれるソフトウェアで、今回の構成の要です。プラグインを追加インストールすれば様々なデバイスに対応でき、今回はhomebridge-irkit(homebridge-nature-remo)プラグインを使ってIRKit/Nature Remoから赤外線で制御する家電をHomeKit対応製品のように見せかけます。

HomeKitに正式対応した製品に比べると操作性は見劣りはしますが、IRKit/Nature Remoを直接操作する場合に比べると格段に操作性が高まります。

Raspberry pi2:3,000円〜

Homebridgeは常に起動しておく必要があるため、24時間動き続けるコンピュータ上にインストールします。今回は3,000円程度で購入できる安価なシングルボードコンピュータ、Raspberry pi2を使っています。

我が家ではこんな感じでルーターの裏側にフックでぶらさがっています。

スマートロック Sesame mini:15,000円〜

比較的安価で、かつサポートが非常に手厚いことで有名なスマートロック製品です。スマホから開閉ができるだけでなく、オートロック、接近による自動解錠なども対応しています。


メーカーによるDIY的な活動支援も活発で、Suicaを使って解錠する方法、Homebridgeと接続する方法なども公式が記事として発表しています。Homebridgeに接続する際は、homebridge-sesameプラグインを使います。

赤外線リモコンコンセント OCR-05:1,000〜1,500円

家電とコンセントの間に差し込んで、赤外線信号で電流をON/OFFするものです。私の家では照明の制御に使っています。オーム社の製品で、1,000円くらいで入手できました。


iPad iPhone Macbook Androidスマホ

普段使っているものをそのまま使っています。iPad、iPhone、MacからはAppleのHomeアプリで、AndroidスマホからはGoogle Homeアプリで操作します。Google HomeやAmazon Echo、Home Podのようなスマートスピーカー製品がなくとも、スマホやタブレットから声で操作は可能です。

Temper:1,000円

自宅に転がっていたUSB接続の温度計です。1,000円ぐらいで売ってました。リビングの気温がわかるので何気に重宝していますが、Nature Remoには気温・湿度計がついているそうなので、その場合は不要と思われます。Raspberry pi2にUSBケーブル経由で接続されています。


Homebridgeから利用する場合は、Raspberry pi上で定期的にTemperから温度を読み取ってファイルに書き出し、homebridge-temperature-fileプラグインで読み取るよう設定します。

HomeKitとGoogle Homeの両方からアクセスする

我が家のスマートホームでは、Apple HomeとGoogle Homeの両方からアクセスできるようにしています。しかし、なぜわざわざ両方からアクセスできるようにするんでしょうか?

スマートホームの不都合な現実

Homebridgeで構築したスマートホームは、普通に使うとApple Homeアプリからしか操作できず、Androidからは操作できません。Homebridgeは家電をHomeKitに対応させるソフトウェアであり、AndroidにはHomeKitに対応した制御アプリがないからです。

そうすると、Apple製品を一切持っていない妻が家電を操作する場合、物によっては物理的に電源をオフにする必要が出てきます。すると、Apple HomeからもGoogle Homeからも二度とその家電を操作できなくなってしまいます。物理スイッチで電源が切られてしまえば、周囲から何をしようと家電をアクティブにはできないからです。



これを避けるには、妻もネットワーク経由で家電を操作できるようにするしかありません。妻のAndroidスマホからはHomeKitに直接アクセスできないので、IRKitのリモコンアプリを直接使うのが一番手っ取り早い方法です。しかし、IRKitを直接操作してしまうと、実際の家電の状態とHomeKitが把握している家電の状態にずれが生じ、ダッシュボードの情報に嘘が混じってしまいます。

Google Homeに対応するにはhomebridge-ghsプラグインを利用

やはりAndroidから何かしらの形でHomeKitが管理するスマートホームへアクセスする必要がありますが、これはhomebridge-ghsを使うことでうまく実現することができます。homebridge-ghsは素晴らしく、Google Homeからの指示で変更された家電の状態もApple Home側にきちんと同期され、それに伴ってApple Homeのシーンも遷移するようになります。このプラグインを作った人には本当に頭が下がりますね…。


こんな風に家電を中心にスマート化をすすめていますが、実際にやってみて感じたのは、効果的にスマート化するためにまずすべきは、自宅での行動を振り返ってそこにパターンを見出すことだと思います。パターンが見えればそこに必要な家電の状態がわかり、シーンとして定義できます。シーンが固まってきたら、次はどういう時にそのパターン≒シーンが発生するかを考え、オートメーション化していく…という流れです。



また、多灯の間接照明を多用して自宅の雰囲気を良くしようとする場合にも、スマートホーム・オートメーションは絶大な威力を発揮します。日々大量の照明をオンオフするのは本当に面倒で、私も過去何度か挫折してきました…しかし、シーンとオートメーションを使えば、この手の面倒事は完全にゼロになります。在宅仕事が増えた方、いかがでしょうか?

コメント

このブログの人気の投稿

3大家計・資産管理サービス Money Forward ME、Moneytree、Zaimの機能比較とおすすめの使い方

認知資源はなぜ重要なのか?:欠乏の行動経済学

資産状況のレポート:2020/7末 − 再度の下落