[22日目] 「引きこもり係数」ツイートの仕組みを解説 (後編) 〜「ESP8266」で始めるIoT入門


22日目は組み込みソフトウェアエンジニア兼、引きこもり担当の杉本が 「引きこもり係数」ツイートの仕組みを解説 の後編を担当します。
前回の記事でESP8266にNodeMCUを書き込んで、ツイートする部分まで解説しました。今回の記事は前回の続きから解説していきます。

[2日目] ついに外の世界(ネットワーク)へ「引きこもり係数」ツイートの仕組みを解説(前編)〜「ESP8266」で始めるIoT入門

「引きこもり係数」測定装置の動作について

ドアの開閉と、在宅中/外出中を判定して、在宅中が48時間以上連続した場合、
ツイートする仕様とします。ついでに温度を30分毎にGoogleスプレッドシートにログしていきます。
(温度ログについてはおうちハック研究会のブログがすごく面白いので真似しました)

ハードウェアとソフトウェアの作成

100均の開閉センサーとIKEAの人感センサー付LEDライトを組み合わせて作成します。
詳細は省略しますが、1点だけ注意があります。
ESP8266モジュールのADコンバータは0~1Vの範囲で入力する必要があります。私は1時間ぐらい正しい値が取得できなくて悩みました。
ソフトウェアはGitHubに上げてあります。
作成したハードはこちら。ケースから飛び出している黄色の物体が温度測定用のサーミスタです。

IMGP93406-02

実際に設置した写真はこちら。

6-05

外出/帰宅の判定は、

外出 人感センサーが反応している状態でドアが開く
帰宅 人感センサーが反応していない状態でドアが開く

としています。

結果と反省

結果

2015年12月11日~12日のGoogleスプレッドシートに記録された外出/帰宅ログと、30分毎の温度ログをグラフにしたのがこちらです。

図1

午前10時頃外出すると温度が下がり、午後11時頃帰宅すると温度が上がる様子が良く分かります。
就寝した時間も大体分かります。午前1時頃でしょうか。

休日の温度ログはこんな感じになります。

図1-1

午前2時に就寝、12時に起床という怠惰な生活っぷりがグラフを見ると一目瞭然です。

反省点その1

1週間以上装置を設置してデータを取ったが、48時間以上引きこもらなかったので、用意したツイートがされなかった。

図1-3

反省点その2

人感センサーが検知している状態で、ドアを開けると外出判定されるので
宅配便の受け取りに対応できない。

まとめ

ESP8266+NodeMCU+IFTTTで簡単にWEBと連携したガジェットが作れます。
水槽の温度を測るロガーとか作りたい方はESP+IFTTT連携で作ってみるのはいかかででしょうか。