沈师清,刘 宾
(中北大学 信息与通信工程学院,山西 太原 030051)
我国是古老的农耕文明国家,其耕地用水量大约占全国的60%,但是大部分的水分在浇灌过程中都会蒸发和浪费[1]。通过对土地墒情的调查可以做到有效灌水,合理处理水资源污染的现象,从而有效发挥水资源与农业灌溉工程的经济效益,实现节水增产、增效益的目的。土地墒情调查是行政决策单位进行节水的基本依据,为实施农业抗旱与利用自然资源提供重要技术支持[2]。土壤墒情是指土壤中水分的含量以及土壤中水分被作物的利用程度,对土壤墒情的检测主要是采集土壤中含水量,土壤含水量的高低对作物的生长发育极其重要,对作物的发育情况和最终的产量的好坏也起着关键作用,同时对土壤墒情的研究也可以作为衡量土壤质量的标准[3]。土壤墒情的研究和发展为农业和林业的发展提供了充足的科学依据,土壤墒情的检测和研究也为节水灌溉提供了科学依据[4]。
王翠芹等人致力于满足农业灌溉的需求,以LoRa基站为基础打造了一个节水灌溉系统,有助于节约通信成本[5]。贾国燏等人采用了ZigBee 技术开发了一款农田土壤水分监测系统,但其覆盖范围有限且容易受到干扰[6]。此外,冶秀香等人利用窄带互联网技术(NB⁃IoT)构建了一套低功耗、大容量的土壤水分监测系统[7]。毛洪霞等人采用了基于水量平衡法的ISAREG 灌溉模型来预测土壤水分状况[8]。梁新书等人则利用层次分析和变异系数权重计算方法来计算冬小麦湿润层内各土层的含水比重[9]。然而,由于生态农业基地面积大、环境复杂性以及土壤非均质性且影响深远,在偏远地区与移动公网覆盖不足或处于公网边缘区域,土壤湿度数据的传输显得相当困难,这使得上述方法在大面积应用中受到了阻碍[10]。
基于此,本文建立一个基于GIS 的土地墒情信息采集与监控体系[8]。将地面传感器所收集的土壤信息以及地理信息通过4G 模块传送至监控中心,并在移动APP上展示,从而完成对土壤墒情监测数据的传输、展示、咨询工作,为抗旱减灾提供科技保障[11]。
本文设计的土壤墒情监测系统主要由土壤温湿度传感器、STM8S105K 主控核心、4G 网络通信模块、北斗定位模块、环境传感器、GIS 监控中心、手机APP 等部分组成。土壤墒情监测系统整体结构如图1 所示。系统通过STM8S105K 单片机将传感器数据以及定位信息上传至监控中心服务器,监控中心会根据数据做出具体分析,给出土壤墒情状态并做出空间分布图,供农户在手机APP 上查看。
图1 土壤墒情监测系统整体架构
MCU 选用STM8S105K6,用于驱动各个传感器采集数据,以及驱动4G 模块将传感器数据上传至服务器。
本设计使用的是来自亿佰特公司的EC03 产品,这一款产品包含了所有必要的功能,能用于所有常见的装置和应用环境。EC03 是为了实现串口装置与网络监控中心的数据交互,是一种配备有多集接收功能的LTE⁃FDD/LTE⁃TDD 无线通信传输模组,能够同时实现与LTE⁃FDD、LTE⁃TDD 的数据互通。用户只需要简单设定配置,就能实现串口系统与网络监控中心的数据交互[12]。该系统使用了5~18 V 的宽电压供电方式,此外,还兼容移动、联通、电信的4G 卡,支持与LED 灯相兼容的电压水准,默认的3.3 V 电压可以调整为5 V,具有优秀的抗干扰能力。板载网络模块如图2所示。
图2 板载网络模块
DS18B20 属于土壤温度测量设备,它是一种熟知的数字化温度感测器,具备输出数字信号的能力,只需利用一条数字线,就能成功实现与微处理器的双向交流。DS18B20 的温度测试范围为-55~125 ℃,并且在-10~85 ℃的范围内,偏差只有±0.4 ℃。供电方案可以是单独的外部电源,抑或选择通过数据线寄生供电。
北斗定位选用ATGM332D 模块,它主要运用北斗模块来采集墒情系统的经纬度,并通过4G 网络模块发送至服务器端。
选用的土壤湿度传感器是通过电容感应来检测土壤湿度,它与市面上常见的电阻式传感器有所区别。利用这个设计,可以避免电阻式传感器容易遭受腐蚀带来的损害,进而将设备的使用年限大幅度延长。同时,这款传感器还配备了稳压芯片,能够支持3.3~5.5 V 的电压工作环境,即使在3.3 V 的单片机主板上也可以正常运转。
BME680 传感器是一款集4 个功能于一体的MEMS环境感应设备,能够测定VOC 的浓度(易挥发的有机物)、空气湿度、气温和气压这4 种要素,因此它特别适用于对空气质量的实时监测。在本设计中,由于STM8S105K 单片机资源有限,无法满足搭载4 个传感器的要求,故而选择该环境传感器。在使用过程中,本设计仅使用BME680 的I2C 接口,即插即用,可直接兼容3.3 V 和5 V 系统。
选用的太阳能供电模块是通过太阳能电池板和锂电池组合的方式对系统进行供电。太阳能电池板选用的是钢化玻璃多晶太阳能板,功率为10 W;锂电池选择容量为2 000 mA·h、7.4 V 可充电的磷酸铁锂材质的电池,能充分满足在太阳照射不充足时,连续工作10 天,且具有自动保护机制。
墒情监测终端因为在农田使用,故采用锂电池供电。本设计采用的是7.4 V 锂电池对监测终端供电,监测终端电路除4G 模块外都采用3.3 V 供电。4G 模块是宽电压供电,供电范围为5~18 V,本设计采用锂电池直接对4G 模块供电,正好满足需求。该系统采用TPS76833 芯片将7.4 V 电压转换成3.3 V,为单片机以及各个传感器供电。供电电路图如图3 所示。
图3 供电部分电路图
图4 描绘了主程序系统的流程。所有功能模块均采用线性执行框架。上电后,首先是对系统端口进行初始化,这一步骤包括启用主控芯片所需的所有外设和中断资源,并捕获STM8S105K 微控制器的ID 号。
图4 硬件程序设计流程
1)4G 模块连接云服务器。根据服务器的IP 地址与服务器相连,当联网成功后服务器会给模块反馈固定AT 指令,借此可以判断是否连接成功。
2)向服务器端5 min 发送一次心跳。为避免网络连接断开,墒情监测终端需要与服务器端保持心跳,每隔5 min 向服务器端发送一次START、06、END 字符串。
3)判断是否接到采集间隔的指令。农户可以根据手机APP 设置墒情监测终端数据采集和上传的时间,采集间隔分别为10 min、30 min、1 h。
4)成功响应。当接到采集间隔设置的指令时,单片机会根据指令的类型来设置时间间隔,并在设置结束后给服务器反馈一个成功响应的指令。
5)开始数据传输。当以上步骤都结束后,单片机开始驱动4G 模块上传数据,上传的数据包括单片机的ID,每一个单片机都有一个固定的ID 号,这样方便服务器区分不同的设备,同时将传感器的数据以固定格式上传至服务器。
6)接收到数据刷新的指令。当接收到服务器发送的数据接收指令时,墒情监测终端立即对传感器数据进行刷新,并且上传,此次上传不需要上传ID 号。
7)接收到关闭采集的指令。当接收到关闭采集的指令时,墒情监测终端不进行传感器数据采集,仅向服务器发送心跳保持连接。
土壤墒情的数据库设计是软件设计的一个重要组成部分。本设计的数据库分为三种数据:土壤墒情数据、GIS 地理信息数据、气象数据。数据的读写利用ADO 技术进行设计开发,原因是ADO 可以方便、高效地进行数据库的访问与存储。
数据库包含一些数据表,将通过传感器得到的土壤墒情数据及具体地理位置数据存入土壤墒情信息表中。将各个土壤墒情站的采集号码信息、设备管理信息以及站点联络人信息等存入站点信息表中。气象数据包括从各个气象部门获得的气象数据,如降雨量、日照时间、气温和空气湿度等。其他信息包括一些土壤墒情预报模型的参数以及土壤类型、采集点周围环境等,也都由相应数据表进行保存。
相较于其他种类的数据,GIS 地理信息并未被储存在SQL 类型的关系数据库中,而是被直接存放在地理信息系统专用的数据库内。该数据库里含有的数据包括但不限于矢量图和栅格图等,只有经过GIS 二次开发的组件,GIS 地理信息才能被读取、储藏和进行修改。图5展示了系统数据库的框架结构。
图5 SQL 数据库结构
系统的主要构成要素为对土壤湿度进行监控和分析的软件。这一系统基于Windows 操作系统,编程语言为Visual C++,也选定了超图公司的SuperGIS 作为二次开发平台。该系统的主要功能包括收集和接收湿度数据、设计湿度数据库的布局、查看和更改湿度数据、直观展示湿度、分析和预警预报湿度以及发布湿度信息等,如图6 所示。
图6 系统软件功能图
当系统在监控中心收到来自各土壤湿度监测站的土壤水分数据后,采用GIS 组件内含的反距离加权法(IDW)和普通的克里金法进行内插,实时绘制土壤墒情空间分布图,以实时监控区域内的土壤湿度;配合土壤湿度预测模型,也可实现对区域内土壤湿度的预测功能。系统可根据需要选择使用增湿模型、人工神经网络模型和时间序列模型进行土壤水分预报。
在历经多年研发之后,目前壤湿度监测系统的技术方面已迈向成熟,并在山西省各区得到了广泛的使用。例如,在山西省已经建设了总共48 个土壤湿度监测站,它们遍布在山西省的多个山区和平原地带。这些监测站会通过无线方式,每41 h 向控制中心发送一次土壤湿度数据,一旦收到各监测站的数据,立即将这些数据发送到手机应用程序上,让农户能够实时查阅当前的土壤湿度数据。
图7 所示为山西省晋城市某地区土壤墒情数据图。通过获取监测端的数值,控制中心有能力运用GIS 插值方式来画出区域里土壤湿度的空间分布图。
图7 晋城市某地区土壤墒情数据
图8 展示了某一天的山西省土壤湿度分布图。系统结合土壤湿度的预测和预警模型,也能进行区域内土壤湿度的预测和预警。
图8 山西省土壤湿度空间分布图
为了验证农田土壤墒情监测系统的实际性能,以山西省阳高县某农田为实验场地进行实地监测作业。在进行试验前要先进行监测终端与服务器的连接、传感器校准、采集时间设置、地块参数设置等,然后根据不同的地块放置多个监测终端,最后进行农田土壤墒情与空气信息采集。整体农田监测作业现场如图9 所示。
图9 农田监测作业现场
农田墒情监测作业完成后,观察作业数据,并通过2 个土壤墒情监测终端进行数据对比。不同深度的土壤温湿度的数据对比结果如图10 所示,空气温湿度与大气压强的数据对比结果如图11 所示。
图10 不同深度土壤温湿度数据
图11 空气温湿度与大气压强数据
数据对比之后,计算每个数据的误差,进而确定该土壤墒情监测终端的数据采集的稳定性与准确性。
该系统测试表明,本文设计的农田土壤墒情监测终端能够对3 个深度的土壤温湿度、空气温湿度、大气压强进行精准采集,与手持终端的数据整体误差保持在0.4%左右。同时,数据可以被正常上传至监控中心和手机APP 上,并在APP 上显示出空间分布图,农户可以实时查看农田和空气数据。该系统满足设计指标和农业作业应用要求。
本文设计的农田土壤墒情监测系统是集GPRS 网络传输、传感器、北斗定位于一体的综合性系统,它利用高精度的数据采集系统,将3 个深度的土壤温湿度、空气温湿度和大气压强数据上传至监控中心以及农户的手机APP 上,监控中心结合土壤墒情预测模型可对该地区的土壤墒情进行预报,农户可以借此更加方便精准地管理农田。农田的试验结果表明,此系统的各类传感器数据误差仅在0.4%左右,有效提高了农户对农田的管理效率。目前,该系统已经在山西省各个地区投入使用,取得了良好的效果,下一阶段将进一步优化系统,为后续的水肥一体化做铺垫。