蔡绍博 蔡绍硕 张 军 夏志波
1.长江大学园艺园林学院 湖北荆州 434025;2.武汉市春晓曲农业科技有限公司 湖北武汉 430211;3.青岛海纹智慧农业科技有限公司 山东青岛 266001;4.武汉菜佰仟数字农业科技有限公司 湖北武汉 430074;5.武汉建春科技有限公司 湖北武汉 430074
在传统的种植业中,很少有过多的对种植环境参数进行关注,更多的是依靠种植者多年种植经验来进行判断,但随着科技的进步,通过人工经验来判断种植业的种植环境就变得不是很可靠了。更多的是根据环境参数来进行监测,利用传感器以及无线传感网络来实现种植环境参数的采集以及传输。本文设计了一种基于LoRa与MQTT通信的智慧富硒茶园环境信息智能监测系统,利用LoRa通信网络、传感器以及MQTT协议来实现数据采集与云端通信,来实现富硒茶园环境信息的智能监测。
需要实现基于LoRa与MQTT通信的智慧富硒茶园环境信息智能监测系统,首先需要进行环境参数的检测,检测节点以STM32F103C8T6微控制器的单片机作为终端的核心,通过传感器来采集富硒茶园的环境参数,传感器检测的参数包括土壤温湿度、土壤pH值、空气温湿度和光照度。检测节点采集到环境参数之后,通过LoRa网络实现无线通信,实现多个LoRa终端节点接入LoRa网关节点,进行多节点的环境参数采集。LoRa网关通信模块在接收到终端节点发送的环境参数之后,将参数发送到LoRa通信网络的网关节UG87-LoRa网关,UG87-LoRa网关通过搭载的网络通信模块以及MQTT协议,将获取到的环境参数发送到云端平台,用户通过终端设备访问云平台,实现智慧富硒茶园环境信息的智能监测。
整个系统的构成包括四个部分:检测节点、网关节点、云平台以及客户端,如图1所示,具备以下功能:
根据智慧富硒茶园环境信息智能监测系统的要求,需要检测的环境参数有土壤墒情和大气环境,主要包括:土壤温湿度、土壤pH值、空气温湿度和光照度,在传感器检测到数据之后,将数据实时发送到云平台实现实时监测。
根据智慧富硒茶园环境信息智能监测系统的要求,大规模茶园环境监测需要多个检测节点,网关节点和终端节点之间采用LoRa无线传感网络进行数据传输,采用一对多的模式,实现多节点采集。
根据智慧富硒茶园环境信息智能监测系统的要求,网关节点与One NET云平台之间的数据传输采用MQTT通信协议,数据协议采用OneJson。MQTT协议是一个面向物联网应用的即时通信协议,使用TCP/IP提供网络连接,采用发布/订阅(Pub/Sub)模式,通过连接服务器、订阅和发布主题来实现传统设备和MQTT云端的联系。
根据智慧富硒茶园环境信息智能监测系统的要求,利用One NET云平台,One NET是由中国移动打造的PaaS物联网开放平台,平台能够实现设备接入与设备连接。网关节点设备完成接入,将终端节点检测到的数据发送到云平台。
根据智慧富硒茶园环境信息智能监测系统的要求,客户端需要实现富硒茶园环境信息的实时监测,通过Internet访问One NET云平台,进行茶园环境参数的监测,并且通过爬虫程序将数据爬取,存储在本地数据库中,再对本地数据库进行数据处理,将参数转化为可以直接观测的图形。
图1 智慧富硒茶园环境信息智能监测系统
检测节点硬件设计采用STM32F103C8T6微控制器的单片机作为终端的核心,如图2所示。整个检测节点利用电池模块进行供电,摒弃了传统的电源布线供电,整个系统更为简洁,供电电压为2~3.6V。利用传感器检测富硒茶园环境参数,包括土壤墒情和大气环境,土壤墒情需要检测的参数有土壤温度、土壤湿度和土壤pH值,大气环境需要检测的参数有空气温度、空气湿度和光照度,传感器通过单片机IO口接入STM32单片机,将检测的模拟信号进行AD转换,转换为更直观的环境参数。STM32单片机获取到参数后,通过LoRa通信模块将数据传输到LoRa网关节点,实现大规模、多节点的环境参数的采集。LoRa通信模块通过IO口与STM32单片机相连。
图2 检测测节点硬件设计
网关节点硬件设计采用的UG87-LoRa网关作为网关节点的核心,采用NXP A53处理器,数据处理能力强,运行稳定。UG87-LoRa网关是一款基于LoRa低功耗广域网技术的工业级户外物联网网关。产品内置Semtech高性能收发器SX1301并可扩展至16通道,支持超过2000个节点接入网关,通信距离最远可超过10千米,满足大型项目和各种室内室外应用场景中对终端数据采集的需求。如图3所示。UG87-LoRa网关可通过内置的4G通信模块、Wi-Fi通信模块或有线网络方式将数据传输到云端服务器。UG87不仅兼容多种主流LoRaWAN网络服务器,还可以运用内置的网络服务器和星纵云方案,用快速部署自己的物联网应用,实现定制化的智能服务。通过网关节点的LoRa无线通信模块接收来自检测节点发送的茶园环境参数,并将数据进行处理,打包为MQTT通信协议的数据报文格式,UG87-LoRa网关的Wi-Fi模块或4G通信模块将数据发送到One NET云平台,通过路由器为网关节点提供Wi-Fi网络通信。
图3 网关节点设计
云平台设计采用One NET云平台,通过One NET云平台的控制台界面,创建产品,再进行设备的添加。节点类型选择网关设备,接入类型选择MQTT通信协议,数据协议选择OneJson格式,采用发布/订阅(Pub/Sub)模式,通过连接服务器、订阅和发布主题来实现传统设备和MQTT云端的联系,MQTT连接需要三个参量:mqttClientId、mqttUsername、mqttPassword,联网方式为Wi-Fi网络。完成设备的添加之后,在设备管理界面可以查看添加的网关节点设备。
客户端通过PC端和手机APP实现富硒茶园环境信息智能监测,如图4所示。PC端通过Internet访问One NET云平台即可以实时查看检测节点检测到的环境参数,并且PC端将从云平台获取到的数据存入MySQL数据库,MySQL数据库设计包括两张数据表,一张为土壤墒情信息表,主要数据字段有时间、土壤温度、土壤湿度和土壤pH值,另一张为大气环境信息表,主要数据字段有时间、空气温度、空气湿度和光照度。
图4 客户端
在完成该系统的设计和实现后,本文对该系统进行了实验室模拟环境的测试。首先需要进行检测节点的传感器环境参数检测功能的测试。通过电池对终端STM32单片机进行供电,设备可以实现运行;通过GPIO口将传感器连接到STM32单片机上,再通过上位机串口助手对检测到的环境参数进行测试,通过串口将检测节点与上位机进行连接,发现可以在上位机串口助手上面进行土壤温湿度、土壤pH值、空气温湿度和光照度等参数的显示,当改变环境因素时,传感器检测到的数值也发生相应的改变,检测节点的检测功能可以实现。测试结果如表1所示。
表1 传感器测试参数
再通过对LoRa无线通信网络的测试,如表2所示,在合理范围内,将检测节点的LoRa通信模块与UG87-LoRa网关的通信模块实现网络连接,将检测发送指定的数据,网关节点能够进行正常接收,没有出现数据包、数据帧的丢失,没有发生信道碰撞以及冲突。LoRa网络可以进行正常通信。
表2 LoRa通信测试
网关节点接收到数据之后,将数据上传到云端,使用MQTT协议,云端与终端设备之间可以实现主题的订阅和发布,并且可以实时观测到富硒茶园的各种环境参数。
客户端通过PC以及手机APP可以进行云端平台的访问,并且可以实时获取茶园的环境参数,且PC端将从云平台获取到的数据存入MySQL数据库,并且可以转化为更直观的数据图像。
通过一系列的模拟环境测试,该系统在监测数据变化和动态监控中,均表现出了良好的适用性,能够实现富硒茶园环境参数的采集与实时查询,并且终端服务器通过访问云平台,能够实现远程实时监测。因此当这个测试系统持续扩容,运用到更大范围内的实际生活生产中,具有一定的可实现性。
文章利用传感器、LoRa通信网络以及MQTT通信协议实现了智慧富硒茶园环境信息智能监测系统,并且通过一系列的测试实验证明了系统的设计合理。本系统的涵盖性高,可通过检测节点更换其他环境参数的传感器,并且对单片机进行不同传感器驱动的烧录,可以广泛运用于果园、菜园和农田等其他农业环境的场景监测中。