过琦芳 马国智 李梦晴 顾展展
(苏州农业职业技术学院,江苏 苏州 215008)
随着生活质量的不断提高,人们在家中、办公室放置一些盆栽植物成为一种时尚。这样做不仅起到美化环境、净化空气的作用,而且可以达到陶冶情操、愉悦身心的目的。笔者结合家庭盆栽因不可控因素疏于打理的现实及期望盆栽植物健康生长的需求,设计了一款由感知模块、执行模块、电源模块、Wi-Fi无线通信模块及微控制器模块构成的智能盆栽浇灌器。该浇灌器通过土壤湿度传感器实时采集土壤湿度信息,并由STM32 单片机进行数据处理,输出控制命令,从而控制水泵的开启与关闭,实现自动浇灌的目的。传感器数据可通过Wi-Fi 模块发送至物联网云平台,使得在线监测和云端控制成为可能。
整个系统由主控模块、传感器采集模块、电源转换模块、按键模块、水泵控制模块、Wi-Fi 无线通信模块及报警模块等组成,其中主控芯片采用STM32F103 微控制器。智能浇灌器总体结构如图1 所示。土壤湿度传感器实时采集土壤的湿度信息,通过AD 转换直接传给STM32 微控制器;STM32 微控制器通过与设定的阈值进行比较,当采集值小于设定的下限值时, STM32 微控制器按照预定的控制机制发出控制命令,控制水泵运转,进行浇水。当实时采集的土壤湿度值大于设定的上限值时,STM32 微控制器发出控制指令让水泵停止运转,停止浇水。水位传感器主要检测储水箱的水位,实现水位过低时自动报警的功能。传感器数据通过Wi-Fi 模块直接上传至云平台,用户可在线查看传感器数据,设置阈值,手动远程控制浇灌设备。
图1 智能浇灌器总体结构
微控制器是该浇灌器的控制核心,此系统采用STM32F103C8 作为主控芯片。该芯片是意法半导体有限公司出品的一款基于ARM Cortex-M 内核的32位的微控制器,具有64 kB 的闪存容量,工作电压为2.0 ~3.6 V。与8 位的51 单片机相比,其性能好,完全可以满足该系统的控制要求。
土壤湿度传感器用来检测土壤的水分含量。该系统采用YL69 土壤湿度传感器。该传感器感应面积大,耐腐蚀性好,具有良好的导电性能,使用寿命长。而且该传感器既可以输出数字量信号,也可以输出模拟量信号,可以通过调节电位器来调节阈值,实现对土壤湿度的宽范围控制,可以自动对盆栽进行浇水。将土壤湿度传感器与STM32 的PA12 引脚相连,实现对土壤湿度的检测。
水位检测采用电阻式液位传感器,其利用具有一系列暴露的平行导线线迹测量液位从而判断水位,输出的模拟值由STM32 微控制器的ADC 进行转换并读取。水位传感器与STM32 的PA13 引脚相连,当储水箱水位异常时,由STM32 单片机发出控制命令,驱动蜂鸣器进行报警。
此系统由继电器充当水泵开关控制水泵出水。继电器是用小电流控制大电流运作的一种“自动开关”,通常用于自动控制电路中,因此,可以将其作为自动浇灌器的电机驱动模块。为了保证水泵的正常工作,需要给水泵单独进行供电。将继电器和STM32的PA11 引脚相连,STM32 单片机根据采集的传感器数据和设定的阈值比较结果发出控制命令,控制继电器的吸合和断开,从而实现自动浇水。水泵控制电路如图2 所示。
图2 水泵控制电路
Wi-Fi 通信模块选用ESP8266 芯片。该芯片最大的特点是性价比高,具有强大的片上处理和存储能力,高度片内集成,仅需很少的外部电路就可以实现完整且自成体系的Wi-Fi 网络解决方案。而且该芯片支持AT 指令设置大部分参数,同时能被设置为透传模式,这样ESP8266 就相当于是在互联网和UART 之间有了通信桥梁。ESP8266 Wi-Fi 模块与STM32 单片机的串口2 相连,实现与云平台的通信。ESP8266 接口电路如图3 所示。
图3 ESP8266 接口电路
该系统软件采用“STM32CubeMX+MDK-ARM”的开发工具组合进行开发,使用C 语言编写程序。整个程序采用模块化设计,主要包括系统初始化子程序、按键子程序、数据上传云平台子程序、数据处理子程序及继电器控制子程序等部分,系统的主程序流程如图4 所示。系统初始化完成后,可以通过按键手动设置土壤湿度的上、下限值,然后土壤湿度传感器实时采集土壤的湿度值并发送给微控制器,微控制器将实时采集的土壤湿度值与设定的阈值相比较,判断是否需要浇水。当土壤湿度低于预设的下限值时,微控制器发出控制命令启动水泵开始抽水,以增加土壤湿度;在抽水过程中不断检测湿度值,一旦到达预设的湿度上限值时,则关闭水泵电路,停止浇水。
图4 系统主程序流程
笔者基于STM32 微控制器设计了一款针对盆栽的智能浇灌器。该浇灌器通过土壤湿度传感器实时采集土壤湿度数据,微控制器将采集数据与设定值进行比较分析并发出控制指令,控制水泵的开启与关闭,从而实现按需按量智能浇花。同时,该系统具备水位过低报警功能及远程手动控制功能。该浇灌器很好地解决了人们由于工作繁忙或长时间外出导致花卉盆栽无人看护的问题。经过模拟测试,该系统能较好地实现对土壤湿度的监测及自动浇水等功能。