农业气候监测及智能控制系统的设计与实现
2024-01-09杨波,王玉
杨 波,王 玉
(西安交通工程学院,西安 723300)
在农业种植及监测中,气候和环境是影响产能的关键因素。利用太阳能物联网传感技术,设计了一款农业气候监测及智能控制系统,为农业生产决策提供数据支持。农业气候监测及智能控制系统采用上机位与下机位相结合的方式监测农业气候,收集CO2体积分数等参数,通过无线方式传送给主机,主机利用软件将收集的数据与系统设定的参数进行对比分析、计算,向控制系统发送指令,从而提供适宜农作物生长的环境[1]。
气候监测及智能控制系统采用单片机控制,完成对温湿度等参数的控制、显示、传输。传感器用于监测湿度、光照时长等参数;单片机用于控制出水系统,设定阈值后,根据监测到的土壤湿度数据,针对农作物需水量进行供水调节。若土壤湿度远远小于农作物需水量,将控制智能水泵,改变灌溉时长与灌溉量,使土壤湿度、空气温度与空气湿度始终保持在农作物生长最适宜的区间内,令农作物达到最高产量。
农业气候监测及智能控制系统分为传感网络、网关、智能控制中心及客户端[2],流程主要为信息采集、数据传递、数据处理、智能反馈。客户端基于信息系统分析数据进行控制操作。气候监测主要采用传感器进行信息获取,包括与PM2.5、土壤、作物、空气、光照、CO2等相关的信息。各个传感器采集的数据通过协调器汇集,经网关传到服务器,服务器将反馈数据进行分类打包,推送到客户端,客户端与服务器连接,进行绘图显示及智能控制。
1 系统设计
系统设计的总体目标是实现对农作物生长环境的实时监测及自动化控制,提高农业产量[3]。该系统包括传感器部署、数据采集与处理、智能控制与反馈等内容,需保证系统的可靠性、稳定性、扩展性,传感器数据的准确性及实时性,提高自动化控制的精度及灵活性。
1.1 硬件设计
传感器数据采集。使用物联网传感器采集数据,这些传感器分别安装在不同位置,如天线塔、地面站及土壤探头等。通过传感器采集到的数据可实时了解当前的气象情况。
数据采集与处理。传感器将采集到的数据通过无线传输方式发送到智能控制中心。智能控制中心负责接收、存储及处理数据。
智能控制与反馈。基于分析与预测结果自动调节农作物生长环境参数,智能控制可根据实时环境及作物需求优化农业生产过程,及时反馈信息给农户或操作人员。
1.2 软件设计
在软件设计方面主要考虑数据处理、控制设计及用户界面设计[4]。
数据处理。通过对历史数据及实时数据的比较分析,给出准确的作物生长预测,监测异常数据,保障系统的稳定性及可靠性。
控制设计。系统使用多种算法,根据不同的气象条件及作物需求自动调整设备工作状态,通过实时监测及调整,降低能源消耗,提高农业产量。
用户界面。用户通过PC端或移动端访问系统,查看气象数据、作物生长情况及设备状态等信息,进行控制操作,满足不同的农业生产需求。
2 监测网络的建立与数据获取
该部分主要进行传感器布置与联网、数据采集与传输等。设置传感器时要考虑农作物生长环境特点及需求,合理选择传感器类型及数量。采用传感器进行数据采集,通过无线方式进行数据传输。
每个传感器均分配独立的ID序列号,进行信息配置及代码获取,通过处理相应的函数向系统发送信息,接收、发送底层的监测数据。函数设计如下:
1)导入数据库。
importrequests
importjson
2)获取数据。
defget_weather_data(api_key,location):
url=[]
response=requests.get(url)
ifresponse.status_code=200:
data=json.loads(response.text)
temperature=data[′current′][′temperature′]
humidity=data[′current′][′humidity′]
wind_speed=data[′current′][′windspeed′]
returntemperature,humidity,wind_speed
3)发送指令。
defsend_control_command(connection,command):
4)智能控制。
temperature,humidity,wind_speed=get_weather_data(api_key,location)
connection=connect_to_control_device(ip_address,port)
command=f″set_temperature{temperature}″
result=send_control_command(connection,command)
3 监测数据的显示
农业气候监测及智能控制系统可实时获取农业气候信息,在客户端显示数据及变化趋势,供用户决策分析。用户根据需求向物联网传感器下达请求数据命令,系统采用数据可视化方式呈现监测数据,通过绘制图表、曲线及地图等直观查看气温与湿度等信息变化趋势及空间分布,以便及时进行作物灌溉等操作。为了提供更全面的信息,系统支持多维度数据展示。除了基本的气温、湿度等指标外,还可显示其他与农业生产相关的数据,如照度、土壤湿度等。用户可选择合适的指标进行查看,更好地了解当前气候条件对农作物生长的影响。显示流程如图1所示。
图1 数据图形显示Fig.1 Graphic display of data
为了使用户更加全面地查看各类监测数据,在系统设计中添加分类筛选功能,将传感器监测数据推送给用户,完成监测信息显示。如图2所示。
图2 信息监测界面Fig.2 Information monitoring interface
当用户使用本系统查看监测数据变化趋势时,可通过一系列指令调用服务器中的数据信息,系统根据用户选取数据类型绘制相应图形。图3为随机抽取的一段时间内太阳能传感器电压历史数据变化折线图。从图3可以看出,随着照度降低,太阳能传感器的电池电压下降,通过电池自动切换装置切换供电电源,电压恢复并维持在稳定水平。如进入后半夜,照度持续下降,电压呈现一定程度的降低,切换为蓄电池供电后,电压逐渐恢复至稳定状态。
图4是随机选取的一段时间内的土壤湿度与照度关系的历史数据折线图。从图4可以看出,土壤温度维持在20 ℃~32 ℃,夜间随着温度降低,土壤温度随之降低;照度大致在5~60 klx。选取的监测点越多,时间间隔越短,绘制的历史数据折线图越准确。
图4 土壤温度与照度的关系变化曲线Fig.4 Variation curve of soil temperature and illuminance
4 数据验证与分析
分别对监测区域的CO2体积分数与PM2.5质量浓度进行数据验证。以2 h为数据时间间隔,用物联网传感器监测CO2体积分数与PM2.5质量浓度。CO2体积分数的监测误差如表1所示。由表1可以看出,6次测量的CO2体积分数的平均误差率为4.07%。
表1 CO2体积分数的监测误差Tab.1 Monitoring error of CO2 volume fraction
PM2.5质量浓度的监测误差如表2所示。由表2可以看出,6次测量的PM2.5质量浓度的平均误差率为3.065%。
表2 PM2.5质量浓度的监测误差Tab.2 Monitoring error of PM2.5 mass concentration
通过数据分析可以看出,整个系统的监测误差在可接受范围,能够实现农业气候监测及智能控制。
5 结束语
设计并实现了一种基于物联网技术的农业气候监测及智能控制系统。该系统采用传感器技术对农业气候数据进行实时采集,通过网络进行数据传输,利用服务器存储及处理,用户通过客户端访问智能控制中心的服务器,实现农业信息化操作,借助系统对历史数据的分析及挖掘,可准确地进行生产预测及决策,促进农业可持续发展。