基于LoRa 的无线传感网的农田节水灌溉系统(2)
2 系统软件设计
2.1 下位机程序设计
下位机硬件接通电源后,通过LoRa 模块连接串口RS-232 连接至上位机(PC 端)。初始化完成后,系统开始不断的检测湿度信息,下位机每隔30 分钟将数据打包发送给上位机。同时,通过串口中断检测是否有上位机发送信息,若有,则将接收到的信息进行解码,并更改设定的湿度阈值。根据传感器节点采集到的土壤水分值与设置的阈值进行比较,实现下位机自动控制阀门的开启与闭合,并在开启阀门时进行水流量测量,进而达到农田监控与灌溉的目的
2.2 上位机程序设计
上位机控制中心采用Python 语言进行开发,如图2 所示,实现了端口设置、历史数据的存储与查看、阈值设置等任务。通过LoRa 模块连接电脑串口可以实现与下位机的通信。下位机搭载的每个LoRa 模块都有其固定的信道和地址,依据不同的信道和地址可识别不同位置的节点。
在工作过程中,上位机不断接收信息,将土壤湿度、水流量实时的显示在上位机界面中。同时,系统自动记录接收到的数据,写在Excel 表中,作为记录,可用于用户分析。若用户需要发送数据,则在上位机界面输入“信道+地址+阈值”(阈值以百分比的形式发送,范围为1-100)后点击“发送”则可发送信息至指定的下位机。
图2 上位机界面
图3 上位机系统流程图
3 系统性能测试
将节点系统置于华南农业大学启林北校区的农事训练基地的农田中(区内农作物高度约为0.5-0.8m,植株长宽间隔为0.3×0.2m)进行无线传感器组网实验,对农田的土壤湿度进行测量,与电容测量法测得的数据进行对比,分析传感器测量的精度;在不同环境,不同高度下测量最远通信距离,确定系统放置的合适高度;通过对系统收发数据量进行分析,计算丢包率,以此判断系统是否稳定。
3.1 节点通信距离测试
在农田环境中,无线传感网络的有效通信距离直接关系整个网络的覆盖范围[13]。在农田中,农作物的遮挡(与生长的高度与密度有关)会在一定程度上影响无线传输的通信距离。我们将节点高度分别设置为0.4、0.7、1.2m,进行最大通信距离的测试。节点的发射功率为20dBm,射频功率在433MHz 频段。每隔5s LoRa 模块定时传送节点所采集的数据信息,并通过上位机来观察节点处于不同位置时,数据包能否正确传达,当能正确传达时增加收发距离。利用百度地图测距工具,测出两个节点之间的直线距离,作为有效通信距离。经过测试,当节点高度(1.2m)大于农作物高度(1m)时,传输距离最远。不同高度下测得节点的最大有效通信距离如表1 所示。
表1 节点最大通信距离?
3.2 节点感知精度测试
感知精度是指器件获取信息的精确度,是无线传感网络的重要性能评价指标之一[14]。通过在待测土壤湿度中放置固定距离固定面积的电容片,测量电容,从而得到土壤湿度的参照值,将土壤湿度传感器测量得到的湿度与参照值进行比较。测试结果(如表2 所示)表明,节点采集的湿度误差最大为5.3%,平均误差为4.7%。
参照值计算方法:
土壤湿度计算公式如下:
其中wa为水的重量,ws为土壤重量。
土壤之中的主要成分均具有不同的介电常数,不同湿度的土壤也具有不同的介电常数,因此可以根据不同的介电常数来推断土壤湿度[15],土壤湿度决定土壤介电常数。土壤湿度的固定函数关系式如下所示[16]。
其中,θ 是土壤湿度值,ε 为对应湿度的土壤的介电常数。
根据土壤组成主要成分得出如下函数关系式:
其中,εsa为空气与土壤颗粒的介电常数,εw是土壤中水的介电常数。当土壤水温为20℃,对应的εsa为3,εw为81,则可得土壤湿度与介电常数函数关系式:
介电常数与电容值有关,公式如下:
其中k 为静电常数,S 为电容片相对面积,d 为电容片之间的距离。如果固定两电容片的距离和相对面积,将待测湿度的土壤放入电容之间,则可以通过测量电容值得知对应介电常数,从而得到对应土壤湿度值。
测量值即用电阻式传感器经AD 转换得到得湿度信息。
表2 土壤湿度测量误差分析?
实验结果表明,传感器节点可以准确地将传感器采集到的土壤湿度通过LoRa 模块传到上位机中,平均误差不超过5.3%,传感器测量结果较为准确,无线传输可靠,满足系统的性能指标和设计要求,可直接应用于灌溉控制系统。
文章来源:《节水灌溉》 网址: http://www.jsggzzs.cn/qikandaodu/2020/1106/389.html
上一篇:远程升级在节水灌溉控制器上的应用
下一篇:浅析水利类研究方向及其重要性