基于阿里云和小程序的环境安全监测系统(MQ2、MQ7、火焰传感器完整源码以及实现步骤)

本文介绍了一个基于NodeMcu ESP8266的环境安全监测系统,利用MQ2、火焰传感器监测火情和烟雾浓度,异常时触发警报并推送钉钉告警。用户可通过小程序控制窗户开闭,数据同步至阿里云进行记录和分析。
摘要由CSDN通过智能技术生成

忘记过去,超越自己

  • ❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️
  • ❤️ 本篇创建记录 2022-03-20 ❤️
  • ❤️ 本篇更新记录 2022-03-20 ❤️
  • 🎉 欢迎关注 🔎点赞 👍收藏 ⭐️留言📝
  • 🙏 此博客均由博主单独编写,不存在任何商业团队运营,如发现错误,请留言轰炸哦!及时修正!感谢支持!
  • 🔥 Arduino ESP8266教程累计帮助过超过1W+同学入门学习硬件网络编程,入选过选修课程,刊登过无线电杂志 🔥

1、课题背景

监测环境安全,实时监测当前火情以及当前烟雾浓度(小程序绘制曲线图),当监测到异常信息时(浓度异常等等)会触发警报,蜂鸣器响起,同时小程序也给以告警提示,并且支持小程序控制窗口打开(舵机模拟)。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
首先,你需要准备好以下材料: - Arduino主板 - DHT11温湿度传感器 - MQ-2烟雾传感器 - 火焰传感器 - LED灯 - 蜂鸣器 - 面包板 - 杜邦线 接下来,按照以下步骤进行操作: 1. 连接DHT11传感器 将DHT11传感器的VCC引脚连接到Arduino主板的5V引脚,GND引脚连接到Arduino主板的GND引脚,DATA引脚连接到Arduino主板的数字引脚2号。 2. 连接MQ-2烟雾传感器 将MQ-2烟雾传感器的VCC引脚连接到Arduino主板的5V引脚,GND引脚连接到Arduino主板的GND引脚,AOUT引脚连接到Arduino主板的模拟引脚A0号。 3. 连接火焰传感器火焰传感器的VCC引脚连接到Arduino主板的5V引脚,GND引脚连接到Arduino主板的GND引脚,OUT引脚连接到Arduino主板的数字引脚3号。 4. 连接LED和蜂鸣器 将LED的长脚连接到Arduino主板的数字引脚4号,短脚连接到Arduino主板的GND引脚。将蜂鸣器的正极连接到Arduino主板的数字引脚5号,负极连接到Arduino主板的GND引脚。 5. 编写程序 以下是一个简单的程序,当温度大于30℃时,LED灯亮起并且蜂鸣器响起;当烟雾传感器检测到烟雾时,LED灯亮起并且蜂鸣器响起;当火焰传感器检测到火焰时,LED灯亮起并且蜂鸣器响起。 ```arduino #include <DHT.h> #define DHTPIN 2 // DHT11传感器连接到Arduino的2号引脚 #define DHTTYPE DHT11 // DHT11传感器类型 DHT dht(DHTPIN, DHTTYPE); int smokeSensor = A0; // 烟雾传感器连接到Arduino的模拟引脚A0号 int flameSensor = 3; // 火焰传感器连接到Arduino的数字引脚3号 int led = 4; // LED灯连接到Arduino的数字引脚4号 int buzzer = 5; // 蜂鸣器连接到Arduino的数字引脚5号 void setup() { pinMode(smokeSensor, INPUT); // 设置烟雾传感器为输入模式 pinMode(flameSensor, INPUT); // 设置火焰传感器为输入模式 pinMode(led, OUTPUT); // 设置LED灯为输出模式 pinMode(buzzer, OUTPUT); // 设置蜂鸣器为输出模式 Serial.begin(9600); dht.begin(); } void loop() { delay(2000); // 延迟2秒 float temperature = dht.readTemperature(); // 读取温度值 if (temperature > 30) { // 当温度大于30℃时 digitalWrite(led, HIGH); // LED灯亮起 tone(buzzer, 1000); // 蜂鸣器响起 delay(1000); // 延迟1秒 digitalWrite(led, LOW); // LED灯熄灭 noTone(buzzer); // 蜂鸣器停止响起 } int smokeValue = analogRead(smokeSensor); // 读取烟雾传感器的值 if (smokeValue > 500) { // 当烟雾传感器检测到烟雾时 digitalWrite(led, HIGH); // LED灯亮起 tone(buzzer, 1000); // 蜂鸣器响起 delay(1000); // 延迟1秒 digitalWrite(led, LOW); // LED灯熄灭 noTone(buzzer); // 蜂鸣器停止响起 } int flameValue = digitalRead(flameSensor); // 读取火焰传感器的值 if (flameValue == HIGH) { // 当火焰传感器检测到火焰时 digitalWrite(led, HIGH); // LED灯亮起 tone(buzzer, 1000); // 蜂鸣器响起 delay(1000); // 延迟1秒 digitalWrite(led, LOW); // LED灯熄灭 noTone(buzzer); // 蜂鸣器停止响起 } Serial.print("Temperature: "); // 打印温度值 Serial.println(temperature); delay(500); } ``` 6. 测试 将Arduino主板连接到电脑上,上传程序后,打开串口监视器(波特率为9600),可以看到温度值的输出。当温度大于30℃、烟雾传感器检测到烟雾或火焰传感器检测到火焰时,LED灯会亮起并且蜂鸣器会响起。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

单片机菜鸟爱学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值