简介:
现代社会人们在工作生活中很少能接触到大自然,不管从心情,还是健康上考虑,在家里又或者办工桌旁种上几盆花草很有必要,于是问题就来了,花草需要精心照料,定时定量的浇水必不可少,而现代生活节奏越来越快,我们几乎没有时间去照顾它们,更何况,如果旅行,出差等长时间离家,回来之后只能望着一盆枯草空流泪了,但现在这都不是问题,“花园管家”的出现完美的解决了这一切!
“花园管家”是由Openjumper开发制作的一款基于Arduino的自动浇花套件。集成诸多传感器,通过编程可实现根据时间,温度,土壤湿度智能判断是否需要浇水以及浇水量,还能预设时间浇水量等参数定时定量浇水,另外,Openjumper提供全套的安装,配置教程,让没有编程基础的朋友也能直接使用,当然,提前预留了丰富的接口也为DIY爱好者们添加更多功能创造了可能。
特点:
- 集成Arduino板卡,可编程DIY操控。
- 集成外部供电接口,可脱离电脑独立工作。
- 集成全彩指示灯,指示植物运行的各种状态。
- 集成温度传感器,实时读取室内温度,可以禁止在高温度情况下给植物浇水,避免植物死亡。
- 集成土壤湿度传感器,实时监控土壤湿度。
- 集成时钟模块,支持定时浇灌。
- 通过调节阀值预设期望土壤湿度。
- 具有多个模拟、数字接口,支持添加模块、DIY自己的个信需求。
清单:
- Arduino Nano控制器 * 1
- 花园管家”底板 * 1
- 土壤湿度传感器 * 1
- 抽水泵 * 1
- 电源适配器 * 1
- USB下载线 * 1
- 连接线若干
功能测试(下五点测试功能在出厂前已经经过检测,可根据各自情况更改添加代码):
1、全彩指示灯测试:
/********** www.openjumper.cn***********/ /********** Garden_RGB test*************/ int R = 5; int G = 6; int B = 9; void setup() { pinMode(R, OUTPUT); pinMode(G, OUTPUT); pinMode(B, OUTPUT); digitalWrite(R, HIGH); digitalWrite(G, HIGH); digitalWrite(B, HIGH); } void loop(){ digitalWrite(R, LOW); delay(1000); digitalWrite(R, HIGH); digitalWrite(G, LOW); delay(1000); digitalWrite(G, HIGH); digitalWrite(B, LOW); delay(1000); digitalWrite(B, HIGH); }
2、继电器测试(继电器链接水泵,通过控制继电器来控制水泵开关状态)
/********** www.openjumper.cn***********/ /********** Garden_relay test*************/ int Relay_pin1 = 4; int Relay_pin2 = 7; //定义继电器/水泵 引脚 void setup() { pinMode(Relay_pin1, OUTPUT); pinMode(Relay_pin2, OUTPUT); } void loop() { digitalWrite(Relay_pin1, HIGH); digitalWrite(Relay_pin2, HIGH); //关闭继电器 delay(1000); // 等待1000毫秒 digitalWrite(Relay_pin1, LOW); digitalWrite(Relay_pin2, LOW); //打开继电器 delay(1000); // 等待1000毫秒 }
3、温度传感器测试(检测空气中温度)
/********** www.openjumper.cn***********/ /********** Garden_temperature test*************/ int temppin = A0; int read_temprature() { int val,temperature; val=analogRead(temppin); temperature = (val*0.0048828125*100); //把读取到的val转换为温度数值 //系数一:0.00488125=5/1024,0~5V对应模拟口读数1~1024 //系数二:100=1000/10,1000是毫伏与伏的转换;10是每10毫伏对应一度温升。 return temperature; } void setup(){ Serial.begin(9600); } void loop() { int i; i = read_temprature(); Serial.print("temperature="); Serial.println(i); delay(100); }
4、土壤湿度检测
/********** www.openjumper.cn***********/ /********** Garden_moisture test*************/ int SoilSensor = 2;//将数字接口定义为土壤传感器; void setup() { Serial.begin(9600); pinMode(SoilSensor, INPUT);//将SoilSensor定义为输入; } void loop() { int SoilState = digitalRead(SoilSensor);//读取SoilSensor Serial.println(SoilState);//将SoilSeneor的值显示在串口监视器 delay(100); }
5、时间模块测试
参考链接:http://www.openjumper.cn/rtc1307/
使用步骤:(推荐给想要DIY的用户,用户手中拿到的产品已经是固定了程序,不用经过以下步骤,即可安装下面第四步开始操作)
1、下载arduino IDE(给主板下载程序的软件)
参考如下地址:http://www.arduino.cn/thread-5838-1-1.html
2、给控制器安装驱动(用miniUSB线将控制器连接至电脑)
下载驱动文件
计算机右键-属性-设备管理器-COM口下弹出对应驱动安装提示,选择驱动更新。驱动安装好后会提示对应COM号
驱动安装参考:http://www.arduino.cn/forum.php?mod=viewthread&tid=1008&highlight=%E9%A9%B1%E5%8A%A8
3、下载程序
提供例程功能描述:在早晨定时开启土壤湿度检测,这时候若检测到土壤干燥,就打开继电器,控制水泵喷水多少
程序.ino文件下载:
打开已经下载好的程序,选择板卡为NANO 328p 这个型号,串口号选择为刚驱动安装时候对应的端口号
点击下载按钮
4、水泵进水口接入装满水的桶里,将土壤传感器插入土壤中,连接电源供电