今、手元にNDIR方式の二酸化炭素センサーが2つあります。
MH-Z19BとMH-Z19Cの二種類。(以降、19B、19Cと表記します)
どちらもAliexpressで購入。MH-Z19Bを製造元のショップから買ったら検査証明書がついてきました。
データシートを眺めて、特に気になった相違点を列挙してみます。(データシートのバージョンは、19BがVer1.5 19CがVer1.0)
#1.入力電圧(VDD)
19B | 19C |
---|---|
4.5~5.5V | 5.0±0.1V |
19Cは19Bに比べ電源に対する要求がシビアになっています。 | |
家のArduino互換機の5V出力は5.16Vでしたが19Cは問題なく動作しいます。 |
#2.平均電流とピーク電流
- 平均電流
19B | 19C |
---|---|
<20mA | <40mA |
- ピーク電流
19B | 19C |
---|---|
<150mA | <125mA |
19Cの方が若干消費電流が多い様です。
#3.プレヒート時間
19B | 19C |
---|---|
3分 | 1分 |
電源投入してから測定値が安定するまでの時間です。19Cの方が早いです。
#4.測定範囲
19B | 19C |
---|---|
0~2000/5000/10000ppm | 400~2000/5000ppm |
19Cでは下限値が400ppm固定になりました。ちなみに2020年の全地球大気のCO2濃度は410ppm前後です。
センサの精度が「±50ppm+5%Reading Value」なので気にする意味はなさそうです。
#5.コマンド
19B | 19C |
---|---|
CO2読み込み | ← |
ゼロポイント校正※1 | ※2 |
最大値校正 | - |
セルフ校正オン/オフ | ← |
測定範囲設定 | - |
※1ゼロポイント校正を行うと、その時点のCO2濃度を400ppmに設定。
19Cはコマンドがかなり簡略化されました。19Bではコマンドによる0ポイント校正の他、HDコネクタをGNDに7秒以上接続するという方法がありますが、19CではHDコネクタによる方法のみ
~~※2 試しにコマンドを実行したら校正されたっぽいです。温度取得みたいに隠しコマンド扱いにされた?~~やっぱりできない模様
19Cは19Bから必要な機能のみに絞った簡略版の様に見えます(、が単にコマンドを非公開にしただけかも)
- 参考リンク(データシート)
MH-Z19B https://www.winsen-sensor.com/d/files/MH-Z19B.pdf
MH-Z19C https://www.winsen-sensor.com/d/files/infrared-gas-sensor/mh-z19c-pins-type-co2-manual-ver1_0.pdf