ふさふさラジオ

エンジニアのこと、映画のこと、日常を便利に過ごす裏技を発信します!

オフィスの空気が悪いのでラズパイかarduinoで空気測定機をつくる(その1計画編)

会社の空気が悪いのか酸素が薄いのか、やたら眠くなるし息苦しい。

総務に相談はしているもののビルが空調を管理しているので細かい調整ができないとのこと。しかも「空気が悪いとか酸素が薄い」というのは目に見えないことなので、わからない人にはわからなかったりする。だがしかし!このままでは仕事に支障がでるうえに、さらにオフィス人口が増えると言われており近々の対策が必要だ。

ということで、自分で数値を計測して論理的に交渉できる準備をしておく。(というかなにか機械を作りたくなった)

市販の空気測定器は高い

最初に考えたのは市販の空気測定器。空気測定器という名前が正しいのかわからないが、Amazonで検索してもみるとそれらしい商品が引っかかる。しかし高い。安いものでも二酸化炭素濃度が測れるものだと1万円以上する。それにこれでは計測はできても結果をデータとして蓄積することができない。やはり自分で作るしかなさそうだ。

エンジニアなりにざっくり考えて見た

実現したいこと

  • 定期的に温度、二酸化炭素濃度を計測して結果を保存する
  • 保存した結果をグラフ化してなんらかの形で通知・表示する

必要なそうなもの

  • 温度計測パーツ
  • 空気計測パーツ
  • コアPC(ラズパイかarduino)
    • 計測パーツから計測データを受信できること
    • usb給電できること
    • データストレージはなくてよい
    • wifi接続可能
  • クラウド(GCP)
    • データストレージ
    • 定期的にapiコールしてslack通知

機能を考える

コアPC

  • 計測処理(保存api呼出)
  • 結果表示

クラウド

  • 計測結果保存API(req:端末id、計測時間、計測データ。res:結果フラグ)
  • 結果取得API(req:端末id、丸め件数。res:計測時間、計測データ、メッセージ(直近10分の平均をとるとか)slackから呼ぶ

 データストレージ

  • 端末マスタ(端末id、端末名)
  • 計測データ(端末id、温度、二酸化炭素濃度) 

おまけでできたらよいこと

  • 計測時にギミック
  • サウンド

やること

  1. 温度計測パーツ、空気計測パーツ、コアPC選定して購入
  2. ESP32の開発環境を作る
  3. 計測パーツとコアPCを繋げる
  4. クラウド用意する
  5. 機能開発
  6. 結合

まずは1から。

1.温度計測パーツ、空気計測パーツ、コアPC選定して購入

BME280

これ一つで温度、湿度、気圧が計測できるセンサー。いろいろできるのにすごく小さいです。横1.5cm×縦1cmくらい。

f:id:syoburu:20190611011921j:plainf:id:syoburu:20190611011912j:plain

BME280 表・裏

MH-Z19B CO2センサー 

二酸化炭素濃度を0~5000ppmの数値で計測できるとのこと。写真の撮り方が悪いですが、表面はゴールドで綺麗です。

f:id:syoburu:20190611011916j:plainf:id:syoburu:20190611011924j:plain

MH-Z19B 表・裏

 

waves ESP32 ESPDuino-32 (ESP-WROOM-32) 技適取得品

今回の計測装置のコアになる部分。この基盤はWi-Fi接続を可能にするESP-WROOM-32が付いているためこちらを選びました。

 

f:id:syoburu:20190611011908j:plain

ESP32 ESPDuino

続いて、ESP32の開発環境を作ります。

ちょっとずつ更新してきます。