自由研究

M5StickC PlusとSwitchBot温湿度計で家中の温度と湿度を管理するぞ

投稿日:

はじまり

結構長いあいだ在宅勤務を続けていると、自宅の情報をデータ化したくなるものです。
特に仕事スペースの快適さというのは気になるもので、以前から温湿度の表示がついた置き時計を置いてたんですが、以下のような課題がありました。

  • 部屋を締め切ってエアコン付けていると、いつの間にか屋外のほうが快適になっている
  • 冬場、脱衣所が寒すぎる
  • どうも脱衣所がカビやすい

これらの課題に対処するため、とりあえずデータを取ってみようということで、室内・屋外・脱衣所の三ヶ所に温湿度計を置くことにしました。

完成品の紹介


このようになりました。
上から順に、室内・室外・脱衣所の温度と湿度が表示されます。
背景にうっすら色がついていて、不快指数を基準に、暑いほど赤く、寒いほど青く表示されます。
この画像だと、パッと見で「外のほうが暑いんだな」というのが分かるうえ、詳しく確認すると屋外よりも脱衣所のほうが湿度が上がっている事がわかります。

機材の紹介

特に案件じゃないのでアレですが、公式サイトにリンク張っておきます。

選定理由ですが、M5StickC Plusはとにかく必要十分な機能があったことが一番です。そこそこ安くて、ディスプレイが付いていて、本体に温湿度計が付けられること。
センサユニットはM5Stickの場合、Grove端子で外付けする”UNIT”タイプと本体に直接ドッキングする”HAT”タイプ(参考リンク)の2つが選べたんですが、購入時にHATに気づかなかったのでUNITになりました。結果的にはどっちでも良かったです。
SwitchBotは純粋に、屋外は屋外用、室内は室内用で買いました。

構築の手順

  1. SwitchBotの温湿度計を単体でセットアップします。スマホにアプリを入れてペアリングすれば良いです。
  2. M5StickC PlusとセンサユニットをGrove端子で繋ぎます。コネクタはセンサユニットに同梱されていて、つながるところにつなぐだけで良いです。
  3. センサのサンプルプログラムを走らせて動作確認します。M5Stackシリーズの各本体ごと・HAT/UNITで全部サンプル用意されているので、該当するものを選びます。
  4. M5StackからSwitchBotの温湿度計のデータを取る先人のプログラムを走らせて動作確認します。M5StackかM5StickC Plusかで少し手直しが要りますが、まぁまぁ動きます。
  5. 上記サンプルを元に、がんばってコーディングします。
  6. 完成です。

苦労ポイント

技術的なノウハウがあるものは個別記事にします。

その他で苦労した点としては、M5Stack用の温湿度センサー(SHT30)と、SwitchBotの温湿度計の表示にかなり差があったことですかね。
湿度の方はほぼ同じ値を示してたんですが、温度がどうしてもズレる。3つの温湿度計を同じ場所に置いてるのに全然値が違う。それも、SwitchBotの温度がかなり緩やかにしか変化しない。
で、どうもSwitchBotの温湿度計はセンサーの生データを出しているのではなく、直近30分ぐらいのデータを使って補正した値を出しているっぽい、というのが分かりました。
SwitchBotのアプリでも「初回起動時や手動校正するときは30分以上放置してね」とあり、同じ場所に長時間置かれることを前提とした表示のようです。
ということで、1時間ぐらい放置すると値が揃ってきて、それでもSHT30だけ数値がズレていたので、SHT30側がおかしいんだろうということで、M5Stick内でプログラム的に補正することにしました。

あとはまぁ、省電力のためにCPUの周波数を落とそうとしたら80MHz以下では起動すらしなかったり、Bluetoothから拾うデータが結構な頻度で欠損するので欠損が分かるようにしてみたりと、そんなところですね。

おわりに

今回初めてIoTデバイス作成にチャレンジしてみましたが、自分で作ったものが物体として生まれるとうれしいですね。
また、PCやスマホのアプリと違い、専用デバイスで常時表示されていると、ふと気になったときに気軽に確認できるし、すぐ目に入るので良いです。
結構実用的なものが作れたので満足しました。

-自由研究

執筆者:

関連記事

no image

マイナンバーカードは偽造できるのか

まえがき マイナンバーカード、発行してますか?私は持ってます。 さて、マイナンバーカードの普及促進のキャンペーンにSPY×FAMILYが抜擢されて話題です。 マイナンバーカード普及に向けたSPY×FA …

no image

オンライン麻雀ゲームの牌山イカサマの検証について

今日、雀魂のアップデートがあり、牌山の検証システムに使われるハッシュ値がMD5からSHA-256にアップデートされました。 で、牌山検証とはなんぞや、というと、オンライン麻雀はシステムがイカサマをして …

no image

MagicaVoxelとDMM.makeでオリジナルフィギュアを作ろう

もくじ 読まなくても良い前書き 3月16日は岩本町芸能社に所属する栗原桜子ちゃんのお誕生日でした。 お誕生日おめでとう!ということでオリジナルフィギュアをプレゼントしましたので、 その制作過程とかを紹 …

まんがタイムきらら展のイラストボード一覧

まんがタイムきらら展面白かったですね! みなさんはイラストボード見ましたか? 撮影可だったので全部写真に撮りました!どうぞ!!!! 展示での配置は公式のツイートをご参照下さい。 せっかくですので、スペ …

ツイートを狙ってバズらせるテクニック

みなさんTwitterやってますか? 自分のツイートがバズったことありますか? 私はある。 ドヤ。 ドヤはともかくとして、人にはバズらないといけない時があって、そういうときのためのテクニックを紹介しま …