0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎么制作物联网烟雾报警器

454398 来源:工程师吴畏 2019-08-02 11:03 次阅读

烟雾报警器如何工作?

MQ-2烟雾传感器将以模拟电压的形式提供输出。我们在代码中设置了一个条件,即如果传感器的输出值大于400,则蜂鸣器将开始发出蜂鸣声,红色LED将亮起;如果传感器的输出值小于400,则蜂鸣器将保持静音,绿色LED将亮起。

这里使用的ESP将创建一个网页一个IP地址,将数据发送到该IP地址,并在那里打印数据。上传代码后,可在串口监视器中看到此IP地址,如下所示。

当您输入此IP时在浏览器中显示地址,然后将显示项目的输出,如下图所示。

电路图

首先,将ESP8266模块与Arduino连接。为了将ESP8266与Arduino正确连接,我们使用了ESP-01适配器模块,这将使连接变得非常容易。该适配器模块内置5V至3.3V稳压器,这意味着您不必使用任何电阻

将ESP-01适配器的VCC引脚连接到Arduino上的5V引脚和Arduino上的ESP-01适配器的GND到GND。接下来,将TX引脚从适配器连接到Arduino上的引脚2,将RX引脚从适配器连接到Arduino上的引脚3.

然后,连接MQ -2带Arduino的气体传感器。将气体传感器上的VCC和GND连接到Arduino上的5V和GND引脚。然后将MQ-2气体传感器上的A0引脚连接到Arduino上的A0。

之后,将蜂鸣器和LED连接到Arduino。将蜂鸣器上的正极连接到Arduino上的引脚10,将蜂鸣器上的负极连接到Arduino上的GND。然后通过220欧姆电阻将LED的负极连接到GND,将正极连接到Arduino的引脚8和9上。

代码说明

首先,添加软件序列库。软件串行库允许我们在Arduino的其他引脚上使用TX和RX通信,而不是仅使用默认的TX和RX引脚。然后我们定义了我们在Arduino上连接这些TX和RX引脚的位置。

#include #define DEBUG true SoftwareSerial wifi_module(2,3);//将esp的TX引脚连接到Arduino的引脚2和esp的RX引脚连接到Arduino的引脚3

在下面的行中,我们已经声明了LED,蜂鸣器和烟雾传感器的引脚。

int red_led_pin = 9; int green_led_pin = 8; int buzzer_pin = 10; int smoke_sensor_pin = A0;

在设置功能中,首先,我们设置串行通信的波特率和9400的wifi模块。然后我们声明了引脚并且蜂鸣器引脚作为输出引脚,因为我们将这些引脚的输出提供给LED和蜂鸣器。最后,我们将烟雾传感器引脚声明为输入,因为烟雾传感器引脚将从传感器接收输入并将其传送给Arduino。

Serial.begin(9600) ); wifi_module.begin(9600);//根据您的esp8266 pinMode(red_led_pin,OUTPUT)设置波特率; pinMode(green_led_pin,OUTPUT); pinMode(buzzer_pin,OUTPUT) ; pinMode(smoke_sensor_pin,INPUT);

这些线路将调用该功能,并将在ESP提供的IP地址处设置服务器。然后ESP将在此IP地址发送数据。

esp8266_command(“AT + RST r n”,2000,DEBUG);//reset module esp8266_command(“AT + CWMODE = 2 r n”,1000,DEBUG);//配置为接入点 esp8266_command(“AT + CIFSR r n”,1000,DEBUG);//获取IP地址 esp8266_command(“AT + CIPMUX = 1 r n”,1000,DEBUG);//为多个连接配置 esp8266_command(“AT + CIPSERVER = 1,80 r n”,1000,DEBUG);//打开端口80上的服务器

在循环函数中,我们读取来自烟雾传感器的值然后应用一个条件,如果输出值大于400,则红色LED将亮起,蜂鸣器将开始发出蜂鸣声。如果输出值小于400,则绿色LED指示灯将亮起,蜂鸣器将保持静音。

int analogSensor = analogRead(smoke_sensor_pin); if(analogSensor》 400) { digitalWrite(red_led_pin,HIGH); digitalWrite(green_led_pin,LOW); 音(buzzer_pin,1000,200); }

以下行将打印网页上的数据。首先,我们将在顶部打印“物联网烟雾探测系统”。然后在第二行,我们将打印烟雾值,在第三行,我们将打印“Everything Normal”或“DANGER!移动到其他地方“取决于条件。

字符串网页=”

物联网烟雾探测系统

“; 网页+ = “

烟雾值是”; 网页+ = analogSensor; 网页+ =“

”; if(analogSensor》 400) ) { 网页+ =“

危险!移动其他地方

”; } 其他 { 网页+ =“

一切正常

”; }

下面的代码会将命令发送到ESP,并在串口监视器上打印ESP的输出。

String esp8266_command(String command,const int timeout,boolean debug) { String response =“”; wifi_module.print(command); long int time = millis(); while((time + timeout)》 millis()) { while (wifi_module.available()) { char c = wifi_module.read(); 响应+ = c; } } 就是这样,希望你能让它运转起来!此外,您还可以查看我的博客,查看ElectronicsHobbyist.com上的其他一些项目。

代码

#include #define DEBUG true SoftwareSerial wifi_module (2,3);//将esp的TX引脚连接到Arduino的引脚2和esp的RX引脚连接到Arduino的引脚3 int red_led_pin = 9; int green_led_pin = 8; int buzzer_pin = 10; int smoke_sensor_pin = A0; void setup() { Serial。开始(9600);wifi_module.begin(9600);//根据您的esp8266 pinMode(red_led_pin,OUTPUT)设置波特率; pinMode(green_led_pin,OUTPUT); pinMode(buzzer_pin,OUTPUT) ; pinMode(smoke_sensor_pin,INPUT); esp8266_command(“AT + RST r n”,2000,DEBUG);//reset moduleesp8266_command(“AT + CWMODE = 2 r n”,1000,DEBUG);//配置为接入点 esp8266_command(“AT + CIFSR r n”,1000,DEBUG);//获取IP地址 esp8266_command(“AT + CIPMUX = 1 r n”,1000,DEBUG);//为多个连接配置 esp8266_command(“AT + CIPSERVER = 1,80 r n”,1000,DEBUG);//在端口80上打开服务器 } void loop() { int analogSensor = analogRead(smoke_sensor_pin); if(analogSensor》 400) { digitalWrite(red_led_pin,HIGH); digitalWrite(green_led_pin,LOW); 音(buzzer_pin,1000,200); } 其他 { digitalWrite(red_led_pin, LOW); digitalWrite(green_led_pin,HIGH); noTone(buzzer_pin); } if(wifi_module.available( )) { if(wifi_module.find(“+ IPD,”)) { delay(1000); int connectionId = wifi_module.read() - 48; String webpage =“

物联网烟雾探测系统

”; 网页+ =“

烟雾值是”; 网页+ = analogSensor; 网页+ =“

“; if(analogSensor》 400) { 网页+ =”

危险!移动到其他地方

“; } 其他 { 网页+ =”

一切正常

“; } 字符串cipSend =”AT + CIPSEND =“; cipSend + = connectionId; cipSend + =“,”; cipSend + = webpage.length(); cipSend + =“ r n”; esp8266_command(cipSend,1000,DEBUG); esp8266_command(网页,1000,DEBUG); 字符串closeCommand =“AT + CIPCLOSE = “;closeCommand + = connectionId;//追加连接ID closeCommand + =” r n“; esp8266_command( closeCommand,3000,DEBUG); } } } 字符串esp8266_command(字符串命令,const int timeout,布尔调试) { 字符串响应=“”; wifi_module.print(命令); long int time = millis() ; while((时间+超时)》 millis()) { while(wifi_module.available()) { char c = wifi_module.read(); 响应+ = c; } } if(debug) { Serial.print(响应); } 返回响应; }

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 报警器
    +关注

    关注

    12

    文章

    919

    浏览量

    108717
  • 气体传感器
    +关注

    关注

    14

    文章

    540

    浏览量

    37649
  • Arduino
    +关注

    关注

    187

    文章

    6464

    浏览量

    186660
  • ESP8266
    +关注

    关注

    50

    文章

    962

    浏览量

    44845
收藏 人收藏

    评论

    相关推荐

    用TPS8802设计10年电池寿命的烟雾报警器

    电子发烧友网站提供《用TPS8802设计10年电池寿命的烟雾报警器.pdf》资料免费下载
    发表于 09-25 11:00 0次下载
    用TPS8802设计10年电池寿命的<b class='flag-5'>烟雾</b><b class='flag-5'>报警器</b>

    烟感芯片-光电式感烟火灾探测IC-烟雾报警器单片机

    英锐恩科技在消防安防领域,专注于行业主控芯片定制开发应用十六年,特别在烟雾探测报警器行业芯片的定制开发应用方面,可以跟随工艺进步和市场变化持续更新和升能产品,提供高性价比的”芯“解决方案。为客户提供
    发表于 09-24 15:43

    TPS8802烟雾报警器AFE数据表

    电子发烧友网站提供《TPS8802烟雾报警器AFE数据表.pdf》资料免费下载
    发表于 08-09 09:23 0次下载
    TPS8802<b class='flag-5'>烟雾</b><b class='flag-5'>报警器</b>AFE数据表

    基于51单片机烟雾检测报警器设计

    本资源内容概要:       这是基于51单片机烟雾检测报警器设计包含了电路图源文件(Altiumdesigner软件打开)、C语言程序源代码(keil软件打开)、元件清单(excel表格打开)。本
    发表于 06-26 10:51 0次下载

    基于RJM8L151S的烟雾报警器解决方案

    烟雾报警器是一种重要的安全设备,它可以在火灾发生时及时发出报警,提醒人们采取相应的措施,避免火灾蔓延造成更大的损失。
    发表于 04-08 10:31 519次阅读
    基于RJM8L151S的<b class='flag-5'>烟雾</b><b class='flag-5'>报警器</b>解决方案

    合泰单片机推出一款低功耗协同感烟报警器方案

    协同感烟报警器,即同时具备烟雾探测功能和协同报警功能。烟雾探测功能是指通过检测烟雾浓度来实现火灾防范的功能。
    的头像 发表于 03-29 17:31 623次阅读
    合泰单片机推出一款低功耗协同感烟<b class='flag-5'>报警器</b>方案

    烟雾报警器WTN6语音芯片方案

    随着科技的进步和人们生活水平的提高,对于家庭安全的关注度也日益增强。烟雾报警器作为预防火灾的重要设备,其功能和性能也在不断更新升级。传统的烟雾报警器通常只有蜂鸣声作为
    的头像 发表于 03-29 14:52 467次阅读

    家庭燃气报警器应用示例

    燃气安全无小事,燃气报警器在检测到气体泄漏后发出报警并切断燃气阀,范防于未“燃”。燃气报警器通过高精度传感检测周围环境气体,产生电信号给到MCU,当达到
    的头像 发表于 03-14 10:58 958次阅读
    家庭燃气<b class='flag-5'>报警器</b>应用示例

    九联科技物联网模组技术革新烟感报警器,提升火灾预警智能化水平

    传统的烟感报警器长期以来依赖烟雾传感进行火灾检测,虽然在一定程度上起到了预警作用,但在响应速度和智能化程度上仍有诸多不足。然而,随着物联网技术的迅猛发展,九联科技凭借其先进的物
    的头像 发表于 03-13 10:06 791次阅读

    火灾报警器电路图分享

    火灾报警器是一种用于探测火灾并发出报警信号的消防器材。它通常由火灾探测报警控制组成,探测
    的头像 发表于 02-07 18:31 7068次阅读
    火灾<b class='flag-5'>报警器</b>电路图分享

    门把手触摸报警器分享

    报警器是一种用于防止或预防某事件发生所造成的后果的电子产品。它通过声音、光、气压等形式来提醒或警示人们采取某种行动。报警器可以分为机械式报警器和电子报警器,其中电子
    的头像 发表于 02-07 15:33 835次阅读
    门把手触摸<b class='flag-5'>报警器</b>分享

    基于51单片机的红外报警器的设计与制作

    电子发烧友网站提供《基于51单片机的红外报警器的设计与制作.rar》资料免费下载
    发表于 01-12 09:18 23次下载

    基于51单片机的红外报警器的设计与制作

    电子发烧友网站提供《基于51单片机的红外报警器的设计与制作.rar》资料免费下载
    发表于 01-03 11:32 11次下载

    报警器电路图大全

    报警器是一种为防止或预防某事件发生所造成的后果,以声音、光、气压等形式来提醒或警示我们应当采取某种行动的电子产品。报警器(alarm),分为机械式报警器和电子报警器。随着科技的进步,机
    的头像 发表于 12-27 17:15 2957次阅读
    <b class='flag-5'>报警器</b>电路图大全

    汽车蓄电池报警器制作与调试

    汽车蓄电池报警器制作与调试  
    发表于 12-07 10:32 1次下载