Arduino与水泵实验+土壤湿度传感器

1 水泵实验
我们这里是使用的继电器控制的水泵,注意再实验的时候电池的电压不要超过6v,太大容易烧毁水泵,如果是长时间的使用水泵,要注意将水泵放入水中,这样可以达到给水泵降温的效果。
1、全新5V继电器模块
2、可以用作单片机开发板模块,可以用作 家电控制
3、TTL控制信号
4、控制直流或者交流信号,可以控制220V交流负载。
5、有一个常开和一个常闭触点
6、有电源指示灯
7、有控制指示灯,吸合亮,断开不亮
8、三极管驱动增加继电器线圈,控制脚高阻抗。
9、控制脚有下拉电路,防止悬空继电器误动作
在这里插入图片描述
继电器属于数字信号模块,我们通过继电器数字信号使继电器开合来控制水泵。我们使用Arduino 控制器的数字接口13,输出高电平延时1 秒后,输出低电平1 秒,即为开关断开一秒再接通一秒。
参考源程序:

int RelayPin=13;
void setup() {
  // put your setup code here, to run once:
pinMode(13,OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
digitalWrite(13,HIGH);
delay(1000);
digitalWrite(13,LOW);
delay(1000);
}

2 土壤湿度传感器
土壤湿度传感器用于土壤的湿度检测。可通过电位器调节土壤湿度的阀值,顺时针调节,控制的湿度会越大,逆时针越小;湿度低于设定值时,DO输出高电平,模块提示灯亮;湿度高于设定值时,DO输出低电平,模块提示灯灭。工作电压3.3V-5V。3V时,在空气中AO读取的值最大为695,浸泡在水里的 最小值245;5V时,在空气中AO读取的值最大为1023,浸泡在水里的最小值245。
接线:VCC接 Arduino 3.3V或5V,GND接Arduino GND,AO接ArduinoAnalog。
DO接Arduino Digital 4
在这里插入图片描述
代码:

#define PIN_AO 2
#define PIN_DO 4
 
void setup() {  
  pinMode(PIN_AO, INPUT);
  pinMode(PIN_DO, INPUT);  
  Serial.begin(9600);  
}  
 
void loop() {
  Serial.print("AO=");  
  Serial.print(analogRead(PIN_AO));
  Serial.print(", DO=");  
  Serial.println(digitalRead(PIN_DO));
  delay(2000);  
}

3 自动浇花(土壤湿度传感器+水泵)
在这里插入图片描述
代码:

#include <Servo.h>
 
int sensorpin = 4;//传感器引脚 有水为0;无水为1
float pumpin = 13;//水泵引脚 低电平触发 digitalWrite(8,LOW);
int var;
int var2;
int var3;
int sensorpin2 = A2;
void setup() {
  Serial.begin(9600);
  pinMode(sensorpin,INPUT);
  pinMode(sensorpin2,INPUT);
  pinMode(pumpin,OUTPUT);
  digitalWrite(pumpin,HIGH);//水泵关闭
}
void loop() {
 
     var = digitalRead(sensorpin);
     var2=digitalRead(pumpin);
     var3=analogRead(sensorpin2);
     
    Serial.print("var3:"); 
    Serial.println(var3);
    
  //如果传感器检测值为1表示没水;0表示有水
  if(var==1&&var3>600)
  {
    Serial.print(var); 
    Serial.println("缺水状态!");
    digitalWrite(pumpin,LOW);//水泵打开
    Serial.println("水泵状态-打开");
     
   delay(1000);//浇水的时间是10秒
   
    digitalWrite(pumpin,HIGH);//水泵关闭
     Serial.println("水泵-关闭");
    
 
    }
    else
    {
    digitalWrite(pumpin,HIGH);//水泵关闭
    Serial.print(var); 
    Serial.println("不缺水状态!");
    Serial.println("水泵-关闭");
   
    }
 
 
   delay(1000);//十秒钟扫描一次;
     //delay(36000000);//10小时扫描一次
 
}

  • 21
    点赞
  • 238
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
在本教程中,我们将学习如何使用湿度传感器,水泵和绿色LED闪烁来制作植物浇水系统。 硬件组件: Adafruit 12V水泵×1个 Arduino UNO Wifi版本2×1个 SparkFun土壤湿度传感器(带螺钉端子)×1个 Arduino 4继电器护罩×1个 0.96英寸OLED 64x128显示模块×1个 跳线(通用)×1个 面包板(通用)×1个 LED(通用)×1个 软件应用程序和在线服务: Arduino IDE 在本教程中,我们将学习如何制作植物浇水系统 如果一切正常,请使用湿度传感器,水泵并使绿色LED闪烁,并使用OLED Display和Visuino。 电路: 将OLED显示引脚[VCC]连接到Arduino引脚[5V] 将OLED显示引脚[GND]连接到Arduino引脚[GND] 将OLED显示引脚[SDA]连接到Arduino引脚[SDA] 将OLED显示引脚[SCL]连接到Arduino引脚[SCL] 将Arduino 5V连接到压电蜂鸣器模块引脚VCC 将Arduino GND连接至绿色LED负极引脚 将Arduino GND连接到红色LED负极引脚 将Arduino数字引脚3连接到绿色LED负极引脚 将Arduino数字引脚2连接到红色LED负极引脚 将Arduino 5V连接到湿度传感器模块引脚VCC 将Arduino GND连接到湿度传感器模块引脚GND 将Arduino模拟引脚0连接到湿度传感器模块引脚A0 将继电器VCC引脚(+)连接到Arduino 5V引脚 将继电器GND引脚(-)连接到Arduino GND引脚 将中继信号引脚连接到Arduino数字引脚10 将电源12V(+)连接到泵红色导线(+) 将电源12V(-)连接到继电器引脚(com) 将泵黑线(-)连接到继电器针(NO)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值