Beberapa hari lepas soil moisture aku dah gagal berfungsi jadi aku dah tak dapat reading soil moisture dari tanah.
Aku dah perasan dari awal minggu ini yang mana sensor dah mula bagi bacaan sentiasa meningkat / mendadak / pelik.
Kalau tengok dari graf bawah ini, dah boleh perasan trending bacaan dah start pelik. Masa baru deploy dulu bacaan tak lah gila macam ini. Ini memang dah boleh perasan bacaan dia pelik.
Soil moisture yang aku pakai ini, bila tiada bacaan dia akan pergi ke maksimum value 1024mVolt. Bawah dari 900mVolt samada lembap, basah, atau kering. Detail range macam ini;
Mode | Range |
Kering | < 300 |
Lembap | 300 < 700 |
Basah | 700 < 950 |
Sensor Error | < 1024 |
void loop() { char msg[10]; char msgtext[25]; String themsg; if (!client.connected()) { reconnect(); } int soil_moisture=analogRead(A0); // read from analog pin A0 Serial.print("analog value: "); Serial.println(soil_moisture); if((soil_moisture>300)&&(soil_moisture<700)) { Serial.println("Humid soil"); sprintf(msgtext,"Humid soil",soil_moisture); } else if ((soil_moisture>700)&&(soil_moisture<950)){ Serial.println("Moist Soil"); sprintf(msgtext,"Moist Soil",soil_moisture); } else if (soil_moisture <300){ Serial.println("Needs water"); sprintf(msgtext,"Needs water",soil_moisture); } else { sprintf(msgtext,"Sensor Problem",soil_moisture); } sprintf(msg,"%i",soil_moisture); client.publish("/topic/value", msg); client.publish("/topic/msg", msgtext); delay(2000); }