智能浇花系统设计

智能浇花系统设计

系统概要:
该系统功能为对土壤湿度值进行实时监测,并及时控制土壤湿度值。将测量的湿度值返回给树莓派进行数据处理通过控制模块进行水泵加水进而进行湿度控制。智能浇花系统主要分为两个部分:监测模块选用湿度传感器YL-69以及压力传感器来对土壤中湿度值进行实时检测。湿度值的控制则使用调速模块,通过控制连接水管的直流水泵的加水时间来实现对土壤浇水。

智能浇花系统其应件主要包括:树莓派、土壤湿度传感器YL-69、微型电子秤、调速模块、AD转换模块、3V直流水泵、面包板和杜邦线若干,其中主控部分选择树莓派来实现控制。控制部分通过调速模块来控制水泵,电源模块预计采用5V电源供电。

**

树莓派

**
智能浇花系统设计_第1张图片
湿度传感器YL-69模块
智能浇花系统设计_第2张图片
(1)VCC外接3.3V-5V电压;
(2)GND外接地;
(3)AO模拟量输出接口;
(4)DO数字量输出接口(0/1);
智能浇花系统设计_第3张图片
湿度传感器特点:

(1)具有输出指示灯,低电位有效输出灯亮;
(2)带TTL高低电位信号和模拟信号输出;
(3)温度感应灵敏度可通过电位器调节;
(4)输出信号可直接接单片机IO口或AD转换;
(5)带固定安装孔,方便固定安装;
(6)湿度检测精度为5%。

A/D转换模块
智能浇花系统设计_第4张图片
智能浇花系统设计_第5张图片
(1)VCC外接3.3V-5V电压;
(2)GND外接地;
(3)SCL时钟线接树莓派SCL专用引脚;
(4)SDA数据输出线接树莓派SDA专用引脚;

微型电子秤
智能浇花系统设计_第6张图片
(1)内置A/D转换模块和压力传感器,可将测量到的压力值转换为数字量;
(2)最大量程为5kg;
(3)容易产生测量偏差,需要多次测量取平均值。

直流水泵
智能浇花系统设计_第7张图片
面包板
智能浇花系统设计_第8张图片
实验用土壤(不同数字对应不同土壤湿度)
智能浇花系统设计_第9张图片

设计系统前的准备实验

电子秤的标定实验:
电子秤的标定需要采用特定重量的砝码(无砝码情况下可采用逐次加入定量水的方法,即5ml等于5g),根据放入砝码的重量差,对比电子秤内部A/D转换模块输出的数值,得到一组对应关系,如下图所示
智能浇花系统设计_第10张图片

土壤湿度传感器的标定:

土壤湿度传感器的标定需要一组已知含水量的土壤,标定实验中使用100g干土(土壤经过1~2天暴晒),根据插入土壤湿度传感器后返回的数值,得到土壤含水量和测量值的对应关系,再进行拟合(此处使用了有理模型)得到一个含水量和测量值的转换关系,由此完成对土壤湿度传感器的标定。下图为测定的加水量和测定值的对应关系曲线。

智能浇花系统设计_第11张图片
误差分析:
对于本次标定实验,我们认为并不能称其为精确的标定原因:(1)干土在加水之后会不可避免地出现结块情况,直接导致了土壤湿度不均匀。
(2)湿度传感器的AD值与土壤的松紧程度有直接且明显的关系,而本次实验并未对其做变量控制。
(3)本实验直接把(加水量/干土重*100%)作为湿度值,忽略了土壤在饱墒的情况下,水会沉积在实验容器底部的情况,所以加水量21~29g可能不符合实际情况。

湿度变化曲线测定实验:

实验准备:
我们对水泵满速抽水的速度进行了粗略的测定,测得抽水量为15~17(g/s)我们通过对干土和定量的水混合,获得湿度为12%、14%、17%、18%的土壤
实验步骤:将湿度传感器插入湿土中,水泵依次满速运转0.1秒(加水量为1.5~1.7g),加水进不同湿度的土壤,并进行每0.2秒一次,总计10分钟的测定,得到的4组数据绘制成曲线图(如下图所示,图中为前5分钟的测定曲线,纵坐标为湿度(%),横坐标为时间(s))
智能浇花系统设计_第12张图片
实验分析:
由图可知,水泵满转0.1s后土壤湿度趋于稳定的时间大约为>30s然而,我们对该实验的代表性持怀疑态度原因:
(1)我们使用的容器为小塑料量杯,与实际使用的花盆有很大的区别。
(2)时间可能会随加水点与湿度传感器距离的变化而变化,也有可能随容器体积而变化,本实验的实验材料并不具有现实情况的代表性。
(3)对于其它加水速度和加水量,可能等待时间也会发生变化。

系统设计:

系统组成:

智能浇花系统设计_第13张图片

系统运行步骤(文字描述与流程图):

系统初始化:
(1)将空杯子(花盆)放在压力传感器上,测量空杯子重量wp。
(2)将装入土壤的杯子放在压力传感器上,称得总重量wi。(3)插入湿度传感器,测量当前湿度hi。
(4)读取用户设置的目标湿度ht。
(5)计算:<1>计算干土重量wd=(1/(1+hi))(wi-wp) <2>计算目标湿度下需要的含水量ww_target=htwd

控制环节简介(详情见流程图、代码详见附件3
:该环节为一个死循环,循环一开始测量当前湿度h_temp与当前重量w_temp,计算得出需要加水量w_add=ww_target-ww=ww_target-h_temp*wd接下来根据w_add判断加水的档位,若w_add>4则为二档,若0 控制环节流程图:
智能浇花系统设计_第14张图片

你可能感兴趣的:(智能应用)