河北大学电子信息工程学院 赵晓军 郝文娟 李 寒 莫益锭 张郁佳 季 桓
目前大多数农业大棚采用有线传输和短距离无线通信的方式,对单一大棚进行环境监测和设备控制,存在通信距离短,组网复杂,受网络环境影响较大等问题。针对以上问题,设计并实现了一套基于LoRa和模糊控制的大棚环境监控系统。该系统采用LoRa进行远程通信,利用Wi-Fi或GPRS将数据上传至阿里云物联网平台,通过Web和微信小程序实现大棚内各种参数的远程查看和控制。结果表明,该系统远程数据传输稳定,自动调节环境参数,能够实现大棚的远程监测和控制。
我国南北地形和气候差异明显,对于农作物的种植有着很大的限制。为了减少这些因素对农作物生长产生的影响,使农业种植不受地域和气候等因素的限制,建立一种精准化、智能化、普遍应用的智慧农业大棚控制系统有着十分重要的意义。LoRa是一种将扩频和GFSK调制融合在一起的长距离、低功耗的数据通信技术,其工作频段为0.137GHz-1.02GHz,传输速率从几百bps可达几十Kbps,在保证信息传输的过程中功耗较低的前提下,大大提高了数据传输距离。
本系统以STM32F103系列单片机为核心,通过温度、湿度和光照传感器对空气环境和土壤环境进行监测,利用模糊PID调节风机、卷帘机等工作,调节环境参数,并将传感器采集到的数据通过LoRa模块进行远程数据传输。集中器通过GPRS或Wi-Fi模块将数据上传到阿里云平台,并用MYSQL数据库进行存储,用户通过网页或者微信小程序对大棚进行环境的监控。
环境采集节点主要由传感器、LoRa模块、STM32F103和电源模块等组成,用于实时获取农业大棚内环境参数,包括空气温度、空气湿度、光照强度、土壤温度、土壤湿度等参数,并完成数据上报。LoRa是一种将扩频和GFSK调制融合在一起的长距离、低功耗的数据通信技术,具有星型组网方式,传输速率从几百bps可达几十Kbps,在保证信息传输的过程中功耗较低的前提下,大大提高了数据传输距离。图1所示为采集节点框图。
图1 采集节点框图
集中器是LoRa网络中最重要的部分,它的作用是将LoRa网络中采集到的数据上传到服务器,是星型组网中的中心节点。集中器是由STM32F103C8T6单片机、LoRa模块、WiFi模块ESP8266和GPRS模块等部分构成。数据传输通过LoRa模块进行数据汇总,Wi-Fi或GPRS模块与阿里云物理网平台进行通信,在进行设计时选用2个2P拨码开关,其中一个拨码开关进行GPRS/Wi-Fi模式的选择,另一个开关作为单片机程序的标志位,通过波动开关实现联网方式的切换。图2所示为集中器框图。
图2 集中器框图
软件设计的主要流程为信息采集节点将采集的环境信息通过LoRa无线通信技术将数据发送到数据传输节点,然后将数据上传至阿里云物联网平台,同时可以将数据流转到MySQL数据库中,通过上位机端的Web信息管理系统对大棚内环境参数进行查看和管理。当用户对棚内设备进行控制时,数据传输节点接收到上位机Web端发来的控制命令,然后将控制命令通过LoRa无线通信模块传输至执行设备控制箱,从而对大棚内相应的设备进行控制。本系统软件总体流程图如图3所示。
图3 软件总体流程图
模糊PID控制利用一定的模糊规则,进行大棚温湿度调控,实现大棚环境自动化调节。模糊PID通过设定温湿度参数,采集当前的环境温湿度,进行比较,产生的偏差和偏差变化率通过模糊化处理得出KP、KI、KD,建立模糊控制表,通过PID控制器对执行设备进行自动化控制去调节大棚内环境参数。图4所示为PID调节流程图。
图4 模糊PID控制框图
对于温湿度环境的自动调节,主要是根据用户设定的上限和下限值,当采集到当前的温湿度大于上限值或者小于下限值时,通过模糊控制,执行设备自动进行温湿度调节,使温湿度控制在用户设定的范围内。图5所示是温度自动调控流程图。
图5 温度自动调控流程图
用微信开发者工具对微信小程序进行开发,它具有模拟器、调试工具和小程序操作区三大功能,能够看到真实的页面结构和对应的wxss属性,并快速找到组件对应的wxml代码。微信小程序具有跨平台的优势,只用在微信中打开微信小程序就可以自动连接服务器,进行数据流转,对大棚环境参数进行监测和控制。图6所示是微信小程序界面。
图6 微信小程序界面
本文设计的基于B/S架构的Web信息管理系统前端开发使用vue.js、ElementUI以及Echarts技术,后端开发使用SpringBoot和Mybatis-Plus框架,主要功能是获取大棚内环境参数等信息,及时的在界面中展示出来,可以通过控制指令对大棚内设备进行控制。用户在完成登录后便可以对系统进行查看、管理以及控制。本系统设置数据每隔2min上传一次。实时数据监测如图7所示。
图7 实时数据查看界面
RSSI可以表示LoRa无线通信模块在信号接收时信号的强弱。在对RSSI进行测试时,可以使LoRa模块进入信号强度模式下进行测试,RSSI的值越大,说明信号越稳定。信号强度主要受环境遮挡和通信距离影响,本次测试选取两种场景进行测试,一种是遮挡较少的宽阔马路,另一种是部分遮挡的地点,如图8所示。
图8 LoRa模块功能测试地点
测试采用定向点对点传输的方式进行测试,将数据传输节点固定,按预定距离移动采集节点,LoRa模块信道设置为0x17(信道23,433MHz),发射功率设置为20dBm,程序设定每10s采集节点向数据传输节点发送一次数据包进行测试。测试结果如表1所示。
表1 RSSI测试结果
从表1测试结果可以看出,在两种场景下,信号强度会受距离和环境的影响,遮挡较少的场景信号强度优于有遮挡场景,测试结果与预期较为符合。
本文针对我国温室大棚的发展现状和智能化生产的需求,设计并实现了一套基于LoRa和模糊控制的大棚监控系统,主要包括信息采集节点、数据传输节点、执行设备控制节点以及远程监控终端,用户可以通过Web、微信小程序实现对棚内环境信息的查看与执行设备的控制。该系统集传感采集、数据存储、设备联动于一体,可实现远程监测和控制,同时具有远距离智能化的控制方式和报警等功能,从而为农作物健康生长提供有利的条件。