news 2026/5/1 1:26:36

火灾监控系统的设计(内附网盘:代码、仿真、报告)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
火灾监控系统的设计(内附网盘:代码、仿真、报告)

(STM32F103C8T6、标准库)

  1. 功能设计

本项目设计一种全自动的智能火灾监控系统,可对环境温度、湿度和烟雾浓度进行实时监测,当有火灾风险或异常情况发生时,本装置可进行声音报警、自动控制并能够远程数据上报。本系统的具体设计参数如下:

(1)通过 DHT11 检测控制温湿度数据,并显示在OLED上。

(2)通过 MQ-2 检测烟雾浓度数据并显示在OLED上, 正常阀值在0~1000PPM之间。

(3)系统综合多个传感器数据来判断火情,能够实现风险较轻、风险较高、风险极高等基本火情判断:

检测到温度 超过30摄氏度,风险较轻;

检测到温度 超过40摄氏度,风险较高;

检测到烟雾浓度大于 30ppm 时 风险极高;

(4)检测到以上任意风险时蜂鸣器报警提醒,同时发送报警信息(当前温湿度,烟雾浓度,风险登记)到手机上。

(5)低风险不做处理,风险较高,打开风扇,风险极高风扇和水泵同时打开。

2. 硬件设计

2.1 系统结构框图

本系统由主控制器模块、传感器检测模块、通信模块、执行报警模块、显示模块和电源模块等部分组成,各模块协同工作,实现对火灾的实时监测、处理与报警。其结构框图如图1所示。

图1 系统结构框图

2.2 主控制器选型

本系统STM32F103C8T6作为主控制器,该型号提供 64KBFlash+ 20KBSRAM的存储组合,能满足多传感器监测与执行控制的综合需求。多个独立的ADC通道,可同时支持MQ-2 等模拟量传感器的采集,可在无需扩展芯片的情况下同时连接WiFi模块、调试接口和外部通信设备。其定时器配置便于驱动风扇、水泵、蜂鸣器等执行装置,特别适合需要多路PWM控制的火灾联动系统。

2.3 烟雾传感器、温湿度传感器选型

本系统烟雾检测部分采用MQ-2 型可燃气体/烟雾传感器。该传感器能够检测空气中的烟雾及多种可燃气体浓度,典型测量范围约为 300~10000PPM,输出为随浓度变化的模拟电压信号,电压范围在 0~5V之间,可直接连接至主控制器的ADC输入端口进行采集和处理,能够满足系统对烟雾浓度实时监测的要求。

本系统温湿度检测部分采用DHT11 型数字式温湿度传感器,用于测量环境温度和相对湿度。其温度测量范围为 0~50 ℃、湿度测量范围为 20~90 %RH,温度精度约 ±2 ℃、湿度精度约 ±5 %RH,输出为数字信号,采用单总线的通信方式与主控制器进行连接,具有接口简单、数据读取稳定的特点,适用于本系统的环境参数采集。

2.4 通信模块选型

本系统的通信部分在仿真环境中采用Proteus中的COMPIM通信接口模块,用于实现主控制器与计算机之间的串行数据交互。COMPIM能够将仿真电路中的UART信号映射为计算机本地的串口或虚拟串口,使系统在仿真阶段即可通过串口助手接收主控发送的数据,实现与真实串口相同的通信效果。该模块支持标准TTLUART信号,波特率可根据系统设置灵活调整,接口形式与实际硬件串口一致,便于在仿真过程中验证数据发送格式、通信稳定性及上位机显示功能。

2.5主控制器外围电路设计

主控制器外围电路如图2所示,时钟部分采用8MHz无源晶振Y2配合C13、C14构成主时钟振荡电路,同时搭配32.768kHz的Y1晶振与C11、C12组成实时时钟电路以满足低功耗计时需求;复位功能由复位按键SW1、电容C2和电阻R2构成的手动复位电路实现;电源方面通过ME6211-3.3将5V输入转换为3.3V的VCC,且输入输出端均配置滤波电容稳定供电;调试接口采用SWD形式的H4接口,可实现程序下载与调试;同时还设计了USB接口、GPIO扩展排针等外设接口,以及电源指示灯LED1、LED2用于状态显示,也引出了PA11/PA12等引脚支持USB通信。

图2 主控制器外围电路原理图

2.6 烟雾入侵检测电路设计

烟雾入侵检测电路如图3所示。本设计采用MQ-2 可燃气体/烟雾传感器作为火灾早期烟雾识别元件。MQ-2 的模拟输出随空气中烟雾浓度变化而改变,经可调电位器RV1 进行阈值设定后送入主控制器的ADC通道。MCU持续采集烟雾模拟量,并与设定浓度阈值比较,当检测到烟雾浓度升高至危险水平时立即触发火灾预警,联动蜂鸣器、排风风扇及水泵执行紧急处置。该电路结构简单、响应快速,能够有效实现火灾初期烟雾的自动检测与报警功能。

图3 烟雾入侵检测电路原理图

2.7 执行报警电路设计

执行报警电路如图4所示。本系统采用蜂鸣器、微型风扇和水泵作为火灾报警后的执行装置,各执行元器件均通过导线直接连接到STM32 的GPIO引脚,并由单片机输出高低电平实现开关控制。当检测到温度或烟雾浓度超过阈值时,主控制器立即输出高电平驱动蜂鸣器发声,同时启动风扇进行排烟,并控制水泵开启进行简易灭火。该电路结构简单,响应迅速,能够在仿真环境下实现火灾场景的联动报警功能。

烟雾传感器、温湿度传感器选型:

图4 蜂鸣器原理图

图5 电机驱动原理图

2.8 显示模块

本系统的显示模块采用 0.96 英寸OLED液晶显示屏,工作电压为 5V,通过I2C总线与STM32F103C8T6 相连,仅需SDASCL两根信号线即可完成数据传输,接口简单、占用资源少。该模块具有高亮度、高对比度和宽视角等特点,即使在低光环境下也能清晰呈现信息,非常适合用于火灾监控场景的实时数据显示。OLED显示内容包括当前温度、湿度、烟雾浓度以及系统工作状态等关键参数,主控制器通过发送字符缓存与刷新指令实现界面的动态更新。显示模块响应速度快、功耗低,可确保在持续监控过程中稳定运行,为用户提供直观、可靠的现场监控信息。

图6OLED原理图

2.9 电源电路设计

电源电路如图所示。本系统采用稳定的 5V直流电源作为整套电路的供电基础,主控制器STM32F103C8T6、DHT11 温湿度传感器、MQ-2 烟雾传感器模块、OLED显示屏及蜂鸣器等都由该电源统一供电。在仿真环境中,各模块均已集成必要的稳压处理,因此电源直接分配至各器件的VCCGND引脚即可满足工作要求。系统中所有数字接口均共享公共地线,确保信号传输可靠;5V电源具备足够的电流输出能力,可同时驱动风扇、水泵等负载,从而保证整个火灾监控系统的稳定运行。

图7 电源模块原理图

3. 软件设计

3.1 主程序设计

1. 系统初始化和主循环

2. 传感器数据读取

3. 主要风险判断(温度>30或烟雾>30)

4. 报警和数据发送

5. 三级响应机制(根据烟雾和温度值控制风扇水泵)

6. 显示更新和循环继续

图8 主程序流程图

3.2OLED显示子程序设计

1. 接收行号、列号和字符串指针参数;

2. 遍历字符串中的每个字符;

3. 调用OLED_ShowChar()逐个显示字符;

4. 遇到字符串结束符'\0'时停止

图9OLED显示子程序流程图

3.3 串口发送子程序设计

  1. 发送单个字节,等待发送完成;
  2. 发送字符串,遍历直到遇到'\0'
  3. 发送字节数组,指定长度;
  4. 发送数字,转换为字符串形式;
  5. 格式化输出,支持可变参数;

图10 串口发送子程序流程图

3.4温湿度传感器子程序设计

  1. 复位DHT11

2. 检测响应

3. 读取数据(包含字节和位的循环)

4. 校验数据

5. 解析数据或返回失败

图11 串口发送子程序流程图

3.5烟雾传感器(滑动变阻器模数转换)子程序设计

  1. 初始化ADC- 配置GPIOADC参数
  2. 获取ADC平均值 - 循环多次采样

单次ADC采样

延时5ms

  1. 计算平均值 - 返回最终结果

图12 烟雾传感器(滑动变阻器模数转换)子程序流程图

4.效果展示

温度<30℃且烟雾小于30PPM时,无反响:

烟雾>30PPM:触发声音报警,启动通风+灭火系统

数据上报:异常状态下通过WiFi发送实时数据

温度>30℃:触发声音报警

数据上报:异常状态下通过WiFi发送实时数据

温度>40℃:触发声音报警,启动通风系统

5. 程序清单

主程序 while(1) { DHT11_Read_Data(&temp,&humi); mq2=MQ2_Get_Adc_Average(ADC_Channel_1,10)*1000/4095;//烟雾传感器浓度的值 OLED_ShowNum(47,0,temp,2,OLED_8X16); OLED_ShowNum(47,16,humi,2,OLED_8X16); OLED_ShowNum(47,32,mq2,3,OLED_8X16); OLED_Update(); //阈值检测 if(temp>30 || mq2>30) //任何一种风险产生 开报警并发送数据出去 { GPIO_ResetBits(GPIOB, GPIO_Pin_0);//低电平触发 Delay_ms(10); GPIO_SetBits(GPIOB, GPIO_Pin_0);//低电平触发 //通过串口发送一次数据到WiFi模块 if(send_flag == 0){ send_flag = 1; printf("TEMP="); Serial_SendByte(temp/10+'0'); Serial_SendByte(temp%10+'0'); printf(" C, HUMI="); Serial_SendByte(humi/10+'0'); Serial_SendByte(humi%10+'0'); printf(" RH, MQ2="); Serial_SendByte(mq2/100+'0'); Serial_SendByte(mq2/10%10+'0'); Serial_SendByte(mq2%10+'0'); printf(" PPM\r\n"); } } else //无风险 关报警 { send_flag = 0; GPIO_SetBits(GPIOB, GPIO_Pin_0); } if(mq2>30){ //风险极高 GPIO_SetBits(GPIOB, GPIO_Pin_3);//开风扇 GPIO_SetBits(GPIOB, GPIO_Pin_6);//开水泵 } else if(temp>40){ //风险较高 GPIO_SetBits(GPIOB, GPIO_Pin_3);//开风扇 GPIO_ResetBits(GPIOB, GPIO_Pin_6);//关水泵 }else{ //低风险或无风险 GPIO_ResetBits(GPIOB, GPIO_Pin_3);//关风扇 GPIO_ResetBits(GPIOB, GPIO_Pin_6);//关水泵 } }

(详细代码、图片流程图等看网盘中的报告)

网盘:代码、仿真、报告

通过网盘分享的文件:火灾监控系统
链接: https://pan.baidu.com/s/1S_-OeYKDnZy6qC7FnV-Jrw?pwd=yjjz 提取码: yjjz

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 4:44:40

Get-cookies.txt-LOCALLY:本地Cookie管理的安全解决方案

在当今数字环境中&#xff0c;Cookie管理已成为每个互联网用户必须面对的问题。传统Cookie导出工具往往需要将敏感数据上传至第三方服务器&#xff0c;存在严重的隐私泄露风险。Get-cookies.txt-LOCALLY作为一款专注于本地化处理的浏览器插件&#xff0c;通过创新的技术架构为用…

作者头像 李华
网站建设 2026/5/1 4:47:08

每天20次免费AIGC查重的网站是真的吗?怎么0元查AI重复率!

论文AIGC率过高是当前很多学生和研究者在论文写作中遇到的普遍问题。别慌&#xff0c;只要掌握正确的方法&#xff0c;完全可以将AI生成痕迹有效降低&#xff0c;顺利通过AIGC检测。 一、AIGC检测原理是什么&#xff1f; 为什么自己写的论文AIGC检测会超标&#xff0c;一个一…

作者头像 李华
网站建设 2026/5/1 4:45:56

Miniconda vs Anaconda:谁更适合你的AI开发环境搭建?

Miniconda vs Anaconda&#xff1a;谁更适合你的AI开发环境搭建&#xff1f; 在人工智能项目日益复杂的今天&#xff0c;你有没有遇到过这样的场景&#xff1f;刚跑通一个 PyTorch 模型&#xff0c;准备尝试另一个基于 TensorFlow 的复现实验时&#xff0c;却因为 CUDA 版本冲突…

作者头像 李华
网站建设 2026/5/1 4:45:02

专业仿写prompt:VLC皮肤使用体验报告创作指南

专业仿写prompt&#xff1a;VLC皮肤使用体验报告创作指南 【免费下载链接】VeLoCity-Skin-for-VLC Castom skin for VLC Player 项目地址: https://gitcode.com/gh_mirrors/ve/VeLoCity-Skin-for-VLC 创作任务&#xff1a; 请基于VeLoCity VLC皮肤项目&#xff0c;创作一…

作者头像 李华
网站建设 2026/5/1 6:48:58

Res-Downloader终极指南:5分钟掌握全网资源下载技巧

Res-Downloader终极指南&#xff1a;5分钟掌握全网资源下载技巧 【免费下载链接】res-downloader 资源下载器、网络资源嗅探&#xff0c;支持微信视频号下载、网页抖音无水印下载、网页快手无水印视频下载、酷狗音乐下载等网络资源拦截下载! 项目地址: https://gitcode.com/G…

作者头像 李华
网站建设 2026/4/25 6:09:50

codex的效率命令在vLLM环境下执行更快

codex的效率命令在vLLM环境下执行更快 在当前AI应用从实验室走向生产落地的关键阶段&#xff0c;一个看似简单的问题却频繁困扰着工程团队&#xff1a;为什么同样是运行Codex模型&#xff0c;某些服务能以极低延迟响应成百上千的并发请求&#xff0c;而另一些系统却在几十个请求…

作者头像 李华