目次

はじめに

本書が対象とする読者
本書の内容
本書の動作確認環境
ウェブ公開データ
免責事項
表記関係について
底本について

第1章 我が家の例

1.1 物理構成
1.2 論理構成

第2章 スマートホームを作る:基本編

2.1 用意するもの
2.2 Node-REDを起動する
2.3 Node-RED Alexa Home Skill Bridge へ登録
2.4 Node-RED Alexa Home Skill Bridgeでデバイスを追加
2.5 AlexaアプリでNode-REDスキルをインストール
2.6 Hue の設定を確認
2.7 Node-RED に Alexa のノードを追加
2.8 Node-REDでAlexaとスクリプトを接続
2.9 動作確認

第3章 スマートホームを作る:応用編1

3.1 シーリングライトとHueを連動させる
3.2 照明の切り替えをスケジュールする
3.3 音声コマンドでシャットダウンする(スピーカーとの接続)
3.4 外出時に電気を消す(外出中フラグを立てる)
3.5 帰宅時に電気を付ける(Bluetoothポーリング)
3.6 リモコンでトリガーを引く(LIRCを使う)

第4章 スマートホームを作る:応用編2

4.1 NFCでトリガーを引く
4.2 合成音声におしゃべりさせる(OpenJTalk を使う)
4.3 音声を使わずにAlexaを操作する(OpenJTalk の応用)
4.4 定時に気温・湿度を声でお知らせする(netatmo のデータ取得)
4.5 毎日同じ時間に自動でカーテンを開ける
4.6 日の出の時刻に合わせて自動でカーテンを開ける
4.7 夜7時になるとNHKニュースを流す
4.8 Webスクレイピングをして大気汚染情報を教えてもらう(Pythonライブラリを活用する)
4.9 Webスクレイピングをしてバスの接近情報を教えてもらう

おわりに

謝辞

はじめに

 本書をお手にとっていただきありがとうございます。

 本書は一言でいうと『実際に運用して検証済みの、Raspberry Piを活用したDIYスマートホームの実例集』です。私は2015年頃からひとり暮らしの自宅をスマートホーム化するようになりました。初めは余ったタブレットデバイス上のアプリを使用したり、市販のIoTデバイスの想定利用シーンだけに閉じたような使い方をしていましたが、そういったデバイスが増えてくるにつれ、お互いを連動させてより自分の生活ニーズに沿った使い方を模索するようになりました。その集大成として、私の現在の自宅と同じようなスマートホームのシステムを作るための手引きとして執筆したのが本書です。

 私はこれまでさまざまな試行錯誤を行ってきましたが、後に続こうとする人がそういった試行錯誤をある程度省略できることを願って本書を書きました。私がスマートホーム化をはじめた頃は書店の電子工作関連の売り場には家電や家庭用の照明器具を対象にしたものは少なく、一方でIoT関連の売り場にも家庭でDIYするような発想の具体的なものは少なかったです。しかし2019年現在ではIoT家電やスマートスピーカーといったスマートホーム関連製品が多く登場していますし、それらを互いに組み合わせて生活を改善していくアイデア集のような本も売り場にたくさん並ぶようになりました。

 本書はそんな「IoTデバイスを互いに組み合わせてスマートホームを作るアイデア集」のひとつです。私も実際に、それらの本の中からアイデアを拝借して試行錯誤してきました。詳しい人から見れば、本書の内容にはあまり新規性や驚きはありません。書店に並ぶスマートホーム化のアイデア集を見たり、よく調べる力があればウェブ上から拾ってこられるような知識ばかりです。

 しかし、ひとつの家で継続的にIoTデバイスを次々と導入し、それに合わせてプログラムを書いたり調整をしながら改善を繰り返し、ひとつの実例として本の形で全体公開した例はないのではないかと思います(あったらすみません)。

本書が対象とする読者

 本書は、ひらたくいうと「使っていないRaspberry Piが足下に転がっているようなご家庭」を対象にしています。遊べると思って購入して、初めはいじっていたはいいものの、特に活用法も思いつかなくて放置している貴方こそ、ドンピシャの読者です。したがってRaspberry Piの基本的な使い方や、Raspbianをインストールしたりする方法は本書では解説しません。すでに動く状態にあるものとして説明していきます。サンプルコードは主にシェルスクリプトで、少しだけPythonを使っています。コピー&ペーストでも動くように動作確認はしていますが、何かトラブっても自力解決できる力が求められます。とりあえず困ったらググりましょう。

本書の内容

 本書は、Raspberry Piのようなマイクロボードコンピュータを利用して、さまざまな家電や照明を自動で動かす仕組みをつくるためのガイドです。

 「第1章:我が家の例」では実際に動いている我が家の状況を見ていただきます。本書にはあとでさまざまなスマートホームのレシピが出てきますが、すべて実現させるとこの状態になるというゴールです。

 「第2章:スマートホームを作る:基本編」では、まず最小構成となるシステムを作り上げる方法を説明します。本書のタイトルでは“Raspberry Piではじめる”とついていますが、ほかにAmazon Echo dotなど(Alexaデバイス)も必要になり、本当に一から始める場合は最小構成だけで5万円程度が必要になります。

 「第3章:スマートホームを作る:応用編1」とそれに続く第4章では、第2章で作り上げたシステムにさまざまな機能を付加していきます。それぞれの機能には依存関係がありますが、説明の順番に作っていけばうまくゴールである「第1章:我が家の例」の状態になるようになっています。

 本書でもっとも力を入れたのはこの第3章と第4章です。スマートホームをすでに自力で作ろうと思っている上級者の方であれば、第3章と第4章の目次がもっとも重要な部分となるでしょう。この内容でインスピレーションを感じることがなければ、もう本書でお伝えできることはありません。

 それでは、楽しいDIYスマートホームの世界を見ていきましょう。

本書の動作確認環境

ハードウェア

 ・Raspberry Pi 3 Model B

ソフトウェア

 ・Raspbian Buster Lite - Version July 2019(2019-09-26版)

 ・Node 10.17.0

 ・Npm 6.13.0

 ・Node-RED 1.0.2

 ・node-red-contrib-alexa-home-skill 0.1.17

 その他、2019年11月8日時点の最新のパッケージを使用しています。

ウェブ公開データ

 本書で紹介しているスクリプトはコピー&ペースト用に次のページからダウンロードできます。また、本書内で使用している動作確認音などの音声データも公開しています。

 https://github.com/yagitch/book-rpi-smarthome-sample

免責事項

 本書に記載された内容は、情報の提供のみを目的としています。したがって、本書を用いた開発、製作、運用は、必ずご自身の責任と判断によって行ってください。これらの情報による開発、製作、運用の結果について、著者はいかなる責任も負いません。

表記関係について

 本書に記載されている会社名、製品名などは、一般に各社の登録商標または商標、商品名です。会社名、製品名については、本文中では©、®、™マークなどは表示していません。

底本について

 本書籍は、技術系同人誌即売会「技術書典7」で頒布されたものを底本としています。

第1章 我が家の例

 我が家のスマートホームのシステムは2015年頃に始まりました。照明を付けたり消したりするもっとも基本的な部分はもう4年以上使っていることになります。

1.1 物理構成

図1.1: 上から見た我が家の配置図

 配置図にあるもののうち、本書で使用するものは以下です。

 ・Raspberry Pi

 ・Amazon Echo dot

 ・netatmo Weather Station

 ・Philips Hue

 ・Nature Remo

 ・シーリングライト

 ・iPhone(MACアドレスの分かるスマートフォンとして)

 ・Bluetooth スピーカー

 以下は本書では説明しません。(紙幅の都合で省略しました……)

 ・エアコン

 ・扇風機

 ・TVセット(DAC/液晶ディスプレイ/HDDレコーダ/パッシブスピーカー)

 ・HUIS

 ・Fitbit Versa

 ・Fitbit Aria

 ・ノートPC

 ・ルータ(家庭内LANは初めから存在するものとして説明します)

図1.2: Raspberry Piの実際の配置状態

 デスクの足下の埃っぽいところに置いています。支えているのは100均のワイヤーネットと、ワイヤーネット素材の小物入れです。電源はややタコ足配線気味になっていますが気にしないでおきましょう。

1.2 論理構成

 司令塔としてRaspberry Piがあり、すべての命令をここで集約しています。

図1.3: 論理構成図

 Raspberry Piが何らかのアクションをするとき、トリガーは4つあります。

 ・Alexa による音声入力

 ・赤外線リモコンのボタンプッシュ

 ・NFCタグのタッチ

 ・スケジューラ(cron)

試し読みはここまでです。
この続きは、製品版でお楽しみください。