logo
Published on

Arduinoに「MQ-2」を接続し制御する

Authors
  • avatar
    Name
    Shou Kawakami / 川上翔
    Twitter

はじめに

Arduinoを利用することで、様々なセンサーを組み込み、簡単かつ効果的なデバイスを構築することができます。この記事では、ガスセンサーの一種である「MQ-2」をArduinoに接続し、ガスの検知と制御を行う方法について解説します。

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

1. MQ-2センサーの概要

MQ-2は、一酸化炭素(CO)、メタン(CH4)、液化石油ガス(LPG)、プロパンなどの可燃性ガスや煙を検知するためのセンサーです。このセンサーはアナログ出力を提供し、ガスの濃度に応じて変動します。Arduinoを使用することで、これらのデータを取得し、適切な制御を行うことが可能です。

2. MQ-2の接続

MQ-2は、通常、VCC、GND、アナログ出力の3本のピンを持っています。これらをArduinoに接続します。

  • VCC(赤色): 5Vの電源
  • GND(茶色): 接地
  • アナログ出力(青色または緑色): アナログピン

3. Arduinoコードの作成

Arduino IDEを開いて、MQ-2を制御するためのコードを書きます。以下は、MQ-2が接続されたアナログピンがA0だと仮定した例です。

const int mq2Pin = A0; // MQ-2が接続されたアナログピン
int sensorValue;

void setup() {
  Serial.begin(9600); // シリアル通信の開始
}

void loop() {
  sensorValue = analogRead(mq2Pin); // アナログ値の読み取り
  Serial.print("MQ-2 Sensor Value: ");
  Serial.println(sensorValue);

  // ガス検知に対する制御ロジックをここに追加
  // 例: ガス検知の閾値を設定し、それに基づいてLEDを制御する

  delay(1000); // 1秒待つ
}

4. ガス検知に対する制御ロジックの追加

上記のコードには、ガス検知に対する具体的な制御ロジックが含まれていません。例えば、特定の閾値以上のガス濃度を検知した場合にLEDを点灯させるなどの処理を追加できます。

const int mq2Pin = A0;
int sensorValue;
const int gasThreshold = 200; // ガス検知の閾値

void setup() {
  Serial.begin(9600);
  pinMode(LED_BUILTIN, OUTPUT); // LEDを制御するためのピンを設定
}

void loop() {
  sensorValue = analogRead(mq2Pin);
  Serial.print("MQ-2 Sensor Value: ");
  Serial.println(sensorValue);

  if (sensorValue > gasThreshold) {
    digitalWrite(LED_BUILTIN, HIGH); // LED点灯
  } else {
    digitalWrite(LED_BUILTIN, LOW); // LED消灯
  }

  delay(1000);
}

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

コードを書き終えたら、Arduinoにアップロードして実際に動作を確認しましょう。ガス検知の閾値を変更したり、他のアクチュエーターと組み合わせてさまざまな応用を考えてみてください。

これで、ArduinoにMQ-2を接続し、ガス検知と制御を行うための基本的な手順が完了しました。