🏕️
Arduinoと一酸化炭素モジュールでCO濃度を可視化する
*趣味の開発記録です。一酸化炭素は命に関わるので自己責任でお願いします。
TL; DR;
これ ↓ が目標です。
開発環境
- Arduino Uno Rev.3 / Arduino 1.8.13
- Mac OS X Catalina 10.15.7
回路図とセンサ
これを買いました。COガス濃度が 10~500 ppm の範囲で取得できます。
回路図はこうです。
MQ-7のモジュール画像はこちらから。
ソースコード
アナログ値から ppm への変換はこちらのライブラリを使いました。
Sketch > Add File...
から MQ7.h, MQ7.cpp を追加します。
#include "MQ7.h"
const int AOUTpin=0;//the AOUT pin of the CO sensor goes into analog pin A0 of the arduino
const int DOUTpin=8;//the DOUT pin of the CO sensor goes into digital pin D8 of the arduino
MQ7 mq7(A0, 5.0);
void setup() {
Serial.begin(115200); // シリアル通信の準備をする
while (!Serial); // 準備が終わるのを待つ
pinMode(DOUTpin, INPUT);//sets the pin as an input to the arduino
}
void loop() {
Serial.print(mq7.getPPM());
Serial.println("");
delay(1000); // 1秒毎に更新
}
まるっとこちらにあります。
使い方
-
Tools > Port
から Arduino を選択する - Arduino にプログラムを書き込む
-
Tools > Serial Protter
で表示する - 115200 baud を選択する
動いた
今後のこと、課題など
- ログが保存されないので保存する
- ppm の値によってアラートを出す
- アラートを出す条件を決める(移動平均などを駆使して!
- センサの感度を適切に調整する(感度調整ボリウム)
- テントサウナ内の高い位置に置いて動作確認する(使用温度範囲外なので壊れるはず
Discussion