烟雾传感器MQ-2实验实验现象

烟雾传感器把烟雾浓度值转换为模拟电压值输出,arduino通过A0引脚读取模拟电压值,通过串口发送给PC,当模拟电压值超过模块的比较器设定值,模块D0引脚输出低电平。arduino监控到D0引脚拉底信号时,板载LED点亮报警,串口输出Alarm信号。报警的阀值可以通过调节板载的电位器调整大小。

理论学习


VCC和GND之间加上5V电压
等待大概30s传感器预热后,读取模拟输出A0引脚电压
通过调节电位器,改变LED报警阀值
当浓度大于设定值时,模块上LED指示灯点亮,同时D0引脚输出低电平。

原理图

代码编写
  1. #include<Arduino.h>
  2. #define sensor A5
  3. #define led 13
  4. #define sensor_d0 2
  5. unsigned int sensorvalue = 0;
  6. void setup() {
  7.   pinMode(sensor_d0, INPUT);
  8.   pinMode(sensor, INPUT);
  9.   pinMode(led, OUTPUT);
  10.   Serial.begin(9600);
  11.   Serial.println("welcome to use");
  12. }
  13. void loop() {
  14.   sensorvalue = analogRead(sensor);
  15.   Serial.print("ad value = ");
  16.   Serial.println(sensorvalue);
  17.   if (digitalRead(sensor_d0) == LOW) {
  18.     Serial.println("alarm");
  19.     digitalWrite(led, HIGH);
  20.   } else {
  21.     digitalWrite(led, LOW);
  22.   }
  23.   delay(1000);
  24. }