基于NB-IoT的智慧消防监控系统设计与实现
2021-10-18杜朝明胡静宋铁成张思源
杜朝明 胡静 宋铁成 张思源
摘 要:针对传统消防行业中数据来源单一、无法有效进行巡检及隐患排查等问题,文章基于NB-IoT设计并实现了一种智慧消防监控系统。该系统选用STM32作为微处理器,并针对易产生火灾隐患的烟雾、电气特性、压力及水位的信息分别采用相应的传感器进行信息的采集,根据所处环境的火灾风险情况,智能地按不同的周期将这些信息通过NB-IoT网络上传至OceanConnect物联网云平台,并最终推送至监控平台进行数据处理。整个系统经过测试,运行状态良好,性能稳定,有着良好的应用前景和推广价值。
关键词:NB-IoT;智慧消防;STM32;OceanConnect
0 引言
火灾是严重危害人民生命财产安全的重大灾害之一,而随着社会的发展,造成火灾的源头也越来越多,其发生的数量及所造成的损失也逐年增长。而消防行业中传统的数字消防也存在着数据来源单一、不能有效进行日常巡检及排查隐患等问题[1]。因而脱胎于智慧城市的智慧消防也就应运而生,同时,公安部也发布了《关于全面推进“智慧消防”建设的指导意见》,大力推动现代科技在传统消防行业上的应用。
现阶段,大部分的智慧消防系统都是基于ZigBee实现的[2-3],ZigBee虽然有着低功耗、价格低等优势,但其通信距离较近,在需要較大的覆盖范围时又需要提高发射功率或部署更多的中继节点,这又与其原本的优势背道而驰。与之相对应的,NB-IoT则具有低功耗、低成本、强连接、广覆盖等优势[4]。本文将基于此进行智慧消防系统的设计。
1 系统功能及总体架构
1.1 系统功能
整个系统针对可能引发火灾的因素,部署对应烟雾、电气特性、压力、水位的信息采集终端,并通过NB-IoT的通信方式,以实现低成本、低功耗地将信息上传至云端物联网平台,并设计监控平台,将云端的数据进行整合、处理,实现指令下发、数据展示、报警灯功能。
1.2 总体架构
整个系统的架构如图1所示,主要分为3个部分:信息采集终端、物联网平台、监控平台。信息采集终端包含了传感器、微处理器、NB-IoT模块等部分,负责采集可能引起火灾的温度、燃气、电弧及与消防息息相关的消防水栓的压力、液位等信息;物联网平台采用的是华为的OceanConnect物联网平台,该平台可接入NB-IoT网络,并适配多种通信协议,并提供丰富的api,支持连接管理、设备管理、数据管理等功能,可接入海量的终端设备[5]。监控平台则通过与物联网平台之间的通信,获取终端设备的数据,通过可视化界面进行设备信息的展示,并实现下发指令的功能,设计报警功能,将设备的异常状态推送至安全员处。
2 系统的硬件组成
系统的硬件组成如图2所示,主要由采集不同信息的各种传感器、微处理器及NB-IoT模块等组成。针对消防中的不同环节,从3个大的方向进行信息的采集并采用对应的传感器:可能造成明火隐患的电流特性、实时的烟雾情况及消防用水设施的状态等。
针对电流特性,采用acs712霍尔电流传感器获取被测线路的交流电流特性,然后通过整流桥获取相对应的直流电流特性;针对烟雾情况,使用MQ-2气体传感器,烟雾的浓度越大,导电率越高,输出的电阻则越低,输出的模拟电压也就越高,从而得到烟雾的浓度信息;针对消防用水设施,则主要针对其水压情况及水位深度进行测量,通过高性能的扩散硅压阻式传感器作为测量元件的SY-2088水箱液位器进行水位深度的测量,并通过采用了扩散硅压力芯体作为敏感元件的PCM300压力变送器进行水压的测量。
微处理器部分则采用了基于ARM Cortex-M3的STM32F103微处理器。STM32系列MCU是一个32位MCU,其支持SWD和JTAG接口的调试模式,便于进行开发,且提供gpio及uart等在内的通信接口,可与多个外设之间进行通信,并支持ADC等外设,可实现对传感器传入数据的读取,STM32的特点和这些丰富的资源及存储空间完全可以满足系统的需求。
NB-IoT模块是由WH-NB73为通信芯片组成,且接入SIM卡槽,以提供接入运营商网络的功能,并外接天线以增强信号强度,且内置CoAP,UDP透传等通信协议,以满足物联网通信的需求。
最终整个系统以传感器为起点,将采集到的终端信号量通过STM32的ADC传入MCU进行处理,并通过NB-IoT模块将数据传至基站处,最终传至物联网云平台进行后续处理。
3 系统的软件设计
整个系统的软件设计部分主要分为信息采集端的软件设计、物联网云平台的开发及监控平台的开发。
3.1 信息采集终端的软件设计
信息采集终端主要包含了微处理器处的逻辑控制、终端信息的采集以及信息的接收与发送。
整个系统启动时,首先会进行系统的初始化过程,包括微处理器本身的初始化过程以及NB-IoT模块的初始化。微处理器初始化时会打开时钟、配置gpio端口、设置波特率等。进行NB-IoT模块的初始化时,会通过AT指令获取模块上插入的SIM卡的IMEI号码,以此作为本设备的唯一标志,用于与别的设备进行区分,并设置需要连接的物联网云平台的IP地址,进行联网尝试,如果尝试10次后仍未能连接至指定的云平台,则视为当前网络拥塞,并将在1 h后重新进行尝试。
在微处理器中会涉及数据的采集,为了尽可能地反映一段时间内数据的一致性,避免单个采样数据错误导致的误警情况,会使用定时器进行多次采集并在取平均值后进行上传。设当前上传周期中已采集过的数据次数为a,采集到大于阈值的数据次数为b,累计采集到的小于阈值的数据之和为c,累计采集到的大于阈值的数据之和为d,并设置初始的最大采集次数为a0,初始的大于阈值的最大采集次数为b0,初始的采集数据的阈值为c0。针对不同的传感器,则会根据其量程设置不同的参数以满足其具体需求。
在采集数据的过程中,当定时器溢出触发中断的时候,会首先判断采集到大于阈值的数据次数b是否大于b0,如果是,说明当前的数据已达到需要告警的程度,则会将数据采集的周期减半,更频繁地进行数据采集,并立即进行数据的上报;否则视为未达到需要报警的情况,会判断已采集过的数据次数a是否大于a0,如果是,则说明当前周期已结束,需要将该段时间所累加的数据c,d进行叠加并除以a0以获得这段时间内数据的平均情况,并进行上报;否则就说明当前周期未结束,需要对该次采集到的数据进行判断,根据其与阈值的大小关系,将其累加至c或者d上。每次通过NB-IoT模块上传数据时,也会将a,b,c,d的值清零,从而进入下一个采集周期。
在定时器未触发中断的时候,会通过NB-IoT模块监听是否有指令的下发,当NB-IoT模块接收到数据包时,会通过串口通信传给微处理器,然后会对数组的长度、格式等进行校验,通过校验则会将指令中想要修改的采集周期等参数进行更新(见图3)。
3.2 物联网云平台的开发
系统所使用的是华为的OceanConnect物联网平台,该平台与NB-IoT模块之间通过CoAP协议实现通信,该协议基于UDP,且依靠二进制格式,最小长度仅需要4个字节,从而具有更加轻量化的特点,更适用于低功耗的物联网场景[6]。
如图4所示,在进行OceanConnect平台的开发时,首先新建一个项目,在项目中创建新的产品,并在产品界面中定义profile文件,即该产品所能提供的服务、产品会上传的信息类型以及该产品所需要接收的命令,最后开发编解码插件定义好信息的编解码规则并进行产品的部署。对于终端设备,则在物联网平台上进行设备的创建,并将终端设备上SIM卡所对应的IMEI号作为标识进行绑定。联网成功后则能实现终端设备与物联网平台之间的交互。
由于在物联网平台与终端设备之间采用CoAP协议进行通信,二进制格式的数据需要通过特定的编解码规则来进行解析。在本系统中,对于从终端设备处所上传的数据按照表1中规定的数据帧格式进行解析,其中针对不同的设备可能会上传不同种类的信息,故会根据其功能设定不同的消息种类,并上传相应字节长度的消息至物联网平台,且为了节约成本、功耗,并不要求物联网平台对上传的数据进行响应。对于命令的数据帧则是按照表2中的格式进行设计,根据不同种类的命令分配1字节进行区分,并设计命令序号以对某条命令进行精准定位,以获得该条命令的响应;在终端设备向物联网平台进行命令响应时,还会附带上1字节的命令执行状态信息,供物联网平台获取命令的执行情况,以防命令未能成功执行时所带来的系统状态的不一致。
3.3 监控平台的开发
监控平台与物联网平台之间的通信,主要是通过调用物联网平台的北向接口实现的。首先在物联网平台上传监控平台的CA证书,之后便可以通过https协议进行通信,监控平台通过调用物联网平台的消息订阅接口,实现当采集终端上传指定信息至物联网平台时,会同时将该信息解析推送至监控平台处;当监控平台有命令需要下发时,也能调用物联网平臺的命令下发接口以利用profile文件中规定的命令实现对终端设备的控制。在监控平台处,用MySQL数据库对接收到的数据进行存储,以供显示及数据分析使用。
监控平台主要集成了系统节点管理、节点信息查询、节点状态更改等功能,如图5所示。节点管理模块中,可显示当前系统中所涉及的不同传感器类型,及各种类型传感器所对应终端节点的编号,可对当前系统的整体容量有直观的体现。针对特定编号的终端,节点信息查询模块可通过对数据库的查询,对该终端在特定时间段内所收集到的信息进行查询、显示。各个终端节点都有其特定的告警阈值、采集周期等状态信息,这些信息都可在节点状态更改模块中进行查询,并可对其数值进行修改,同时经过监控平台-物联网平台-终端节点这一下行链路将此信息更新至终端节点中,以实现对于终端的灵活控制。
4 系统的测试
将带有烟雾、电流、液压等传感器的终端节点放置于室内、卫生间等处,并设置不同的初始阈值、采集周期等进行测试。各终端设备成功初始化并连接上NB-IoT网络后,开始按照预设的采集周期向OceanConnect物联网平台进行数据的上传,且数据都能正常地推送至监控平台处。在监控平台处,系统节点管理模块能正常地显示出系统中已接入的终端设备的编号。针对接入了烟雾传感器的终端节点,节点状态更改模块如图6所示,能顺利查询出各终端设备所预设的初始阈值为1.00、采集周期为240 s等信息,且将采集周期修改为30 s后,该终端设备也能如图7所示,按照最新的采集周期进行上传。节点信息查询模块的测试如图8所示,首先在无烟的状态下进行数据上传,监测平台处会以较长的周期接收到烟雾数据,随后将点燃后熄灭了的纸片放到传感器附近,模拟有火灾发生的情况。由于采集数据大于预设的阈值,终端节点则一次次地以更短的采集周期上传数据,并很快收敛到以最短的周期进行数据上传,将纸片远离传感器,模拟火灾结束的情况。由于采集数据小于预设的阈值,终端也会一次次以更长的周期进行数据上传,并很快按最大的采集周期进行上传,以达到节能的目的。
5 结语
文章基于NB-IoT的通信方式设计并实现了一个智慧消防系统,并对整个系统的架构及其软硬件的设计过程进行了详细的描述。测试结果显示,系统的运行结果良好,满足智慧消防的需求。
[参考文献]
[1]胡悦,童恩,曹浩彤,等.构建全面的智慧消防体系[C]//杭州:物联网与无线通信—2018年全国物联网技术与应用大会论文集,2018.
[2]张伟,徐晖,陈馥婧.基于物联网的灭火防护服监测系统设计与实现[J].消防界(电子版),2019(24):36-37.
[3]倪建云,张荐,解树枝,等.分布式消防报警监控系统的设计与实现[J].实验室研究与探索,2018(4):308-312.
[4]曲井致.NB-IoT低速率窄带物联网通信技术现状及发展趋势[J].科技创新与应用,2016(31):115.
[5]郭亚勤,杨静,王艳花.基于OceanConnect室内空气质量检测系统[J].电子设计工程,2020(5):56-60.
[6]汤春明,张荧,吴宇平.无线物联网中CoAP协议的研究与实现[J].现代电子技术,2013(1):40-44.
(编辑 王永超)
Design and implementation of intelligent fire control system based on NB-IoT
Du Chaoming, Hu Jing, Song Tiecheng, Zhang Siyuan
(School of Information Science and Engineering, Southeast University, Nanjing 210096, China)
Abstract:In view of the problems of single data source, being unable to carry out inspection and hidden trouble investigation effectively in the traditional fire fighting industry, this paper designs and implements an intelligent fire control monitoring system based on NB-IoT. The system selects the STM32 as the microprocessor and uses the corresponding sensors to collect the information of smoke, electrical characteristics, pressure and water level. According to the fire risk of the environment, the information is uploaded to the OceanConnect Internet of Things cloud platform through the NB-IoT network according to pushed to the monitoring platform for data processing. After test, it proves that the whole system runs in good condition, has stable performance, and has good application prospect and popularization value.
Key words:NB-IoT; intelligent fire; STM32; OceanConnect
作者簡介:杜朝明(1995— ),男,四川泸州人,硕士研究生;研究方向:物联网技术及应用。