风筝
发表于: 2020-2-15 19:38:55 | 显示全部楼层

在本篇文章中,我们将主要介绍设计基于Arduino开发板的LPG(液化石油气)气体检测仪警报,它将检测泄漏并创建警报。


所需的硬件

●    Arduino Uno开发板

●    LPG气体传感器模块

●    蜂鸣器

●    BC547晶体管

●    1602 LCD显示屏

●    9V电池

●    Arduino IDE


LPG气体传感器模块

该模块包括一个可实际识别液化石油气的MQ3传感器和一个用于将MQ3输出电压与参考电压进行比较的比较器(LM393)。当检测到液化石油气时,它将输出高电平。


电位计主要用于控制气体检测的灵敏度。

circuit.jpg


检测仪的工作过程

LPG气体传感器模块用于检测LPG气体。当检测到LPG气体泄漏时,它将在其DO引脚上发出HIGH脉冲,而Arduino会不断读取其DO引脚。


当Arduino从LPG气体传感器模块接收到HIGH脉冲时,它将在1602 LCD上显示“LPG Gas Leakage Alert”消息,并触发蜂鸣器发出蜂鸣声,直到气体检测器模块未检测到环境中的气体为止。


当Arduino从LPG气体检测器模块获得LOW脉冲时,LCD将显示“ No LPG Gas Leakage”(无LPG气体泄漏)警报消息。


Arduino管理该系统的完整过程,例如读取LPG气体传感器模块的输出、向LCD发送消息和触发蜂鸣器。我们可以通过位于传感器模块上的内置电位计来设置其灵敏度。


代码

本文使用的代码如下:

  1. #include <LiquidCrystal.h>
  2. LiquidCrystal lcd(3, 2, 4, 5, 6, 7);

  3. #define lpg_sensor 18
  4. #define buzzer 13

  5. void setup()
  6. {
  7.   pinMode(lpg_sensor, INPUT);
  8.   pinMode(buzzer, OUTPUT);
  9.   lcd.begin(16, 2);
  10.   lcd.print("LPG Gas Detector");
  11.   lcd.setCursor(0,1);
  12.   lcd.print("Circuit Digest");
  13.   delay(2000);
  14. }

  15. void loop()
  16. {
  17.   if(digitalRead(lpg_sensor))
  18.   {
  19.     digitalWrite(buzzer, HIGH);
  20.     lcd.clear();
  21.     lcd.print("LPG Gas Leakage");
  22.     lcd.setCursor(0, 1);
  23.     lcd.print("     Alert     ");
  24.     delay(400);
  25.     digitalWrite(buzzer, LOW);
  26.     delay(500);
  27.   }
  28.   
  29.   else
  30.   {
  31.     digitalWrite(buzzer, LOW);
  32.     lcd.clear();
  33.     lcd.print("  No LPG Gas ");
  34.     lcd.setCursor(0,1);
  35.     lcd.print("   Leakage   ");
  36.     delay(1000);
  37.   }
  38. }
复制代码

跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 705 | 回复: 1492



手机版|

GMT+8, 2024-11-22 15:06 , Processed in 0.089478 second(s), 8 queries , Gzip On, MemCache On. Powered by Discuz! X3.5

YiBoard一板网 © 2015-2022 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表