_SKU_KIT0135_自动浇花套件 - jimaobian/DFRobotWikiCn GitHub Wiki
概述
随着人们生活节奏的加快,人们开始变得越来越忙碌,偶而出差、旅行、探亲也是很无可避免的事情,但这个时候问题来了,家中心爱的花草有谁来照管? 一个好的生活环境,植物是必不可少的一部分。据了解,80%的花草生长问题是由于不按时浇水导致的。特别是在都市生活的白领们,平时工作时间长,经常加班,生活不规律。辛苦几个月种的花,可能就因为一两周的不停加班而凋谢。直到某一天突然看到,心情就会变得很差,影响工作情绪。这对广大爱花人士来说,是一件非常心痛的事情,辛苦工作几许,却因为出差几天,加班几天,旅行几天,便失去了爱花的生命。 DFRobot专为广大DIY人士,养花爱好者推出了一款可编程自动浇花套件,基于ESP8266控制器设计,使用土壤湿度传感器,配上空气温湿度传感器,可以实时监测当前温湿度和土壤湿度。可手动设置湿度阈值,当湿度低于一定数值时,自动开启水泵。适用于不同品类的植物。集成 Wi-Fi MAC/ BB/RF/PA/LNA,使实现物联网远程控制。即使不在家也可以自动照顾您的花草,免除您的后顾之忧。
这款浇花套件集成度较高,板载4个模拟输入接口除了可以接套件中提供的土壤湿度传感器外,你也可以根据需要添加其它模拟量的传感器模块,4个蠕动泵接口除了可以连接控制我们提供的蠕动泵以外,你也可以用于连接其它驱动模块,如风扇等。套件中包含一套控制器主板的外壳,你可以根据自己的需求选择是否使用。
技术规格
- DC输入电源电压:6~23V
- 具有4个模拟信号输入接口
- 4个蠕动泵驱动接口
- 具有室内温度和湿度检测
- 板载蜂鸣器
- 支持USB程序下载
- 电源接口:DC2.1
- 控制器尺寸:90 x 70 x 28mm
传感器资料
配送清单
- 自动浇花系统控制器 x1个
- Micro USB线 x1根
- 土壤湿度传感器 x1个
- 蠕动泵 x1个
- 12V1A电源适配器 x1个
- 橡胶水管 x1米
- 塑料外壳 x1个
- 十字螺丝刀 x1个
- 一字螺丝刀 x1个
组装示意图
- 提示:USB接口仅用于下载程序使用,无法为整个系统供电。
Arduino 样例程序
测试传感器
-
下载DHT11库文件
-
复制以下代码上传至主控器
| **注:**此代码作用为将测得的传感器数据上传到电脑端的串口监视器,不具备浇花功能。 |
#include <DFRobot_DHT11.h>
DFRobot_DHT11 DHT;
#define DHT11_PIN 10
void setup(){
Serial.begin(115200);
}
void loop(){
DHT.read(DHT11_PIN);
Serial.print("temp:");
Serial.print(DHT.temperature);
Serial.print(" humi:");
Serial.println(DHT.humidity);
delay(1000);
}
结果
- 打开串口监视器,选择波特率和程序中一致,本示例为115200,可观察到如下结果。
测试ADC(PCF8591)
-
复制以下代码上传至主控器
| **注:**此代码作用为读取PCF8591各CH口的数据,不具备浇花功能。 |
#include <DFRobot_PCF8591.h>
DFRobot_PCF8591 PCF;
byte value[4];
void setup()
{
PCF.init(0x48);
Serial.begin(9600);
}
float val=0;
void loop()
{
int i;
for(i=0;i<4;i++)
{
value[i]=PCF.analogRead(i);
//3.3 is the reference voltage
val=((float)value[i])/255*3.3;
Serial.print(val); Serial.print("V ");
}
Serial.println();
delay(100);
}
测试蜂鸣器
| **注:**此代码作用为控制蜂鸣器发声,不具备浇花功能。测试蜂鸣器需外接电源,USB供电无法驱动 |
void setup() {
}
void loop() {
//15脚的蜂鸣器以440HZ的频率发声:
tone(15, 440, 200);
delay(200);
}
测试水泵
| **注:**此代码作用为控制水泵pump0和pump1打开和关闭,不具备浇花功能。 |
void setup() {
//水泵控制引脚初始化
pinMode(2, OUTPUT);
digitalWrite(2, LOW);
}
void loop() {
pumpOn();
delay(1000);
pumpOff();
delay(1000);
}
//水泵打开
void pumpOn() {
digitalWrite(2, HIGH);
}
//水泵关闭
void pumpOff() {
digitalWrite(2, LOW);
}
自动浇花示例
| **注:**本示例程序未使用DHT11温湿度传感器的数据,仅仅使用土壤湿度传感器数据,当土壤湿度传感器检测数据小于设定湿度时,打开水泵,土壤湿度大于等于设定湿度时关闭水泵。 土壤湿度传感器接CH0,蠕动泵接PUMP0 |
#include <DFRobot_PCF8591.h>
DFRobot_PCF8591 PCF;
byte value[4];
void setup()
{
PCF.init(0x48);
Serial.begin(9600);
pinMode(2, OUTPUT);//设置IO2输出
}
float val=0;//初始化土壤湿度传感器
void loop()
{
int i;
for(i=0;i<4;i++)
{
value[i]=PCF.analogRead(i);
//3.3是ADC的基准电压
val=((float)value[i])/255*3.3;//读取各CH口的模拟值
Serial.print(val);
Serial.print("V ");
}
Serial.println();
delay(100);
if(value[0]<=75)//当土壤湿度低于某个值时
digitalWrite(2, HIGH);//开启蠕动泵进行浇水
else
digitalWrite(2, LOW);//否则关闭蠕动泵
}
常见问题
还没有客户对此产品有任何问题,欢迎通过qq或者论坛联系我们!
| 更多问题及有趣的应用,可以 访问论坛 进行查阅或发帖。 |