何?
環境もろもろ測定デバイスを作りました。温度・湿度・気圧・二酸化炭素濃度を測定します。ついでに Ambient というサービスにデータを送信して、グラフ化しています。
デバイスの見た目はこんな感じ。
CO2など環境もろもろ測定デバイス、見た目それっぽくなった。グラフは適当だけど… pic.twitter.com/luQkZwF1JW
— わらしな (@wrsn0) 2021年5月13日
グラフの見た目はこんな感じ。
材料
- M5StickC Plus: https://akizukidenshi.com/catalog/g/gM-16011/
- MH-Z19C: https://akizukidenshi.com/catalog/g/gM-16142/
- むき出しの見た目が気になる場合、M5StickC用「Co2 HAT(ソケット版)」キット(※Co2センサ別売り) - きっと何かに役立つでしょ!? - BOOTH をオススメ。
- M5Stack用環境センサユニット ver.2(ENV II): https://www.switch-science.com/catalog/6344/
ソースコード
ssid
, password
, channelId
, writeKey
を書き換えたら動くはず。利用しているライブラリのうち、以下は Library manager からではなく github 経由で利用しました。(M5Stack のライブラリ周りの乱立、もっとどうにかならんのか……)。
- GitHub - nara256/mhz19_uart
- M5-ProductExampleCodes/Unit/ENVII/Arduino/ENVII at master · m5stack/M5-ProductExampleCodes · GitHub
Ambient とは
IoT データの可視化サービス。チャネルと呼ばれるデータの管理単位を作る・マイコンに送信用のコードを3行ぐらい書く だけでグラフが生成されるので、使い始めるハードルが非常に低く、プロトタイピングに便利。無料ユーザでも十分なチャネルを生成できるし、データも1年間保存される。エンドデバイスからのデータ受信監視機能や、アラート機能は有料ユーザ向けになっている。 色々書くよりも、チュートリアルを見たほうが手っ取り早いので、使い方については割愛します。
その他の感想
- M5Stack Core2 や M5StickC Plus 等、現行のデバイスの組み込みの Wifi は 2.4GHz 帯にのみ対応している。5GHz のほうに接続しようとして出来なくて、少し焦った
- Ambient 簡単すぎてすごい
- 実は手元に ENV II Hat, ブレイクアウトボードの BMP280, Yun Hat があり、手元に合計4つの BMP280 がある(???)。ただいずれも微妙にセンサの個体差があり、特に湿度では ±5% ぐらいの差があった。補正したいところだけど、お手本にしたい計器がないので、特にやってない
- 「1000ppm を超えるとブザーを鳴らす」というのも簡単に作れるけど、やらなかった。部屋を締め切って寝るときなど、ブザーを鳴らされたくないときがあるし、デバイス側にその仕組をもたせるとそのへんの機微を調整しづらいため。