int led = 8; //Variable, in der gespeichert wird, an welchem Pin die LED angeschlossen ist.
int messwert = 0; //Variable, in der der Messwert gespeichert wird.
void setup() {
pinMode(led, OUTPUT); //Pin, an dem die LED angeschlossen ist wird als Ausgabe (OUTPUT) definiert.
}
void loop() {
//In die Variable messwert, wird der aktuelle Messwert des Sensors geschrieben, der an A0 angeschlossen ist.
messwert=analogRead(A0);
//Werte werden mit der map()-Funktion angepasst (zur Ermittlung der Werte in der map() Funktion müssen die Sensoren vorher mit einem Hilfsprogramm kalibriert werden)
messwert = map(messwert,452,113,0,100);
Serial.print("Feuchtigkeits-Messwert: "); //Ausgabe des...
Serial.println(messwert); //...Messwerts im seriellen Monitor.
//Um Strom zu sparen ist es sinnvoll hier eine Zeit (in Millisekunden) anzugeben, wie oft der Messwert abgefragt werden soll. DIes ist die Reaktionszeit der Ampel- Soll die Ampel sofort reagieren, muss der Befehl gelöscht werden.
delay(2000);
//Im Folgenden schaltet die Sonnenblume bei einer Bodenfeuchte kleiner als 20% ihre LED an. Passen Sie diesen Wert Ihren Wünschen an.
if(messwert < 20) { //Wenn der Messwert kleiner als 20% ist, sollte die Pflanze gegossen werden.
digitalWrite(led, HIGH); //Schaltet die LED ein
}
if(messwert > 20){//Wenn der Messwert größer als 20% ist, sollte die Pflanze gegossen werden.
digitalWrite(led, LOW); //Schaltet die LED ein
}
}