基于STM32的智能大棚环境监测管理系统的设计与实现
2022-06-21向鹏俊
向鹏俊
(长江师范学院 大数据与智能工程学院,重庆 408100)
0 引 言
“智能大棚”是以物联网技术为基础的一套集监测、预警、控制于一体的现代化数字大棚监测管理系统。目前温室大棚以人工管理为主,但人工操作存在较多弊端:首先,传统大棚的监测管理复杂,不利于管理人员的操作和对大棚环境的监控,一旦出现操作失误,影响作物的生长从而造成巨大的经济损失;其次,传统大棚因设备安装和布线复杂等原因导致成本较高,对大规模种植经济作物的效益产生一定程度的影响;最后,人工管理方式效率低下,不利于作物的大规模种植。传统大棚成本高、生产效率低、产量低和效益低等缺点无法满足当今数字化时代发展要求。随着人民生活条件日益提高,开发智能大棚以满足群众需求势在必行。
鉴于此,本文以STM32微处理器与树莓派服务器为核心设计了一款智能大棚环境监测管理系统。该系统以物联网感知技术、物联网控制技术和无线通信技术为基础,通过无线通信技术将传感器节点采集的环境数据传输至树莓派服务器,进行异构数据的处理和汇总。服务器对环境数据进行分析处理,发现异常数据后执行相应操作,以保证作物的生长处于最优环境。因此,收集大棚作物生产环境数据,进行数据融合、存储和可视化处理,观察数据变化趋势,预知风险,对大棚作物生长环境的安全具有重要意义。
该系统架构分为三层,即感知层、传输层和物理层。感知层部分采集当前大棚的各项环境数据,在STM32中对环境数据进行处理。传输层的WiFi模块将数据传输至树莓派服务器并存储节点数据,利用Qt、OneNET和Android中的hello chart模块实现存储数据的可视化,通过用户终端实时查看大棚状态,并支持用户远程操作,防止意外的发生。
1 智能大棚监测管理系统硬件设计
基于STM32的智能大棚环境监测管理系统建立在传感器节点的基础上,各节点组成传感网络。本章将针对感知层进行详细介绍。在保证系统稳定的前提下,通过底层硬件的设计来提升系统的高效性和稳定性。本系统主要由温湿度检测模块、电机控制模块、光照强度检测模块、烟雾监测模块和报警模块组成,利用多传感器节点数据采集技术,通过对数据的处理,完成对农业设备、通风设备、喷水阀等的控制。电路原理如图1所示。本章将对智能大棚控制管理系统中使用的硬件进行简要介绍。硬件系统框架如图2所示。
图1 系统电路原理
图2 STM32总体框架
1.1 微型处理器
本系统选择的微型处理器为STM32F103ZET6,其拥有强大的数据处理能力,能够保障数据传输的及时性和正确性。以STM32作为传感器节点控制核心,通过A/D转换将采集的模拟信号量转为数字信号量,对区域环境数据进行感知,如:温度、湿度、光照强度和烟雾浓度等,再经火焰传感器和L298N电机驱动模块操作,最终处理器将传感器收集的数据汇总,传输至服务器对数据进行存储与处理。
1.2 电机控制模块
电机控制模块选用L298N芯片驱动电机。通过接收STM32发送的电平信号对电机进行控制。通过改变电平信号,达到对电机正转和反转的控制,实现对水泵的喷洒和开合。电机驱动模块电路如图3所示。
图3 电机驱动模块电路
1.3 土壤湿度传感器模块
该模块选用YL69土壤湿度传感器对大棚内农作物生长的土壤湿度进行采集,传感器将采集的数据传输至STM32,系统根据预设土壤湿度值进行自动比较与判断,进而执行喷水阀的开启与关闭操作,使农作物生长土壤湿度处于最佳环境。土壤探头接口电路如图4所示。
图4 土壤探头检测电路
1.4 烟雾传感器模块
选用MQ-2烟雾浓度监测传感器,通过监测大棚内部的烟雾气体,可防范火灾、提醒报警、控制喷水阀自动灭火。烟雾检测电路如图5所示。
图5 烟雾检测电路
1.5 二氧化碳传感器模块
系统采用MH-Z14二氧化碳气体传感器,利用非色散红外原理对空气中存在的二氧化碳进行探测。二氧化碳是农作物光合作用的原料,二氧化碳施肥能促进植物的光合作用,提高植物光合作用率,因此,对二氧化碳含量的监测控制具有重要意义。
1.6 光敏传感器模块
光敏模块采用光敏传感器对大棚环境光线强度进行采集。光照强度是农作物生长的重要指标,将采集的数据传输至STM32中,系统可根据作物生长情况提供适合的光照强度,执行遮阳棚和灯具的开启与关闭。
1.7 温湿度检测模块
选用DHT11温湿度传感器采集大棚环境温度和湿度信息,STM32向传感器发送初始信号,并将数据线拉出至少18 ms;然后拉起数据线20~40 μs,等待DHT11响应。如果正确,DHT11将数据作为响应信号拉低,保持80 μs;DHT11拉起数据线,保持80 μs,输出有效数据。采集状态跳转图如图6所示。温湿度传感器DHT11检测电路如图7所示。
图6 DHT11采集状态跳转图
图7 DHT11检测模块电路
1.8 无线通信模块
采用ESP8266为主芯片的WiFi通信模块,ESP8266模块采用串口与MCU通信,再通过透传方式实现数据传送。通过WiFi模块将各传感器节点组成传感网络,将采集的大棚环境数据传输至服务器进行汇总处理。
2 智能大棚监测管理系统设计及实现
智能大棚环境监测管理系统由传感器节点、服务器和用户终端组成。智能大棚环境监测管理系统结构如图8所示。
图8 智能大棚监测管理系统总体结构
该系统通过STM32根据采集的传感器数据完成整体的执行部件控制功能,将传感器节点与STM32单片机相结合,实现底层感知控制系统;将传感器采集的数据通过多线程串口通信上传到树莓派嵌入式服务器,再存入嵌入式数据库中,并在网关层的Qt软件界面上实时显示数据信息;网关作为客户机,通过TCP/IP协议将数据上传到Linux服务器并存储到服务器的数据库中,对数据库中的数据进行实时分析处理,再对数据实现可视化操作,使系统具备提前预警及预处理的功能。
2.1 智能大棚监测管理系统功能模块
(1)环境感知模块:根据作物生长环境的情况,利用DHT11温湿度传感器进行大棚环境温湿度采集:光敏传感器实现光照强度的采集,MQ-2烟雾传感器用于烟雾浓度的采集,最后将各传感器模块连接其对应的引脚。
(2)数据传输模块:配置STM32串口1,将RXT和TXD连接实现串口数据的收发,将采集的环境数据传输至服务器。
(3)执行部件模块:执行部件选用L298N电机驱动模块、蜂鸣器和LED灯,当传感器数据达到阈值时启动声光报警模块和水泵。同时接收应用层指令,完成相应的操作。
(4)数据存储模块:将传感器节点发送的异构数据进行分析处理,并存储至MySQL数据库,进行数据备案,为事故定责提供依据,便于数据分析处理。
(5)数据可视化模块:本系统可为多个用户终端提供可视化操作,针对不同用户的使用需求,在网页端使用OneNET平台实现数据可视化操作,PC端在Qt平台实现数据可视化和设备控制功能,移动端使用Android APP对数据进行可视化操作和设备控制。
2.2 智能大棚监测管理系统主要功能
2.2.1 智能灌溉
灌溉系统通过DHT11温湿度传感器模块和YL69土壤湿度传感器采集环境数据,通过STM32完成与控制台的通信,采集的环境数据与设定的阈值进行比较,对灌溉系统进行控制。湿控模块包括灌溉装置和除湿装置。根据不同作物对生长环境的需求,设为当前作物生长所需土壤湿度,当土壤湿度传感器检测土壤湿度低于%RH时,主控单元控制灌溉系统工作,使土壤湿度保持在(±20)%RH范围。设为当前生长作物所需空气湿度,当DHT11温湿度传感器检测空气湿度超过%RH时,主控单元控制除湿装置工作,使空气湿度保持在(±15)%RH范围。
2.2.2 智能警报
警报系统由温湿度传感器、烟雾传感器和土壤传感器等组合而成,可将采集的环境数据传输至STM32进行处理,并通过串口将数据发送至主控制台进行警报处理。系统在发现险情时会自动报警,报警单元包括蜂鸣器和报警灯。当环境数据异常时,发出声光报警,提醒相关人员土壤湿度值低于阈值或有其他异常现象发生,同时Qt控制台显示“土壤湿度过低请您注意”字样,并通过GSM模块发送至管理员手机报警。
2.2.3 智能遮阳
遮阳系统将光敏传感器采集的数据传输至STM32与设定的阀值进行比较,根据比较结果执行相应的遮光或补光操作。光控单元包括补光装置和遮光装置,如光照强度检测模块检测值小于2 500 Lux,则主控单元控制补光设备工作,反之控制遮光设备工作,使大棚内光照强度处于2 500~3 500 Lux,针对不同作物进行不同的显示。
2.2.4 智能温控
通风系统根据DHT11温湿度传感器采集温度数据与预先设定的阈值进行比较,并采取相应的通风措施。如果温度低于阈值20 ℃,则主控单元控制加热装置工作,升高室温,反之执行降温操作。夜间,适当降低大棚温度以降低植物呼吸消耗,温度范围为12~15 ℃。
3 智能大棚监测管理系统软件设计
智能大棚环境监测管理系统分为感知层、传输层和应用层。感知层基于Keil μVision5开发,实现STM32的数据采集、处理、融合和传输功能。应用层树莓派服务器采用Python语言实现底层数据的接收、处理和存储。智能大棚环境监测管理系统由底层驱动程序、系统主程序、无线通信子程序、Linux服务器子程序、Qt显示子程序和数据库子程序等组成。程序进行初始化后,通过检测函数检测相应的触发信号并对检测结果进行处理,执行对应的设备操作。智能大棚控制管理系统流程如图9所示。
图9 智能大棚控制管理系统流程
根据应用层软件平台的需求,实现对监测环境数据的实时显示,将传感器节点采集的环境数据存储进数据库,为后续数据分析处理做准备。选用MySQL数据库进行增删改查操作。数据库E-R关系模型如图10所示。
图10 E-R关系模型
传感器节点数据库见表1所列。
表1 传感器节点数据库
数据库的设计将相关联的数据进行整合,在应用层平台具有重要作用。从传感器节点数据表出发,通过各表之间的主键关联建立数据库逻辑结构,有利于数据库维护,便于用户对数据库的增删改查操作。本系统在树莓派服务器上的MySQL数据库上实现相关应用,支持多用户、多线程访问。
4 智能大棚监测管理系统安装与测试
本系统硬件电路主要包括STM32F103 MCU、树莓派服务器、无线通信模块、传感器检测模块和L298N电机控制电路。软件部分主要由Qt平台、MySQL数据库、安卓APP和OneNET平台组成。
为进一步验证该系统的可行性和稳定性,在实验室模拟搭建智能大棚监测管理系统,模仿作物最真实的生长环境,具体步骤如下所示:
(1)系统联机测试,首先将程序代码烧录至STM32控制器,配置ESP8266无线通信模块,调试好模块后与STM32主控制器的串口相连,并与树莓派服务器的端口相连;
(2)Qt控制台连接树莓派服务器的远程数据库,设置系统检测顺序优先级,测试各传感器节点的功能,将传感器采集的信息通过STM32的WiFi模块传输至树莓派服务器,进行数据处理、储存;
(3)Qt控制台访问服务器数据库,进行环境数据实时显示并支持远程设备控制,实时观察数据状态,Qt控制平台界面如图11所示;
图11 Qt控制平台界面
(4)测试无线通信模块的功能,将当前大棚各项环境数据传输至服务器,对数据进行解析处理,执行相关操作,最终由OneNET平台实现数据可视化。OneNET数据可视化平台界面如图12所示。
图12 OneNET数据可视化平台界面
通过各项测试说明,各电路模块及通信模块功能正常,能够处理执行预先设定的设备动作要求,系统完全满足智能大棚控制管理的需求。数据库存储的环境数据如图13所示。
图13 数据库存储环境数据
5 结 语
本文设计了一款基于STM32的智能大棚环境监测管理系统。以STM32F103ZET6和树莓派服务器为控制核心,结合Qt控制台和OneNET平台完成对大棚的控制、监测和数据可视化。通过对大棚的智能控制以期达到提高作物产量、提升经济效益、减少工作人员工作量的目的。经过实地测试,该系统具有检测准确度高、系统稳定性强、检测全面和成本低等特点。该系统与传统方案相比,部署快捷且成本低,采用无线通信覆盖范围大。经测试,系统实验阶段运行良好,其实验成果将为温室大棚智能化的进一步发展提供参考。