基于NB-IoT的区域空气质量监测系统设计与实现

2020-11-03 11:36高萌萌孙志刚高亚杰王国涛
计算机测量与控制 2020年10期
关键词:微控制器阈值空气质量

高萌萌,孙志刚,李 硕,高亚杰,王国涛,2

(1.黑龙江大学 电子工程学院,哈尔滨 150008; 2.哈尔滨工业大学 军用电器研究所,哈尔滨 150001)

0 引言

近年来,随着经济的快速发展,人民对其居住与生活环境的空气质量状况关注度越来越高。对于居住环境,房地产开发商在新房装修完毕后,安排专职员工定期进行空气质量检测,在各项指标合格后通知户主入住,但在检测过程中,有害气体会损害员工的身体,人工检测也会带来资源浪费、效率低下的问题。对于生活环境,人们越来越关注电视或手机软件上对所处行政区空气质量指数的播报,多数地区现行的对范围内空气的检测方法是通过设立固定监测站点,由巡视人员每天固定时间前往“抄表”并进行后期数据融合,完成区域范围的空气质量评估,由于区域范围内空气流动性快以及巡视人员机动性差,采用人工“抄表”记录的方式存在数据实时性不高、记录时间不匹配等问题。

物联网技术的飞速发展带来通信技术的更新迭代,专为低带宽、低功耗、远距离、大量连接的物联网应用而设计的低功耗广域网技术得到了广泛应用,目前较为成熟的低功耗广域网技术有NB-IoT、LoRa与Sigfox等[1]。NB-IoT 技术作为最有发展前景的低功耗广域网通信技术之一,在物联网应用中的优势显著,为传统蜂窝网技术及蓝牙、WiFi 等短距离传输技术所无法比拟[2]。NB-IoT功耗低、支持待机时间最长可达十年,适合应用于区域范围内的监测应用设计,并且NB-IoT可以直接部署于GSM网络、UMTS网络和LTE网络,部署成本低,最后,在支持大数据方面,NB-IoT连接所收集的数据可以直接上传至云端。

赵智佩等采用ARM9和NB-IoT通信技术,设计了电容电池信息监测终端,将采集的A/D电压与温度值上报云平台与PC服务器,实现对电容电池的电压和工作温度的监测[3]。朱代先等基于NB-IoT技术设计实现了智慧井盖监测系统,应用低功耗芯片STM32采集井盖的压力和位移以及窨井下的甲烷浓度和水位,通过NB-IoT模块上传至服务器,实现采集终端与服务器之间低功耗的信息交互[4]。吴正平等同样基于NB-IoT设计实现了智能水表抄表系统,能够更好地解决传统水表抄表系统的传输距离短、覆盖范围小、穿透力不强、数据传输稳定性差等问题[5]。本文在此基础上,设计一种基于NB-IoT的区域空气质量监测系统,远程监管平台的管理人员可在地图和数据列表中查看大区域范围内各个空气质量监测节点的参数采集状况和运行状态,Android移动终端的使用人员同样可在地图和数据列表中查看权限范围内各个空气质量监测节点的参数采集状况和运行状态,使得对区域范围内的空气质量监测实时性提高、可监管性增强。

1 系统总体方案设计

本文设计的区域空气质量监测系统,包括:监测节点、远程监管平台与Android移动终端,涵盖物联网技术的感知层、传输层与应用层。系统功能架构如图1所示。

图1 系统功能架构图

其中,各个监测节点采集其所在位置的空气质量信息与位置信息,在固定时间内将采集的信息通过NB-IoT网络发送至远程监管平台,各个监测节点能够自我进行检测,在欠压情况下发送远程报警信息至远程监管平台;远程监管平台能够通过调用地图显示各个监测节点的位置,点击具体的节点查看实时的空气质量信息,各个监测节点发送的空气质量信息与位置信息存储到远程监管平台的本地数据库中,通过选择小区域范围的节点完成授权数据至指定Android移动终端;Android移动终端能够调用地图显示权限范围内各个监测节点的位置,同样点击具体的节点查看实时的空气质量信息;系统在使用过程中可根据实际需求在远程监管平台和Android移动终端对指定监测节点设置各空气质量参数的阈值,该监测节点在达到该阈值后发送提示信息至远程监管平台。

2 系统硬件设计

系统的硬件设计部分主要是针对监测节点的,其设计的效果影响整个系统运行的高效性和可靠性[4]。监测节点硬件设计包括3个部分,分别是:微处理器、通信模块,传感器模块与避雷针模块。其中,一个监测节点的硬件结构如图2所示。

图2 监测节点硬件结构图

传感器模块包括:北斗定位模块、甲醛浓度传感器、惰性气体传感器、PM2.5传感器、甲烷浓度传感器、苯浓度传感器、温湿度传感器与电能采集模块。微处理器与传感器模块、通信模块之间采用串口通信方式,同时电源模块给监测节点提供8 V直流电源,避雷针模块保护监测节点在户外场景中免遭雷电击损。监测节点上电完成初始化配置,微控制器进入待机模式等待定时器将其唤醒,通信模块在设定时间内处于PSM低功耗休眠模式;定时器到达时间触发后,微控制器退出待机模式,开始控制传感器模块采集当前的空气质量信息,完成一次采集后,将采集信息发送给通信模块,再次进入待机模式等待定时器触发;通信模块在接收到采集信息后退出PSM模式,主控芯片通过AT指令将参数信息经基站发送至远程监管平台,完成一次发送后再次进入PSM模式。通信模块在接收到远程监管平台发送的阈值信息后,退出PSM模式,主控芯片通过串口将阈值信息发送给微控制器后继续进入PSM模式,由微控制器开启工作并进行存储。微控制器在定时器触发采集空气质量信息的同时通过电能采集模块获取自身的电压信息,电压偏低时会在当前空气质量信息的最后添加欠压报警信息;同样,在微控制器存储各参数阈值情况下判断某个参数到达设定阈值时,同样在当前空气质量信息的最后添加阈值提醒信息,当同时存在报警信息与提示信息时,报警信息置于最后。

2.1 微控制器电路设计

微控制器选用STM32F103RCT6型号单片机,其电路原理如图3所示。该型号单片机实际工作时处理数据的频率可达72 MHz,具有256K字节系统可编程Flash存储器,48K字节的RAM空间,可以通过CAN、I2C、UART、USB等方式控制外设,同时具有9个通信接口[6],完全符合本文设计监测系统对多个传感器同时控制、对大量数据及时处理的需求,与此同时,剩余空间资源应用于数据通信也显得游刃有余。

图3 STM32F103RCT6微控制器电路原理图

图4 NB-IoT通信模块电路原理图

2.2 NB-IoT模块电路设计

图4为NB-IoT模块电路,该NB-IoT模块电路选用BC95-B5模组。BC95模组通过串口RX/TX收发数据,通过电信NB网络将来自微控制器的采集信息发送至远程监管平台,并且接收来自远程监管平台发送的阈值设定信息。模块主要包括以下几个部分:BC95模组、电源指示、天线接口、USIM卡接口电路[7]。

2.3 电能采集模块电路设计

电能模块采用的是ATT7022B芯片,该芯片有3路电流采集、3路电压采集。V1P/V1N是A相电流采集通道,V2P/V2N是A相电压采集通道,V3P/V3N是B相电流采集通道,V4P/V4N是B相电压采集通道,V5P/V5N是C相电压采集通道,V6P/V6N是C相电流采集通道[8]。通过电流互感器采集每相电流的值,通过电阻分压进行电压采集。图5是一路电压与电流的采集电路。

2.4 传感器模块设计

本文对传感器模块的选择均遵循低功耗与安全稳定原则。

北斗定位模块选用K706-GNSS型号的高精度定位模块。模块尺寸小、重量轻、功耗低,板载8 G超大存储空间可连续存储超过100天的定位数据,在正常情况下定位精度可达2厘米,满足本文对监测节点的精确定位需求。

采用MS1100传感器模块获取甲醛浓度与苯浓度,该模块体积小,可以检测空气中0.1 PPM以上的挥发气体,芯片响应速度快、数据检测准确。

选用MD62型号的传感器采集氩气等惰性气体的浓度,模块根据混合气体的总导热系数随待分析气体含量的不同而改变的原理制成,响应快,具有良好的重复性,可在无氧、缺氧环境中检测。

选用GP2Y1010AU0F型号的光学粉尘浓度检测传感器,传感器利用光敏原理进行工作,可以检测体积细微的颗粒,如烟雾颗粒、灰尘颗粒等,主要依靠输出脉冲的高度来判断颗粒浓度。

选用MQ-4型号的甲烷浓度传感器。该类型传感器检测到甲烷气体时,会产生相应的电压值,并由模拟信号输出端口(AO)输出到MCU,甲烷浓度增大时,输出端口的电压值相应的成比例增长。

图5 一路电压与电流采集电路原理图

最后,本文选用DHT11型号的温湿度传感器,实现对所处环境的温度与湿度同时进行检测,响应时间短、精度高,在系统设计中得到广泛应用。

3 系统软件设计

区域空气质量监测系统软件设计主要包括监测节点微控制器的软件设计、远程监管平台的软件设计以及Android移动终端的软件设计。

3.1 监测节点软件设计

监测节点软件设计包括:主程序、节点服务程序、串口接收服务程序,主程序流程如图6所示。

图6 监测节点软件设计流程图

主程序启动后,首先对STM32微控制器的串口及定时器进行初始化,然后对NB-IoT模块进行初始化,初始化完成后STM32微控制器与NB-IoT都进入低功耗休眠模式[4]。定时器达到设定的时间后,STM32微控制器开始控制传感器模块完成当前位置空气质量信息的定时采集,并按照规定的协议通过NB-IoT通信模块将采集信息上传至远程监管平台。同时,STM32微控制器对自身的电压状况进行检测,在欠压时将报警信息添加至采集信息中进行远程发送,STM32微控制器通过NB-IoT通信模块判断远程监管平台发送的阈值信息,并存储到内存中进行定时判断,判断阈值溢出时也将提示信息添加至采集信息中进行远程发送。

3.2 远程监管平台软件设计

远程监管平台软件采用C/S(客户端/服务器)模式进行设计,连接MySQL数据库,采用C#语言在VisualStudio环境下设计开发[9]。远程监管平台在整个系统中起着“中转站”的作用,一方面通过COAP协议接收来自监测节点发送的采集信息,解析显示并存储到数据库中,将设定的阈值信息反向传输给监测节点;另一方面,通过选定指定小区域下发该区域内的监测节点采集信息至指定Android移动终端,并接收移动终端上设定返回的阈值信息,最终发送至监测节点。远程监管平台软件包括登录模块、数据显示模块、阈值设定模块、地图模块与历史数据查询模块,其工作流程如图7所示。

图7 远程监管平台软件设计流程图

3.3 Android移动终端软件设计

Android移动终端软件的工作流程如图8所示。

图8 Android移动终端软件设计流程图

Android移动终端软件包括登录模块、数据显示模块、地图模块与阈值设定模块,主要为巡视人员设计,基于Java语言与AndroidStudio环境开发[10],与远程监管平台同样采用C/S通信结构与TCP/IP通信协议,实现对授权监测节点采集信息的接收和数据解析显示,在监测节点欠压或检测阈值溢出时接收报警或提示信息,并能够完成对指定监测节点的阈值设定。

4 实验结果与分析

本文设计的系统已经进行了实际场景下的测试,具体来说,在黑龙江大学校园内的不同地点分布放置7个监测节点,在远程监管平台上调用地图可以查看其位置分布,点击其中一个节点,可以查看其实时的监测数据,并可对该节点的阈值进行设定,点击“历史数据查询”可以查看该节点正常运行以来的所有采集数据,远程监管平台的测试界面如图9所示。将实验楼区域的1个监测节点的权限下发至Android移动终端,在Android移动终端软件上可以查看该节点的实时监测信息,通过点击具体的参数可以设定阈值,Android移动终端软件测试界面如图10所示。如此反复在远程监管平台和Android移动终端进行循环测试,均正常运行,表明系统稳定可靠,达到了很好的预期效果。

图9 远程监管平台软件测试界面

图10 Android移动终端软件测试界面

5 结束语

针对现有场景中存在的区域范围内空气质量监测机动性差、信息化程度低与管理不便等问题,考虑到现有检测设备功能单一且移植性不高的问题,本文提出并设计了一种基于NB-IoT的区域空气质量监测系统,可以应用于多场景监测且适应性强、灵活高效。设计的多个监测节点采用STM32为微控制器,控制传感器模块实现对所在位置空气质量相关参数的实时检测,并通过NB-IoT通信模块发送至远程监管平台,在远程监管平台上实现对区域范围内空气质量的监控与管理。同时,远程监管平台通过下发指定区域的权限至指定的Android移动终端,使得Android移动终端使用人员可以对权限范围内的空气质量状况进行监控与管理。除此之外,考虑到本文设计系统实际可能应用的多场景,系统保留有自我安全保护与报警功能,包括欠压报警与避雷保护等,该系统助力推动智慧城市的实现,长时间的数据收集也为大数据建立了基础,为建立智能决策系统提供了条件。

猜你喜欢
微控制器阈值空气质量
乌海市雾对空气质量的影响
改进的软硬阈值法及其在地震数据降噪中的研究
土石坝坝体失稳破坏降水阈值的确定方法
基于小波变换阈值去噪算法的改进
改进小波阈值对热泵电机振动信号的去噪研究
TASKING针对英飞凌第三代AURIX微控制器推出多核开发环境
电磁导向智能车设计探讨
基于MC9S08QG8低端微控制器的无线控制器设计