2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

DS-CO2-20とRaspberryPIで二酸化炭素測定

Last updated at Posted at 2021-01-27

二酸化炭素を測りたい

 例のウィルスのせいで自宅にこもりっぱなしとなっていますが、CO2が多いとどうにも眠い気がします。

 隔離施設(ホテルや病棟)では1,000ppm以下になるよう換気しているそうです。
 できれば1,500ppmくらいになったらでアラートを出して欲しい。

 Qiitaにもいくつか同様の先輩方から似たような記事が投稿されていますが、どうにもドリフトが多すぎてアラートとして使うには誤差が大きすぎます。

 ずぼらで放置しっぱなしの仕組みが欲しいなと思い、この記事を書きました


理想のセンサーを求めて

 二酸化炭素を測定するセンサーは個人でもいくつか手に入ります
 以下は個人的に譲れない条件を羅列してみました

  • I2C対応している事
    同じ線に温度計とか湿度計もぶらさげて配線少なくしたい
    UARTだとノイズにも弱い

  • 2波長NDIRな事
    普通のNDIRだと毎週部屋を2時間程度窓全開にしないといけません
    この時期寒すぎる

  • 1個単位で手に入る事
    日本のセンサーだとロット単位で買わないと相手にすらしてもらえません

  • ラズパイに繋ぐので消費電力はあまり考えないでいいが少ないに越した事はない

DS-CO2-20 が良さそう

 という事でAliExpressからDS-CO2-20というセンサーを購入してみました
 データシートはこちら

 このセンサーはいくつかバージョンがあるようで、v2.9はI2Cが使えるようです
 センサー自体にはどこにもバージョンは書いておらず、ファームのアップデートもできなさそうです
 最新版は2019年ごろアップデートされているのでまず大丈夫でしょう
 この記事を書いている頃にディスコンになってDC-CO2-21なるものが出たようですが、市場には十分なストックはあるようです

配線

さてデータシートの通りにラズパイに配線します

|センサー端子|機能名|ラズパイのPIN|備考|
|---|---|----|----|----|
|1|VCC|4|(5V)|
|2|GND|6|(GND)|
|3|SDA | 3 | (GPIO2) SDA|
|4|SCL | 5 |(GPIO5) SCL|
|5|RESET| 開放(リセット用に使うかも)|
|6|I2Cmode=L | 9 | (GND)|
|7|PWM | 開放(使わない)||

 間欠的に200mAも流れますので、突入電流対策の為にセンサーの5V電源の近くには100〜470μF程度のコンデンサーを入れたほうがよさそうです。

あっさり動作

スクリーンショット 2021-01-25 21.27.53.png

 校正も何もせずあっさり動作しました
 窓を開けると430ppmという値です

 ラズパイのI2Cの設定などはこちらもご覧ください

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?