Skip to main content

Grove - ガスセンサー(MQ9)

note

この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues

pir

Grove - ガスセンサー(MQ9)モジュールは、ガス漏れ検知(家庭および産業用)に役立ちます。このセンサーはLPG、CO、CH4の検出に適しています。高感度と高速応答時間により、測定を迅速に行うことができます。センサーの感度は、ポテンショメーターを使用して調整可能です。

注意

センサーの値は、許容誤差範囲内でガス濃度の概算的な傾向を反映するだけであり、正確なガス濃度を示すものではありません。空気中の特定の成分を検出するには、通常、より精密で高価な機器が必要であり、単一のガスセンサーでは実現できません。プロジェクトで非常に正確なレベルのガス濃度を取得することを目的としている場合、このガスセンサーは推奨されません。

センサー

ガスタイプ

今すぐ購入

MQ2可燃性ガス、煙
MQ3アルコール蒸気
MQ5LPG、天然ガス、都市ガス
MQ9一酸化炭素、石炭ガス、液化ガス
tip
[Seeed ガスセンサー選択ガイド](https://wiki.seeedstudio.com/ja/Seeed_Gas_Sensor_Selection_Guide/)を公開しました。このガイドは、あなたのニーズに最適なガスセンサーを選ぶのに役立ちます。

特徴

  • 広い検出範囲
  • 安定性が高く長寿命
  • 高速応答と高感度
tip
Groveモジュールの詳細については、[Grove System](https://wiki.seeedstudio.com/ja/Grove_System/)をご参照ください。

仕様

項目パラメータ最小典型値最大単位
VCC動作電圧4.955.1V
PHヒーター消費電力0.5-340mW
RL負荷抵抗調整可能
RHヒーター抵抗-33Ω±5%-Ω
Rsセンシング抵抗2-20000Ω
CO/CH4/LPG 範囲検出濃度200-1000/10000/10000ppm

応用例

  • ガス漏れ検知
  • 玩具

ハードウェア概要

これはアナログ出力センサーです。このセンサーは、Grove Base Shieldの任意のアナログソケットに接続する必要があります。このチュートリアルで使用される例では、A0アナログピンを使用します。このモジュールをBase ShieldのA0ポートに接続してください。

ジャンパーワイヤーを使用して、以下の表に示す接続方法でGroveモジュールをArduinoに直接接続することも可能です:

Arduinoガスセンサー
5VVCC
GNDGND
NCNC
Analog A0SIG

ガスセンサーからの出力電圧は、ガス濃度が増加すると上昇します。感度はポテンショメータを調整することで変更できます。センサーの最適な予熱時間は24時間以上であることに注意してください。MQ-9センサーの詳細については、リソースセクションで提供されているデータシートをご参照ください。

対応プラットフォーム

ArduinoRaspberry Pi

pir

pir

caution
上記で対応プラットフォームとして記載されているものは、モジュールのソフトウェアまたは理論的な互換性を示しています。ほとんどの場合、Arduinoプラットフォーム用のソフトウェアライブラリまたはコード例のみを提供しています。すべての可能なMCUプラットフォームに対してソフトウェアライブラリやデモコードを提供することはできません。そのため、ユーザー自身でソフトウェアライブラリを作成する必要があります。

はじめに

Arduinoで遊ぶ

Seeeduino V4.2Base ShieldGrove - Gas Sensor(MQ9)

pir

pir

pir

今すぐ購入今すぐ購入今すぐ購入

pir

Grove - Gas Sensor(MQ9)をA0ポートに接続してください。上記の画像のように接続します。

ガス検知:基本例

この例では、センサーをA0ピンに接続します。センサーから読み取った電圧が表示されます。この値を閾値として使用し、ガス濃度の増減を検知することができます。

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

void loop() {
float sensor_volt;
float sensorValue;

sensorValue = analogRead(A0);
sensor_volt = sensorValue/1024*5.0;

Serial.print("sensor_volt = ");
Serial.print(sensor_volt);
Serial.println("V");
delay(1000);
}

測定:概算

この例では、ガスの概算濃度を知る方法を示します。MQ9センサーのデータシートによると、これらの方程式は標準条件下でテストされており、校正されていません。温度や湿度の変化によって異なる場合があります。

  1. ガスセンサーを清浄な空気環境に置き、以下のプログラムをアップロードしてください。
void setup() {
Serial.begin(9600);
}

void loop() {
float sensor_volt;
float RS_air; // 清浄な空気中でRSの値を取得
float R0; // LPG中でR0の値を取得
float sensorValue;

/*--- 100回テストして平均データを取得 ---*/
for(int x = 0 ; x < 100 ; x++)
{
sensorValue = sensorValue + analogRead(A0);
}
sensorValue = sensorValue/100.0;
/*---------------------------------------*/

sensor_volt = sensorValue/1024*5.0;
RS_air = (5.0-sensor_volt)/sensor_volt; // *RLを省略
R0 = RS_air/9.9; // グラフからLPGガス中のRS/R0比率は9.9(WebPlotDigitizerを使用して取得)

Serial.print("sensor_volt = ");
Serial.print(sensor_volt);
Serial.println("V");

Serial.print("R0 = ");
Serial.println(R0);
delay(1000);

}
  1. 次に、Arduino IDEのシリアルモニターを開きます。R0の値を記録してください。この値は次のプログラムで使用する必要があります。読み取り値が安定した後にR0を記録してください。
以下のR0を上記でテストしたR0の値に置き換えてください。センサーを上記のいずれかのガスにさらしてください。
void setup() {
Serial.begin(9600);
}

void loop() {

float sensor_volt;
float RS_gas; // ガス中でRSの値を取得
float ratio; // RS_GAS/RS_airの比率を取得
int sensorValue = analogRead(A0);
sensor_volt=(float)sensorValue/1024*5.0;
RS_gas = (5.0-sensor_volt)/sensor_volt; // *RLを省略

/*-最初のテストのデモでR0の名前を値に置き換える-*/
ratio = RS_gas/R0; // 比率 = RS/R0
/*---------------------------------------------*/

Serial.print("sensor_volt = ");
Serial.println(sensor_volt);
Serial.print("RS_ratio = ");
Serial.println(RS_gas);
Serial.print("Rs/R0 = ");
Serial.println(ratio);

Serial.print("\n\n");

delay(1000);

}

次に、以下の図からガス濃度を取得できます。

pir

図によると、テスト可能な最小濃度は200ppm、最大濃度は10000ppmであることがわかります。つまり、0.02%から1%のガス濃度を取得できます。ただし、比率と濃度の関係は非線形であるため、公式を提供することはできません。

Raspberry Piで遊ぶ(Grove Base Hat for Raspberry Piを使用)

ハードウェア

  • ステップ1. このプロジェクトで使用するもの:
Raspberry piGrove Base Hat for RasPiGrove - Gas Sensor(MQ9)

pir

pir

pir

今すぐ購入今すぐ購入今すぐ購入
  • ステップ2. Grove Base HatをRaspberry Piに接続します。
  • ステップ3. Grove - Gas Sensor(MQ9)をBase HatのA0ポートに接続します。
  • ステップ4. Raspberry PiをUSBケーブルでPCに接続します。

pir

note
ステップ3では、Grove - Gas Sensor(MQ9)を**任意のアナログポート**に接続することができますが、対応するポート番号に合わせてコマンドを変更する必要があります。

ソフトウェア

  • ステップ 1. 開発環境を設定するために、Setting Softwareを参照してください。
  • ステップ 2. grove.pyライブラリをクローンしてソースファイルをダウンロードします。
cd ~
git clone https://github.com/Seeed-Studio/grove.py

  • ステップ 3. 以下のコマンドを実行してコードを書きます。
cd grove.py/grove
nano grove_gas_sensor_mq9.py

次に、以下のコードをこのファイルにコピーし、++ctrl+x++を押して終了し保存します。


import math
import sys
import time
from grove.adc import ADC


class GroveGasSensorMQ9:

def __init__(self, channel):
self.channel = channel
self.adc = ADC()

@property
def MQ9(self):
value = self.adc.read(self.channel)
return value

Grove = GroveGasSensorMQ9


def main():
if len(sys.argv) < 2:
print('Usage: {} adc_channel'.format(sys.argv[0]))
sys.exit(1)

sensor = GroveGasSensorMQ9(int(sys.argv[1]))

print('Detecting...')
while True:
print('Gas value: {0}'.format(sensor.MQ9))
time.sleep(.3)

if __name__ == '__main__':
main()

  • ステップ 4. 以下のコマンドを実行してコードを実行します。

python grove_gas_sensor_mq9.py 0

tip
すべてが正常に動作すれば、以下のような結果が表示されます。

pi@raspberrypi:~/grove.py/grove $ python grove_gas_sensor_mq9.py 0
Detecting...
Gas value: 345
Gas value: 348
Gas value: 351
Gas value: 354
Gas value: 357
Gas value: 360
Gas value: 363
Gas value: 365
Gas value: 368
Gas value: 370
^CTraceback (most recent call last):
File "grove_gas_sensor_mq9.py", line 69, in <module>
main()
File "grove_gas_sensor_mq9.py", line 66, in main
time.sleep(.3)
KeyboardInterrupt


このプログラムを終了するには、++ctrl+c++を押すだけです。

:::notice アナログポートの場合、シルクスクリーンのピン番号はA0, A1のようになっていますが、コマンドでは01というパラメータを使用しています。これはデジタルポートと同じです。そのため、モジュールを正しいポートに接続してください。そうしないと、ピンの競合が発生する可能性があります。 :::

リソース

推奨読書 / 参考資料

回路図

データシート

技術サポートと製品ディスカッション

産業用センサーへのアップグレード可能

SenseCAP S2110コントローラーS2100データロガーを使用することで、Groveを簡単にLoRaWAN®センサーに変えることができます。Seeedはプロトタイピングを支援するだけでなく、SenseCAPシリーズの堅牢な産業用センサーを使用してプロジェクトを拡張する可能性も提供します。

IP66の筐体、Bluetooth設定、グローバルLoRaWAN®ネットワークとの互換性、内蔵19Ahバッテリー、そして強力なAPPサポートにより、SenseCAP S210xは産業用途に最適な選択肢となります。このシリーズには、土壌水分、空気温度と湿度、光強度、CO2、EC、そして8-in-1の気象ステーション用センサーが含まれています。次の成功する産業プロジェクトには最新のSenseCAP S210xをぜひお試しください。

Loading Comments...