基于LoRa的农业大田土壤多参数监测系统设计
2023-03-07冀汶莉王佳豪王新伟
冀汶莉,王佳豪,王新伟
(1.西安科技大学 通信与信息工程学院,陕西 西安 710054;2.西安邮电大学 计算机学院,陕西 西安 710053)
0 引言
土壤是农业生产最重要的物质基础,不合理、不科学的滥用肥料以及漫灌的灌溉方式不但会造成土壤板结、耕地肥力下降,而且会浪费大量的淡水资源,更严重的可能对环境保护与水土保持构成严重威胁,给农业的可持续性发展带来严峻挑战[1-2]。我国是农业大国,但目前大多农户和中小型农场的农业生产仍沿用了经验施肥和漫灌的粗放式耕作模式,亟待提高耕种的科学性和高效性。通过无线传感网络等物联网技术实时监测耕地中对作物生长影响较大的土壤墒情、PH值以及氮磷钾等要素的含量,指导耕种者合理灌溉,按需科学施肥,不但可以有效提高农作物的产量,还可以保护农耕土壤的肥力和微环境,对实现绿色农业有重要意义。
近年来,随着智慧农业、精准农业的提出和发展,物联网技术在农业的精细化耕种中发挥着越来越重要的作用[3]。精细农业耕种的实现依赖于对农田信息的准确采集和稳定可靠的数据传输,同时农田信息的有效管理以及测土配方信息化是其有利保障[4-5]。在农业领域较常用的无线传感网络技术主要包括ZigBee,LoRa和WiFi等无线技术[6]。例如,陈明霞等[7]提出了一种基于ZigBee与WiFi双协议融合的温室大棚可视化智慧农业管理系统,实现了温室大棚监测数据的远程采集和控制。赵荣阳等[8]基于ZigBee技术设计了一种多网融合的农业大棚生产环境监控系统,实现了大棚作物生长环境信息的采集、传输、存储以及统计分析等功能。李自荣[9]采用ZigBee和GPRS双网融合的方法实现了对田间数据的远程采集和传输,并使用加权的聚类算法进行农业安全预警。但ZigBee技术存在成本高、开发周期长和通信距离较短等缺点,制约了在大型农场或广域农田中的实际应用。LoRa通信技术是近年来发展较快的低功耗、远距离传输的无线通信技术,具有传输距离远、功耗低、组网节点多、抗干扰性强且成本低等特点,逐渐在农业领域有了更广泛的研究和工程实践应用[10]。徐操喜等[11]和漆海霞等[12]分别设计了基于LoRa的茶园和花生地的土壤墒情监测系统,可以远程监测茶园和花生地的土壤墒情及大气温湿度,帮助实现精准灌溉。Muangprathub等[13]开发了一套基于LoRa的农作物优化灌溉系统,采用LoRa技术实时传输作物和土壤的环境参数,并通过预测适宜作物生长的温度、湿度和土壤墒情来优化作物生长管理。
本文前期研究发现,多LoRa终端节点以默认的自组网协议进行数据传输时,可能会产生频谱干扰,从而引起终端节点随机无法连接网络的问题。为了解决这个问题,提出了载波监听多路访问的改进多节点LoRa通信方式,并在此基础上设计了农业大田广域环境下多节点、多参数的土壤环境监测系统。
1 系统总体设计
1.1 系统需求分析
测土配方施肥是联合国在全世界推行的先进的科学施肥方法之一,通过测定土壤养分含量因地制宜地制定田间科学的施肥方案。测土配方中需要的土壤养分主要包含土壤的氮磷钾和有机质含量,为了能够根据不同位置土地的养分含量进行按需精准施肥,首先需要获取不同位置土壤的养分和土壤墒情数据。
但目前我国大部分地区对耕地进行施肥时仍然是依靠传统经验,即使有农业技师进行施肥指导,也是以村为单位的单点采样,实验室化验土壤养分含量为基础的测土配方施肥,采样效率低、实时性差且覆盖范围小,无法对同一村不同地理位置的耕地实现科学的施肥指导。现有的农业大田监测系统大多以土壤墒情数据的监测为主,且一般是1~2亩土地布设一个采样点,传输方式多采用ZigBee和LoRa。例如,固原的土豆种植基地就采用了3亩地共用1个采样点的监测模式。为了切实有效地实施农业大田测土配方技术,需要设计稳定的土壤多参数远程监测系统。
广域农业大田土壤多参数监测系统需要建立覆盖面积广、采集节点多、传输距离远、功耗低且成本低的传输网络。目前,户外常用的无线通信技术有ZigBee,WiFi和LoRa技术。其中,WiFi功耗较大、通信距离较近且成本高,不适合户外大田的多测点、低功耗的组网要求。ZigBee作为一种无线通信技术,近年来广泛应用于各领域,但其在通信中占带宽量较大,为了提高通信距离就只能提高其发射功率,不适合广域农田远距离、低功耗的数据传输要求。LoRa是Semtech公司推出的低功耗局域网无线扩频技术,具有低成本、远距离通信、简单自组网以及工作在非授权频段等特性,大田土壤多参数监测系统采集和传输的数据为字符流形式的单一数据,基于LoRa的无线传输网络更适合广域农业大田的组网需求。
综上所述,本文建立了基于LoRa的农业大田土壤多参数监测系统,实现了广域农田土壤多参数、多节点的数据采集、远程传输以及服务器端的数据存储、查询和测土配方并给出施肥方案等功能。
1.2 网络拓扑结构
土壤多参数监测系统由土壤多参数数据采集节点、汇聚节点、网关节点和数据服务器4部分组成。系统的网络结构由感知层、传输层和应用层组成,网络拓扑结构如图1所示。数据采集节点与汇聚节点之间采用LoRa自组网形式,汇聚节点和网关之间采用星型连接方式,通过LoRa节点实现多对一的无线数据传输功能。网关节点与服务器之间通过4G移动互联网进行远程数据传输。服务器端接收多采样点的多种监测数据并进行数据存储、展示和分析,并根据土壤墒情信息确定灌溉方案,结合土壤养分数据进行测土配方计算,给出科学的施肥建议。
图1 监测系统的网络拓扑结构Fig.1 Network topology of the monitoring system
已有研究表明,田间每亩耕地的位置、走向以及周围环境不同,土壤中的水分、养分存在明显的差异。为了使监测系统覆盖更广泛的耕地并实现精细化耕种管理,首先需要确定采样点的布设方案。监测系统中数据传输的网络结构如图2所示。
(a)采集节点和一级汇聚节点的网络拓扑
(b)汇聚节点和网关之间的网络拓扑图2 监测系统中数据传输的网络结构Fig.2 Network architecture of the monitoring system for data transmission
将耕地表示为9宫格的网格结构,以相邻9亩地为例说明基于LoRa的农业大田无线网络布设方案。
采集节点以V字形结构铺设,如图2(a)所示,这样可以利用较少的传感器覆盖更大的监测范围。采集节点中的传感器直接插入土壤,STM32控制器架设在土壤或作物的上部,采用弹簧天线进行无线数据的传输。汇聚节点则选取9个采集点所在圆周的中心位置,选择吸盘天线以便能够收到所有采集节点的数据。汇聚节点和网关之间采用通用的星型网络拓扑结构,网络拓扑如图2(b)所示。本系统的特点是根据监测范围的大小可以自适应地调整传输网络的结构,如果是10亩以内可以用网关节点代替汇聚节点,多于10亩的可以采用汇聚节点和网关的二级传输网络结构,具体传输方法在第3节中详细描述。
2 系统的硬件设计
2.1 采集节点和汇聚节点的硬件设计
采集节点的硬件结构包括STM32处理器模块、LoRa无线通信模块、土壤温湿度传感器模块、土壤PH值传感器模块、土壤氮磷钾养分传感器模块以及电源模块,硬件结构如图3所示。其中,STM32处理器选用STM32F103ZET6型号的微处理器,可稳定连接并处理多个传感器的数据采集。选用MS10型土壤温湿度传感器采集土壤墒情信息,选用VMS-3000-TR-PH-N01 PH值传感器采集土壤的PH值。选用VMS-3000-TR-NPK-N01土壤氮磷钾养分传感器采集土壤的养分数据,其工作原理是通过电磁感应的方式测量土壤电导率,乘以不同养分类别对应的不同系数作为土壤氮磷钾的养分含量,所测土壤养分含量分别为速效氮、磷、钾的含量,测量分辨率为1 mg/kg(mg/L)、精度为±2%FS。以上几种传感器均采用RS485通信方式与STM32微控制器进行通信。
图3 采集节点硬件结构组成Fig.3 Diagram of the hardware structure of the collection node
LoRa模块选用SX1278无线通信模块,工作频段为410~441 MHz,发射功率最大为20 dBm,通信距离约为3 km,接收灵敏度最大为136 dBm。有4种工作模式,即一般模式、唤醒模式、省电模式以及信号强度模式,本系统中LoRa模块设置为信号强度模式。在此工作模式下,LoRa模块在发送数据前可以输出当前的接收信号强度(Received Signal Strength Indication,RSSI)。
汇聚节点的硬件由STM32处理器模块、LoRa模块以及电源模块组成,其中LoRa模块设置为一般模式来完成监测数据的接收和转发。
2.2 网关节点的硬件设计
网关节点的硬件由STM32处理器、LoRa接收模块、4G网络传输模块以及电源模块组成,设备连接框图如图4所示,连接电路如图5所示。LoRa通信模块采用一般模式接收田间汇聚节点或采集节点发送的多采样点的监测数据。4G远程传输模块选用Air724UG全网通的通信模块,通过TCP/IP协议传输数据到数据服务器,支持LTT CAT1数据传输,其传输速率为5~10 Mb/s。本系统节点目前均采用移动电源进行供电。
图4 网关节点的连接框图Fig.4 Connection diagram of the gateway node
图5 网关节点的连接电路图Fig.5 Circuit diagram of the gateway node
3 系统的软件设计
3.1 采集节点的软件设计
采集节点在系统初次上电后需要进行一次复位操作。首先对采集和传输模块进行初始化,然后采用中断的方式将采集到数据依次存放到缓存中。当所有传感器数据采集完成,LoRa模块将数据传输至汇聚节点或网关节点,采集节点的采样间隔为4 h。
根据对LoRa多节点远距离数据传输的实验发现,在LoRa默认自组网的传输协议下多终端节点进行数据发送时,由于各发送节点工作在同一频率,有些节点因抢占不到信道或出现同频干扰等问题,导致总有随机20%的终端节点无法正常进行数据传输。载波监听/多路访问(CSMA/CA)是一种数据传输时避免各终端节点之间数据传输冲突的算法,其原理为在终端发送数据前,查看信道是否空闲,若信道不是空闲状态,为了避免冲撞延时等待,监听到信道空闲时再进行数据发送,可有效提高数据传输的稳定性[14]。
采集节点基于CSMA/CA的从机主动上传的通信流程如图6所示。
图6 采集节点程序设计流程Fig.6 Flowchart of collection node program
为了解决LoRa自组网传输的丢包问题,提出了基于CSMA/CA的从机主动上传的改进通信模式,应用在采集节点与汇聚节点之间的数据通信。具体实现方法为当采集节点完成了数据采集,在发送数据之前先监听当前无线网络环境中的RSSI数值。RSSI是LoRa通信模块描述数据传输质量的一个重要参数,反映了当前信道的通信状况[15]。如果监听到的RSSI值大于阈值,表明当前无线网络环境中有正在传输的数据,则调用随机延迟函数延迟后再继续监听。当RSSI值小于阈值时,采集节点向汇聚节点发送建立连接请求,收到回复后发送数据。
3.2 汇聚节点与网关节点的软件设计
汇聚节点和网关节点之间的数据传输流程如图7所示,其中汇聚节点的程序设计流程如图7(a)所示,网关节点的程序设计流程如图7(b)所示。为了更大范围监测不同区域的耕种土壤环境参数,并提高多传感器多采集节点的数据传输质量显著降低丢包率,设计了LoRa多汇聚节点和网关节点之间的主机轮询通信方式。在网关节点首先对LoRa模块与4G通信模块进行初始化操作,LoRa接收模块采用一般模式。
(a)汇聚节点程序设计流程
(b) 网关节点程序设计流程图7 汇聚节点和网关之间的数据传输流程Fig.7 Flowchart of data transmission between sink nodes and gateways
网关节点在定时器的控制下依次以广播形式发送带有汇聚节点ID的广播请求来唤醒汇聚节点,具有相同ID的汇聚节点应答之后和网关节点建立连接。如果有新的接收数据则该汇聚节点向网关传输数据,网关接收到数据后写入不同的缓存数组中,该汇聚节点进入待机状态等待下次传输的唤醒。当网关节点完成了全部的汇聚节点数据接收后,将所有的数据进行解析并重新封装,通过4G模块以TCP/IP协议发送至数据服务器。如果3次主机轮询都无法唤起汇聚节点,则向服务器发送报警信息。
3.3 服务器数据管理分析的软件设计
系统的数据服务器搭建在阿里云的Ali Cloud Engine平台上,Web服务器为Tomcat7.0.54,数据库系统采用MySQL,服务器端软件的开发工具采用MyEclipse10.7,以MVC的开发模式完成服务器端的农田基本信息管理、土壤多参数监测数据管理、测土配方以及农业专家交流模块等功能的实现。系统的部分服务器端功能如图8所示。
图8 服务器端的软件功能Fig.8 Diagram of the service software function
4 系统测试及户外实验
4.1 LoRa模块传输参数确定
通过文献[16-17]可知,扩频因子(SF)、带宽(BW)和编码率(CR)是LoRa节点的3个重要传输参数,每个参数设定取决于实际的网络部署。为了在实际应用中获得更好的传输效率,采用点对点的透传方式来确定LoRa模块的传输参数的值,并以RSSI、信噪比(SNR)和传输成功率作为LoRa传输性能的评价指标。RSSI的绝对值越大表示信号的能量越强,传输效果越好[17]。SNR是信号的平均功率和信号的噪声功率的比值,反映了数据的传输质量,其数值越大,信号的质量越好,数值越小,表示信号受到的噪声干扰越大[18]。
测试前设置节点的发射功率为22 dBm,中心频率为472.3 MHz,前导码设置为8位。在户外农田不同的传输距离连续发送300个数据包,测试数据如表1所示,受篇幅所限表1只给出了不同传输距离下最优的参数选择。根据田间实际测试结果确定LoRa模块的SF为12,BW为125 kHz,CR为4/7。由表1可以看出,当通信距离在1.6 km以上时,其发送300个数据包的平均RSSI值均在-100左右,因此选定RSSI阈值为-100。
表1 LoRa节点不同传输参数对传输性能的影响Tab.1 Influence of different transmission parameters of LoRa nodes on transmission performance
4.2 LoRa无线传输性能测试
(1)多采集节点和汇聚节点间LoRa远程传输的性能测试
在户外田间环境下,测试了4个LoRa采集节点到一个汇聚节点的从机主动上传的传输性能。并采用LoRa默认自组网模式作为对比试验,每个LoRa节点部署在高1 m的位置,采集和汇聚节点的SF设置为12,BW设置125 kHz,CR为4/7,中心频率设置为433 MHz。每个数据包固定为15 Byte,共发送600组数据。汇聚节点的接收情况如表2所示。
表2 LoRa节点和汇聚节点之间从机主动上传传输结果分析Tab.2 Analysis of active upload and transmission results of slaves between LoRa nodes and sink nodes
从表2可以看出,当传输距离为1.0,1.6 km时,使用LoRa默认的组网传输协议和基于CSMA/CA的从机主动上传的改进传输协议进行多测点数据传输,传输成功率均可达到90%以上。但在2.2 km时LoRa自组网的传输成功降低到65.8%,而从机主动上传的传输方式其传输成功率可以达到86.3%,传输成功率提升了20.5%。测试结果证明,从机主动上传的方式可以有效解决远程LoRa多节点随机无法有效传输的问题。
(2)汇聚节点和网关之间LoRa主机轮询的传输性能测试
在田间测试了2个LoRa汇聚节点到一个网关节点的主机轮询传输模式。LoRa节点的布置方法和参数设置与上述设置方式相同,每个数据包固定为15 Byte,每个汇聚节点轮询发送600组数据包,测试了1.0,1.6 km的传输性能。实验结果表明,在1.0 km时传输成功率可以达到100%,在1.6 km时达到了97.2%,达到了传输性能要求。主机轮询传输协议优点是每个节点都有相应的窗口期来发送数据,当节点数量过多时,轮询的周期可能会较长。但由于汇聚节点数目较少,这种传输方式能够满足农场汇聚节点与网关节点之间的实际传输需求。
4.3 监测系统户外实验
选取西安科技大学周边某农户的3亩石榴园地进行系统户外实际测试,网络结构为多采集节点与网关节点的星型连接方式。将土壤温湿度、土壤PH值和土壤氮磷钾传感器埋在距离地表30 cm的土壤中,监测土壤中的养分数据和墒情信息等。每亩地布设一个采集节点,采集节点和网关节点的实物如图9所示,采用移动电源对系统进行供电。在2022年4月13—18日,连续监测6 d的土壤环境数据,得到土壤温湿度以及氮、磷、钾等参数的变化情况,其中某一采集节点的监测数据如图10所示。系统提供的测土配方的施肥方案如图11所示。
(a)采集节点实物
(b)网关节点实物图9 采集节点和网关节点实物Fig.9 Physical map of collection node and gateway node
图10 土壤多参数变化曲线Fig.10 Curve of soil multi-parameter variation
图11 土壤测土配方施肥方案Fig.11 Scheme of formulated fertilization based on soil testing
5 结束语
本文实现了基于LoRa的广域农田土壤多参数多采集点的监测系统。针对已有的广域农田多采集点无线数据准确传输问题,提出了基于CSMA/CA的LoRa多采集节点自组网的改进通信模式,户外大田实地测试证明了该方法的有效性。利用监测系统可以获取不同区域土壤的养分数据、PH数据以及墒情数据,为深入挖掘作物生长状态与土壤环境间的关系以及不同地块按需精准施肥提供了支撑。在此基础上,引入机器学习或深度学习等智能算法,以监测数据和无人机图像数据为基础,开展土壤肥力动态评价以及作物长势分析与精准施肥的深入研究。