基于STM32的森林火灾报警系统设计与实现
创作时间:
作者:
@小白创作中心
基于STM32的森林火灾报警系统设计与实现
引用
CSDN
1.
https://blog.csdn.net/lihuadetongzhuo/article/details/146459435
本文介绍了一个基于STM32的森林火灾报警系统,该系统能够实时监测森林环境中的烟雾浓度、温度、湿度等参数,并在检测到异常时发出声光报警。系统通过无线通信模块将数据发送至手机APP,实现远程监控。文章详细介绍了系统的硬件组成、工作原理和代码实现,适合对嵌入式系统和物联网应用感兴趣的读者参考学习。
实现功能
- 实时监测森林环境中的烟雾浓度、温度、湿度等参数
- 当检测到的烟雾浓度超过设定阈值时,系统立即发出声光报警
- 通过按键设置检测参数,如烟雾浓度阈值、报警温度等
- 采用OLED屏幕实时显示烟雾浓度、温度、湿度等数据
- 检测到明火或环境异常时,通过蜂鸣器发出报警
- 将检测数据通过无线通信模块发送至手机APP,实现远程监控
主要元器件
- 主控芯片:选用STM32单片机,负责数据采集、处理和输出控制
- 烟雾传感器:采用MQ-2型烟雾传感器,实现对森林环境中烟雾浓度的检测
- 温湿度传感器:采用DHT11温湿度传感器,实时监测环境温湿度
- OLED显示屏:用于显示烟雾浓度、温度、湿度等数据
- 声光报警模块:用于发出报警信号
- 无线通信模块:采用WIFI,实现与手机APP的数据传输
- 按键模块:用于设置检测参数
系统工作原理
系统以STM32单片机作为主控制器,结合DHT11、MQ-2和火焰传感器,构建了一个高效的森林火灾检测系统。通过DHT11传感器实时监测温湿度,MQ-2传感器检测空气中的烟雾浓度,火焰传感器则用于检测火焰的存在,确保对森林环境变化的全面感知。
系统通过这些传感器数据的实时采集与处理,能够及时发现异常情况,帮助管理人员进行预警和应急响应。为了便于管理人员实时查看森林环境状态,系统采用OLED液晶显示屏呈现温湿度、烟雾浓度等关键数据,使监控变得直观易懂。
同时系统采用ESP8266 WiFi模块实现无线通信,将实时采集到的数据传输至远程平台。通过与手机APP的连接,管理人员可以在任何地方通过APP查看数据和接收预警信息,实现远程监控。
系统还具备灵活的报警设置功能,管理人员可以根据森林环境的实际需求设置烟雾浓度的报警阈值。当烟雾浓度超过设定值或火焰被检测到时,系统会触发蜂鸣器进行声音报警,并通过APP向管理人员发送预警提示。此功能有助于及时发现火灾隐患,提高森林防火工作效率,减少火灾带来的损失。
代码实现
STM32代码采用C语言,标准库编写,软件是keil5,代码都有详细注释,看不懂可以截图问我
#include "stm32f10x.h"
#include <stdio.h>
#include <string.h>
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "OLED.h"
#include "IO_Init.h"
#include "bsp_adc.h"
#include "DHT11.h"
extern __IO uint16_t ADC_ConvertedValue[NOFCHANEL];// ADC1转换的电压值通过MDA方式传到SRAM
float light,mq135,fire;
u8 mq135_set=30,fire_set=40;
u8 fire_sta;
u8 app_check() //手机APP的指令控制
{
u8 app_key;
app_key=0;
if(USART1_RX_STA>5){
delay_ms(50);
if(strstr((const char *)USART1_RX_BUF,"GPIO0=0")){
app_key= 1;
}
if(strstr((const char *)USART1_RX_BUF,"GPIO0=1")){
app_key= 2;
}
if(strstr((const char *)USART1_RX_BUF,"GPIO0=2")){
app_key= 3;
}
if(strstr((const char *)USART1_RX_BUF,"GPIO0=3")){
app_key= 4;
}
if(strstr((const char *)USART1_RX_BUF,"GPIO0=4")){
app_key= 5;
}
USART1_RX_STA=0;
memset(USART1_RX_BUF,0,sizeof(USART1_RX_BUF));
}
return app_key;
}
void key_deal()
{
u8 key;
key = Key_Scan(); //按键处理
if(key==0){
key = app_check(); //没有按键按下就处理APP数据
}
if(key==1){
}
if(key==2){ //阈值增加
if(mq135_set<99)
mq135_set++;
}
if(key==3){ //阈值减少
if(mq135_set>10)
mq135_set--;
}
}
int main(void) //主函数
{
u8 str[60],i,time=50,Flag=0;
SystemInit();
delay_init();
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); // 2组中断分组
Beep_Init(); //蜂鸣器初始化
Beep = 0; //测试蜂鸣器
OLED_Init(); //OLED初始化
Beep = 1; //关闭蜂鸣器
usart1_Init(115200);//串口1,ESP8266 WIFI
usart2_Init(115200);//串口2,调试用
Esp8266_AP_Init();//ESP8266初始化为AP模式,会产生一个热点,WIFI,123456789
ADCx_Init(); //ADC模拟量采集引脚初始化
Key_Init(); //按键引脚初始化
while(1)
{
key_deal(); //按键的处理判断
delay_ms(100);
if(time++>10) //10次100ms就是1s一次
{
time=0;
fire = 100-ADC_ConvertedValue[0]/40.95; //ADC数据换成火焰监测数据
mq135 = ADC_ConvertedValue[1]/40.95-1; //ADC数据转换成气体数据
get_temperature_and_humidity(); //温湿度数据
//间隔发送手机APP数据,不能发太快
if(Flag){
Flag=0;
i= sprintf((char *)str,"%.0fW%.0fW%.1fW%dW ",temp,humi,mq135,fire_sta);
UsartPrintf(ESP8266_USART,"AT+CIPSEND=0,%d\r\n",i);
}
else{
UsartPrintf(ESP8266_USART,(char *)str);
Flag=1;
}
}
//报警逻辑处理,数据异常蜂鸣器报警
if((fire_sta)||(mq135>mq135_set))
{
Beep = !Beep;
}
else
Beep = 1;
//以下是显示逻辑部分
OLED_printf(0,0,"Temp:%.0fC ",temp);
OLED_printf(0,2,"Humi:%.0f%% ",humi);
OLED_printf(0,4,"MQ:%4.1f%% %2d%%",mq135,mq135_set);
if(fire>fire_set)
fire_sta = 1;
else
fire_sta = 0;
if(fire_sta==1)
OLED_printf(0,6,"Fire ");
if(fire_sta==0)
OLED_printf(0,6,"NO Fire ");
}
}
原理图/PCB
原理图和PCB都使用立创EDA绘制,对新手较为友好。可以导出为AD格式的文件
热门推荐
如何摆脱慢性荨麻疹?专家:掌握「三要、一不」,夺回生活主导权
养老金替代率持续下降,应对挑战需积极调整
股票技术指标入门:计算方法与应用场景全解析
詹姆斯超越贾巴尔,成为NBA历史得分王:生涯场均得分对比全解析
直播网红扎堆,瓷器卖到上千块,景德镇想要再造一个“千年瓷都”
彩票中奖纳税重大调整,2.2亿免个税不再有,但还有新招避税?
全网热议的全氮阴离子炸药真相:从突破到撤稿的科研历程
在古代当尼姑还有门槛?只有贵族女子才行?
地黄丸家族使用指南:避开禁忌,正确养生
幼儿每日腹痛应如何处理
2024年城市地下空间工程专业全国大学排名:含最好的10所本科名校
肚子越来越大是怎么回事?医生为你详细解答
丙烯腈的工艺流程
《阿诺拉》:在跨越阶级的爱情中寻找自我与认同
《阿诺拉》叙事简洁,故事朴实无华,女主角的演出能引起观众共鸣
林允儿:从少女时代成员到实力派演员的蜕变之路
ISFP性格特征解析:探索内向艺术家的内心世界
海口一车主贷款结清,车却被离奇抵押?4S店回应
央视曝光:6种存在安全隐患的日常用品,你家可能就有!
夭折的巨兽:德国海军O级战列巡洋舰
怎样改变那种怂怂懦弱的气质?
抗骨质疏松药物——双膦酸盐的前世今生
脑中风后遗症
基于红外激光技术的车载夜视辅助系统
5S贵在坚持!
手机制作动态图全攻略:轻松上手,分享无限乐趣!
健康版的素煎饼果子
白娘子与许仙的故事
物业管理的主要内容与职责解析
2025香港优才计划大揭秘:申请条件、流程、续签、避坑指南,一文搞定永居