中文 英文 韩语 日语
继电器
电路连接
D13-----------INT(继电器)
D6-----------DO(土壤湿度传感器)
A5----------- AO(土壤湿度传感器)
GND-----------GND
VCC-----------VCC
电路图


实例代码1
/* * 传感器-8 * 有水 LOW 0 * 无水 HIGH 1 * * 继电器-13 * 低电平触发 LOW 0 * */ #include <Servo.h> int sensorpin = 8;//传感器引脚 有水为0;无水为1int pumpin = 13;//水泵引脚 低电平触发 digitalWrite(8,LOW);int var; void setup() { Serial.begin(9600); pinMode(8,INPUT); pinMode(13,OUTPUT);} void loop() { var = digitalRead(8); //如果传感器检测值为1表示没水;0表示有水 if(var==HIGH) { digitalWrite(pumpin,LOW);//水泵打开 delay(3000);//浇水的时间是3秒 digitalWrite(pumpin,HIGH);//水泵关闭 } else { digitalWrite(pumpin,HIGH);//水泵关闭 } Serial.print("var="); Serial.println(var); int var2=digitalRead(pumpin); Serial.print("var2="); Serial.println(var2); delay(10000); //delay(3600000);//一小时扫描一次 }
实例代码2
/* * 传感器-8 * 有水 LOW 0 * 无水 HIGH 1 * * 继电器-13 * 低电平触发 LOW 0 * */ #include <Servo.h> int sensorpin = 6;//传感器引脚 有水为0;无水为1float pumpin = 13;//水泵引脚 低电平触发 digitalWrite(8,LOW);int var;int var3; int sensorpin2 = A5; void setup() { Serial.begin(9600); pinMode(sensorpin,INPUT); pinMode(sensorpin2,INPUT); pinMode(pumpin,OUTPUT); digitalWrite(pumpin,HIGH);//水泵关闭} void loop() { var = digitalRead(sensorpin); int 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小时扫描一次 }
叨叨几句... NOTHING