一种基于NB-IoT的无线井下数据采集终端设计

2023-10-16 19:12彭勇胡文德陈俞强王石林冠业
计算技术与自动化 2023年3期
关键词:低功耗物联网

彭勇 胡文德 陈俞强 王石 林冠业

关键词:物联网;低功耗;窄带物联网;无线采集终端

近年来,城镇化速度加快,我国城市化水平越来越高,旧城改造、新城建设,城市硬件基础设施建设越来越完善,雨水、污水、燃气、通信、电力等不同的城市地下管线越来越多,窨井数以千万计。据统计,一个中等城市每年新增、更换井盖十万个以上,很多井盖分布在道路周边、行车道以及人行道中,因为窨井井盖缺失、管道泄漏导致的安全事故层出不穷,城市地下管线的管理水平跟不上经济社会的发展水平,通过智能化手段改造现有井盖,实时获取井盖状态和井下数据,并进行监控是对地下管线管理的重要手段,也是可行的做法。有些城市在井盖采用2.4G无线模块,在集中区域安装无线中继器,再通过GPRS等方式发送数据到监控平台,但是缺点是功耗比较高,距离远时灵敏度不高,中继模块安装也不方便。南京邮电大学的一篇硕士论文研究了一款基于WiFi通信的智能井盖,但是WiFi技术功耗比较大、终端连接能力比较弱,不适合井盖这种需要广域部署的情况。为了解决当下井盖管理存在的种种问题,将先进的物联网技术与传统井盖相结合,设计出一种井下数据无线采集终端,可以检测井盖倾角状态和井下水位,让传统井盖成为一个固定的信息交互设备,并使用NB-IoT作为无线传输技术实现智能井盖与物联网云平台的信息传输,能对城市井盖进行大面积监测,实现了对城市井盖的智能化管理。

1整体结构

井下数据无线采集终端系统是一个典型的物联网应用,主要包括智能井盖数据终端、第三方物联网云平台、后台应用服务器开发、智能井盖监测管理平台和手机应用端软件开发,项目设计结构见图1。

智能井盖数据终端可以实时采集井盖的倾角和井下的水位情况,利用倾角可以判断井盖是否被开启,一般设定为20°左右即表示井盖被开启,井下水位是判断井壁渗水等故障的重要依据,每隔30分钟左右智能井盖数据终端就会自动上报数据,当井盖倾角和井下水位有异常时,会实时通过NB-IoT模块上报到NB-IoT基站,进而上传到物联网云平台;物联网云平台提供设备接入、数据解析服务,将设备上传的二进制数据转换为有意义的JSON格式数据,并提供应用侧API供应用服务器访问;应用服务器主要是完成系统的数据逻辑部分,对从云平台得到的数据进行各种计算,然后存储到数据库,并通过API发布数据;管理员用户通过PC端管理平台来对整个城市的井盖情况、井下数据进行监控、统计、井盖异常报警处理,井盖巡检员可以使用移动客户端来读取所负责区域的所有井盖情况以及井下数据,并及时接收警报信息,对井盖及井下异常数据进行处理。

2硬件设计

智能井盖数据终端的硬件主要包括5个部分,分别是:主控模块、NB-IoT通信模块、传感器模块、蓝牙模块和电源模块,系统的硬件结构如图2所示。主控芯片我们选用一枚超低功耗设备的STM32L15IC8T6,低功耗睡眠状态电流只有5.1μA,数据终端在开机后会进行初始化,读取蓝牙模块配置的基本信息,并完成NB-IoT模块附着网络,NB-IoT模块一段时间没有发送数据就会自动进入PSM(Power Saving Mode,省电)模式。主控STM32芯片在完成初始化后会进入待机模式,直到被时钟唤醒,当定期采集数据的时间到来时,主控芯片会退出待机模式,并采集井盖的倾角和井下水位等数据,并发送给NB-IoT模块,STM32主控芯片随即进入待机模式,NB-IoT模块在收到数据后,则退出省电模式,把数据发送到NB-IoT基站,通过NB-IoT基站,数据最终传到物联网云平台,发送完所有数据后,NB-IoT模块再次进入休眠模式。

2.1 主控模块

智能井盖数据终端中最为核心的模块就是主控制器,根据智能井盖数据终端设备所需要的低功耗、高数据传输率、稳定可靠、性价比高等特性,我们选择STM32L152R8T6作为主控制器,具有超低功耗、全面节能模式,能够满足系统的超低功耗要求;提供各种增强的I/O和外围设备连接到两个APB总线,一个12位ADC,2个DAC,六个通用16位定时器和两个基本定时器,两个ⅡC和SPI,三个USART和一个USB,能满足系统外部传感器种类繁多,所需接口较多的要求;能够在一40~85℃的温度范围内可用,在低功耗状态下扩展至105℃,可以满足在恶劣的井内环境中正常工作的需求。主控模块一般情况下处于休眠状态,当采集数据间隔时间到来或者出现数据异常预警信息时,会唤醒模块执行相应的程序,读取各传感器数据并发送到NB-IoT模塊。如图3所示,PA4、PA7、PA11作为外部模块上电接口,控制外部模块电路的通电;通过PB6、PB7、PC9这组ⅡC接口与倾角监测模块连接实现数据传输和中断处理,通过PB8、PB9、PA5、PA8这组ⅡC接口与液位检测的激光测距传感器进行数据交换以及中断处理;通过PA2和PA3这组URAT接口与NB-IoT通信模块进行数据交换,可以完成将采集的数据上传到物联网云平台以及接受云平台下发的指令;通过PA9和PAIO接口与蓝牙模块进行串行通信,通过PC10、PC11、PC12实现蓝牙模块的片选、配对和状态指示。

2.2通信模块

NB-IoT无线通信模块采用BC26模组,具有极低功耗,最低电流功耗为3.5μA,发射功率为23dBm±2dB,能够非常方便地连接中国移动、中国电信、华为等大型运营商的物联网云平台,可以在连接状态、空闲状态和省电状态下工作,连接状态下模块的所有功能都可以正常运行,进行数据的发送和接收,但是耗电量略大;空闲状态下,模块处于轻休眠模式,网络处于DRX/eDRX状态,寻呼窗口内可接收寻呼;省电状态下,模块处于深睡眠模式,CPU掉电,内部只有RTC工作,处于极低功耗。BC26模块硬件电路如图4所示,BC26模块的TXD引脚用来发送数据给STM32,连接到STM32引脚的PA2,BC26模块的TXD引脚用来接收AT指令,可以对模块进行设置,连接到STM32引脚的PA3。

2.3传感器模块硬件设计

2.3.1倾角检测模块

根据采集到的井盖三个方向的偏转角可以计算井盖是否发生倾斜或移动,考虑到功耗、精度、价格等方面的影响因素,选取了ADXL345三轴加速度传感器作为倾角传感器,其具有灵敏度高、功耗低的优点,能测量不到1.0°的倾斜角度变化,测量模式下只有40~145μA的电流,待机模式只有0.1μA,支持SPI和IIC两种通信方式,我们采用的是IIC方式连接,加速度传感器外围电路如图5所示。

2.3.2水位检测模块

城市窨井往往会因为雨水过多、管道阻塞等原因导致井内有积水,当积水过多时会对井内各种设施以及线路造成腐蚀、传输中断、数据丢失、触电等多种影响,所以需要对井下的水位进行监控。考虑到测量距离、井下环境、测量精度和功耗等因素,选用VL531L1X激光测距传感器来检测水位,能提供精确的距离测量,可以测量4m的绝对距离。VL53LIX采用ⅡC接口与STM32相连,GPIOI引脚与STM32的PA5相连发送中断信号,SCL时钟信号连接STM32的PB8,SDA与STM32的PB9相连实现双向数据交换,XSHUT引脚与STM32的PA8相连实现VL53LIX模式的控制。具体电路图如图6所示。

2.4蓝牙模块设计

智能井盖数据终端在第一次使用前需要进行初始化配置,井盖施工现场一般情况都是由手机客户端通过蓝牙连接到智能井盖,就可以配置服务器的IP地址、端口号、井盖编号、井盖位置经纬度(由手机客户端获取)等基础数据,在日常巡检中也可以通过蓝牙连接修改或读取井盖的基础数据以及井下传感器数据。蓝牙通信模块采用HC-06模组,最大发射功率为4dBm,最大通信距离为10m,支持AT指令,方便灵活。HC-06模组采用串口与STM32通信,HC-06模组的RX引脚与STM32的PAIO连接,接收上位机发来的数据,TX引脚发送数据到STM32的PA9,HC-06模组的PIOII连接STM32的PC10,实现对蓝牙模块的片选,HC-06模组的PI09连接STM32的PC11,实现上位机和蓝牙模块的配对。具体电路图如图7所示。

3软件设计

井盖智能终端软件设计部分主要有主程序、传感器模块程序、NB-IoT通信模块程序、蓝牙模块配置程序。其中主程序主要是负责调用各模块程序,实现整个系统正常运行,与物联网云平台实现数据的交互以及数据格式的转换,传感器模块程序主要负责采集各种传感器收集的数据,实现数据的格式化并提交给主程序,NB-IoT通信模块程序负责初始化通信模块,与NB-IoT基站建立连接,发送数据给物联网云平台,并接受上位机下发的各种指令,蓝牙模块配置程序实现了智能终端各种初始数据的配置以及巡检过程中修改配置及读取数据,见图8。

3.1智能井盖数据终端主程序设计

系统通电后,完成系统的初始化,完成串口、定时器、各种IO接口的初始配置,然后通过蓝牙方式或者从FLASH中读取井盖的基本配置信息(IP地址、端口号、井盖编号、井盖位置经纬度等),接下来加载通信模块和传感器模块,主控制器进入休眠待机模式并关闭通信模块。当采集时间间隔到来或有预警中断信号时,主控制器会被唤醒读取传感器数据并通知通信模块发送信息。

3.2传感器模块程序

传感器模块程序可以采集倾角检测模块、液位检测模块的数据,对于倾角检测模块,程序读取到的是三轴加速度分量,然后解算出三轴姿态角,计算出倾角;对于液位检测模块,接收到测量数据后还需要进行解算,最终得到液面到井盖的距离。液位检测模块的传感器尽管在出厂时已经做了校准,但是由于实际应用会加盖保护以及焊接等因素的干扰,会造成细微误差,所以一般在整个终端产品应用前还会再次做相关校准,见图9。

3.3NB-IoT模块程序

NB-IoT模块程序负责完成初始化BC26模块配置与数据传输,在数据传输前还需要进行附网的一系列操作,主控制器与NB-IoT通信模块之间采用AT指令进行通信,见图10。

3.4蓝牙模块程序

蓝牙模块主要是方便现场与数据终端之间的近距离通信,数据终端第一次安装时需要进行初始化配置,主要包括经纬度、设备编号等,在井盖维护时,也能通过蓝牙模块读取部分实时数据以便检修,见图11

4系统测试与数据分析

4.1硬件电路测试

在研发过程中对于整个系统的初始化、数据上传、下载及入网情况等进行了测试。测试结果如表1所示。

测试结果表明,系统初始化100%正常,NB-IoT入网和信息上传成功率98.8%,主要是由于高大建筑物遮挡等造成极少次数失败,通过重传即可解决这个问题,蓝牙数据传输失败率在1%,也是由于井下环境较为恶劣,产生的极少的失败,通过重新连接即可解决,整个系统各个模块运行稳定。

4.2设备功耗测试

智能井盖数据终端安装在窨井,一般情况下没有外接电源,要求数据终端依靠电池就能长期运行,因此对终端功耗提出很高的要求。在程序设计上,主控模块大部分时间停机,只有采集时间到来或者数据异常发出,终端才会被唤醒,NB-IoT模块一直处于PSM低功耗模式,等到主控模块需要其发送数据时才被唤醒。终端设备低功耗运行时电流功耗仅为10.216μA,初步推算,采集周期是30min情况下,5400mAh内部电池可使用约1217天,供电时间超过3年,设备功能测试见表2。

4.3倾角检测模块测试

为了更加直观地得到最终倾斜角度,将终端设备放置在平板上,平板的一角缓缓下压或抬起,来模拟设备在各种倾斜角度下的倾角采集,通过最终设备上传的角度值与实际角度值的对比可得出该模块是否能够满足于正常应用。具体实际角度值和测量值如表3所示。

实验分为九组数据进行测量,其中四组处于非报警状态的测量,五组处于报警状态的测量,根据表3数据的对比可知,该设备在这两种状态下均能够实现对倾角值的监测,并且角度越小测量越精准,精度为±0.2°,基本能夠满足应用要求。

4.4液位检测模块测试

为了测量井下水位,将智能井盖数据终端放置于一个水盆上方,然后开启终端,记录水位数据,再往水盆添水,随着水位升高,不断记录水位数据,最终得出实际距离值和测量距离值如表4所示。

此种实验模式由于实际距离的测量方式和设备本身存在误差,液位测量值与实际值稍有不同,但通过七组实验的数据对比可知,误差基本保持在±2mm以内,误差值均在允许的范围内。因此该模块能够实现终端设备的液位高度测量,基本满足系统需求。

5成本分析和技术方案对比

目前常见的智能井盖方案主要有基于GPRS技术和基于NB-IoT技术两种,具体方案对比如表5所示。

从表5可以看出,基于NB-IoT的智能井盖方案从数据传输、网络覆盖及功耗等各方面都优于传统的GPRS技术方案。

根据已经实现的原型系统(图12)的测算,基于NB-IoT的井盖系统具有较低的建设成本和运行成本,具体成本分析见表6。

从表6看出,基于NB-IoT的成本低,其中包括建设成本、运行成本和年均成本等,具有更好的市场前景。

6结论

针对城市普遍存在的井盖发生位移、倾斜、松动、溢水、损坏、被盗等现象,根据智慧井盖数据采集终端低功耗、低成本、稳定性高的设计理念,完成了基于SMT32单片机+NB26无线通信模块的终端平台的搭建,实现对井盖的身份标识、对井盖统一归档管理,以及实现对井盖的状态监控、实时报警、自动巡检、及时处置等功能,保障安全运行。在未来井盖监测这一智慧城市关键应用中,可以在已经实现的智能井盖数据终端的基础上,添加气体传感器、电导率传感器等其他传感器,以适应污水井、燃气井、雨水井等各类窨井的特殊需求,丰富井盖终端的功能,还可以进一步考虑分析数据的综合与利用,进一步提高市政管理的信息化、智能化水平,为智慧城市奠定行业应用基础。

猜你喜欢
低功耗物联网
一种高速低功耗比较器设计
低功耗NB-IoT透传模块的设计
一种用于6LoWPAN的低功耗路由协议
基于高职院校物联网技术应用人才培养的思考分析
基于LABVIEW的温室管理系统的研究与设计
论智能油田的发展趋势及必要性
中国或成“物联网”领军者
ADI推出三款超低功耗多通道ADC
IDT针对下一代无线通信推出低功耗IQ调制器
低功耗加权cache替换策略