APP下载

基于APP技术的农业大棚环境调控设计

2023-06-17杨媛钫

物联网技术 2023年6期
关键词:光照度环境参数按钮

杨媛钫

(湖南中烟工业有限责任公司 常德卷烟厂,湖南 常德 415000)

0 引 言

农业经营模式的转型已经成为现代农业发展的一种趋势,基于物联网技术的现代化农业能够有效地节省人力物力,提高农作物的产量和质量。利用传感器检测、WiFi 无线通信、手机APP 开发等技术[1-3],设计一个基于APP 技术的农业大棚环境调控系统,使用APP 实时监控农业大棚内的环境参数,并对其参数历史数据实现实时查询、图形化统计等功能,同时能够设置各个参数的阈值,当实际值不在阈值范围内时,APP 将进行语音报警,直至参数恢复至阈值范围内,报警停止。

1 系统结构

基于APP 技术的农业大棚环境调控系统由现场终端和APP 调控两部分组成[4],系统结构如图1所示。现场终端包括STM32F103RCT6 最小应用系统、环境监测模块、LoRa无线组网模块、WiFi 无线通信模块、输出调控模块以及人机接口模块等。各传感器完成农业大棚内温度、湿度以及光照强度等环境参数的采集,并且数据会显示在OLED 屏上;通过LoRa 无线组网进行数据的节点传输,通过WiFi 无线通信模块将数据上传至服务器的数据库以及手机APP 中,若环境参数偏离,可自动/手动控制输出调控系统。APP 调控由服务器端和APP 端构成,APP 端基于HTTP 协议,利用Post/Get 请求方法,连接服务器的IP 地址和API 端口,从服务器的数据库中获取数据,当服务器接收到手机APP 端发送的控制或者设置阈值指令,则通过WiFi 无线通信模块将指令下发,远程无线操控农业大棚内的调控系统。

图1 系统结构框图

2 终端硬件

系统终端硬件电路如图2所示。STM32F103RCT6 基本应用系统中包括电源接口、复位电路、时钟电路、SWD 程序下载电路和程序引导电路。无线通信电路由WiFi 接口电路和LoRa 接口电路组成,其WiFi 模块采用ESP8266[5],它是一款串口转无线模块芯片,用于上传数据。LoRa 模块选用ATK-LORA-V1.5 芯片,由终端节点、中继节点和网关节点组成无线传感网,进行数据的节点传输,两者都是使用串口与微处理器进行数据交互。环境监测电路由温湿度检测电路和光照度检测电路组成,温湿度检测电路采用DHT11温湿度传感器,其内部包括两个关键的检测元件,即NTC测温元件和电阻式感湿元件。该传感器是单总线结构,只需要使用一根数据线与微处理器进行数据交互和控制。光照度检测电路采用GY-30 光照强度传感器,其主控芯片为BH1750FV1,内部由光敏二极管、运算放大器、ADC 采集和晶振等组成,通过I2C 协议与微处理器进行通信[6]。输出调控电路包括照明系统电路、灌溉系统电路以及环境控制系统电路,分别对光照度、土壤湿度、空气温湿度等进行调节。显示电路采用OLED 12864 显示屏模块,用于对传感器节点采集的温度、湿度、光照度等环境参数进行实时显示。

图2 终端硬件电路

3 终端程序

终端主程序包括系统初始化、LoRa 组网、WiFi 连接服务器、环境监测、输出调控、上传数据以及OLED 显示,其流程如图3所示。

图3 程序流程

系统初始化包括I/O 口初始化、中断初始化、定时器初始化、串口初始化、I2C 初始化、SPI 初始化和OLED 初始化;LoRa 组网是利用串口中断函数,通过判定标志位状态进行节点收发数据;WiFi 模块先连接热点,然后连接服务器程序,与服务器进行数据交互;环境监测是调用温湿度检测函数和光照度检测函数,对温湿度数据和光照度数据进行采集;输出调控是利用照明系统控制函数、灌溉系统控制函数、环境控制系统函数,对农业大棚内的控制设备进行控制;上传数据是以TCP/IP 协议作为数据传输协议[7],将各传感器采集的数据通过WiFi 模块上传至服务器端;OLED 显示是将检测到的各个环境参数实时显示到OLED 屏上。

4 APP 软件

APP 软件功能包括用户登录、远程监控、系统设置、存储数据、查询历史数据以及语音报警等模块,其系统程序流程如图4所示。

图4 APP 程序流程

设置IP 地址和端口号模块是将局域网分配的地址和端口号存入APP 程序中。

用户登录模块是APP 连接服务器的URL 登录端口,请求参数包括username 和password,账号和密码是在服务器注册的账号和密码,请求参数以及响应值是根据传输协议决定的,数据传输格式使用JSON 格式[8],若输入的账号、密码不正确,则APP 会弹出消息框,提示“账号或密码错误”;输入正确,APP 则进入远程监控界面。

远程监控模块用于实时显示各个环境参数,在该模块界面中,包含对输出调控系统的控制按钮、查询历史数据按钮以及设置阈值按钮等。

若点击控制按钮,APP 则向服务器发送规定好的控制数据,将此数据作为请求参数,服务器再将数据实时发送给终端,终端进行相应的控制操作,以达到APP 对环境参数的调控功能。点击自动控制按钮,将控制模式设置为自动控制,这样终端可根据APP 设置的阈值与传感器采集的数据进行比较,输出调控系统做出相应调节动作。

若点击设置阈值按钮,APP 则进入设置阈值界面,该模块是向服务器接收数据的API 端口发送数据,请求参数为各类参数的上下限值。点击上传按钮之后,设置的阈值被上传至服务器,并且远程监控界面上的三种阈值显示框中的数字将得到更新,若接收到的实测值不在阈值范围内,则APP 将自动进行语音报警,直至实测值恢复至阈值内,语音报警停止。

历史数据查询分为3 种:第一种是折线统计图查看,APP 将接收的数据存入开源数据库LitePal 中,折线图组件把数据库中数据取出,作为图形数据点,形成折线形状,历史数据呈图形化显示出来,可以清晰地看出环境参数的变化曲线[9-10];第二种是传感器类型查询,输入需要查询的环境参数名称,APP 界面跳转至该环境参数历史数据显示界面,可以看到所有采集的数据以及数据产生时间;第三种是时间查询,调用服务器提供的时间查询历史数据的API 端口,请求参数为开始时间start 和结束时间end,从服务器获取这段时间内的所有数据,显示在相应的表格界面,时间输入格式如2022-03-12 13:12:12,当然也可以通过年月日查询,而无须精确到时分秒。

5 系统调试

5.1 终端硬件调试

终端工作时,OLED 显示屏依次显示光照度、温度、湿度的实时检测值。通过人为改变环境,如改变GY-30 传感器的光照使光照度值变大或变小,对着DHT11 模块吹气以增大湿度值,将终端装置置于冷空气中来降低温度,等等。通过上述操作可以证明环境监测单元能及时监测环境变化;同时环境参数改变时,OLED 显示屏的显示值将相应更新。

在APP 设置参数阈值后,终端可进行自动控制。当光照度低于下限值时,照明系统开启二级光照;当光照度在阈值范围内时,照明系统开启一级光照;当光照度高于上限值时,照明系统不工作。当土壤湿度和空气温湿度不在阈值范围内时,灌溉系统和环境控制系统执行相应的开启或者关闭动作。实验中采用发光二极管模拟。

5.2 APP 调试

APP 操作界面分别是设置端口界面、登录界面、数据监控界面、设置阈值界面、数据查询界面、数据表格界面、图形显示界面和时间查询界面等。

在APP 的设置端口界面连接局域网分配的IP 地址和端口,返回登录界面输入账号和密码,进入数据监控界面,说明APP 与服务器连接成功,如图5所示。在该界面可以查看温度、湿度、光照度等环境参数的实时检测值,这些检测值与终端部分的OLED 显示屏上显示值相同,既说明终端和服务器的连接是成功的,也说明APP 端可以实时接收传感器节点采集的农业大棚环境参数,数据解析正确。

图5 数据监控界面

点击数据监控界面中的设置阈值按钮,跳转至设置阈值界面。在该界面可以上传环境参数阈值,当实时监测值不在设置的阈值范围内时,APP 发出语音报警,说明阈值上传成功。手机APP 可以对终端进行无线远程监控;数据监控界面有5 个控制按钮,点击按钮,可以分别对终端进行相应控制;若点击自动控制按键,终端则根据实时检测值与阈值的比较,做出相应控制动作。

点击数据监控界面中的查询数据按钮,跳转至数据查询界面。在该界面点击温度、湿度或者光照强度,将跳转至相应的数据表格界面,此界面中记录了该环境参数所有数据,以及数据产生时间;点击图形统计按钮,可以查看各个环境参数的历史数据折线图或者柱状图,温度折线图如图6所示;点击时间查询按钮,跳转至时间查询界面,在两个输入框内依次输入需要查询的开始时间和结束时间,点击搜索按键,服务器将根据上传的起始时间,向APP 返回该段时间内的环境参数的所有数据以及每个数据产生的时间。

图6 温度折线图界面

6 结 语

基于APP 的农业大棚环境调控系统实际上就是以物联网技术为核心的智能农业系统。相比传统农业而言,智能化的监控技术使得农业工作更轻松,作物产量和质量更有保障,能有效减少人工成本。智能化的农业环境监控系统可广泛应用于大型农业生产基地。

猜你喜欢

光照度环境参数按钮
光照度传感器在智能家居照明系统中的应用
基于云平台的智能家居环境参数协同监控系统设计
列车动力学模型时变环境参数自适应辨识
一种食用菌大棚环境参数测控系统设计
基于小型固定翼移动平台的区域大气环境参数采集系统设计
“农地种电”型光伏电站可种植区域光温环境参数研究