当前位置: 首页 > news >正文

基于51单片机的室内烟雾温度与人体监测报警系统设计

基于51单片机的室内烟雾温度与人体监测报警系统设计

点击链接下载资料:https://download.csdn.net/download/m0_51061483/91698894


1. 系统功能介绍

本系统是一种基于51单片机的多参数环境监测与安全报警系统,主要用于室内安全监测与防护。通过检测环境温度、烟雾浓度以及人体存在情况,系统能够在环境出现异常时及时报警,保障用户的生命与财产安全。

系统以STC89C52单片机为核心控制单元,通过MQ-2烟雾传感器采集空气中的烟雾浓度信息,使用DS18B20数字温度传感器实时监测室内温度,并通过红外人体检测模块判断室内是否有人活动。LCD1602液晶模块用于实时显示温度值、烟雾浓度及检测状态,使用户能够清晰了解环境情况。

此外,系统设有按键模块,可对温度与烟雾浓度的报警阈值进行灵活设置,以适应不同的使用场景。当温度或烟雾浓度超出设定阈值时,系统通过蜂鸣器与LED进行声光报警提示。同时,若检测到室内无人,则系统可自动降低检测频率,节省能耗,体现出良好的智能特性。

该设计广泛适用于家庭、实验室、仓库、地下室等场所,具有安全可靠、操作简单、功能全面等优点,为现代智能家居与安全监控系统提供了基础方案。


2. 系统电路设计

系统硬件部分由单片机最小系统、温度检测模块、烟雾检测模块、人体红外检测模块、显示模块、按键设置模块以及声光报警模块组成。以下分别介绍各部分的设计原理与功能。

2.1 单片机最小系统设计

系统的控制核心为STC89C52单片机,它是一款基于8051内核的高性能微控制器,具有8KB Flash存储、256字节RAM和丰富的I/O接口,能够满足多模块数据采集与控制的需求。

最小系统主要包括以下部分:

  • 时钟电路:采用12MHz晶振与两只30pF电容构成振荡电路,确保系统时序稳定。
  • 复位电路:由电容、电阻及复位按键组成,用于在系统上电或需要重新启动时对单片机进行复位。
  • 电源电路:系统工作电压为5V,通过AMS1117-5.0稳压芯片提供稳定电源,为单片机及外围模块供电。

单片机通过I/O口与各模块连接,实现数据采集、逻辑判断与报警控制功能,是整个系统的核心。


2.2 温度检测模块设计

温度检测部分采用DS18B20数字温度传感器。该传感器采用单总线通信方式,测温范围为-55℃~125℃,精度可达±0.5℃。它可以直接与单片机的任意I/O口相连,通过软件时序实现数据读写。

在实际应用中,DS18B20每隔一定时间将温度信息发送至单片机,单片机通过读取数据寄存器获得当前温度值。由于DS18B20输出的是数字信号,无需外部ADC电路,简化了系统设计。

系统设计中,单片机周期性采样温度数据,当温度值高于用户设定的报警阈值时,系统会触发报警信号,并通过LCD1602实时显示当前温度及报警状态。


2.3 烟雾检测模块设计

烟雾检测部分选用MQ-2气体传感器。MQ-2对烟雾、液化气、甲烷等可燃性气体极为敏感,输出为模拟电压信号。由于单片机无法直接采集模拟信号,系统引入ADC0832模数转换芯片,将模拟电压信号转换为数字信号供单片机读取。

ADC0832为8位精度A/D转换器,采用SPI接口通信方式,具有两路模拟输入通道。本系统将MQ-2传感器输出端连接至其CH0通道,实现烟雾浓度数据采集。

单片机周期性采集ADC0832转换结果,换算成对应的烟雾浓度值。当浓度超过设定阈值时,系统自动执行报警,并在LCD上显示“SMOKE ALERT!”提示信息。


2.4 人体红外检测模块设计

人体检测部分采用HC-SR501红外人体感应模块。该模块基于热释电红外传感器原理,能够感知人体红外辐射的变化。当检测到有人经过时,模块输出高电平信号;无人时输出低电平。

单片机通过读取HC-SR501输出端的电平状态,判断环境中是否存在人体活动。当检测到有人时,系统进入正常监测模式;当检测到无人时,系统进入节能监控状态,仅保持低频检测,以降低功耗。

此外,红外模块还可用于触发报警复位或模式切换,实现更加智能的人机交互。


2.5 显示模块设计

显示部分采用LCD1602液晶显示屏,用于显示温度、烟雾浓度、人体检测状态以及报警阈值信息。LCD1602为16×2字符型显示器,可显示两行共32个字符。

单片机通过4位数据总线方式与LCD1602通信,节省I/O资源。显示内容包括:

  • 第一行:显示当前温度与烟雾浓度值;
  • 第二行:显示人体状态及系统运行模式(NORMAL/ALERT)。

该模块通过定时刷新实现实时更新,使用户直观了解系统状态。


2.6 按键设置模块设计

按键部分包括三个独立按键:温度阈值设置键、烟雾阈值设置键以及确认键。通过按键操作,用户可以调整报警阈值并存储在EEPROM中,断电后依然保持设置。

单片机通过读取按键电平变化实现功能判断,采用软件延时消抖技术确保按键响应准确。阈值设置完毕后,LCD会显示当前阈值供用户确认。


2.7 声光报警模块设计

报警模块由蜂鸣器与LED指示灯组成。蜂鸣器用于提供声响报警,LED用于提供视觉提示。当温度或烟雾浓度超过阈值时,蜂鸣器鸣响、红色LED闪烁,同时LCD显示报警信息。

在检测到异常消失后,系统自动复位报警状态,重新进入监测模式。


3. 系统程序设计

系统软件采用模块化结构设计,主要分为主程序模块、温度采集模块、烟雾采集模块、人体检测模块、显示模块、按键设置模块与报警控制模块。程序编写语言为C,开发环境为Keil µVision。


3.1 主程序设计

主程序负责系统的初始化、各模块调用与状态判断,是系统运行的总控制单元。其主要流程为:

  1. 初始化各模块;
  2. 读取温度与烟雾浓度;
  3. 检测人体存在;
  4. 判断是否超出阈值;
  5. 执行相应报警操作;
  6. 更新LCD显示。

主程序代码如下:

#include <reg52.h>
#include "lcd1602.h"
#include "ds18b20.h"
#include "adc0832.h"
#include "key.h"
#include "buzzer.h"
#include "pir.h"float temperature;
unsigned int smoke_value;
bit human_exist;
unsigned char temp_threshold = 40;
unsigned char smoke_threshold = 100;void main() {LCD_Init();DS18B20_Init();ADC0832_Init();PIR_Init();Buzzer_Init();Key_Init();LCD_ShowString(1,1,"Env Monitor Sys");while(1) {temperature = DS18B20_ReadTemp();smoke_value = ADC0832_Read(0);human_exist = PIR_Check();Key_Process();Alarm_Check();LCD_Update(temperature, smoke_value, human_exist);DelayMs(500);}
}

该主程序周期性执行传感器采集与报警判断,确保系统实时响应环境变化。


3.2 温度采集程序设计

float DS18B20_ReadTemp() {unsigned char LSB, MSB;int temp;DS18B20_StartConvert();DelayMs(750);DS18B20_ReadScratch(&LSB, &MSB);temp = (MSB << 8) | LSB;return temp * 0.0625;
}

此函数通过单总线读取温度寄存器数据并转换为实际温度值,分辨率为0.0625℃。


3.3 烟雾采集程序设计

unsigned int ADC0832_Read(unsigned char channel) {unsigned int value = 0;// SPI通信读取过程// 读取8位数据,返回烟雾浓度return value;
}

该函数通过SPI协议读取ADC0832的数字信号,并换算为烟雾浓度。


3.4 人体检测程序设计

bit PIR_Check() {if(P3_3 == 1) return 1;else return 0;
}

读取红外模块输出信号,高电平表示检测到人体活动。


3.5 按键设置程序设计

void Key_Process() {if(Key_Read(1)) temp_threshold++;if(Key_Read(2)) smoke_threshold += 5;if(Key_Read(3)) Save_Threshold();
}

通过按键调整温度与烟雾报警阈值,并调用存储函数进行保存。


3.6 报警控制程序设计

void Alarm_Check() {if(temperature > temp_threshold || smoke_value > smoke_threshold) {Buzzer_On();LED_On();} else {Buzzer_Off();LED_Off();}
}

该函数根据实时数据与设定阈值比较结果执行声光报警。


3.7 LCD显示程序设计

void LCD_Update(float temp, unsigned int smoke, bit human) {LCD_ShowString(1,1,"T:");LCD_ShowFloat(1,3,temp);LCD_ShowString(1,10,"C S:");LCD_ShowNum(1,13,smoke,3);LCD_ShowString(2,1,"Human:");LCD_ShowString(2,8,human ? "YES":"NO ");
}

LCD1602实时显示环境温度、烟雾浓度与人体检测状态,使用户随时掌握环境信息。


4. 总结

本设计基于51单片机构建了一个功能完善的室内烟雾、温度与人体监测报警系统。系统通过DS18B20与MQ-2传感器实现环境参数检测,结合红外人体检测模块实现智能判断,能够在温度或烟雾浓度超过阈值时进行声光报警提醒,具有良好的实时性与可靠性。

系统支持报警阈值自定义设置,增强了适应性;LCD实时显示监测数据,使用户能够直观了解环境状态。整个系统硬件结构简洁、软件逻辑清晰、控制策略合理,具有较高的实用价值与推广意义。

本系统不仅可用于家庭防火预警与安全监控,也可作为单片机综合应用的教学实验平台,为智能安防系统设计提供了参考。

http://www.dtcms.com/a/458801.html

相关文章:

  • 青岛网站建设培训学校wordpress手机字体变大6
  • 哈尔滨高端品牌网站建设建筑模板质量标准
  • 做订单管理网站用什么软件郑州网站制作方案
  • 百度网站推广申请Wordpress ajax 相册
  • 苏州建设网站的公司做网站分期付款比例
  • 购物网站页面桂林网站seo
  • 义乌网站建设推广网站建设方案流程
  • 企业网站的建设目的包含什么wordpress 获取页面
  • 做网站商机网络设计的安全性原则主要是指
  • 电商网站设计趋势千库网ppt
  • 网站设计可以用性原则怎么做义工网站
  • 山东省城乡和住房建设厅网站wordpress二级目录创建
  • intellij idea做网站wordpress文章顶置
  • 网站营销推广有哪些阿里巴巴网站怎样做的漂亮
  • 苏州专业网站建设公司wordpress新增站点
  • 网站四网合一品牌设计工作内容
  • 网站开发公司的销售方式厦门网站建设 孚珀科技
  • 电子商务网页设计与网站建设论文婚庆设计效果图
  • 网站欢迎页怎么做网站建设工作思路
  • 用psd做的买书网站商城网站建站程序
  • 网站建设沟通技巧自己怎么注册一个网站
  • asp.net的网站开发wordpress 模板语言
  • 做照片书的模板下载网站好字体不显示 wordpress
  • 游戏网站建设公司免费的图库网站
  • 【work】yolov11训练与自动标注全过程(以吸烟检测为例子)
  • 主流的自助建站网站wordpress增加产品
  • 个人网站制作模板主页常用设计资源网站
  • 网站进度表如何免费创建一个个人网站
  • 注册网站页面跳转错误有没有99块钱做网站
  • 网站 报价单长春建站塔山双喜