netatmo ウェザーステーションを買ってAPIを叩いてみる

netatmo ウェザーステーションとは

netatmoウェザーステーション

公式HP ※公式のJPは死んでるっぽいので、USサイト

その名の通り気象情報をセンサーで取得するデバイスです。基本構成は2つのセンサーデバイスで、大きいほうが室内用、小さいほうが屋外用となっています。電源は室内用はUSBから、屋外用は単4電池2本で駆動します。それぞれのセンサーから取得できるデータは以下になります。屋外用のセンサーというのは実はありそうで無いので、ベランダなどに設置しておくと今の屋外気温が取得できるので面白いです。

  • 室内用

    • 気温
    • 湿度
    • 気圧
    • CO2
    • 騒音
  • 屋外用

    • 気温
    • 湿度

これを設置してユーザ登録してログインすると、PCではこんな画面でデータを見ることができます。

※地図の部分はボカしています

f:id:tomo_watanabe:20140501213157p:plain

ちなみに、全世界の今の気温もGoogleMap上でみることができます。クリック

また、iPhoneアプリAndroidアプリもあります。Androidではウィジェットに設定できるのでこれは便利!です。

f:id:tomo_watanabe:20140501214917p:plain

IFTTTと連携

このデータを元にIFTTTを使って連携しようと考えました。例えばこんな感じのレシピを作れます。

f:id:tomo_watanabe:20140501213757p:plain

これは「湿度が10%を切ったら、Tweetする」ということになります。とはいえ、本当にやりたかったのは「毎朝8時に、今の屋外の気温をTweetする」のようなことがしたかったのでこれはイマイチです。IFTTTではnetatmoウェザーステーションはトリガーにしか使えない、かつこの場合、3つの事象が含まれるのでIFTTTでは実現できません。

netatmoのAPIを利用

というわけで、netatmo APIを利用して作ることにしました。ここにアクセスして、「MY APPLICATIONS」を登録することでAPIを叩くことができるようになります。

APIの取得の仕方等はNetatmo ウェザーステーションを買ってみたので Node.js でいじってみたを参照して下さい。

今回はVPSを使わず、手元にあったRaspberry Piを使用して、下記のような構成を作ってみました。

結果

これはこれで簡単にできるので、もう少し色々連携させたくなってきました\(^o^)/ Raspberry Pi上でMQTTのブローカーを導入して、周辺デバイスと連携とか