In diesem Abschnitt wird mithilfe der Entwicklungsumgebung von Arduino (IDE) das Ein- und Ausschalten der LED programmiert. Die LED soll lediglich innerhalb der Bodenfeuchtigkeitsstufe "Nass" leuchten.

Es wird der Programmcode aus dem vorherigen Abschnitt benötigt:

int bodenfeuchtigkeit;
int bodenfeuchtigkeit_einstufungswert = 1000;
String bodenfeuchtigkeit_stufe;
int datenpin_sensor = 34;

void setup() {
  Serial.begin(9600);
}
void loop() { bodenfeuchtigkeit = analogRead(datenpin_sensor); Serial.println(bodenfeuchtigkeit); if (bodenfeuchtigkeit < bodenfeuchtigkeit_einstufungswert) { bodenfeuchtigkeit_stufe = "Trocken"; } else if (bodenfeuchtigkeit >= bodenfeuchtigkeit_einstufungswert) { bodenfeuchtigkeit_stufe = "Nass"; } delay(500); }

 

Der mit der LED verbundene Datenpin wird in der neuen Variable "datenpin_LED" gespeichert. Mithilfe der Funktion "pinMode()" wird der Datenpin als OUTPUT deklariert.

int datenpin_LED = 5;

int bodenfeuchtigkeit;
int bodenfeuchtigkeit_einstufungswert = 1000;
String bodenfeuchtigkeit_stufe;
int datenpin_sensor = 34;

void setup() {
  Serial.begin(9600);
  pinMode(datenpin_LED, OUTPUT);
}
void loop() { bodenfeuchtigkeit = analogRead(datenpin_sensor); Serial.println(bodenfeuchtigkeit); if (bodenfeuchtigkeit < bodenfeuchtigkeit_einstufungswert) { bodenfeuchtigkeit_stufe = "Trocken"; } else if (bodenfeuchtigkeit >= bodenfeuchtigkeit_einstufungswert) { bodenfeuchtigkeit_stufe = "Nass"; } delay(500); }

 

Die LED soll lediglich während der Bodenfeuchtigkeitsstufe "Nass" leuchten. Innerhalb des If-Statements kann mit der Funktion digitalWrite() der LED-Datenpin auf LOW bzw. HIGH geändert werden.

int datenpin_LED = 5;

int bodenfeuchtigkeit;
int bodenfeuchtigkeit_einstufungswert = 1000;
String bodenfeuchtigkeit_stufe;
int datenpin_sensor = 34;

void setup() {
  Serial.begin(9600);
  pinMode(datenpin_LED, OUTPUT);
}
void loop() { bodenfeuchtigkeit = analogRead(datenpin_sensor); Serial.println(bodenfeuchtigkeit); if (bodenfeuchtigkeit < bodenfeuchtigkeit_einstufungswert) { bodenfeuchtigkeit_stufe = "Trocken";
digitalWrite(datenpin_LED, LOW); } else if (bodenfeuchtigkeit >= bodenfeuchtigkeit_einstufungswert) { bodenfeuchtigkeit_stufe = "Nass";
digitalWrite(datenpin_LED, HIGH); } delay(500); }
Zuletzt geändert: Donnerstag, 1. Februar 2024, 11:22