Bewässerungsanwendung mit Arduini Uno + vier kapazitive Feuchtesensoren + vier Pumpen

@gibgut8
NA Ja sieht aus als wurde das falsch kopiert :wink:

const byte pflanzenNum = 4;          // Anzahl der Kübel - darauf basiert dann die Pumpen etc...
const byte pumpePin[pflanzenNum] = {3, 4, 5, 6}; // Namen für Digitalpins 1-5
const byte sensorPin[pflanzenNum] = {A1, A2, A3, A4};
unsigned int sensorWert;
const unsigned int trocken = 600;
const unsigned int nass = 475;

void setup()
{
  Serial.begin(115200);
  Serial.println(F("Start..."));
  for (byte b = 0; b < pflanzenNum; b++)
  {
    pinMode(pumpePin[b], OUTPUT);
  }
}
void loop()
{
  for (byte b = 0; b < pflanzenNum; b++)
  {
    sensorWert = analogRead(sensorPin[b]);     // Wert von Sensor wird ausgelesen
    if (sensorWert > trocken)
    {
      digitalWrite(pumpePin[b], HIGH);        // Pumpe einschalten
      Serial.print(F("Pumpe"));
      Serial.print(b);
      Serial.println(F(": pumpt!"));
      digitalWrite(pumpePin, HIGH);            // Pumpe an
      Serial.println(F("Pumpe ist an"));
      delay(5000);                             // 5 Sekunden warten
      while (sensorWert > nass)                // Solange Sensorwert größer 475 ist nachfolgende Anweisungen ausführen
      {
        delay(2000);                           // 2 Sekunden Warten
        sensorWert = analogRead(sensorPin[b]); // Sensorwert auslesen. Zurück zu "while"
      }
      digitalWrite(pumpePin, LOW);             // Pumpe aus
      Serial.println(F("Pumpe ist aus"));
      // delay(3000);                          // 3 Sekunden warten
    }
  }
}

Das kompiliert, aber ob das tut was du willst?

Der Sketch verwendet 2374 Bytes (7%) des Programmspeicherplatzes. Das Maximum sind 32256 Bytes.
Globale Variablen verwenden 198 Bytes (9%) des dynamischen Speichers, 1850 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes.