基于STM32的智能WIFI烟雾报警系统Word文件下载.docx
《基于STM32的智能WIFI烟雾报警系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于STM32的智能WIFI烟雾报警系统Word文件下载.docx(25页珍藏版)》请在冰豆网上搜索。
I
目 录
摘 要 Ⅰ
Abstract Ⅰ
目 录 Ⅱ
1系统研究 1
1.1本系统的研究意义 1
1.2微处理器选型 1
1.3烟雾传感器选型 2
1.4无线模块选型 2
2系统设计 2
2.1系统整体思路 2
2.2系统模块设计概述 2
2.2.1STM32模块介绍 2
2.2.2烟雾传感器模块介绍 3
2.2.3WIFI模块介绍 4
2.3系统设计说明 4
3系统硬件设计 5
3.1微控制器模块 5
3.1.1电源和启动方式 5
3.1.2按键LED 5
3.1.3ADC 6
3.1.4USART 6
3.1.5定时器 7
3.1.6程序烧录 7
4程序设计模块 8
4.1ESP8266WIFI芯片开发简介 8
4.2传感器数据采集开发 8
4.2.1硬件连线 8
4.2.2ADC开发 9
4.3USART调试开发 10
4.4主体应用程序开发 10
4.5应用程序设计流程 11
5系统测试相关问题 12
5.1接收烟雾浓度数据 12
5.2串口测试 13
6结论 13
II
1系统研究
1.1本系统的研究意义
随着科技的发展,互联网在我们的生活中扮演着越来越重要的角色,智能家居也越来越普及,那么对安全的需求是否也越来越重要了。
本系统根据机智云官方平台提供的云平台实时上传烟雾浓度实现实时查看的功能,实现了提前预警的功能,极大地避免了损失。
本系统相较于市面上的烟雾报警器有以下优点:
灵敏度高,扩展方便,易于学习传感器知识以及嵌入式知识,可操作性强,价格是市面上的五分之一,以及采用STM32系列芯片作为主控芯片,市面上并没有以STM32作为主控芯片的烟雾报警器。
缺点:
本系统知识实现了采集报警以及上传的作用,无法达到商业化的目的,并且相较于市面上的烟雾报警器,安装不方便以及没有设计带阻燃材料的外壳。
最好的方式是将本次系统开发作为学习的途径,结合所学的传感器知识,嵌入式开发知识以及网络通信知识进行合理的运用。
提升专业能力,提高职业竞争力。
1.2微处理器选型
微处理器是这个系统的骨干,可以说是非常的重要了。
本次系统我选用的是
STM32Fx系列,STM32系列基于高性能、低成本、低功耗的嵌入式应用专门设计的ARM。
CortexM0,M0+,M3,M4和M7内核。
这款微处理器是意法半导体公司推出
的,具有高集成度,高性能,具有12通道DMA控制器,多个个快速I/O方便扩展,也有适合烟雾传感器的低功耗模式。
并且STM32还提供了与其他STM32微控制器相同的标准接口,更是增加的产品的灵活性。
并且低功耗模式到快速启动也同样节省能量,从低功耗模式到唤醒用时小于6微秒,完全可以满足烟雾报警器要求。
第1页(共23页)
1.3烟雾传感器选型
烟雾传感器相当于是整个系统的眼睛,可以说是很重要的一个环节了。
经过观看各种烟雾传感器的属性,经过对比调查。
烟雾传感器主要分为3类
(1):
离子式烟雾传感器;
(2)光电式烟雾传感器;
(3)气敏式烟雾传感器;
本次设计最适合的传感器采用的是离子式烟雾传感器,本次采用的型号为MQ-2,其采用的材料是气敏材料,敏感度非常高,细微的变化也能察觉到,所以非常适合作为本设计的传感器。
但是要小心:
在使用之前必须预热。
1.4无线模块选型
对于无线模块,本系统选用的是ESP8266。
ESP8266具有成本低,高性能的特点。
其成本只要10元左右,可以说是物美价廉。
其可以作为AP模式和station模式,本系统中作为AP通过WIFI或者热点向云平台发送数据。
2系统设计
1.1 系统整体思路
图2-1系统结构框图
2.2系统模块设计概述
2.2.1STM32模块介绍
本系统采用的芯片型号是STM32F103c8t6,基于ARM-M架构32位的微控制器,作为本系统的处理核心,拥有从64K或128K字节的闪存程序存储器,高达
BAT
20K字节的SRAM。
支持睡眠、停机和待机模式[13]。
V 为RTC和后备寄存器供电。
第3页(共23
页)
该控制器具有2个12位的模数转换器,多达16个通道,采用逐次逼近算法的AD转换器,可单次、连续、扫描模式执行。
以左对齐的方式在16位数据寄存器中存放转换结果,以中断的方式通过DMA读取。
同时STM32F103c8t6还具有
3个USART。
以及标准JTAG调试接口,可接各种通用仿真器。
还有在本系统中
使用的2个按键以及LED灯。
还有20P-GPIO排针和USB接口。
本次使用的芯片原理图如下:
图2-2STM32F103C8T6CPU原理图
2.2.2烟雾传感器模块介绍
前面已经介绍了MQ-2的物理特性,这里介绍一下MQ-2的电路基本工作原理。
MQ-2采用的是电阻式设计。
其内部由AL203陶瓷管以及Sn02敏感层组成,测量电机及加热器构成的敏感原件构成了它的工作环境。
当传感器所在环境中存在可燃气体的时候,其电导率随空气中可燃气体的浓度呈对数级增长。
图2-3MQ-2电路图
2.2.3WIFI模块介绍
本系统的WIFI模块采用的是espressif的Esp8266芯片。
ESP8266相较于其他WIFI芯片有以下优点:
其价格非常便宜,为其他wifi芯片的二分之一不到,并且设有标准的外设数字接口,可方便供编程使用,为其烧录专用的编程固件即可使其实现编程的功能,Esp8266还集成了32位的tensilica处理器,并且外围电路占用少,可将所占pcb空间降至最低。
此产品是物联网应用的专用产品,具有多项专用技术实现了超低功耗。
其省电模式适用于各种场景。
2.3系统设计说明
系统图如图2-1所示,由烟雾传感器MQ-2采集数据转换为电压值,而MQ-2连接STM32F103xx的ADC通过AD转换将电压值转换为阿拉伯数字,再通过数学计算转换为气体浓度,然后STM32F103xx又通过ESP8266芯片传输浓度值到云平台(如机智云),然后在云平台预设预警值。
开始时STM32的LED1亮起红色,当浓度超过预警值时,LED灯开始闪烁,并启动蜂鸣器(未实装)。
以提醒防止火灾发生。
第16页(共23页)
3系统硬件设计
3.1微控制器模块
3.1.1电源和启动方式
STM32的工作电压为3.3v同时IO兼容5V电平,可输出供烟雾传感器的5V
高电平。
STM32有三种启动模式,研究启动模式主要是用于烧录程序,它的三种启动模式对应的存储介质均为芯片内置的,他们是:
1)用户闪存=芯片内置的Flash
2)SRAM=芯片内置的RAM内存
3)系统存储器=芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段
Bootloader,就是通常所得ISP程序。
这个区域的内容在芯片出场后没人能够修改或者擦除,即我们常说的ROM区。
[1]
每个STM32的芯片上都有两个管脚BOOT0和BOOT1,这两个管脚在芯片复位时的电平状态决定了复位后从那个区域开始执行程序,见下表
BOOT1
BOOT0
启动方式
x
从用户闪存启动,正常的工作模式
1
从系统存储器启动,这种模式有厂家设置
从内置SRAM启动,这种模式可以用于调试
表3.1BOOT0与BOOT1状态对应的启动方式
3.1.2按键LED
STM32F103c8t6的IO是通过一个GPIO_InitTypeDef的结构体来初始化的,定义如下:
typedefstruct
{
uint16_tGPIO_Pin;
GPIOSpeed_TypeDefGPIO_Speed;
GPIOMode_TypeDefGPIO_Mode;
}GPIO_InitTypeDef;
按键与LED的电路图如下
图3-1 按键与LED
通过函数GPIO_SetBits(GPIO_TypeDef,uint16_t);
设置引脚状态为1或者0来控制LED的亮或者灭。
而按键通过扫描的方式来查询是否按下,若按下,则PA0的状态为0,反之为1即可得知按键的状态来做一些控制的事情。
3.1.3ADC
STM32的ADC为12位转换结果,1MHZ转换速率,转换结果范围为0~4096;
转换范围为:
0~3.6V此时计算公式为(x/4096*3.3);
对ADC供电要求为:
2.4~3.6V;
而DMA的作用就是提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。
无须CPU任何干预,通过DMA数据可以快速地移动。
这就节省了CPU的资源来做其