摘要:由于城市居民工作忙,生活节奏快,人们经常忘记给植物浇水,为此设计一款基于STM32的植物浇水系统,主要由STM32单片机、土壤湿度传感器、温湿度传感器、Wi-Fi模块、水泵系统、继电器以及OLED液晶显示屏等构成,实现手动或自动浇水和远程监控。当土壤湿度传感器检验测试到土壤中的湿度较低时,自动启动浇水系统浇水,直到土壤湿度达标。同时,用户都能够通过手机App实时查看土壤湿度数据与空气温湿度数据、设置浇水模式等。该系统硬件电路成本低,运行稳定,实现了智能浇水。
随着科学技术的进步和人民生活品质的提高,慢慢的变多的居民在自家阳台种植花卉植物,以改善家中的空气质量并陶冶情操。但由于生活节奏较快,人们常常忘记或没办法及时给花卉浇水而导致花卉枯萎[1-3]。研究表明,花卉生长过程中枯萎有百分之八十是由于浇水不当引起的,浇水不宜过多也不能过少[4],因此如何给花卉浇水是一个不可忽视的研究领域。但人们不一定都十分了解花卉种植,很多时候无法从花卉和土壤的表面来判断要不要给花卉浇水,因而自动浇花设备是一个不错的选择。
市场上已有的自动浇花设备大多不适合家用,其价格昂贵、性能低,虽然采用了定时浇水方案,但并没考虑当下花卉的生长环境和状况,可能会产生浇水过多或者过少而导致花卉枯萎的情况[5]。未解决以上问题,本文将物联网技术与云平台相结合,设计一款根据土壤湿度进行浇水的植物浇水系统,可以依据土壤湿度的变化自动实时浇水,同时能实时监控土壤的湿度及环境温湿度信息,并将土壤湿度及环境温湿度信息传输到机智云物联网平台,便于用户在手机App上实时监控。
在技术快速地发展的今天,物联网系统开发模式已发生了大幅度的转变。在传统物联网系统开发模式中,需要搭建一台高性能服务器,在服务器上搭建物联网后台,把相关项目和数据部署在服务器上,通过服务器向用户更好的提供相关服务。但是该模式存在很多问题:首先是成本问题,主要包含购买服务器、服务器的运营等费用,导致系统价格上升,难以推广;其次是安全问题,服务器要预防网络攻击、停电等各种异常问题,一旦服务器出现一些明显的异常问题,产品可能会死机。
本文选取机智云物联网平台,其是致力于物联网、智能硬件云服务的开放平台。平台提供了从产品定义、设备端开发调试、应用开发、产品测试、运营管理等覆盖智能硬件接入到运营管理全生命周期服务的能力[6]。目前,机智云针对esp8266提供基本的MCU开发方案以及SDK开发方案,能够很好的满足用户的实际需求,使用简单灵活。
系统总体设计如图1所示。由图1可知,总系统由数据获取层、数据处理及控制层和多个方面数据显示层组成。数据获取层由土壤湿度传感器、温湿度传感器构成,其中,土壤湿度传感器能够采集土壤湿度,温湿度传感器能够采集环境温湿度数据。数据处理及控制层包括STM32单片机、继电器、水泵,其中,STM32为系统核心部分,用于数据处理,并向继电器发送控制信号,启动或停止水泵出水。
多个方面数据显示层包括OLED液晶显示屏、Wi-Fi模块、机智云物联网平台和手机App, 其中,OLED液晶显示屏用于显示STM32获取的传感器数据信息,STM32通过Wi-Fi模块向机智云物联网平台传输数据,并将数据显示在手机App上,同时借助手机App向STM32单片机发送控制信号。
选用YL-69土壤湿度传感器检验测试土壤湿度,将土壤湿度转换成模拟电压信号,单片机借助内部自带的模/数转换模块将模拟信号转换成数字信号,从而获取土壤湿度数据[7]。该传感器利用土壤水分对电容值的影响来检测土壤湿度:数值越大,说明土壤越干燥;数值越小,土壤越湿润。在硬件电路连接时需要将土壤湿度传感器的AO引脚与单片机的ADC输入引脚(PA1)相连,土壤湿度传感器的GND引脚连接到单片机的GND引脚,土壤湿度传感器的VCC引脚连接到单片机的VCC引脚。
选用DHT11温湿度传感器监测环境温湿度信息。该传感器是一款含有已校准数字信号输出的温湿度复合传感器,使用专用的数字模块采集技术和温湿度传感技术,单线型串行接口,使用时需要在数据口连接一个上拉电阻(连线 m时根据真实的情况选择正真适合的上拉电阻)[8-9]。上电后,温湿度传感器接收到单片机发送的相关命令,并根据接收到的不同命令反馈有关数据。在硬件电路连接时,将温湿度传感器的数据输出引脚与单片机的通信引脚(PB9引脚)进行连接。
继电器被用来控制水泵。水泵启动需要较大的电压及电流,若使用单片机直接驱动,将影响单片机工作的稳定性,因此采用弱电控制强电原理,借助继电器来控制。继电器相当于一个开关,其中VCC表示电源正极、GND表示电源负极、IN表示信号输入脚、COM表示公共端、NC(normal close)表示常闭端、NO(normal open)表示常开端,正常的情况下是常闭状态。在硬件电路连接时,继电器连接单片机的PB13引脚。
ESP8266是一个成本较低的无线设备,内置TCP/IP协议,可以与任何Wi-Fi网络连接,是目前很常用的一种无线]。本系统中的通信模块通过串口与单片机相连,将单片机与机智云服务器连接,进行数据传输。在硬件电路连接时,将Wi-Fi模块的LRXD引脚连接单片机串口TX(PB10),UTXD引脚连接单片机串口RX(PB11),以此来实现两者之间的数据通信,如图2所示。
有机发光二极管(OLED),又称有机电激光显示。OLED具备自发光、使用温度范围广、构造简单等特点,被认为是下一代的平面显示器新兴应用技术。虽然OLED的尺寸难以大型化,但是分辨率很高。
SSD1306是0.96英寸OLED液晶屏,满足本系统需求。STM32单片机将获取到的温湿度信息数据显示到OLED液晶显示屏,方便用户查看。在硬件电路连接上,STM32使用IIC通信协议连接OLED液晶显示屏,分别连接单片机对应的PB6(作为IIC的SCL引脚)和PB7引脚(作为IIC的SDA引脚)。
选用的STM32F103C8T6单片机是一款基于Cortex-M3内核STM32系统的32位微控制器。该单片机支持的程序下载方式包括串口下载和下载器下载。串口下载需要先更改硬件boot引脚连接方式,然后修改单片机的启动地址,即可通过串口下载程序,而下载器下载需要借助单片机的下载引脚SWD和SCLK,再使用下载器下载程序。采用串口下载方式,借助FlyMcu软件,通过串口完成程序的下载。
STM32作为主控芯片,负责程序初始化、控制及多个方面数据显示。单片机首先获取传感器数据,将多个方面数据显示在液晶屏,使用通信模块连接机智云平台与手机进行通信,再根据获取的数据实施相应控制。当土壤湿度传感器检验测试到土壤湿度较低时,启动浇水系统,当土壤湿度达标后停止浇水系统,其中浇水系统的启动方式包括手动和自动2种。具体流程如图3所示。
土壤湿度传感器的数据获取是通过单片机的ADC引脚获取传感器的电压值,然后将获取到的模拟电压进行模数转换得到土壤湿度信息。首先初始化ADC功能,然后打开相关ADC通道进行数据循环采样,流程如图4所示。
环境温湿度传感器通过单片机的IO口进行命令的发送及数据的获取。首先初始化与温湿度传感器连接的数据引脚,然后分别输出一段时间的高低电平命令,获取GPIO的电平信号并获取温湿度传感器传输的数据。程序设计流程如图5所示。
ESP8266通信模块通过串口与单片机进行通信,因此将该程序设计转换成单片机串口数据收发程序。首先对串口初始化,设置标志位,判断串口会不会产生中断:如果产生中断,接收数据并将数据解析存储;如果没有中断,继续等待。程序设计流程如图6所示。
在进行系统硬件调试前,需要确保传感器和单片机电源、传感器与单片机的引脚连接正确。经过硬件焊接连接的实物图如图7所示。
将系统获取的数据上传至机智云物联网平台,并针对Wi-Fi模块、数据上传和命令过程下发进行调试。调试程序如图8所示。
在自动模式下,将土壤湿度传感器放置在干燥缺水的土壤中,通过手机App可监测到环境和温度值为26,环境湿度值为32,土壤湿度值为4036,此时自动启动水泵浇水,如图9所示。
以STM32F103C8T6作为主控芯片,以及使用温湿度传感器、土壤湿度传感器、继电器、水泵、Wi-Fi模块、OLED等器件,设计了一款能够实时采集土壤湿度信息,并在土壤干涸时及时浇水的智能浇水系统。该系统能够很好的满足实时监测土壤环境的湿度,并且能定时将采集到的数据上传到机智云物联网平台,使用户能实时了解环境状况,同时用户能根据环境温湿度以及土壤湿度信息,决定是不是远程打开水泵进行手动浇水操作。实践证明,该系统运行正常,能够直观地监测到花盆土壤信息,实现植物的科学浇水。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
约老师替补?多队认为掘金给了霍姆斯选秀承诺 场均20.4+8.5+2.1
CCTV5直播有变!中国女排VS日本,张常宁首发有变,新帅力争3-0!
与中坚力量共成长,2024建信信托艺术大奖评委会特别奖获奖艺术家凌海鹏
【我的大学——高招直通车】东北大学:循着东大人闪光的足迹,探索科学真谛,续写百年辉煌篇章
高考志愿填报“割韭菜”背后:揭秘张雪峰3小时入账2亿的线万中考考生顺利赴考