基于STM32的无线火灾定位报警系统设计❋
2016-11-21李长富黎敬涛
李长富,黎敬涛
(昆明理工大学信息工程与自动化学院,昆明650500)
基于STM32的无线火灾定位报警系统设计❋
李长富,黎敬涛
(昆明理工大学信息工程与自动化学院,昆明650500)
设计了一种基于STM32的无线定位火灾报警系统。系统以STM32F103VET6为主控制器完成现场检测和现场报警。GPS模块来获取定位数据确定火灾发生的建筑位置信息,经处理器处理后由GPRS无线传输模块发送位置信息,由上位PC接收位置信息并显示位置数据;并结合一个加权决策树算法判断报警条件防止误报。终端硬件包括主控制器、GPRS模块、GPS模块、温度烟雾传感器模块,报警模块;数据通过无线网络传给上位机PC并以上位软件入库显示。实验得到良好的效果,性能稳定,满足设计要求,适用于无线火灾定位报警,满足实际需求。
STM32微处理器;火灾报警;GPRS通信;GPS定位;传感器
1 引 言
随着智能时代的到来和物联网的兴起,人们的智能生活体现在生活水平以及生活质量的提高,自然安全防范意识也就随之提升,而安全防范中的火灾防范尤为重要,所以火灾报警一直是跟人们息息相关的,关乎人身安全和财产安全。普通的火灾报警系统都是由烟雾、温度、可燃气体等传感器进行火灾探测,一旦触发报警条件便拉警报鸣警。此种报警对于火灾的发生现场是有利于受灾人员的逃离的。而有些研究者旨在提高火灾报警系统的可靠性上[1],即降低漏报率、误报率和提高探测器的复杂性和灵敏性,如光电感烟雾探测、分布式光纤测温、激光探测、图像检测等。还有结合算法来提高报警系统性能的如研究者Chen、David等[2]人提出采用烟雾传感器结合CO/CO2气体传感器同时融合上升率算法的方法用于对飞机货仓内的火灾探测,来降低误报率和报警反应时间。在提高正确报警率方面的确有助于人员现场鸣警疏散逃离,对于救援和灾情报告却不是实时的。随着无线传感网络和物联网技术的发展,无线远程监控和自动化应用的优势明显,在远程监测牲畜[3]等方面都有使用,但在远程火灾报告方面还不是很多,因此本文提出了一种无线火灾定位报警系统,能实现火灾现场检测鸣警的同时,完成实时定位且远程报警救援的功能。
2 系统总体设计
此报警系统终端主要组成有:主控制器,温度传感器检测模块,烟雾传感器检测模块,无线GPRS模块,GPS模块和报警模块六个部分,系统结构框图如图1所示。系统的工作过程为:在报警系统端,工作时控制器预先通过程序设定一组温度与烟雾阈值,通过温度和烟雾探头检测环境中的温度与烟雾参数。当达到或超过阈值时主控制器中断,给GPRS和GPS两个模块上电启动并初始化系统。成功启动后GPS获取定位数据传给主控制器,主控制器整合定位数据送给GPRS模块,再通过GPRS网络将数据包发送出去。同时主控制器给报警系统一个鸣笛信号拉响警报。数据接收中心通过GPRS网和Internet以TCP/IP传输协议收取数据包,由上位机通过显示软件对数据进行提取、处理、存储和显示。
图1 系统结构框图
3 硬件设计
报警系统终端包括:主控制器,GPRS模块,GPS模块,温度传感器检测模块,烟雾传感器检测模块以及报警模块六个部分。
3.1主控制器
主控制器以STM32F103VET6为主要控制芯片[4-6]。由于该芯片是基于ARM Cortex-M3内核增强型的微处理器,其工作频率可达72MHz,内置64KBFlash高速存储器,20KB运行内存(SRAM),256KB程序存储器,丰富的增强I/O端口和连接到两条AHB总线的外设。拥有3个12位ADC,4个通用16位定时器和2个PWM定时器;还包含标准的通信接口:多达两个I2C接口、3个SPI接口、2个I2S接口、5个USART接口、1个USB接口;内置Cortex-M3内嵌跟踪模块ETM、串行总线调试SWD和JTAG接口,其功耗低,中断延迟短以及较高的处理速度保证了系统的运行。连接复位和时钟晶振电路,GPRS和GPS模块都通过串口通信与微机进行数据传输,所以GPRS和GPS都与微机的USART接口相连。
3.2GPRS模块
此设计采用的GPRS模块为SIM300[7]模块。该模块是一款三频段GSM/GPRS模块,支持在EGSM900MHz/DCS1800MHz/PCS1900MHz三种频率下工作,能够提供拨号、短信、彩信、GPRS等功能。SIM300结构小巧,具有低功耗设计,工作电压在3.4到4.5V之间;支持1.8V和3.0V的SIM卡。模块提供了串行通信接口支持的自动波特率为:1200bps—115200bps。通讯接口采用可选的插针和RS232串行接口(指令和数据的双向传送),同时模块支持AT指令设置与控制,在软件设计时使用AT指令即可实现短信的收发读取。SIM300的数据接口采用串行异步收发,有引脚插针可接入TxD、RxD串口通信线,且自带电平转换符合RS232电路标准,与STM32的串口1USART1_RxD,USART1_TxD接口相连接。
3.3GPS模块
GPS模块采用的是GR-89接收模块[8]。由于其采用BGA封装及高集成化电路,内置低噪放大器滤波器,同时拥有性能高、低功耗、体积小等适于导航与定位的优点,通过两个RS-232进行双向串口通信。根据GR-89模块的功能及引脚分布,数据可通过两个RS-232进行双向通信。此处与STM32的串口2USART接口相连,引脚17接GPS天线,引脚NRESET接微机GPIO口,作为GPS复位信号,同时电源引脚接电源且串联一个小容量电容以抗干扰。
3.4温度、烟雾检测及报警模块
数字温度传感器使用TI公司的数字温度传感器LM77,支持总线,支持I2C接口,可简化多点检测的设置连接。系统挂载3个LM77探头采集温度以实现多点多数据测量,电路接线如图2所示。通过外部电路先将各LM77的地址确定,待取数据时微机首先发送一个LM77的相应地址,而后再跟一个读温度命令,对应地址的LM77就会响应将实时温度回传给微机。
图2 温度传感器电路
烟雾传感器采用QM-N5半导体烟雾传感器,其灵敏度高,电导率变化大,响应和恢复时间短,抗干扰能力强,输出信号强,工作稳定,可检测多种可燃气体和烟雾。烟雾传感器的实时检测信号经过放大、滤波、调整后经A/D转换可得到数据,同时STM32有集成A/D转换,简化了电路设计。
报警模块由KD9561模拟声报警集成芯片[9]组成,TR1和TR2是选声端口,接法不同相应的声音不同,设计中TR1接Vdd,TR2置空,发声就是火警声。KD9561的声音输出端接LM386芯片的信号输入端,火警声经过LM386放大后输出。
4 中断条件决策加权的设计
对于是否产生报警这一结果,此处参考ID3决策树算法[10]并,采用对决策树决策结果进行加权以对火灾的温度和烟雾条件进行计算判断做出报警决策。对于温度和烟雾两个属性对决策树算法得出的较佳属性予以较大权值,权值分:45%和55%,满足45%+55%=1。假设2个样例为[7+,5-],信息增益大者较佳,属性熵(E)和信息增益(G)计算公式如下:
取温度样例和烟雾样例,温度和烟雾样例图如图3所示,由此计算可得:
G温度<G烟雾,所以系统测得的温度数值跟烟雾数值分配到的权值分别为0.45和0.55。则有
Ttest=0.45*(t1+t2+t3)/3+0.55*y
其中t1、t2、t3为系统所测的三个温度探头的温度值,y为系统烟雾探头的烟雾值。
图3 温度和烟雾样例图
为系统设置的阈值为T阈,当Ttest≥T阈,则系统产生中断进入报警流程;当Ttest<T阈,则系统正常继续检测。
5 软件设计
系统的软件设计包括两部分,即系统控制器程序设计以及上位机数据显示软件设计。
5.1系统控制器程序设计
系统控制器程序设计主要是针对报警系统端的控制器单片机的运行程序编写。系统程序的开发采用c语言编写,软件采用Keil。这部分软件设计重点在于:其一,对温度和烟雾传感器的信号检测[11],是否达到阈值,是否要中断报警;其二,对GPS模块的启动初始化以及定位数据的接收;其三对SIM300模块的启动初始化,对获取到的定位数据发送数据短信。其中在编写STM32与SIM300连接程序的时候所有对于SIM300操作的AT指令(SIM300使用说明书部分给出)等都是以ASCII编码形式传送的,如“A”和“T”的ASCII编码为41H和54H;设置其波特率115200bps,指令为AT+IPR=“115200”,设置连接服务中心指令AT+CIPSTART=“TCP”,指定IP“192.168.43.156”,指定端口“8080”,条件以“,”隔开。程序中必须以回车符号作为一条指令的结束,其中0DH为回车的ASCII编码;GPRS数据的串口配置速率为115200bps,字长为8 bit,停止位1位,串口为输入与输出模式使能相对应的串口。在传送数据时,要先设置网关,终端类型,接通GPRS网络再将数据发送出去。对于GPS数据通信,其串口设置波特率为4800bps,通信协议使用的是基于NMEA00183标准兼容串口协议,ASCII接口说明,GPS没有什么控制流程,主要是通过串口读取GPS送来的数据。对于STM32的USART串口数据通信情况由其状态位标识,置1时则数据传送完毕,此时数据可以进行正常发送,而TC位要置0时则是由软件执行。在系统设计中采用模块化设计,编写程序时提高了代码复用率,便于调试改错且易于对添加功能的扩展,系统报警系统端控制器的程序执行流程图如图4所示。
图4 系统流程图
程序成功编译后通过Jlink设置好端口、波特率等下载到STM32,系统即可自动按流程运行。
5.2数据显示软件设计
接收端接收到由报警终端发送来的数据,由PC上位机软件即数据显示软件对数据进行获取,分析,显示出有用信息即时间和定位坐标,数据显示软件使用C++进行编写。对于GPS定位数据的显示,其数据核心在于对GPS数据的转换,因GR-89的GPS使用的通信协议以“$”表示语句起始标志,“,”表示域分隔符,“*”表示校验和标识符其后两位数为其校验和,而对于其数据帧结构,主要由帧头、数据和帧尾组成。主要帧头有GPGSV”、“GPRMC”、“GPGGA”以及“GPGSA”,各帧以回车符〈CR〉和换行符〈LF〉作为帧尾,标识一帧数据的结束[12]。
经过对GPS数据帧的有效性分析,以及考虑到数据量大小对数据发送速度的影响,只对GPS数据帧的$GPRMC为帧头的数据帧信息进行解析显示。对于该帧数据的数据格式说明如下(此处只说明有用部分):$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11><CR><LF>,例如获取到的数据帧为:$GPRMC,101439,A,2488.1552,N,10286.7548,E,000.0,000.0,210115,005.8…CRLF,得知数据为有效(A表示可用),时间为2015年1月21日,经纬度为24.881552,102.867548。从数据特点来看,对于数据分离显示部分的程序编写比较容易实现。如由定位状态所得的数据是否为“A”可知数据可用;在程序中就可以以“,”为分隔符,提取每部分数据;以“CRLF”字符来设置结束一次数据提取。数据处理完后入库再显示,以防数据丢失,也可返库查找数据。
6 系统测试及结果
系统测试环境选择在学校的学生实验室房间内进行。为使实验效果明显,选取面积较小的房间,火灾模拟源使用燃烧柴火的火盆来模拟(有烟产生的燃烧),原则上应该连接多个温度和烟雾传感器以提高报警准确度,而设计3个温度探头表示多个。首先使用网络调试助手测试GPRS网络是否正常工作;其次各模块工作正常;而后系统功能运行,使室内条件达到报警条件,此时系统鸣笛报警,PC端接到定位数据。再者测试系统性能,即报警响应时间,从探头探测到异常后经过系统报警终端到接收到数据的用时来评估,测试次数取10次(不考虑传感器设备预热时间),系统各次及所用的系统响应时间如图5所示,由图可知响应时间约在23s,系统运行性能在可接受范围内。
图5 系统各次响应时间
测试发送的数据通过上位机设置好的网络能正常接收,所得数据经显示软件处理后能够正确显示结果,图6所示为所得到的有效数据显示。
图6 定位数据结果显示
通过系统的运行测试,系统能检测到模拟火灾条件并鸣报警音进行警示,且能够对火灾报警数据进行实时获取并无线发送,实现了火灾定位报警的基本要求。
7 结束语
经过系统测试,可知系统运行稳定效果良好满足设计需求。该无线火灾定位报警器系统,在自动化与智能化远程火灾报警系统的研究和发展中以及物联网方面的技术应用中都有一定的参考价值,系统的高度模块化有利于功能扩展并应用到更为广阔的其他环境中。
[1]邢志祥,陈露,诸德志.火灾探测报警系统及其可靠性研究[J].中国安全生产科学技术,2012,8(3):151-154.Xing Zhixiang,lu Chen,Zhu Dezhi.The research of fire detection alarming system and its reliability[J].Journal of Safety Science and Technology,2012,8(3):151-154.
[2]Shin-Juh Chen,David C.Hovde,Kristen A.Peterson. Fire detection using smoke and gas sensors[J].Fire Safety Journal,2007(42):507-515.
[3]Aldo Calcante,Francesco M.Tangorra,Gabriele Marchesi.A GPS/GSM based birth alarm system for grazing cows[J].Computers and Electronics in Agriculture.2014(100):123-130.
[4]王永虹,徐炜,郝立平.STM32系列ARMCortex-M3微控制器原理与实践[M].北京:北京航天航空大学出版社.2008.Wang Yonghong,Xu Hui,Hao Liping.STM32 series ARMCortex-M3 microcontroller principle and practice[M].Beijing:Beijing aerospace university press.2008.
[5]STM32F1系列参考.http://www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1031.STM32F1series reference[EB/OL].[2015-2].
[6]钟科.基于STM32的温度测量系统[J].微处理机,2015(1):63-67.Zhong Ke.Temperature Measuring System Based on STM32[J].Microprocessors.2015(1):63-67.
[7]SIM300使用说明书.http://wenku.baidu.com/view/83a499fcf705cc175527097d.html.SIM300operating instructions[EB/OL].http://wenku.baidu.com/view/83a499fcf705cc175527097d.html.
[8]李斌,贾巍,赵奇.基于MSP430单片机的GPS定位系统设计[J].制造业自动化,2010,32(6):61-63.Li Bin,Jia Wei,Zhao Qi.Design of global positioning system based on MSP430[J].Manufacturing Automation,2010,32(6):61-63.
[9]李冬冬,曲波.基于LPC2368单片机的远程智能报警系统的研究[J].电工电气.2009(2):18-20.Li Dongdong,Qu Bo.Development of Intelligent Remote Alarm System Based on LPC2368[J].Electrotechnics Electric,2009(2):18-20.
[10]决策树算法总结.http://www.cnblogs.com/biyeymyhjob/archive/2012/07/23/2605208.html.Summarize of the decision tree algorithm[EB/OL].[2015-3].http://www.cnblogs.com/biyeymyhjob/archive/2012/07/23/2605208.html.
[11]田玉周,楚建安.基于STM32的以太网数据采集系统设计[J].微处理机,2015(1):72-75.Tian Yuzhou,Chu Jianan.Design of Ethernet Data Acquisition System Based on STM32[J].Microprocessors.2015(1):72-75.
[12]陈玲玲,刘凤鹍.基于嵌入式微处理器的GPS定位系统[J].吉林化工学院学报.2009,26(3):43-45.Chen Lingling,Liu Fengkun.GPS based on embedded microprocessor[J].Journal of Jilin institute of chemical technology.2009,26(3):43-45.
Design of Wireless Positioning Fire Alarm System Based on STM32
Li Changfu,Li Jingtao
(School of Information Engineering and Automation,Kunming University of Science and Technology,Kunming 650500,China)
A wireless location of fire alarm system,based on STM32,is designed.STM32F103VET6 is used as the main controller of System to manage the scene detection and alarm in time.GPS module,obtaining positioning data,is used to determine the construction location information of the fire which is processed and sent by GPRS wireless transmission module,and
and displayed by the software.Combining with a weighted decision tree algorithm,the alarm condition is judged to prevent false positives.The terminal hardware is composed of the main controller,GPRS module,GPS module,the temperature and smoke sensor module and alarm module.The experiments show that the system,with the stable performance and meeting the design requirements,is applicable to wireless positioning fire detection and alarm.
STM32 micro processor;Fire alarm;GPRS;GPS;Sensor
10.3969/j.issn.1002-2279.2016.01.023
TP302.1;TP368
A
1002-2279(2016)01-0092-05
❋昆明理工大学自然科学研究基金资助(人培基金:KKSY201403120)
李长富(1990-),男(土家族),湖南省吉首市人,硕士研究生,主研方向:无线通信的自动化控制以及计算机技术的应用。黎敬涛(1967-),男,云南省昆明市人,副教授,硕导,博士,主研方向:计算机应用及计算机数据采集与预测。
2015-04-23