Software Engineering and Applications
Vol. 11  No. 04 ( 2022 ), Article ID: 54381 , 11 pages
10.12677/SEA.2022.114073

基于NB-IoT的低功耗智能地下井监测系统

吕艳芳,方祁麟,李萌,杜幸凯,陈琪,戴燕云*

浙江理工大学信息学院,浙江 杭州

收稿日期:2022年5月30日;录用日期:2022年7月27日;发布日期:2022年8月4日

摘要

针对目前我国城市地下井管理存在的问题,提出了一种基于NB-IoT的低功耗地下井监测系统。该系统由下位机和上位机两部分组成。下位机以STM32L151为主控,实现对井下水位高度的测量、天然气安全范围的判断与井盖移动的判断,并通过NB-IoT将处理所得信息按照设定的周期上报至云平台。上位机使用SpringBoot和Vue框架作为系统Web端的开发框架,数据库选用MySQL关系型数据库,实现了用户管理、地下井监控、历史数据查看、设备管理等功能。为了方便用户管理终端设备,设计了手机App端。经系统测试表明,该系统可以实现对地下井的监控和管理。研究结果证明了该监控系统未来应用在智慧城市建设中的可行性,为地下井内信息的监控与管理提供了方案。

关键词

NB-IoT,地下井监测,低功耗

Low Power Intelligent Underground Well Monitoring System Based on NB-IoT

Yanfang Lv, Qilin Fang, Meng Li, Xingkai Du, Qi Chen, Yanyun Dai*

School of Information and Technology, Zhejiang Sci-Tech University, Hangzhou Zhejiang

Received: May 30th, 2022; accepted: Jul. 27th, 2022; published: Aug. 4th, 2022

ABSTRACT

A low power underground well monitoring system based on NB-IoT is proposed to solve the existing problems of urban underground well management in China. The system consists of two parts: the lower computer and the upper computer. With STM32L151 as the main control, the lower computer realizes the measurement of downhole water level height, the judgment of natural gas safety range and the judgment of manhole cover movement, and reports the processed information to the cloud platform according to the set reporting period through NB-IoT. The upper computer clearly uses SpringBoot and Vue framework as the development framework of the Web end of the system. The MySQL relational database is selected as the database to complete user management, underground well monitoring, historical data viewing, equipment management and other functions. In order to facilitate users to manage terminal devices, a mobile App terminal is designed. The system test shows that the system can realize the monitoring and management of underground wells. The research results prove the feasibility of the monitoring system in the construction of smart cities in the future, and provide a scheme for the monitoring and management of underground well information.

Keywords:NB-IoT, Underground Well Monitoring, Low Power Consumption

Copyright © 2022 by author(s) and Hans Publishers Inc.

This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).

http://creativecommons.org/licenses/by/4.0/

1. 引言

随着人们生活质量的提高,城市设施越来越多,因此,对市政设施的可靠性要求也越来越高。地下井作为遍布城市的重要地下网络,井盖的庞大数量使得对其进行有效监管较为困难 [1],每年由于井盖缺失、井下天然气浓度过高引起的爆炸及过高的水位也给人们的生命财产安全造成了威胁 [2]。然而当前大多城市针对地下井的管理,一直都是采用传统的人工巡检方式,由于城市地下井数量众多、覆盖范围广,人工巡检不仅会耗费大量的人力物力,也不可避免会出现地下井漏检的情况。

因此,针对目前地下井存在的问题,本文设计了一种基于NB-IoT的低功耗智能地下井监测系统,完成了下位机硬件电路和软件设计,并设计了监控平台的Web端和App端,最终实现了对地下井的智能监测。

2. 系统整体设计与分析

2.1. 需求分析

由于地下井数量多、覆盖范围广、人员巡检不便等实际情况,本系统采用覆盖范围广、低功耗、低成本的NB-IoT作为采集终端与云平台之间的无线通信技术。首先需要搭建一套方便初始化安装的数据采集终端;其次需要设计云平台,实现云平台与服务器端之间通信;再次是Web端管理平台的开发,实现 Web 端用户管理、终端设备管理、地下井监控、数据展示等功能,最后是手机App端开发。依照上述流程,本文设计的地下井监测系统功能如下:

1) 数据采集功能:数据采集终端需要完成对多个传感器数据的采集、处理与传输,传感器参数包括:天然气浓度检测传感器、超声波传感器、加速度计。

2) 数据显示功能:Web端和App端能够直观清晰地显示每个地下井的状态和上报的最新数据。

3) 数据存储功能:系统能够存储NB-IoT采集终端采集的数据,方便用户查询历史数据。

4) 报警功能:当地下井终端设备有异常状况时,管理员可以及时收到报警信息。

5) 地下井终端设备管理功能:上位机可以实现对地下井终端设备的管理,如:新建设备和删除设备等。

6) 巡检管理功能:当地下井出现异常状况时,监测平台用户包括管理员和普通用户都可以对异常地下井进行处理,处理异常地下井之后填写处理单,使处理异常地下井事务更加高效。

2.2. 系统总体架构设计

图1为地下井监测系统的整体架构图,可以分为下位机和上位机两部分。

下位机主要由STM32主控模块、电源模块、无线通信NB-IoT模块以及各种各样的传感器模块包括超声波传感器、天然气浓度检测传感器和加速度计组成。每个终端设备可以实现对水位、天然气浓度是否异常、移动是否异常数据进行采集,并通过NB-IoT无线通信方式传送至天翼物联网平台。其中每一个NB-IoT模组都有一个唯一的标识号IMEI即国际移动设备识别码,通过IMEI号即可将设备唯一连接至云平台,可以实现业务数据上报、业务指令下发、中断事件上报等功能。

上位机主要包括天翼物联网平台、监控管理平台的Web端和App端。天翼物联网平台作为下位机与上位机的“中间件”,提供SDK开发包供服务器使用获取接口数据,不仅可以实现下位机数据的上报,也可以实现上位机的指令下发,起到数据“中转”的作用。HTTP服务器获取下位机传送至云平台的数据,并对其进行逻辑处理并存储至MySQL数据库中。监测管理平台Web端和App端获取服务器接口的数据,并进行逻辑处理后,展示在网页和手机界面上。

Figure 1. Overall structure diagram of underground well monitoring system

图1. 地下井监测系统整体架构图

3. 下位机设计

本文所设计的监测系统的下位机主要由主控模块、水位检测模块、天然气浓度检测模块、井盖移位检测模块与无线通信模块组成。其中传感器需要能够对井内水位、天然气浓度信息进行采集,并且能判断井盖的异常移动;主控模块通过控制各传感器模块获取相应信息,并通过无线通信模块与云平台进行信息传输;电源模块对系统进行供电。

3.1. 下位机硬件设计

3.1.1. 水位检测模块设计

本系统中的水位检测模块采用HC-SR04超声波传感器,其测距精度最高可达3 mm,可测量范围最远可达4 m,成本低,并且该传感器体积小,垂直朝井内安放不易受井内异物遮挡,井内水面起伏较小,传感器工作也不易受影响,测得水面高度较为准确。如图2所示为超声波传感器的电路图。

Figure 2. Schematic diagram of ultrasonic module circuit

图2. 超声波模块电路原理图

3.1.2. 天然气检测模块设计

本系统中的天然气检测模块采用MQ-4天然气传感器,MQ-4传感器所使用的气敏材料是二氧化锡(SnO2),该材料在清洁空气中电导率较低。当环境中存在甲烷气体时,该传感器的电导率将会随着甲烷气体的浓度上升而增大。该传感器对甲烷的灵敏度高,并且可以对酒精等干扰性气体有较强的抗干扰能力。如图3所示为MQ-4天然气传感器的电路原理图。

Figure 3. Schematic diagram of natural gas detection module circuit

图3. 天然气检测模块电路原理图

3.1.3. 井盖移位检测模块设计

本系统中的井盖移位检测模块采用LIS3DH三轴线性加速度计模块,其具有超低功耗的特点,最低可以以1 Hz的输出数据速率测量加速度,在超低功耗模式下最低可低至2 μA的工作电流。如图4所示为LIS3DH电路原理图。芯片通过SPI通信协议与单片机STM32通信。

Figure 4. Schematic diagram of accelerometer circuit

图4. 加速度计电路原理图

3.1.4. 主控模块设计

主控模块是整个下位机终端设备的大脑,其需要控制所有传感器的工作,并且对所有采集到的数据进行处理,主控模块的选择对整个终端系统至关重要。主控模块采用STM32L151微控制器。这是一款基于Cortex-M3内核的32位微控制处理器,在不会降低性能的情况下拓展了超低功耗理念。

3.1.5. NB-IoT模块设计

NB-IoT通信模组是终端设备与云平台之间进行信息交互的桥梁。本设计选用移远公司的BC26,其在PSM模式下的理论工作电流仅3.5 μA,空闲模式DRX = 2.56 s情况下的工作电流为0.35 mA,其工作电压为2.1~3.63 V。由于NB-IoT为物联网模组,因此需要借助运营商的物联网卡进行联网与数据收发,图5所示为SIM卡的电路原理图。

Figure 5. Schematic diagram of IoT card circuit

图5. 物联网卡电路原理图

STM32通过串口与BC26相连完成通信,主控通过AT指令控制NB-IoT模组完成模块初始化、连接云平台及数据传输。芯片采用3.3V电压供电,若供电电压低于2.1V模块工作将会出现异常。

3.2. 下位机软件设计

本系统下位机的程序代码使用STM32 CubeMX完成初始化配置工作,再由KeilMDK-ARM进行编写与调试。下位机的代码执行流程由图6所示。下位机系统上电后,待各功能模块完成初始化,主控模块对需要测量的水位、天然气浓度与井盖移位信息设定报警阈值,控制各传感器模块进行数据采集,并进行判断,若触发报警,则立即控制NB-IoT通信模块进行数据上报,若无报警,则在每个上报周期到达时进行数据上报。

Figure 6. Monitoring system lower computer software block diagram

图6. 监测系统下位机软件总体框图

硬件电路的设计完成后,针对不同的功能模块,主控模块STM32需要通过不同的通信方式完成对各模块的控制与数据的读取。主控模块通过IO读写完成对HC-SR04模块的操作,进而完成距离的测量;通过AD转换的方式读取MQ-4模块的输出,以判断此时天然气浓度是否超过安全阈值;通过SPI通信协议完成对LIS3DH模块的操作,读取加速度值,判断井盖是否被异常移动;通过串口与无线通信模块NB-IoT进行连接,利用AT指令完成向云平台的数据传输,同时做到监听云平台的下发指令。

4. 上位机设计

地下井监测系统上位机包括天翼物联网平台、Web端和手机App端。

天翼物联网平台是一个轻量级的物联网开发平台,终端设备可以将数据上报至天翼物联网平台,天翼物联网平台也可以指令下发给设备 [3]。天翼物联网平台可以消息推送给应用,也有丰富的API接口供用户使用。天翼物联网平台也提供了完整的终端设备接入和设备管理功能,提供在线调试、实时监控等多种调试方法,使得下位机和上位机更好地对接起来,降低了物联网开发的技术门槛,大大降低了开发难度。

Web端采用SpringBoot + Vue前后端分离的系统架构,其中Web前端采用Vue + ElementUI + Echarts技术栈,Web后端采用SpringBoot + Mybatis-Plus + MySQL技术栈,开发环境为IDEA。相比于传统的开发模式,前后端分离这种开发模式可以将管理平台的前端和后端完全解耦 [4],实现工程的模块化、工程化、系统化,有更多的扩展空间,极大提升了开发效率。前端只需要负责数据展示和用户交互,后端提供数据处理的接口,前后端通过Ajax请求以JSON格式数据进行交互 [5]。

手机App端采用MVVM(Model-View-ViewModel)设计模式作为设计思想,将视图与数据解耦,即分为View层和Model层,中间靠ViewModel层存放带有生命周期的数据逻辑,防止内存泄漏。同时借助Retrofit网络请求框架将接口与请求解耦,请求逻辑统一存放到Repository仓库层,可拓展性强,并结合Kotlin协程实现异步回调简化,在无观察者或生命周期被销毁后即停止网络请求,降低网络请求的流量损耗。

结合实际地下井的实际情况和功能需求,地下井监测系统上位机可以分为如图7所示的几个功能模块。

Figure 7. Function diagram of upper computer of underground well monitoring system

图7. 地下井监测系统上位机功能图

下面详细叙述各个功能模块的作用:

1) 用户管理:用户分为管理员和普通用户,在两种用户登录后,根据用户角色不同,Web显示的界面也不一样,两类角色可以操作的功能也不一样。用户的帐号只能由管理员新建,普通用户只能修改自己的用户信息,管理员可以编辑修改所有用户的信息。

2) 终端设备管理:① 新建终端设备可以由Web平台和手机App创建,在新建设备时在Web前端和手机App填写所需的设备名称、IMEI号、创建人、设备经纬度后,即可创建;② 管理员可以修改和删除设备信息。

3) 地下井监控:① 每个地下井设备在地图中显示出来,可以看出每个地下井设备的状态;② 点击每个地下井设备可以看到地下井终端设备的信息和终端设备采集的数据;③ 如果地下井终端设备异常,管理员会收到警报短信,异常状况被处置后,填写处理信息,处理信息填完后,可以查看已处理的信息。

4) 历史数据展示:可以查看指定地下井终端设备的指定时间段的数据信息,并通过使用Echarts图标库构建折线图,使得历史数据展示更加直观清晰。

5) 巡检管理:① 利用表格的方式直观显示历史异常地下井信息,包括气体浓度是否正常、水位是否正常、是否移动、水位以及是否处理和处理信息,便于管理员和巡检员直观查看历史异常地下井设备的信息;② 管理员可以修改和删除异常地下井处理信息。

5. 系统测试与结果分析

5.1. 下位机数据上报测试

图8所示为监测系统下位机实物图。地下井终端设备的功能是将各传感器模块采集的数据经由NB-IoT通信模组发送至云平台,并且能够接收来自云平台的数据查看下发指令。为了便于测试,将上报周期设置为30秒,再查看Web端和App端的数据。

Figure 8. Physical drawing of monitoring system’s lower computer

图8. 监测系统下位机实物图

经测试,地下井终端设备数据成功上报至上位机。图9为Web端显示的数据,图10为显示的最新数据。

(a)(b)

Figure 9. The received data displayed on the Web

图9. Web端显示收到的数据

(a)(b)

Figure 10. The received latest data displayed on the Web and App

图10. Web端和App端显示收到的最新数据

人为移动终端设备触发报警,查看上位机是否收到报警信息。经测试,下位机成功地将异常信息传送至上位机,图11为手机短信收到的警报信息。

Figure 11. Text messages warning

图11. 短信警告

5.2. 上位机指令下发测试

在Web端地下井监控界面的信息窗体内,点击“查看当前数据”按钮,下发指令至下位机后,查看上位机是否收到即时地下井终端设备数据信息。

经测试,上位机下发指令至下位机成功,并即时上传数据。如图12所示为在天翼物联网平台查看的指令下发详情,图13为Web端显示的最新数据情况。

Figure 12. Instruction delivery

图12. 指令下发情况

Figure 13. Data report after the command is delivered

图13. 指令下发后对应数据上报情况

6. 总结

随着物联网技术的不断发展,智慧城市的概念得以迅速拓展与普及。本文基于物联网中的NB-IoT无线通信技术,完成了一套地下井监测系统的设计,完成了下位机和上位机的设计。在下位机中,基于STM32L151的主控模块通过控制各传感器模块完成对水位信息、井内天然气浓度信息与井盖运动的采集,并将地下井相关数据发送至天翼物联网平台,实现了对下位机实时监测的设计;在上位机中,Web端管理平台和手机App实现了与下位机的通信、控制、数据采集、显示、管理等功能。该系统稳定,采集数据准确,功能完善,对于城市地下井监测和后台管理具有较大作用与意义。

基金项目

国家级大学生创新训练项目(202110338022)。

文章引用

吕艳芳,方祁麟,李 萌,杜幸凯,陈 琪,戴燕云. 基于NB-IoT的低功耗智能地下井监测系统
Low Power Intelligent Underground Well Monitoring System Based on NB-IoT[J]. 软件工程与应用, 2022, 11(04): 701-711. https://doi.org/10.12677/SEA.2022.114073

参考文献

  1. 1. 戴金英. 关于城市井盖监控预警数字化管理系统的研究[J]. 科技视界, 2014(27): 70-71.

  2. 2. 张小娟. 小窨井盖背后的大变化[N]. 青海法治报, 2021-12-15(003): 1-4.

  3. 3. 程钰俊, 吕高锋, 林克, 王亚磊, 钟致民. 物联网大数据赋能数字孪生城市建设[J]. 广东通信技术, 2022, 42(2): 49-54+71.

  4. 4. 冀艺蒙. 基于Django的交通信号灯状态实时监测系统设计[D]: [硕士学位论文]. 石家庄: 河北科技大学, 2020.

  5. 5. 黄晟祺, 许林瑞, 汪玉笳, 等. 基于前后端交互的就医无忧系统的设计与实现[J]. 软件工程, 2021, 24(6): 53-56+49.

  6. NOTES

    *通讯作者。

期刊菜单