基于WiFi的智能浇花系统设计与实现
2021-03-29
(南昌师范学院,江西南昌 330032)
随着人们的生活质量不断提高,越来越多的家庭会在室内养花草来装点环境、净化空气,而且能够陶冶情操、丰富日常生活。近年来,工作和生活节奏逐渐加快,出差、旅游、学业繁忙等导致人们难以有充足的时间对花草进行养护。因此,本文设计了一种基于WiFi的智能浇花系统,可以对土壤湿度进行实时监控,将信号数字化处理和输出,根据设定的湿度上、下限进行浇水,实现智能浇花。
1 总体设计
1.1 系统功能
此系统主要利用土壤湿度传感器FC-28对土壤湿度信号进行实时采集,采用STC89C51单片机为核心,实现对信号的数字化处理与输出,用WiFi模块ESP8266进行远程控制,将实时湿度与设定的湿度上、下限进行对比分析,确定浇水系统的工作情况。
1.2 系统框图
本系统主要由按键模块和湿度检测模块作为输入模块,经过STC89C51芯片对输入的信号进行处理,通过LCD显示模块、报警模块和驱动模块进行输出,WiFi模块既是输入模块又是输出模块,通过此模块实现数据的远程交互。
总体框图如图1所示。
图1 总体框图
2 硬件电路
2.1 STC89C51最小系统
核心芯片STC89C51完成传感器采集信号及输出部分的分时控制。
复位电路由K1、C3和R1构成,按住K1按键,电源VCC经C3、R1充电在RST端产生一个复位的高电平。
晶振电路由Y1、C1和C2构成的并联谐振回路。
STC89C51最小系统如图2所示。
图2 STC89C51最小系统
2.2 LCD显示模块
LCD1602液晶实现当前湿度、湿度上限和下限阈值显示。单片机P0~P7分别与LCD数据端相连,P2.5~P2.7分别与LCD的RS、RW、EN端相连。LCD的字符由ASCII码表显示,通过数据端的接收的信号转化为显示的字符。
2.3 湿度检测模块
湿度检测模块由土壤湿度传感器FC-28和ADC0832模数转换器构成,J1是两个插片,插在土壤里,AC口用来采集电压值,经过ADC0832进行A/D转换,再通过引脚P12、P13、P14传给单片机进行处理。
1602液晶显示的电路如图3所示,湿度检测的电路如图4所示。
图3 1602液晶显示电路
图4 湿度检测电路
2.4 按键模块
本次设计采用的是独立按键,通过三个按键实现对上、下限土壤湿度的设置,K2为设置按键、K3为加按键、K4为减按键。按下按键后,单片机的引脚P15、P16或P17变为低电平,实现对系统的土壤湿度上、下限阈值设置。
2.5 WiFi模块
WiFi模块实现土壤湿度信息的实时展示与远程控制浇花。采用ESP8266_12芯片,TXD与RXD分别接至单片机的P30与P31引脚,实现数据的远程交互。
按键与单片机的接口电路如图5所示,WiFi模块电路如图6所示。
图5 按键电路
图6 WiFi模块电路
2.6 驱动模块
驱动模块电路使用5 V水泵喷水,因为水泵属于大功率装置,所以选择三极管9012辅助单片机来实现对水泵的控制,当单片机的引脚P20为低电平时,三极管导通,水泵正常工作;否则,水泵不工作。电容作用是滤波,滤除水泵供电电源中的低频参量,使水泵稳定工作。
2.7 报警模块
当土壤湿度低于所设定的湿度下限时,蜂鸣器启动报警,对土壤进行浇水等操作后,使土壤湿度回到设定的范围,蜂鸣器停止报警。当单片机的引脚P11为低电平时,三极管9012导通,蜂鸣器报警,同时LED也会闪烁。
驱动模块电路如图7所示,报警模块电路如图8所示。
图7 驱动模块电路
图8 报警模块电路
3 软件程序
该系统的软件代码采用模块化设计,包括湿度检测程序模块、AD转换程序模块、显示程序模块等。上电初始化,采集土壤湿度值,设置湿度上、下限,系统自动判断是否满足浇花条件,将采集的数据显示在LCD显示屏上。若当前土壤湿度低于预设湿度下限值,蜂鸣器启动报警,水泵启动浇花;土壤湿度高于预设湿度下限值时,蜂鸣器停止报警,水泵继续进行浇水,直到土壤湿度值高于预设湿度上限值,水泵停止浇水。主流程图如图9所示。
图9 主流程图
4 系统测试
4.1 测试条件
系统测试如图10所示。
图10 系统测试
将土壤湿度传感器置于盆栽植物土壤中,在室内室温条件下,将系统上电,打开开关。此时,观察LCD显示屏上的显示值,液晶第一行显示实际的湿度,液晶第二行显示上次断电前的湿度上限值和湿度下限值,可以通过按键或手机设置土壤湿度合适的上、下限阈值,按下选择工作模式按键可以切换手动模式和自动模式。
手动模式:按下按键,电机抽水,实际的湿度值不影响水泵的工作状态,只有再按下按键才能停止抽水。自动模式:实际湿度在湿度上、下限范围内,水泵不工作,红灯不闪烁,蜂鸣器不响,绿灯常亮;实际湿度小于湿度下限,水泵工作,红灯闪烁,蜂鸣器报警;实际湿度大于湿度下限,水泵不工作,红灯不闪烁,蜂鸣器不报警,此时打开系统WiFi功能,则可以通过点“开/关”键向水泵发送工作指令。
4.2 测试结果
设置湿度下限值为25%,湿度上限为60%,基于不同湿度的土壤,
系统测试情况如表1所示。
表1 测试结果 单位:%
5 结语
本文研究一种基于WiFi的智能浇花系统,对土壤湿度信号进行实时采集,对信号进行处理并输出控制信号,实现土壤湿度信息的实时显示和智能浇花的远程控制。经测试,该系统工作稳定、实用性强,进一步完善可用于园林、大棚蔬菜及果园等进行自动浇灌。