もみあげあしめ

組み込みとかIoTとか、いろいろ

Raspberry Pi × Philips Hue でお天気お知らせ

「朝は晴れ 昼から曇り 夜は雨」
天気が変わりやすい日のために、お天気お知らせシステムをアップデートする。

f:id:shima_nigoro:20170717150028p:plain:h300

この記事ではRaspberry PiPhilips hue を使った自動お天気お知らせシステムについてまとめる。

はじめに

#過去に作ったお天気お知らせシステムをさらに改良したものです。

システム構成

ハードウェア

ソフトウェア

  • Python 2.7
    • phue ライブラリを利用する(sudo pip install phue)
  • cron

作ったスクリプト

以下の3つのスクリプトを使って

  1. お天気情報の取得
  2. Philips Hue Lampの制御
  3. 予報に連動した点灯色の制御

を行う。#ライブラリ化しておいてよかった…めっちゃ楽に作れた。

お天気取得用スクリプト(以前と同じものを使う)

Hue ランプ制御用スクリプト(phue のバージョンアップに合わせて修正)

お天気判別用スクリプト

定時実行するようにする

おなじみの cron を使います。

55 7 * * 1-5 python /home/pi/weather_lamp.py

平日(月から金)の 7 時 55 分に動作するように設定しておきます。

仕組みの解説

Weather Hacks - livedoor 天気情報 ではコンピュータが扱いやすい形でお天気情報を配布しています。

  1. お天気情報をダウンロード
  2. そのままでは扱いにくいため、自分が使いやすいように展開(Parse)してお天気情報を取り出す

次に Hue Lamp の制御ですが、Raspberry Piは直接Hue Lampを制御することができません。
そのため、Hue Lampを制御することのできる Bridge に制御をお願いする必要があります。
とても一人ではできないため、ここでライブラリ(phue)に操作を手伝ってもらいます。

  1. Raspberry PiPhilips hue Bridge を接続する
  2. Hue Lamp点灯状態を変更する

最後にお天気情報に含まれる文字列を判定してランプの点灯色を変えます。
お天気情報が雨ならばこんな色曇ならばこんな色晴ならばこんな色になります。
雨⇒曇り⇒晴れの順に優先順位が決まるので、雨を見逃して傘を忘れてしまうことはもうないですね!

おわりに

IFTTTを使えば、簡単にできるやんというコメントは受け付けません。
#といいつつ、そのうち IFTTT も使ってやってみたかったり LINE bot で通知させたかったり。

Philips Hue(ヒュー) スターターセット v2   929001156101

Philips Hue(ヒュー) スターターセット v2 929001156101