yumulog | 社会人博士の日記

はてなブログに引っ越しました / 石川県に引っ越しました

家電とおうちのプログラミング+α

f:id:yumu19:20171128120445j:plain

本エントリは おうちハック Advent Calendar 2017 の1日目です。Advent Calendarとは、12月1日〜25日まで1日ずつ担当を決めてみんなでblog記事を書いていく企画です。

はじめに

情報処理2017年11月号の「プログラミング・エクスペリエンスの新潮流」という特集で、おうちハック(=家にある機器などをハックしてより便利におうちを使えるようにする)におけるプログラミングについてまとめ、「家電とおうちのプログラミング」という記事を書きました。本エントリは、この情報処理に掲載した記事に加筆・修正を行ったものです。

情報処理 2017年11月号

情報処理 2017年11月号

情報処理学会員の方は、無料でPDFをダウンロードできます。

ちなみに、この特集を企画した加藤淳(@)さんは、第一回おうちハック発表会のキーノートスピーカーでもあります。

IoT時代の家電

家電といえば、分厚い説明書を読みながら、ボタンがたくさんついたリモコンを難解な手順で操作するというイメージがあるかもしれません。しかし、Internet of Things(IoT)の流れとともにネットワークと接続する家電が増え、操作の概念も変わってきています。

例えば、色や明るさを変えられる電球hueは、スマートフォンアプリから操作でき、事前に設定したスケジュールに合わせて点灯する機能をもちます。屋内や屋外の気温や湿度、二酸化炭素濃度などを計測するガジェットnetatmoは、Webブラウザやスマートフォンアプリでデータを監視することができます。さらに、モジュールを追加購入することで風力や雨量などのデータも取得可能となります。

Amazon EchoやGoogle Homeなどの音声で操作するスマートスピーカーは、米国を中心に普及が進んでいます(というのが元の記事を執筆していた夏頃の所感ですが、いまや日本でも発売が開始されて注目されてます)。スマートフォンでアプリをインストールするのと同様に、Echoでは、スキルと呼ばれる様々な機能をAlexa Skills Marketplaceからインストールすることができます。

マッシュアップによるカスタマイズ

上で紹介した機器は、もともと便利で多様な機能を持ちますが、IFTTTやZapierなどのマッシュアップサービスをつかって組み合わせることで、より高い利便性を発揮するようになります。

IFTTTは、自分のためのオリジナルアプリケーションを簡単に作ることができるサービスで、「IF」というトリガと「THEN」というアクションを指定することで動作を定義します。例えば、燃えるゴミの日の朝に玄関の照明色を赤くしたり、帰宅時に最寄り駅に到着した頃に部屋のエアコンを点けたりするといったことが可能となります。IFTTTでは、IFとTHENを選んでパラメータを設定するだけで動作を決められるので、プログラミングの知識がなくてもスマートフォンアプリの設定をするような感覚で使うことができます。Zapierも似たようなサービスですが、1つのトリガに対してフィルタとアクションを複数設定できるより高機能なものになっています。

このような時代の流れの象徴と言えるデバイスがMESHです。MESHは、タグと呼ばれる5cmほどの大きさのブロック型デバイスを組み合わせて、独自のアプリケーションをつくることができます。タグには、ボタンタグ、人感タグ、温度・湿度タグなどの種類があり、タグをどのように組み合わせてどう使うかは、iPadアプリの専用ツールを使って設定します。このアプリは、モジュールの入力と出力を線でつなぐビジュアルプログラミングツールで、プログラミングに馴染みのない層にも扱いやすいようにできています。小学生を対象にしたワークショップにも活用されます。

MESHのレシピサイトやFacebookのユーザグループには、たくさんの活用事例が載っています。

MESHが出たときには「おうちハックのためのデバイスはこれだ!」と感動し、MESHプロジェクトリーダーの萩原さんには、第4回のおうちハック発表会でキーボートスピーチをしてもらったり、@ さんと私で不定期にやっている品モノラジオにもゲスト出演して頂きました。

おうちハック

おうちハックでは、既存のWebサービスAPI、ガジェット、さらに先述のIFTTTやMESHを活用したマッシュアップがよく行われます。凹(@)さんは、家電の音声操作や自動制御のシステムを自宅に構築しました。

id:bohemian916 さんは、様々なトリガーデバイスと照明などの家庭内デバイスをIFTTTとmyThingsで組み合わせました。

@ さんは、赤外線モジュールやロボットアームを使って、家庭内の様々な機器をHomeKit対応にしました。

また、おうちハックのために家の中のデータを取得したいという需要がありますが、先述のnetatomのようなセンサガジェットは高価なものが多いです。そのため、安価なセンサ部品を購入して電子工作を行うことで、様々なセンサガジェットが自作されています。ArduinoRaspberry Piといったプロトタイピング用のマイコンボードや、TWE-Liteのような低消費電力無線モジュールの普及によって、ガジェット自作の障壁は下がっています。ミクミンP(@)は、お風呂のお湯の水位を監視するセンサを自作し、お湯がたまると初音ミクが歌って知らせてくれるシステムをつくりました。 - おうちセンサでキャラクターと暮らしてみた

おうちプログラミングの未来

おうちハック発表会を始めた2014年頃は、Web経由で操作したりマッシュアップできるようなガジェットはポツポツと出始めていた時期でしたがそれほど多くなく、Arduinoなどをつかってわりと力技でハックしていた事例が多かったと思います。それが、IFTTTやmyThings、Zapierなどのマッシュアップツールをつかって組み合わせるだけで自分専用のツールをつくることができるようになりました。MESHのように、動作をビジュアルプログラミングで設定できるデバイスも出てきました。このようなインタフェースは、今後増えていくと思います。

また、おうちプログラミングで操作する対象も、従来の家電機器だけではなく、広がっていきます。 昨年のAdvent Calendarの記事 でも紹介しましたが、東京大学ソニーCSLの暦本(@)さんの「Squama」という研究では、透過度を変更できる窓を例に取り、「プログラマブル建築」というコンセプトを提唱しています。現在はおうちハックと言えば家電の挙動に関するものがほとんどですが、いずれ壁や天井を含めた住宅全体がカスタマイズ可能な要素を持ち、それを住人が自由にハックする時代が来るだろうと思っています。

おうちプログラミングのもっと未来

住人がハックしなくても、機械学習で勝手にカスタマイズされていく家になると思う。

さいごに

昨年も今年も総論的なエントリになってしまって、こういうのも大事かもしれないけど、来年は自分でおうちハックしたエントリ書きたいなと思いました。

あと、Amazon Echoの招待がまだ来ません

俺にEchoが来ないことで
俺の代わりにだれかがEchoを持てる
   ∧ ∧
  ( ・ω・)
 _| ⊃/(___
/ ヽ_(____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
俺はそういうことに
幸せを感じるんだ
 <⌒/ヽ-、__
/<_/____/