[项目]自动浇花器 精华

2016-5-6 12:45:41 [显示全部楼层]
17735浏览
查看: 17735|回复: 9

[项目] 自动浇花器

[复制链接]
本帖最后由 gada888 于 2021-12-27 08:46 编辑

自动浇花器

应网友之要求,同时也按他的意图做的浇灌器,因有其它功能未添加,不算完工,他的核心诉求是用一个单片机来给他家里的多种宝贝植物按需供水(好像很精贵的植物的样子),未能最后完工,所以暂不把程序贴出来。同时希望同学们把生活中的痛点告诉楼主。也许楼主能做。而且楼主保证做好第一个发给你。当然你也可以到我网店任挑一个你喜欢的。



硬件清单:Arduino Diecimila 328P,

土壤探测器:4只

继电器:4连-5v10A

auduino 快速焊接扩展板: 一只

水泵:12V-4只(视频里没连,现手头没水泵)
连线部分:数字IO的D3,D5,D7,D9分别连继电器IN1,IN2,IN3,IN4,继电器的VCC和GND连Arduino的vcc和gnd。每只土壤传感器的信号口分别连arduino的A0,A1,A2,A3.
每只土壤传感器的vcc和gnd分别连arduino 的Vcc和GND。
顺便说一下,我没有8连继电器只好用了4连的,这种arduino板有6个analog口,应该可以连6个土壤湿度探头。我会再找一个两联继电器,这样把它凑够六个。


自动浇花器图1




更新了,连了6个土壤探测器,也就是应该连6个水泵。我手边目前就两个,还有一个测试时候发现是坏的。控制板换成maga板的话,理论上可以连16个土壤探头。但没有实际测试过。


先声明,源码写的太久找不到了。于是现写了一个,arduino测试通过,没有在连接硬件调试。因为手头也缺乏多个土壤探测头。

自动浇花器图2
四个土壤探头接arduino A0-A3口
int soilPin1 = A0;
int soilPin2 = A1;
int soilPin3 = A2;
int soilPin4 = A3;

继电器接arduino D7-D10口
int pump1=7;               //pump1 at pin 7
int pump2=8;               //pump2 at pin 8
int pump3=9;               //pump1 at pin 9
int pump4=10;               //pump2 at pin 10
关于土壤探头,它的模拟值是0-1023,我设置的临界值是900,这个可以调整的。是aruduino程序里调整参数。小于900需要防水。大于900不需要水。一个是通过调整探头的电位器,把灯调亮。
自动浇花器图3
  1. //this code is written by gada888 in 26-12-2021
  2. int soilPin1 = A0;
  3. int soilPin2 = A1;
  4. int soilPin3 = A2;
  5. int soilPin4 = A3;
  6. int soilReading1;
  7. int soilReading2;
  8. int soilReading3;
  9. int soilReading4;
  10. int pump1=7;               //pump1 at pin 7
  11. int pump2=8;               //pump2 at pin 8
  12. int pump3=9;               //pump1 at pin 9
  13. int pump4=10;               //pump2 at pin 10
  14. int tempo=2000;             //watering time of 2 seconds
  15. int ledboard=13;           //on board led at pin 13
  16. void setup()
  17. {
  18. Serial.begin(9600);
  19. pinMode(pump1,OUTPUT);       //pump1 output
  20. pinMode(pump2,OUTPUT);       //pump2 output
  21. pinMode(pump3,OUTPUT);       //pump3 output
  22. pinMode(pump4,OUTPUT);       //pump4 output
  23. pinMode(ledboard,OUTPUT);    //on board led output
  24. digitalWrite(ledboard,LOW);  //turn off Arduino led
  25. }
  26. void loop()
  27. {
  28.   soilReading1 = analogRead(soilPin1);
  29.   soilReading2 = analogRead(soilPin2);
  30.   soilReading3 = analogRead(soilPin3);
  31.   soilReading4 = analogRead(soilPin4);
  32.   Serial.print("Analog output: ");
  33.   //Serial.println(readSensor());
  34. if (soilReading1 < 900) {
  35.   Serial.println("pump1 needs water");
  36.   digitalWrite(pump1,HIGH); //turn on pump1
  37.   delay(tempo);             //wait some time
  38.   digitalWrite(pump1,LOW);  //turn off pump1
  39.   } else if (soilReading2 < 900) {
  40.   Serial.println("pump2 needs water");
  41.   digitalWrite(pump2,HIGH); //turn on pump2
  42.   delay(tempo);             //wait some time
  43.   digitalWrite(pump2,LOW);  //turn off pump2
  44.   } else if (soilReading3 < 900) {
  45.   Serial.println("pump3 needs water");
  46.   digitalWrite(pump3,HIGH); //turn on pump1
  47.   delay(tempo);             //wait some time
  48.   digitalWrite(pump3,LOW);  //turn off pump1
  49.   } else if (soilReading4 < 900) {
  50.   Serial.println("pump4 needs water");
  51.   digitalWrite(pump4,HIGH); //turn on pump2
  52.   delay(tempo);             //wait some time
  53.   digitalWrite(pump4,LOW);  //turn off pump2
  54. }
  55. }
复制代码










virtualwiz  中级技匠

发表于 2016-5-6 13:27:32

LZ加油~
回复

使用道具 举报

dsweiliang  初级技神

发表于 2016-5-6 13:59:37

学习学习
回复

使用道具 举报

大连林海  初级技神

发表于 2016-5-6 17:30:01

加油 加油
回复

使用道具 举报

凌风清羽  中级技匠

发表于 2016-5-11 10:11:02

路过,顶一个~~
回复

使用道具 举报

gada888  版主
 楼主|

发表于 2016-5-11 19:53:11

更新了一下。
回复

使用道具 举报

20060606  高级技匠

发表于 2020-8-17 06:12:45

好创意,赞一个
回复

使用道具 举报

3PDy1MnK  学徒

发表于 2021-12-26 11:32:23

楼主,做出来了吗
回复

使用道具 举报

gada888  版主
 楼主|

发表于 2021-12-26 21:29:52

3PDy1MnK 发表于 2021-12-26 11:32
楼主,做出来了吗

看上面,已更新
回复

使用道具 举报

腻了匿了  学徒

发表于 2022-3-4 16:03:22

楼主,卖么
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4 备案 沪公网安备31011502402448

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail