ARDUINO智能浇灌系统应用研究

时间:2022-10-15 10:38:23

ARDUINO智能浇灌系统应用研究

【摘要】本文描述的苗圃智能浇水系统包括土壤温湿度的检测与控制和蓄水箱智能上水及水位报警两大部分。智能浇灌控制器是一款基于Arduino的控制器,用土壤湿度传感器对土壤湿度进行监测,通过温湿度传感器对室内温度、湿度进行测量,根据一定算法控制水泵或电池阀进行浇水,从而达到智能浇灌的目的。扩展功能还增加了串口数据监听功能;实现对当前控制器串口返回的土壤湿度和室内温度、湿度等参数的读取。

【关键词】Arduino;串口数据;传感器;C51程序;数字电路

1、概述

随着社会消费水平和生活质量的提高,人们对居家园艺的需求也越来也大,但快节奏的生活使得种花容易养花难的问题显现出来,而养花最重要的问题就是浇水问题,研究表明花草80%以上的死亡由于浇水不及时引起,因此使用智能控制器带来很多便利。本次设计的苗圃智能浇水系统包括土壤温湿度的检测与控制和蓄水箱智能上水及水位报警两大部分。智能浇灌控制器是一款基于Arduino的控制器,获取土层湿度数据,通过温湿度传感器对室内温度、湿度进行测量,根据一定算法控制水泵或电池阀进行浇水,从而达到智能浇水的目的。扩展功能还增加了串口数据监听功能;实现对当前控制器串口返回的土壤湿度和室内温度、湿度等参数的读取。其读取时间不定,该软件会智能监测串口数据的接收并智能读取,不会在没有数据的时候随意读取,避免了一定的数据读取冲突造成错误。土壤温湿度的检测与控制部分又包括了土壤温湿度的检测和显示、智能浇水两部分。LCD显示屏显示的数据由单片机89C51的输出提供,AT89C51作为中央处理器处理各种输入参数,包括:地表以下温度和湿度,而温度和湿度的参数由SHT-11传感器提供。智能浇水系统有两种工作模式:自动模式和手动模式。自动模式状态时单片机自动处理各种情况,根据程序设定进行工作,手动部分是由单片机从时钟芯片DS1302读入月份与每天的实时时刻,通过软件程序设定定时浇水的时间与浇水的量。蓄水箱智能上水及水位报警采用纯硬件电路控制,实现水箱水位实时监测、智能上水以及水位上下限报警的功能。

2、系统设计

2.1系统功能特色简介

(1)选择性浇水。在每次浇水前,系统会对苗圃土壤湿度进行检测,如果超过一定值,就不进行浇水操作,防止过度浇水、浪费水资料。如果低于设定值但此时光照强度过高不适于浇水,则系统也不会浇水。

(2)时间显示。系统统内部装有一块DS1302时钟芯片,可以准确的显示时间,用户可以根据时间记录花期。

(3)浇水设置。本系统增加了外设键盘,用户可根据花的品种不同而设定不同的浇水限制。

(4)数据保存。系统内部放置了一块EEPROM,可对用户的设置进行保存,具有掉电保护功能。

2.2功能指标

(1)空气温度、空气湿度和土壤湿度的测量精度分别为:1℃,1%RH,1%RH;

(2)LCD显示温湿度、土壤湿度、光照强度以及时间和浇水限值;

(3)电磁阀开断灵敏度0.1s;

(4)存储芯片擦写次数可达10万次以上。

在本次设计中采用纯硬件控制电路,利用555定时器的定时与驱动功能制作一个性能可靠、成本低的蓄水箱智能供水系统。该系统主要分为模拟检测和逻辑判断两大块。模拟检测实际上测量的是B、C、D、E四个探头相对于A点(即地)电位的到底,在水箱里的四个探头B、C、D、E各点和A点之间实际上就相当于一个可变的电阻[3]。当电阻值发生变化时,各点的位值不同,再通过逻辑判断及可以得到不同的输出,以达到操作控制不同的动作[4]。

3、系统实现

3.1温湿度采集模块

温湿度采集部分使用DHT11数字温湿度传感器,DHT-11可通过I2C总线直接输出数字量湿度值,从其相对湿度输出特性曲线中可以看出,DHT11的输出特性呈一定的非线性,为了补偿湿度传感器的非线性以获取准确数据,可按式(3-1)修正湿度值:

式中,SORH表示传感器相对湿度测量值,系数取值分别如下:

12位时:c1=-4,c2=0.0405,c3=-2.8×10-6;

8位时:c1=-4,c2=0.648,c3=-7.2×10-4。

温度值输出

DHT-11温度传感器的线性非常好,实际温度值T可用公式(3-2)将温度数字输出转换而来:

式中,SOT表示传感器温度测量值。当电源电压为5V,温度传感器的分辨率为14位时,d1=-40,d2=0.01;当温度传感器的分辨率为12位时,d1=-40,d2=0.04。

3.2土壤湿度采集模块

土壤数据采集模块采用Arduino Moisture Sensor土壤湿度传感器,这个水分传感器可用于检测土壤的水分,当土壤缺水时,传感器输出值将减小,反之将增大,使用AD转换器读取它的值。然后传送给单片机,单片机根据数值大小来判断是否该浇水。AD采用了TLC2543,它是TI公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。[3]由于是串行输入结构,能够节省Arduino系列单片机I/O资源;并且性能优越,价格低廉,在仪器仪表中应用较为广泛。2.5光照强度采集模块

光照采集采用了光敏电阻,根据光敏电阻阻值说光照强度的不同而大小不一样这一特性采用电阻分压的方式采集光敏电阻两端电压值而经AD转换读取数据,根据AD值求出光照强度。

3.3时间显示模块

实时时钟模块采用DL1302芯片实现,该芯片是美国比较通用的产品。工作电压宽达2.5~5.5V[4]。2.10 浇水模块

浇水部分采用了一个G1/42分口径电磁阀,单片机通过分析采集来的信息控制继电器的开断进而控制电磁阀的通断。

3.4电源模块

本系统创新性的加入了电源模块,不用再为不好供电而发愁。由于要12864液晶和功率较大的电磁阀本系统的稳压芯片才用了功率较大抗干扰强的的LM2596和LM7812。

4、软件实现

4.1系统软件设计

土壤温湿度检测与控制系统有智能和手动两种浇水方法。通过一个按键确定工作状态,该开关键按下则为手动模式,否则为自动模式。手动浇水时,由单片机向时钟芯片DS1302读取实时时间,若与设定的定时浇水的时间相符,则单片机执行定时器/计数器0中断程序,完成定量浇水。智能浇水时,传感器起感应作用,当传感器把感应到的土壤温湿度信号传给单片机,由控制程序判断是否需要进行浇水,若需要浇水,单片机输出高电平打开电磁阀,给苗圃浇一定量的水。由此实现了智能浇水,浇水的上下限由程序编程时设定。系统软件设计图如下:

5、总结

本次设计的苗圃智能浇水系统以电子类的智能浇灌器的工作原理为参考,运用现代传感器技术及单片机控制技术构成一个土壤温湿度采集与控制系统。再用数字电路控制智能给水系统及时的给浇水系统供水。整个苗圃智能浇水系统包括土壤温湿度的检测和显示、智能浇水和蓄水箱智能上水及水位报警三个部分。

在当前水资源越来越宝贵的情况下,如果精细化浇灌,利用好每一滴水是非常重要的,本文中描述的灌溉系统如果批量投入可以大大改善传统浇灌苗圃的方法,更科学,更节能。

上一篇:单机成本核算在港口设备管理中的实施应用 下一篇:新技术助力铜线进入千兆时代