基于51单片机的烟雾和温湿度检测控制系统仿真(智能防火系统,火灾报警灭火系统)

news2024/11/22 19:36:08

wx供重浩:创享日记
对话框发送:单片机防火
获取完整源码源文件+仿真源文件+论文报告+说明文档等

在这里插入图片描述


基于51单片机的光照及温湿度检测报警控制系统
由STC89C52单片机+LCD1602液晶显示屏+ADC0832模块+蜂鸣器+DHT11温湿度传感器 +烟雾传感器+LED+按键构成

具体功能:
1、LCD1602液晶第一行显示当前的烟雾值,第二行显示当前的温度和湿度值;
2、可以设置烟雾、温湿度上下限报警值。共4个按键:复位按键、减键、加键、设置键;设定的参数具有掉电保存,保存在STC单片机的内部,上电无需重新设置;
3、当烟雾值高于设定的报警值或温度湿度超出上下限范围,蜂鸣器和指示灯会发出声光报警;
4、当温湿度值低于或高于设定的范围时,相应的指示灯亮,蜂鸣器报警;
5、当同时满足烟雾过高、温度过高、湿度过低三个条件时,控制继电器吸合,以实现电机转动,表示灭火。


protues仿真

请添加图片描述


AD原理图

请添加图片描述


论文部分内容

为了实现实时温度、湿度、烟雾显示,及时报警,以降低火灾危害,本文将实现以下设计需求:
(1)精确、实时的检测别墅内的温湿度及烟雾值;
(2)直接、清晰明了的显示测得的温湿度值及烟雾浓度值;
(4)能够实现防火自动报警报警;
(5)操作简单、功能完善、精确度高。
具体如图2-1所示。

在这里插入图片描述

如图是本系统的硬件设计方案,具体地,硬件电路由以下模块构成:
(1)单片机最小系统。用于驱动和控制其他模块,以实现整体功能,其以STC89C51单片机为核心芯片,并辅以复位电路和晶振电路。
(2)信号采集电路。负责采集需要监测的数据,本设计中的信号采集电路由温度采集电路和烟雾采集电路、红外采集电路构成。
(3)AD转换电路。由ADC0832模块构成,其与传感器和单片机芯片相连,负责将模拟值转换为数字量,并发送给单片机。
(4)按键和显示电路。显示电路用于显示相关数据,按键电路用于控制芯片实现相关功能,直接与单片机相连。

在这里插入图片描述

根据本文设计需求,在第三章硬件电路设计的基础上,需要通过软件编程实现的具体功能:
(1)驱动各个模块工作,实现温度的采集与显示,实现烟雾浓度的采集与AD转换显示;
(2)按键设置功能。实现温湿度报警阈值设置、烟雾报警阈值设置、电机驱动等功能;
(3)报警功能实现。实现温度温度过高、温度过低、湿度过高、湿度过低、烟雾浓度过高的声光报警;
(4)继电器控制电机。当同时满足烟雾过高、温度过高、湿度过低三个条件时,控制继电器吸合,以实现电机转动,表示灭火。其设计流程如图所示。

在这里插入图片描述


仿真结果

(1)温湿度值与烟雾值的显示
开始仿真后,系统上电稳定后,单片机开始工作,LCD160显示屏显示如图5-3所示的测得的温度值、烟雾值及湿度值。仿真电路显示稳定,能够实现温湿度值和烟雾值的精确显示。

在这里插入图片描述

(2)温湿度报警阈值和烟雾报警阈值的设置
接着,我们按下按键“调节”开始设置温度报警阈值,通过“加键”和“减键”可以实现温度、湿度、烟雾上下限值的加减设置,如图5-4所示是温度上下限值设置界面。
在这里插入图片描述
(4)火灾自动报警
接着,我们将测得的温度调至44℃,由于已经超过了温度报警阈值,系统开始报警。如图5-5所示是温度报警的情况,具体地,报警时,温度过高指示灯亮,蜂鸣器响起。
在这里插入图片描述
(5)自动灭火
当同时满足烟雾过高、温度过高、湿度过低三个条件时,控制继电器吸合,以实现电机转动,表示灭火。具体如图5-6所示。
在这里插入图片描述

经过以上一系列的仿真测试,本文设计的“基于51单片机的智能家居控制系统”能够完成了2.1节的系统需求,具体仿真实现了以下功能:
(1)温湿度值测量及显示稳定、精确;烟雾值测量及显示稳定、精确;
(2)可以通过按键设定温湿度报警阈值,且测得的温湿度超过设定的阈值时,报警指示灯闪烁,蜂鸣器报警;可以通过按键设定烟雾报警阈值,且测得的烟雾浓度超过设定的阈值时,烟雾报警指示灯闪烁,蜂鸣器报警;
(3)当同时满足烟雾过高、温度过高、湿度过低三个条件时,控制继电器吸合,以实现电机转动,表示灭火。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1171731.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【LeetCode刷题-队列】--933.最近的请求次数

933.最近的请求次数 class RecentCounter {Queue<Integer> queue new LinkedList<>();public RecentCounter() {}public int ping(int t) {queue.offer(t);while(t - queue.peek() > 3000){queue.poll();}return queue.size();} }/*** Your RecentCounter obje…

汽车标定技术(三)--XCP协议如何支持测量功能

目录 1. 概述 2. 测量方式 -- Poll 3. 测量方式 -- DAQ 3.1 ODT概念模型 3.2 DAQ List概念 3.3 ODT 绝对编号和相对编号 3.4 静态DAQ和动态DAQ模式 &#xff08;1&#xff09;静态DAQ &#xff08;2&#xff09;动态DAQ 4.小结 1. 概述 在该系列的首篇文章汽车标定技…

如何导入HTTParty库

HTTParty是一个Ruby的HTTP客户端库&#xff0c;用于发送HTTP请求。以下是在Ruby代码中导入HTTParty库的步骤&#xff1a; 在Gemfile文件中添加HTTParty库的依赖。打开Gemfile文件&#xff0c;并在其中添加以下行&#xff1a; gem ‘httparty’ 在终端中运行bundle install命令…

FreeRTOS_事件标志组

目录 1. 事件标志组简介 2. 创建事件标志组 2.1 函数 xEventGroupCreate() 2.2 函数 xEventGroupCreateStatic() 3. 设置事件位 3.1 函数 xEventGroupClearBits() 3.2 函数 xEventGroupClearBitsFromISR() 3.3 函数 xEventGroupSetBits() 3.4 函数 xEventGroupSetB…

Linux下input子系统

文章目录 input子系统简单介绍相关的函数input_dev注册过程上报输入事件按键的input子系统实验 input子系统简单介绍 input子系统是管理输入的子系统&#xff0c;和pinctrl和gpio子系统一样&#xff0c;都是Linux内核针对某一类设备而创建的框架。比如按键输入、键盘、鼠标、触…

任务1 部署ChatGLM3-6B大模型并进行对话测试

部署ChatGLM3-6B大模型并进行对话测试 0 介绍&#xff1a;1 趋动云项目创建与环境配置1.1 创建项目&#xff1a;1.2 配置环境1.2.1 进入终端1.2.2 设置镜像源1.2.3 克隆项目,并安装依赖 2 修改代码&#xff0c;改路径以及启动代码3 运行代码3.1 运行gradio界面&#xff1a;3.2 …

JAVA毕业设计109—基于Java+Springboot+Vue的宿舍管理系统(源码+数据库)

基于JavaSpringbootVue的宿舍管理系统(源码数据库)109 一、系统介绍 本系统前后端分离 本系统分为学生、宿管、超级管理员三种角色 1、用户&#xff1a; 登录、我的宿舍、申请调宿、报修申请、水电费管理、卫生检查、个人信息修改。 2、宿管&#xff1a; 登录、用户管理…

python实现从字符串中识别出省市区信息

从字符串中识别出省市区的信息分别存储,是我们经常会碰到的问题。如果用分词的方法去匹配获取比较麻烦,cpca包提供了便捷的调用函数transform。只要把含省市区的信息放进去,即可返回标准的含省市区的数据框。    本文详细阐述如何安装cpca包、transform函数参数定义,以及…

迷宫问题的对比实验研究

对不同的迷宫进行算法问题&#xff0c;分别采用栈、队列、基于红黑树的A*算法、以及图论中的最短路径来解决迷宫问题。 基本要求&#xff1a; &#xff08;1&#xff09; 从文件读入9*9的迷宫&#xff0c;设置入口和出口&#xff0c;分别采用以上方法&#xff0c;输出从入口到出…

CMake引用OSG

从CMake执行find_package(OpenSceneGraph REQUIRED COMPONENTS osgDB osgUtil)这句;情况如下; 当前OSG已经安装好;环境变量添加了OSG_ROOT(其值是OSG安装的根目录),并且 %OSG_ROOT%\bin 添加到了path; 有一个警告,已经done了; Found osgDB: optimized;D:/OSGEarth/l…

网络基础扫盲-多路转发

博客内容&#xff1a;多路转发的常见方式select&#xff0c;poll&#xff0c;epoll 文章目录 一、五种IO模型二、多路转发的常见接口1.select2、poll3、epoll 总结 前言 Linux下一切皆文件&#xff0c;是文件就会存在IO的情况&#xff0c;IO的方式决定了效率的高低。 一、五种…

【Solidity】Remix在线环境及钱包申请

好久没有学习区块链方面的知识了&#xff0c;目前通过自学大致掌握了Fabric联盟链的搭建&#xff0c;链码编写、部署&#xff0c;api调用&#xff0c;可以独立开发出一些基于fabric的应用&#xff0c;感觉开发出去中心化的应用还是很有意思的&#xff0c;因为他与之前开发的ssm…

Git 案例(企业如何使用git开发项目)

一、企业中我们是如何开发 1) 入职第一天,管理人员分配/git账号密码 2) 开发人员下载代码即文档/ 根据文档将环境搭建成功 3) 团队一般会给你讲讲项目相关的支持 4) 你接到第一个需求(或者某个功能,一般要经过沟通,分析,设计...等过程) 5) 创建feature分支(一般一个需求对应…

【计算机网络实验/wireshark】tcp建立和释放

wireshark开始捕获后&#xff0c;浏览器打开xg.swjtu.edu.cn&#xff0c;网页传输完成后&#xff0c;关闭浏览器&#xff0c;然后停止报文捕获。 若捕获不到dns报文&#xff0c;先运行ipconfig/flushdns命令清空dns缓存 DNS报文 设置了筛选条件&#xff1a;dns 查询报文目的…

【Java对象】一文读懂 Java 对象庐山真面目及指针压缩

文章目录 版本及工具介绍Java 对象结构对象头mark word 标记字mark word 标记字解析Lock Record class point 类元数据指针 实例数据对齐填充为什么需要对齐填充 常见 Java 数据类型对象分析ArrayListLongStringByteBoolean 其它指针压缩前置知识&#xff1a;32位操作系统为什么…

AI写作软件哪个好?这3个AI写作神器用了都说好!

随着信息时代的快速发展&#xff0c;AI写作早已成为人们创作内容的重要途径之一&#xff0c;在使用AI软件进行创作之前&#xff0c;当然要选择一个优质的写作软件&#xff0c;不过只要你拥有了这3款写作神器&#xff0c;你就能轻松创作出高质量的文章&#xff0c;我们一起来看看…

【uniapp】uview1.x 的 u-upload 上传点击删除隐藏 modal 提示框

uview1.x 版本的 upload 默认在图片成功上传后&#xff0c;再点击右上角删除按钮时会弹出提示框&#xff0c;如图&#xff1a; 但是有时又不需要&#xff0c;想要直接提示删除成功即可&#xff0c;由于官网没有给出点击删除按钮时所调用的钩子函数&#xff0c;又无法操作 DOM&…

【unity小技巧】实现由滑动条控制音量的大小

文章目录 前言开始1.配置BGM2.滑动条3.文本组件4.新增音量控制脚本 完结 前言 这期来一个比较基础的课程&#xff0c;也是比较常用的&#xff0c;unity使用滑动条控制音量的大小 开始 1.配置BGM 2.滑动条 3.文本组件 4.新增音量控制脚本 public class VolumeController : M…

数据库实验:SQL的数据视图

目录 视图概述视图的概念视图的作用 实验目的实验内容实验要求实验过程 视图概述 视图是由数据库中的一个表或多个表导出的虚拟表&#xff0c;其作用是方便用户对数据的操作 视图的概念 视图是一个虚拟表&#xff0c;其内容由查询定义。同真实的表一样&#xff0c;视图包含一…

关于ROS的网络通讯方式TCP/UDP

一、TCP与UDP TCP/IP协议族为传输层指明了两个协议&#xff1a;TCP和UDP&#xff0c;它们都是作为应同程序和网络操作的中介物。 **TCP&#xff08;Transmission Control Protocol&#xff09;协议全称是传输控制协议&#xff0c;是一种面向连接的、可靠的、基于字节流的传输…