欢迎来到安科瑞电子商务(上海)有限公司网站!
咨询热线

18701808780

当前位置:首页  >  技术文章  >  浅谈基于NB-IOT和STM32的数据融合智慧消防系统设计

浅谈基于NB-IOT和STM32的数据融合智慧消防系统设计

更新时间:2021-06-29  |  点击率:913
  程志芳
 
  安科瑞电气股份有限公司 上海嘉定 201801
 
  摘要:针对现有消防系统维护成本高、安装困难、数据利用率低等问题,设计一种基于窄带物联网(NB- IoT)的智慧消防系统。采用STM32L151作为主控芯片,将GY-906型温度传感器、CX-1088型光电烟雾传感器和 HK1100C型水压传感器采集的温度、烟雾、水压等信息通过NB-IoT网络上传至云端服•务器,将数据利用朴素贝叶 斯算法进行数据融合后以可视化的方式呈现。经测试,该系统可以及时反馈消防信息,协助消防部门掌控火灾状况。
 
  关键词:智慧消防系统;窄带物联网;数据融合;可视化;STM32L151 ;传感器
 
  0引言
 
  随着我国经济的快速发展,建筑逐渐向高层、高密度、 功能综合化等方向发展。建筑构造愈加复杂,导致安防问题 层出不穷。据统计,我国高层建筑34.7万幢,其中近一半的 消防设施不到位,消防设施平均完好率小于百分之50„得益于物联网技术的发展,智慧消防系统应运而生,解决了消防信 息资源共享、自动化信息处理等问题。
 
  目前,国内学者对智慧消防系统提供了多种研究方法和 思路:曹元军等人提出的基于大型消防物联网与互联网融合 的智慧消防系统,阐述了消防物联网与互联网融合的体系框 架,分析了构建智慧消防系统的关键技术山;李卿等人提出 了基于无线传感器网络的消防报警系统,介绍了无线传感器 网络技术应用于消防报警系统的实施方案,实现了节点通过 传感器地对环境参数进行采集、处理和传送,通过 采集节点信息和操纵控制平台同时进行险情预警図。但其传 输层采用 WiMax (Worldwide Interoperability for Microwave Access,互通微波访问)、ZigBee等协议进行数据传输, 节点之间通过RF (Radio Frequency,射频)模块进行通信, 传输过程不稳定且功耗高。单个节点传感器采集数据并直接 计算分析,将结果上传至控制,不具备数据综合利用与 分析的优势。
 
  NB-IoT (Narrow Band Internet of Thing,窄带物联网) 具备覆盖广、容量大、成本低、功耗低、架构优等特点。因此,使用窄带物联网技术的消防系统融合了消防物联网 与互联网,成为当前研究的趋势之一。本文设计了基于NB- IoT的智慧消防系统,采用STM32微处理器作为主控芯片, 使用烟雾传感器、温度传感器、水压传感器实时采集数据并 打包上传云处理,完成数据分析与融合,经由可视化界 面呈现,实现传感器无线部署、数据实时采集、数据综合处理、 可视化协助决策和设备自动监管等功能.
 
  1系统功能与结构
 
  该系统采用分层设计思想,将系统分为传感器节点、虚 拟专用服务器和客户端。
 
  数据采集模块由GY-906型烟雾传感器群、CX-1088型 温度传感器群、HK1100C型水压传感器群组成,可实现对环 境数据的实时采集。
 
  主控芯片STM32L151微处理器通过ADC (Analog-to- Digital Converter,模数转换)或 FC (Inter-Integrated Circuit, 集成电路总线)协议完成对于底层传感器数据的采集并分析。
 
  通信模块采用NB-IoT将数据包上传至云服务器,实现 数据转发。通信模块将传感器采集的数据先发送至物联网网 关,再上传至云端服务器。
 
  云端服务器是系统智能处理,实现数据预处理,数 据融合,完成指令的下发和报警,当用户请求时访问数据库, 为可视化提供数据支撑。
 
  客户端层通过Web向各类联网设备提供服务,包括用户 终端监测、消防部门报警和物业部门监测。Web端通过云端 服务器与数据库进行数据交互,实现交互式可视化界面,为 用户决策提供信息.
 
  2系统硬件设计
 
  本系统硬件电路主要由4个部分组成:主控芯片、NB- IoT通信模块、电源电路模块和数据采集模块。节点中主 控芯片的通信串口与NB-IoT模块通信串口相连接,GPIO (General-purpose input/output,通用输入输出端口)与 PWRKEY相连,主控芯片通过输出高低电平使能控制NB- IoT模块。主控芯片的GPIO连接低功耗电源电路模块的使 能开关,通过输出高低电平使能。数据采集根据不同端口连 接主控芯片的I2C通信端或GPIO模块回。
 
  2.1电源电路设计
 
  电源电路分为电池稳压电路,数据采集模块供电电路。 其中电池稳压电路与电池直接相连,提供3.3 V的输出电压, 为主控模块、NB-IoT通信模块等供电。数据采集供电模块 的输入端与电池稳压电路输出端相连,使能端与主控芯片 相连。电池稳压电路如图2所示,所采用的TSP601230为一种同步升压转换器,输入电压为23?5.5 V,输出电压3 2.5?5.5 V,在低负载期间TPS6123自动进入省电模式,待 机电流仅为0.5必。稳压电路中EN端高电平使能;SS端为 芯片启动延时端,一旦电容电压达到输入电压值,芯片开始 工作;SW端为转换引脚,连接到芯片内部的电力场效应晶 体管的漏;PG引脚为开漏输出,额定吸收电流达500 nA, PG输出需要一个上拉电阻,且EN高电平使能;FB端为电 流反馈输入,通过外部电阻分压调整输出值;输出端VOUT 为主控芯片供电,通过R, &进行分压,实现要求的输出值 K。
 
  数据采集模块供电电路如图3所示,所采用的ME6211 系列的低压差线性稳压器其输入电压为2.0?6.5 V,输出 电压为1.8?5.0 V, EN为使能管脚,接高电平时芯片正常工作。其中,ME6211C18M5G芯片输出1.8 V为烟感中 的(红外LED)供电,ME6211C33M5G芯片输出3.3 V, 为温度传感器和烟雾传常工作。其中,ME6211C18M5G芯片输出1.8 V为烟感中 的(红外LED)供电,ME6211C33M5G芯片输出3.3 V, 为温度传感器和烟雾传
 
2.2 NB-IoT通信模块电路
 
  NB-IoT通信模块电路所采用的BC26- LPWA模块为LCC贴片封装,支持(UDP/TCP/MQTT/ LwM2M)等协议栈四,支持LTE Cat NB1频段,发射功率 为23 dBm,且PSM模式下典型耗流为3.5 pA。
 
  2.3 数据采集模块设计
 
  本文中光电烟雾传感器选用迷宫红外光电烟雾传感器 CX-1088,该传感器具有灵敏度高、感应范围大、功耗低等 优点。需要探测烟雾浓度时,主控芯片的PB7输出高电平, 烟雾传感器工作,并输出模拟量,主控芯片对模拟信号进行 数模转换并进行自适应均值滤波后存入数据队列中吐 温度 传感器选用非接触式红外温度传感器GY-906. GY-906具有 分辨率高、探测范围大、可靠性高等优点,且其内部集成了 红外探测热电堆芯片与信号处理专用芯片,能将热信号处理 并校准后转换为数字信号通过I2C协议直接输出到主控芯片。
 
  3 系统软件设计
 
  本文的软件设计平台为Keil和Matlab 2016b<,采用Keil 软件设计STM32的底层驱动程序和主程序,Matlab实现数 据融合,二者均采用模块化设计。
 
  3.1传感器节点驱动程序设计
 
  由于传感器节点采用一次性锂亚电池供电,所以需要降低系统功耗,故编写驱动层,以主程序确保调用相 应的硬件资源时,不会独占操作系统时间片,从而提高系统 运行效率,降低传感器节点工作能耗。本传感器驱动层体系。
 
  AI指令模块将NB-IoT模块的AT指令集封装为对应的 命令,便于Main函数的直接调用。Queue模块将不同数据 以 JSON (JavaScript Object Notation, JS 对象简谱)的格式 存储到特殊内存单元中,使主控芯片STM32休眠时依然能 保存数据;Queue模块封装了队列基本操作。DMA (Direct Memory Access,直接内存存取)模块直接读取ADC模块、 FC模块上数据采集模块的数据,并将该数据传送给Queue 模块处理。GPIO模块通过输出高低电平控制数据采集模块、 NB-IoT模块电源的开关。定时器模块定时唤醒ADC模块与 DMA模块。RTC (Real-Time Clock,实时时钟)模块用于 提供描述数据的实际时间。休眠模块通过调用GPIO模块关 闭外部模块电源,并关闭主控芯片内部除RTC源与内存备 份区外的硬件资源。
 
  3.2传感器节点主程序设计
 
  主程序控制传感器节点的各个硬件部分分时工作,且在数据无异常的情况下,传感器 将保持静默,不向服务器上传数据,以降低传感器节点功耗。主程序首先对传感器节点初始化,初始化主要包括驱动层初始化,NB-IoT网络初始化。随后对工作 参数进行设置。工作参数主要包括数据上报间隔、休眠间隔、 报警阈值等参数。之后打开数据采集模块电源并采集数据并分析,如果数据超过报警阈值,传感器节点将打开蜂鸣器向 用户报警,并唤醒NB-IoT模块,向服务器发出警告并上传 异常数据,传感器节点将重复数据采集与数据上传工作,直到警报解除;如果数据未超过报警阈值,传感器节点将数据 压入数据队列、关闭各数据采集模块电源,并使主控芯片进 入休眠状态,到达唤醒时间后唤醒主控芯片,重复下一轮的数据采集。
 
  3.3服务器端设计
 
  本系统服务器端采用B/S架构,系统主要 分为客户端层、应用服务层和数据库服务叫客户端界面。
 
  客户端层是指用户使用浏览器来操作的部分,使用浏览 器进行操作具有跨平台的优势,无论是移动设备,还是PC 设备都能进行操作。使用浏览器不需要专门的客户端软件。 该层主要完成的操作为用户管理、设备管理、数据管理与可 视化仪表盘。
 
  应用服务层采用前后端分离的设计思路,前端以提供可 视化的操作界面,用于支撑客户端层的功能。后端服务执行 各项业务逻辑,业务逻辑封装成API接口,API接口设计采 用RESTfUlAPI架构,便于二次开发前后端通过Axios模块 来调用API接口完成数据交互。
 
  由于数据需要NB模块只能访问电信专用的服务 器,需要完成北向应用对接。服务器上传CA证书到物联网 平台用于身份识别,所以使用HTTPS为通信协议。后端业 务通过调用专用的API与物联网平台完成对接,物联网平台 提供了基础API包和公用事业(NB-IoT) API包,在平台 上创建应用后会获得应用ID和密钥,这个ID与密钥是获取 AccessToken (鉴权令牌),每次调用API都需数据库服务层包含数据的查询、处理与可视化,采用的 数据库系统是MongoDB,该数据库系统具备执行查询速度 快、支持高并发、具有敏捷性和可扩展性的优点姬。采用 Mongoose库操作数据库实现查询、更新、删除等操作。
 
  3.4数据融合设计
 
  本系统为了对环境进行感知,采集温度、湿度、水压、 烟雾浓度等多种数据,构成异构数据库。为求解环境火灾风 险值,需要对异构数据进行数据融合。本系统数据融合流程。首先对数据库中的温度、湿度、水压、烟雾浓 度等数据进行滤波,平滑数据中的噪声和采集误差;然后通 过时间轴对准,实现异构数据的同步;再计算通过特征提取 模块的数据的贝叶斯概率,作为风险值,存入数据库
 
  3.4.1数据滤波
 
  本系统的数据滤波采用基于均方误差的自适应加权滤 波。此方法主要使用徉1时刻得到的滤波器参数,自主调节 上时刻的滤波器参数,以适应信号和噪声未知的或随时间变 化的均方误差,实现均方误差,实现滤波,核心代码如下:
 
  for k = M : itr
 
  x = xn (k : -1 : k-M+1); 〃滤波器M个抽头的输入
 
  y = W ( : , k-1) ?*x; 〃滤波器的输出
 
  en (k) = dn (k) - y ; 〃第上次这代的误差
 
  W (:, k) =W ( : , k-1) +2*mu*en (k) *x ;
 
  〃滤波器权值计算
 
  End
 
  3.4.2时间轴对齐
 
  时间轴对齐采用插值时基法。该方法的核心在于逼近函 数的构造,利用该函数将不同的数据对准到标准时基。该方 法需要选取标准时基,由于温度数据对于风险值贡献, 故选取温度数据作为标准时基。其余数据采用二乘法进行拟合作为逼近函数,在标准时基处进行插值,得到对准后数据。
 
  3.4.3特征提取
 
  考虑到本系统数据库为异构数据库,数据具有多维性, 利用 PC A (Principal Component Analysis,主成分分析)进 行特征提取。求解目标矩阵中每一列的特征平均值,用各列 减去该列的特征平均值,计算得到该矩阵的特征协方差矩阵。 计算该协方差矩阵的特征值和特征向量,并对其特征值进行 递减排序。提取前上个特征值和特征向量进行回退,得到降 维后的特征矩阵,核心代码如下:
 
  //求解特征值和特征向量
 
  selteigen values, sel€eigen_vectors = np.linalg.eig (covariance)
 
  //对特征值进行递减排序
 
  idx = selfleigen values.argsort () [: : -1]
 
  eigenvalues = sel£eigen_values[idx][: selflk]
 
  eigenvectors = sel£eigen_vectors[: , idx][: , : selfk]
 
  //将数据集X映射至的低维空间
 
  X transfbrmed = X.dot (eigenvectors)
 
  X transfbrmed = X.dot (eigenvectors)
 
  3.4.4风险概率计算
 
  本系统的数据具有更新快、规模大的特点,朴素贝叶斯 算法对于大规模的增量数据处理效率较高,故选取该方法进 行风险概率计算。采用.632自助法选取训练集,假设特征之 间相互独立,学习从输入到输出的联合概率分布,再基于此 模型,输入x求出使得后验概率的输出y,将>作为火 灾风险值。核心伪代码如下:
 
  def trainNBO (trainMatrix, trainCategory):
 
  numTrainDocs = len (trainMatrix)
 
  numWords = len (trainMatrix[O])
 
  pAbusive = sum (trainCategory) /float (numTrainDocs) pONum = zeros (numWords)
 
  plNum = zeros (numWords)
 
  pODenom = 0.0
 
  plDenom = 0.0
 
  fori in range (numTrainDocs ):
 
  if trainCategory [i] ==1 :
 
  pl Num += trainMatrix[i]
 
  p 1 Denom += sum (trainMatrix[i])
 
  else :
 
  pONum += trainMatrix[i]
 
  pODenom += sum (trainMatrix[i])
 
  plVect = plNum/pl Denom
 
  pOVect = pONum/pODenom
 
  return pOVect, plVect, pAbusive
 
  4系统测试
 
  为测试所设计系统的正确性和实时性,分别在正常情况 和模拟火灾情况两种情况下对系统进行测试。
 
  正常情况:将系统置于木箱中,模拟无烟、室温的室内 环境,测试结果。可以看出,当湿度、温度、 烟雾均处于正常状态,经融合所得的风险值(右侧仪表盘) 也远低于报警线。此处,报警线为35,该数值利用已有数据 经过训练得出。模拟火灾情况:将系统置于同一木箱中,人工向木箱加 入烟雾,并提高木箱的温度,。
 
  可以看出湿度为百分之20RH,低于环境平均水平, 温度为60 °C,高于43 °C,烟雾电压为2.75 V,低于2.77 V, 单个数据均处于危险范围内。经融合所得的风险值为40高 于初始设定的阈值35,系统报警。此外,可以在该系统中查 看历史数据,在模拟火灾情况下湿度、温度、烟雾值均有明 显跳变,证明本文所设计的系统的实时性良好。
 
  5安科瑞智慧消防监控云平台介绍与选型
 
  5.1平台简介
 
  安科瑞智慧消防综合管理云平台基于物联网、大数据、云计算等现代信息技术,将分散的火灾自动报警设备、电气火灾监控设备、智慧烟感探测器、智慧消防用水等设备连接形成网络,并对这些设备的状态进行智能化感知、识别、定位,实时动态采集消防信息,通过云平台进行数据分析、挖掘和趋势分析,帮助实现科学预警火灾、网格化管理、落实多元责任监管等目标。原先针对“九小场所”和危化品生产企业无法有效监控的空白,适应于所有公建和民建,实现了无人化值守智慧消防,实现智慧消防“自动化”、“智能化”、“系统化”、用电管理的实际需求。
 
  从火灾预防,到火情报警,再到控制联动,在统一的系统大平台内运行,用户、安保人员、监管单位都能够通过平台直观地看到每一栋建筑物中各类消防设备和传感器的运行状况,并能够在出现细节隐患、发生火情等紧急和非紧急情况下,在几秒时间内,相关报警和事件信息通过手机短信、语音电话、邮件提醒和APP推送等手段,就迅速能够迅速通知到达相关人员。同时,通过自动消防灭火控制装置启动自动灭火设备和消防联动控制设备,有效解决用电单位电气线缆老旧,小微企业无专业电工、肉眼无法直观系统即时排查电气隐患、隐蔽工程隐患检查难等难题,及时排除隐患。
 
  5.2平台功能
 
  (1) 平台登陆
 
  用户登录成功之后进入首页,如图所示。主要展示的内容有:项目概况、设备状态、设备分类、设备报警信息、报警分类、报警统计、设备台账信息等。其中地图可以选配成BIM建筑模型,任何传感器报警时可以在BIM模型中预警显示。
 
  (2) 实时监控
 
  智慧用电子系统可接入电气火灾、故障电弧、电气火灾主机、灭弧式保护器探测和母排无线测温探测等等各类子系统,实现对相关消防系统设备的信息实时监控,一且发现监测数剧 超过风险阈值,APP、电话报警统统上阵,通过设备的标签、地理位置定位,快速通知,快速置
 
  (3) 隐患管理
 
  隐患管理包括隐患巡查、隐患处理、和隐患记录,隐患巡查的目的是为了系统在产生报警或隐患后,系统可以针对工程人员派发工单,处理完以后工程人员能够在系统中填写相关工单任务记录,以供历史查询。隐患统计支持对项目进行日、月、季、年的维度查询,并能够自定义时间查询,将项目下隐患以曲线,图表的形式展现
 
  (4) 统计分析
 
  统计分析包括数据汇总和分析报告,数据汇总以曲线和表格形式显示各个月份的报警和故障记录,同时显示控制日志,支持按照控制类和参数设置类分别显示,也可以按照操作是否成功分别显示,包括此次控制的操作情况,项目名称,设备信息以及对应的操作时间等;分析报告包括总体概况和设备回路特征分析。
 
  (5) 运维管理
 
  根据运维调度管理的需要,智能调度技术人员可以分为不同角色,系统支持巡检计划和巡检日历,可支持巡检人员使用手机NFC芯片巡检打卡的功能。
 
  (6) 手机APP功能
 
  手机APP软件具有IOS版本和安卓版本,并与电脑终端系统的数据同步,能展示剩余电流、温度、电压、电流等电气参数的实时监测数据及变化曲线、历史数据与变化曲线;短路、断线、漏电、超温、过压、欠压、过流等电气故障实时报警数据等;能实时显示项目地理位置、未排除隐患数、未处理巡检数等;通过APP消息推送的方式提醒用户实时报警信息;可以实现远程复位、远程分闸功能;可以对所有现场探测器进行远程参数设定及修改;可以对所有现场探测器的远程控制记录进行查询;
 
  5.3配置
 
  5.3.1平台服务器:建议按照我方配置购买,或者客户自己租用阿里云资源。
 
  硬件配置清单:(如申请阿里云可忽略)
 
  5.3.2系统现场硬件配置清单:
 
  注:以下配置为针对1个回路选型,其中剩余电流互感器应根据现场回路电流大
 
  6结论
 
  本文设计了一种基于窄带物联网(NB-IoT)的智慧消防 系统。本系统使用NB-IoT将多种数据传输至云端服务器, 通过对采集到的数据融合处理,从而实现实时监管和达到协 助决策的目的,并解决了传统消防系统部署繁琐、功耗过高、 难于监管、联动匮乏等问题。
 
  注:本文通讯作者为刘紫燕。
 
  参考文献
 
  [1] 曾彦钧,李越,东 文,许 萍,吴先鹏,刘紫燕 .基于NB-IoT和STM32的数据融合智慧消防系统设计.
 
  [2] 曹元军,朱艳,邵明鼎.基于大型楼宇物联网与互联网融合的智 慧消防系统[J].工程建设与设计,2017 (17): 97-99.
 
  [3] 李卿,董淑敏.基于无线传感器网络的消防报警系统卩].电子设 计工程,2016, 24 (18): 119-122.
 
  [4] 安科瑞企业微电网设计与应用手册,2020.06版.