honeylab's blog

各種ハードウェアの改造、主にファミコンミニなどをやってます(ました)

ドンキで売ってた5000円のCo2モニタを改造して無線LAN対応にする

先日、ドン・キホーテをうろうろしていたところこんな商品を見つけました。

 

室内用の格安Co2モニタのようです。
性能的には安かろうなんとやら、であることは承知の上、
仕事柄Co2センサについての情報収集は必要なためサクッと買ってみました。

 

早速ですが分解します。

 

Co2センサや温度・湿度センサがこの辺に格納してありました。

 

メインボードとCo2センサはUART接続されているようです。

 

 

 


ここに内蔵されているCo2センサは「CM1106-C」のようです。
データシートがここにあり、UARTのプロトコルも明記されています。

f:id:honeylab:20210221020527p:plain

そのため、Co2センサ自体は単体で動作させることもできますが、
ここではあくまでもこの本体を生かし、
改造して外部から値を収集できるようにしてみます。

ほら、みんな

「またなんかよくわかんないセンサ買ってきたの?」とか

「これで何がわかるの?」とかいわれて

やっとのこと組み立てて頑張ってケースに収めたところで

「ガラクタ?」

って言われたことないですか?ないですかね。

まぁ、

Co2センサってエンジニア的には今特に興味のあるものだと思いますが、
それをうまいこと使いこなしたり、定期的に校正したり、
「誰にでも」見やすい値として表示する、ってちょっと難しいことなんですよ。

ところが、これはもう形はできてて値もカッコよく表示されるんですよ。
この状態で、中に何入れても、値をとってきても誰にも文句言われたりしないですからw
さらに、このメーカが最低限商品として成り立つレベルに実装してきた自動構成の仕組みなどをそのまま利用できるわけです。
それが5000円、これを安いとみるかどうか。

 

脱線しましたか。

 

さて、せっかくですから無線でデータをとれるように、無線LAN対応マイコンを中に入れてみたいと思います。

今回使用するのはなんかその辺に転がっていたESP8266のマイコンボードです。
これに限らず、ご家庭にある無線対応マイコンや、場合によってはただのUART-TCP変換機などを使用することも可能でしょう。

 

このマイコンボードを、データシートを参考に配線していきます。

5VはCo2センサの根元からとりますが、これをマイコンボードに直結していしまうと、マイコンボードに書き込むためにUSBケーブルを接続したときに逆流してしまい、
ちょっと嫌な感じになるため、ショットキーバリアダイオードを挟むことにします。


Co2のデータ収集は、もともとのマイコンが勝手にやってくれていますので、Co2からの返答が送られてくるTXD端子だけを無線LANマイコンの入力に突っ込みます。

f:id:honeylab:20210221021623p:plain

 

そして、シリアルからCo2の読み取りパケットを解析してppmの値を取得し、
HTTPレスポンスで返すようなスケッチを書きこみます。

せっかくなのでmDNSに対応させたかったため、mDNSのサンプルコードを書き換えて使用しています。

 

gist.github.com

 

家の中に置いておいて、家庭内のネットワーク上のPCなどから値を取得することを想定し、クライアントモードで立ち上げていますが、
こいつをAPにして動かすようにすることももちろん可能です。

さて、ブラウザでアクセスしてみると…?

 

f:id:honeylab:20210221022319p:plain

できたできた。二つ目の数字はフリーズ検出のため、パケット解析ごとにインクリメントされる値です。

 

自動化のために、wgetを使ってみます。(wslではmDNSが使えなかった…)

f:id:honeylab:20210221022431p:plain

おっけー。

あとは、これをスクリプトでもなんでもして、DBに入れるなり、CSVにするなり何でもできます。

13f:id:honeylab:20210221032329p:plain

これは、この作業をしているとき(1600ppm)→窓を開けて(1350ppm)→誰もいないリビングで(650ppm)と移動してみた時のグラフです。

amazonなんかで無線対応のCo2センサはなかなか見つかりませんし、
国内のものでネット対応のものは、謎のメーカ専用クラウドにアップロードされてグラフしか見れなかったりして柔軟性に欠けます。
しかし、このようにすれば生のデータが取得でき、自由に使用することができるという利点があります。
改造にかかる費用も1000円程度です。


Co2センサ自体の正確性ですが…その辺は追々確認していきたいと思いますが、買って半年ぐらいのおんどとり(自動校正無効化)と大体同じ値を表示してくれているようです。