logo
Published on

Arduinoに「MH-Z19C」を接続し制御する

Authors
  • avatar
    Name
    Shou Kawakami / 川上翔
    Twitter

はじめに

Arduinoは様々なセンサーやモジュールと組み合わせて様々なプロジェクトを実現するためのプラットフォームとして広く利用されています。この記事では、二酸化炭素(CO2)センサーである「MH-Z19C」をArduinoに接続し、制御する方法について説明します。

※モジュールの価格を比較 ▶ TemuAliExpress楽天メルカリ

1. MH-Z19Cセンサーの概要

MH-Z19Cは、二酸化炭素(CO2)の濃度を検知するためのセンサーモジュールです。このセンサーは、Arduinoを含む様々なマイコンボードと簡単に接続でき、室内のCO2濃度を測定するのに利用されます。

2. MH-Z19Cの接続

MH-Z19CをArduinoに接続するには、以下のように接続します。

  • VCC(赤色): 5Vの電源
  • GND(茶色): 接地
  • TX(白色): Arduinoのデジタルピンに接続

3. Arduinoコードの作成

MH-Z19Cからのデータを読み取るために、Arduinoに適したライブラリを使用します。ライブラリのインストール方法については、Arduinoの公式サイトや各種コミュニティを参照してください。以下は、MH-Z19CからCO2濃度を取得し、シリアルモニターに表示する簡単な例です。

#include <SoftwareSerial.h>

SoftwareSerial mh_z19c(2, 3); // RX, TX

void setup() {
  Serial.begin(9600);
  mh_z19c.begin(9600);
}

void loop() {
  if (mh_z19c.available() >= 9) {
    if (mh_z19c.read() == 0xFF) {
      if (mh_z19c.read() == 0x86) {
        int co2 = mh_z19c.read() << 8;
        co2 += mh_z19c.read();
        mh_z19c.read(); // チェックサムは無視

        Serial.print("CO2 Concentration: ");
        Serial.print(co2);
        Serial.println(" ppm");
      }
    }
  }
  delay(1000);
}

4. コードのアップロードと動作確認

上記のコードをArduinoにアップロードし、MH-Z19Cが正しく接続されていることを確認します。シリアルモニターにCO2濃度が表示されれば、センサーの動作は正常です。

まとめ

これで、MH-Z19CセンサーをArduinoに接続し、CO2濃度を計測する基本的な手順がわかりました。これを応用して、室内環境のモニタリングや適切な通知機能を組み込んだプロジェクトを構築することができます。