树人论文网一个专业的学术咨询网站!!!
树人论文网

基于NB-IoT与智能手机的智慧蔬菜棚室管理系统

来源: 树人论文网发表时间:2020-11-24
简要:摘要:NB-IoT低功耗广域网技术有望成为未来农业物联网中海量终端互联的主干支撑技术之一,智能手机方便易用的特点使其有望成为适宜广大农户日常使用的农业信息终端平台。为同时

  摘要:NB-IoT低功耗广域网技术有望成为未来农业物联网中海量终端互联的主干支撑技术之一,智能手机方便易用的特点使其有望成为适宜广大农户日常使用的农业信息终端平台。为同时满足传统棚室农业集总式管理模式与日常棚室生产情境中的分布式管理的需求,基于NB-IoT技术及智能手机,设计一套可用于蔬菜棚室的智慧管理系统。该系统具有功能伸缩性强、部署便捷、稳定可靠、网络拓扑简单、使用方便、成本低廉等优点。测试结果表明,通过所设计系统可以有效地完成对于蔬菜棚室的种植参数监测与设备管理等工作,实现面向智慧棚室的远程集总式管理与现场分布式管理。

现代电子技术

  本文源自现代电子技术,2020,43(12):170-175.《现代电子技术》杂志,于1977年经国家新闻出版总署批准正式创刊,CN:61-1224/TN,本刊在国内外有广泛的覆盖面,题材新颖,信息量大、时效性强的特点,其中主要栏目有:电子技术及应用、能源与环境科学、智能交通与导航等。

  我国农业棚室生产经营者多为以家庭为单位的中小型个体农户,生产管理受到棚室空间位置分散、农业投入受限、信息化知识水平有待提高等因素的影响。而随着农业生产过程中精细化管理的不断深入,棚室物联网服务模式与终端间数据通道需要进一步优化[1,2,3]。为适应这一现状,需要实现能够在较大的空间范围之内支持海量棚室物联网终端接入的低成本、低实现复杂度、高运行可靠性的有效无线互联手段[4,5,6]。

  由LTE技术发展而来的NB-IoT技术可为农业领域海量终端无线互联提供有效的支持。其具有覆盖性优异、终端模组成本低廉、日常维护简单、支持海量终端接入及能耗较低等优势[7]。农业环境中数据传输的特点也与NB-IoT数据传输频次低、时延较高、数据量有限等特性相符合。NB-IoT上述优点特别适用于在我国广大农村地区进行广覆盖、低成本、海量接入的无线数据网络建设的需求[8,9]。

  传统的农业集总式管理模式与农业生产者日常生产习惯及农业情境中的分布式管理需求不完全契合[10,11]。如能在保证集总式管理功能的前提下同时实现农业情境中的分布式管理则可在较大的程度上提高农业宏观管理者与现场作业人员的管理效能与服务效果[12,13]。若能依托智能手机等在农户中广泛使用的移动智能设备为分布式农业管理提供支持,则可在易用性、建设与使用成本、分布式支持等方面适应我国棚室生产的现状[14,15,16]。

  本文提出一种基于NB-IoT与智能手机的智慧蔬菜棚室管理系统。通过该系统可以实现在较大范围内的蔬菜棚室物联网信息终端互联互通,同时支持农业棚室经营者通过智能手机在各农业情境中进行分布式管理,以及获得由云端平台提供的智慧农业信息服务对较大范围内蔬菜棚室进行集总式中心化管理。

  1、系统功能结构

  系统由基于NB-IoT的现场终端节点、基于Android的分布式现场服务APP及适配NB-IoT的云端平台组成。现场终端节点用于采集棚室种植环境中的日常数据,并为农业机电设备提供相应的控制信号。现场终端节点的感知与控制信息通过NB-IoT数据通道与蔬菜棚室管理系统的云端平台服务器实现有效交互。云端平台服务器对通过NB-IoT运营商平台对应接口获得的数据进行相应处理,并将数据存储在部署于云服务器上的MySQL数据库中,为集总模式下的网页管理端提供数据支持。网页管理端为核心管理员(如棚室农业园区管理者或农业管理部门人员)提供用户管理、节点管理、实时监测、设备控制、告警管理以及历史数据查询等功能,实现农业棚室的集总式管理。该集总式服务面向农业集总式宏观管理,不受地块、区域限制。

  为同时满足蔬菜棚室农业情境下的分布式管理需求,采用Android智能手机APP为农业现场作业人员(如负责特定棚室的雇工等)提供现场棚室管理服务。该服务为局域管理服务,现场作业人员可通过该服务APP实现对周边棚室蔬菜种植管理所需的终端节点接入、棚室环境监测、棚室设备控制以及数据管理等功能。该APP还可在NB-IoT网络突发问题时提供应急管理操作。上述系统结构同时满足了集总式管理与现场分布式管理的需求,并通过功能结构划分不同的管理层次。系统结构如图1所示。

  图1系统功能结构图

  2、现场终端节点

  为了提高蔬菜棚室中感知终端与执行终端密度与精细化程度,实现复杂农业环境下终端节点与远程控制端及手机APP的可靠通信,设计了适用于蔬菜棚室中监测管理的终端节点。现场终端节点的功能结构如图2所示。

  图2现场终端节点功能结构

  2.1传感器模块

  节点的MCU采用基于ARM32bitCortex™-M3内核的STM32F103ZET6芯片。其较高的工作频率、较低的功耗特性、较宽的工作温度范围及丰富的接口为复杂棚室农业环境下节点功能的有效实现提供了有力支持。由于棚室蔬菜种植对温湿度有较高要求,节点采用具有较好耐候耐喷淋特性的单总线(1-Wire)数字式温湿度传感器AM2306对棚室内外环境温度进行采集。该传感器温度测量范围在-40~125℃,误差在±0.3℃之间,湿度测量范围在0~99.9%,误差在±2%之间,可满足绝大多数蔬菜棚室种植环境温湿度监测的需求。为评估日光透射玻璃或大棚薄膜后在棚室内的光照分布,节点通过BH1750FVI光照强度传感器获取日光辐照数据。BH1750FVI较低的成本有助于在棚室内多个位置包括蔬菜的冠层及根部等处布设多个监测点,从而能够更为可靠地形成对棚室蔬菜光照因素的宏观观测。为在棚室遭遇强风时提供告警,节点采用支持ModBus-RTU协议的SM5385B和SM5384B风速与风向传感器监测对应数据。MCU通过采用SP3485构建的RS485总线获得上述传感器数据。土壤水分与温度传感器SM2802亦可通过该RS485通路接入MCU。为了对棚室水泵、排风扇等进行可靠控制,当节点收到云端服务器或智能手机发来的指令后,MCU产生逻辑控制信号驱动对应4路使用EL817C光耦隔离的继电器G5LA-14通路。

  2.2NB-IoT与蓝牙通信模块

  节点采用NB-IoT与低功耗蓝牙技术分别满足远程集总式管理与现场分布式管理的数据传输需求。节点采集的棚室监测数据与云端远程控制信息经由NB-IoT数据通道进行传输。智能手机与节点的现场通信由蓝牙实现。为了便于通信与数据处理,棚室监测数据采集完毕后被封装成8位字节数组的数据帧。节点NB-IoT模组选用基于华为Boudica芯片的WH-NB75-B5。模组与MCU通过波特率为9600b/s的串行接口进行通信。WH-NB75-B5工作于850MHz频段,适配电信NB-IoT物联网卡。该模组峰值功耗0.3A/3.8V,无数据时休眠功耗可低至5μA/3.8V。模组支持UDP/CoAP网络通信协议。系统中使用基于请求/响应模型的CoAP通信协议传输数据。CoAP通信协议以UDP作为传输层协议,通信开销的显著减小使其适用于物联网应用中。使用中扩展不连续接收模式的取值为5min。上电后,节点自动实现NB-IoT网络接入。在NB-IoT通信中,周期性采集到的棚室监测数据经由MCU封装并结合CRC-8校验,通过NB-IoT信息通路上传到远程云端服务器,同时接收云端发来的控制指令并进行完整性判断,进而执行控制操作。通过上述过程实现终端节点与云端服务器的可靠通信。NB-IoT信息交互周期通过MCU定时器设定。节点蓝牙模组选用基于CC2540芯片、支持蓝牙4.0低功耗通信协议的HC-08无线蓝牙通信模组。微控制器通过串口方式与蓝牙模组进行通信(波特率为9600b/s)。HC-08工作电压为3.2~6V,在低功耗模式下休眠电流低至0.4μA,在空旷环境下拥有最高可达80m的通信距离,满足节点长时间工作及智能手机与终端节点进行高可靠性通信的需求。

  3、分布式现场服务APP

  农业现场作业人员使用的分布式现场服务APP基于Android开发,其可应用于Android5.0版本以上的智能手机。主要面向在棚室田间地头工作的农业现场作业者,为其提供分布式管理服务。分布式现场服务APP的主要功能为手机/节点间蓝牙通信管理、棚室监测、设备管理、数据管理及用户UI。APP功能结构如图3所示。终端节点对接APP的流程图如图4所示。

  图3分布式现场服务APP功能结构

  图4终端节点对接APP的流程图

  3.1蓝牙通信管理

  蓝牙通信管理功能用于构建智能手机与现场终端节点间稳定可靠的数据通道。手机/节点间的低功耗蓝牙通信基于GATT协议。APP启动后查询蓝牙状态,在手机蓝牙功能未开启时执行使能操作。在用户发出节点扫描请求后执行扫描过程,扫描到节点设备后获取该设备的物理地址、设备名称与信号强度等信息,并添加在蓝牙管理页面的设备列表中呈现给用户。用户可根据节点管理需求接入任一合规节点。接入后APP对蓝牙状态进行管理,通过定时查询接入设备的信号强度,实现弱连接阈值预警。如中途断开则依情况进行重连或提示重新扫描。

  3.2棚室监测与设备管理

  棚室监测与设备管理功能包括对棚室环境种植参数的实时监测,以及向节点发送命令对棚室设备进行控制。APP在智能手机与节点间建立稳定的连接后,根据用户指令,向节点发送读取棚室环境信息的控制命令。当收到来自节点发送的完整监测数据包后,APP根据预定格式进行校验、解析,进而获得棚室内的环境参数。当用户需要对节点上连接的设备进行控制时,通过APP向节点发出控制指令,并接收节点发回的设备工作状态信息以便确认操作是否成功。APP还对设备的工作状态进行记录,以便用户进行查阅。

  3.3APP数据管理

  在分布式管理中,需要对局部信息数据进行分散式存储,以便支持现场管理者的使用需求。APP对来自终端节点的采集数据及设备状态进行存储,并提供对已存储数据的条件查询功能。所有的节点采集数据均已通过NB-IoT上传至云端服务器中进行存储,因此无需在智能手机端存储大量数据,在实现中选择使用SQLite轻量级数据库,基于AndroidSDK完成数据库的创建、访问与操作。

  3.4用户UI

  APP的整体用户界面由导航栏与对应标签页组成。导航栏中共有三个图标分别对应数据管理页面、实时监控页面与蓝牙管理页面,用户通过点击导航栏图标完成各标签页的切换。数据管理页面向用户展示APP中已存储信息。实时监控页面向用户展示监测棚室的实时环境参数,并提供对已连接节点设备的控制管理操作。蓝牙管理页面对终端节点接入情况及接入成功后手机/节点之间的蓝牙连接进行管理。

  4、适配NB-IoT的云端平台

  云端平台主要面向农业宏观管理服务,其主要由NB-IoT数据接口、云端数据管理、节点管理、用户管理、实时监测、设备控制、告警管理等功能组成。云端平台的功能结构如图5所示。终端节点对接云端平台的流程如图6所示。

  图5云端平台功能结构

  4.1NB-IoT数据接口

  云端平台利用MQTT协议通过构建在电信云平台上的第三方云服务商提供的数据接口,实现棚室内终端节点与云端平台间的数据传输。云端平台启动时,完成与MQTT服务器的连接,并订阅全部节点设备,订阅成功后可与已成功部署的节点实现基于NB-IoT的远程透明数据传输。MQTT协议的消息报文由固定头部、可变头部以及有效载荷组成。实施中在收到每一个有效MQTT报文后,根据存储于可变头部中的节点ID对承载于有效载荷中的节点上传数据进行独立处理(校验、解析等)。需要注意的是,在有效载荷中承载的节点感知信息和控制信息格式与蓝牙数据容器中承载的相应信息格式保持一致。

  图6终端节点对接云端平台流程图

  4.2云端数据管理

  云端平台的数据管理功能面向管理员用户信息、终端节点信息、节点采集环境信息、节点设备操作信息以及告警信息提供存储管理工作,并为云端平台其他功能提供数据支持。节点所采集的环境信息和设备操作信息根据节点ID进行分表存储。在本系统中使用MySQL关系型数据管理系统进行分表存储管理,基于SpringDataJPA框架完成对数据库的访问与操作。

  4.3云端网页管理

  云端平台的设计基于Browser/Server(浏览器/服务器)架构,采用网页作为管理系统的应用层软件。由于平台架设在云端,只要有可靠的互联网接入手段,棚室集总管理者即可通过电脑或智能手机等设备远程访问云端平台。管理者可通过云端平台提供的网页完成用户管理、节点管理、实时监测、设备控制、告警管理与历史数据查询等操作。

  用户管理功能为使用云端平台的棚室管理员用户提供账号注册、登录以及资料修改等用户管理操作。节点管理功能面向终端节点完成远程管理,通过其进行对棚室内终端节点的增删、属性设置等远程管理操作。实时监测功能通过实时绘制环境信息折线图展示终端节点采集的环境数据,实现对各棚室环境参数的远程监测。设备控制功能面向与终端节点相连接的棚室设备,管理员通过其向终端节点发送控制命令,完成对设备的控制操作。告警管理功能实时对现场终端节点回传的数据进行监测,判断数据包中各环境变量/设备参数是否正常,若存在异常则将终端节点ID、上报时间、异常变量及告警原因记录并存入数据库中的警报信息表中,在用户UI发出告警提示。历史查询功能提供对云端数据库中已存储数据的查询。

  5、系统测试

  在位于上海市松江区的某组棚室内模拟蔬菜种植环境,部署终端节点,节点ID为0x00~0x0D。设定终端节点的采集周期为5min。云端平台部署于阿里云服务器,服务器系统为Window2012R2版本,配置为单核1GB内存以及40GB的SSD云盘。APP测试机型Android版本为9.0,蓝牙版本为BT4.2及BT5.0,CPU为骁龙660,HiSiliconKirin970,HiSiliconKirin980。系统测试时长覆盖番茄发芽期全程(约14天)。节点监测所得的棚室环境数据如图7所示。

  图7棚室历史环境记录

  测试中首先对终端节点蔬菜棚室监测数据的准确性进行了验证,通过将节点采集到的蔬菜种植参数与人工采集的种植参数进行比较,二者具有较高的一致性。此外在测试中,未发现因终端节点的传感器数据读取异常以及数据传输错误带来的异常监测记录。结果表明通过节点可以有效对棚室蔬菜种植过程参数进行监测。使用中还验证了节点设备控制的有效性。测试中将节点设备控制端口与外部设备连接,并进行了云端远程控制及现场手机端控制测试。测试结果显示,终端节点可以有效地受云端或智能手机控制,为外部设备提供可靠的逻辑控制信号。在测试中,各终端节点长期工作稳定未发生故障。终端节点未受到逻辑控制输出接口所连接棚室机电设备的电气干扰。上述测试结果表明,节点可长期有效地部署于棚室内部,支撑管理者进行远程或现场的精准管理。

  终端节点在部署后,绝大多数情况下可以在5s内完成NB-IoT网络的自动接入,实现云端平台与终端节点间的数据稳定传输。终端节点的数据包上传与控制命令的接收均无异常。在网络状况良好时,云端平台网页端功能使用正常,可以实现对多棚室的集中式环境监测与设备控制。测试期间,阿里云服务器运行状态良好,云端平台数据管理功能正常。在数据库存储超过10万条记录时,数据库依旧保持性能良好,查询速度未有明显下降。在无明显遮挡的情况下,手机端APP可以在3s内完成与终端节点的连接,实现监测数据包与控制命令的可靠传输。APP在不同测试手机中功能使用正常,可以实现对周边棚室的现场管理。测试时,未出现闪退等异常现象,APP数据存储正常。

  为评价远程及现场数据传输效果,以系统中以终端节点数据传输的丢包率ρ作为系统数据传输稳定性的评价标准,ρ计算公式为:

  公式1

  式中:ps是传输过程中丢失的数据包数量;pr是终端节点向云端平台或手机APP端发送的数据包数量。在测试过程中,因为各节点工作状态不同,所以各节点上传的数据包数量有所差异。测试中,每个终端节点通过NB-IoT网络最少上传4000个数据包,平均上传4032个数据包,传输过程中平均每个节点丢失4个数据包,平均丢包率0.0992%。每个终端节点通过蓝牙最少发送1000个数据包,平均发送1015个数据包,传输过程中平均每个节点丢失3个数据包,平均丢包率为0.2955%,满足了棚室管理系统对于数据传输高稳定性的要求。

  针对系统远程管理者与现场管理者的回访调查显示,云端平台的管理网页与手机APP界面布局简洁,功能丰富。管理网页在电脑与手机平台各浏览器中支持良好,手机APP在主流机型中正常运行。网页与APP的操作简捷,用户无需长时间使用培训后即可正常操作,并拥有较好的用户体验。

  6、结论

  为同时满足智慧蔬菜棚室种植中集总式远程管理与分布式现场管理的需求,设计基于NB-IoT与智能手机的蔬菜棚室智慧管理系统。该系统主要结构由棚室现场终端节点、适配NB-IoT的云端平台和基于Android的现场服务APP组成。通过本系统可以有效对蔬菜棚室种植参数进行采集,实现对棚室农业机电设备的控制。利用NB-IoT数据通道可以实现从棚室到云端的远程数据互联互通,实现服务于远程管理者的云端集总式蔬菜棚室管理。在现场管理中,作业者可以使用安装APP的智能手机实现局域环境内的分布式管理功能操作。测试结果表明,系统运行稳定可靠,可以有效支持智慧农业棚室管理的需求。

  参考文献:

  [3]龚尚福,潘虹.智能温室大棚监控系统的研究与设计[J].现代电子技术,2017,40(19):119-122.

  [8]杨卫中,王雅淳,姚瑶,等.基于窄带物联网的土壤墒情监测系统[J].农业机械学报,2019,50(z1):243-247.

  [9]宦娟,吴帆,曹伟建,等.基于窄带物联网的养殖塘水质监测系统研制[J].农业工程学报,2019,35(8):252-261.

  [16]潘小红,杨志勇.基于物联网技术的温室大棚种植园环境监测系统[J].现代电子技术,2019,42(14):127-130.