二酸化炭素濃度の測定 MH-Z19C

Raspberry Pi ZERO WH に二酸化炭素濃度センサーMH-Z19Cを接続し二酸化炭素濃度の測定に挑戦しました。

センンサーについて

MH-Z19Cは、NDIR(非分散赤外線吸収法)と呼ばれる検出方法のセンサだそうです。ガスの検知では良いとのことなので、一度使ってみたくて購入してみました。9本ピン(片側に4本、反対側に5本)なのですが、4本と5本の間の間隔がICピッチになっていないのが難点です。電源を入れると、センサーの上面、紙の貼ってある内部で赤色の発光ダイオードがチカチカと点滅しています。暗いところでは、かなり気になります。

 

 

Raspberry Pi との接続

5Vの電源が必要です。3.3Vでは動作しませんでした。

Raspberry Piの設定

シリアル通信を有効化

 

3 Interface Options を選択

P6 Serial Port の選択

Would you like a login shell to be accessible over serial?(シリアルでシェルにログインしますか?) いいえ を選択

Would you like the serial port hardware to be enabled? (シリアルポートを有効にしますか?)はい を選択

 

ライブラリのインストール

次のライブラリーを使わせていただきます。

GitHub - UedaTakeyuki/mh-z19: Read CO2 concentration from mh-z19 sensor on the Raspberry Pi & handle it. Detect Raspberry Pi model automatically and read the value from an appropriate serial device.

pip3 install mh-z19  でインストールし

sudo python3 -m mh_z19 で確認できるはずが、エラーが出てしまいました。色々調べ試したところ、最終的に

sudo python3 -m pip install mh_z19 でインストールするとうまくいくようです。これにたどり着くのにどれくらいの時間が流れたことか。

次に、Python で簡単なコードを記述し、連続的に読み出して変化がわかるようにしました。

mh_z19_first.py

import mh_z19

while True:
    #out = mh_z19.read()
    out = mh_z19.read_all()
    print(out)

以上、備忘録でした。次は、定期的にデータを取得するシステムを考えています。