自動灌概(偵測土壤濕度、下雨狀況)

功能:自動灌概(土壤太乾而且沒有下雨抽水灌概)

 

材料接線:土壤濕度感測器*1、下雨狀況感測器、繼電器*1、水泵(含水管)*1、杜邦線(母對母)*2、杜邦線(公對公)*3、杜邦線(公對母)*9、麵包板*1

當土壤濕度不足,偵測數值<100,而且沒有下雨,偵測水份>500就讓打開繼電器讓水泵抽水灌概

 

程式:

 

/* 程式名稱:自動灌概(偵測土壤濕度、下雨狀況) */
void setup() {
  pinMode(10, OUTPUT);   //繼電器接在腳位10,控制水泵抽水
  Serial.begin(9600);
}
void loop() {
  int moisture = analogRead(A0);  //讀取腳位A0的土壤濕度感測器數值放在變數moisture
  int rain = analogRead(A1);      //讀取腳位A1的兩水狀態感測器數值放在變數rain
  Serial.print("土壤濕度:");
  Serial.println(moisture);       //顯示土壤濕度數值
  Serial.print("偵測下雨:");
  Serial.println(rain);           //顯示兩水狀態感測器數值
  if(moisture<100 && rain>500){   //如果土壤太乾<100而且沒有雨水>500就抽水灌概
    digitalWrite(10,HIGH);        //第10腳位送出高電位讓繼電器驅動水泵抽水
  }else{
    digitalWrite(10,LOW);        //第10腳位送出低電位讓繼電器停止驅動水泵抽水
  }
  delay(2000);                   //暫停2秒
}