Mikrodator med jordfuktighetsgivare/läckagegivare
Beskrivning hur man mäter jordfuktighet eller läckakge med en mikrodatorn ESP8266.

Detta steg förutsätter att du har fått igång din mikrodator och kopplat in den till datorn samt fått igång Arduino IDE. Hur du kommer igång med din mikrodator finns beskrivet här.

Här kommer en lista med komponenter som används nedan:

Första steget är att koppla in din fuktighetsgivare. Det finns 4 stycken stift på givaren VCC, GND, D0 och A0 samt 2 stift där sensorn kopplas in. För att mata den med spänning kopplar du stiften VCC och GNS till stiftet 3V3 resp GND på mikrodatorn. Stiftet D0 är en digital utgång och A0 är en analog utgång.

Vi börjar med den digitala utgången. Den är låg (0V) när fuktigheten överstiger ett visst gränsvärde och annars hög (3.3V). Gränsvärdet ställer man in med potentiometern som finns på modulen. Att läsa in värdet på den digitala ingången är väldigt enkelt. Koppla in stiftet D0 på modulen till stiftet D0 på mikrodatorn.

Klistra sedan in följande program i Arduino IDE:

void setup() {
 // Sätt hastigheten på serieporten till 9600
 Serial.begin(9600);
 // Sätt stiftet (D0) till ingång
 pinMode(D0, INPUT);
}
void loop() {
 // Läs in värdet från stiftet D0
 int state = digitalRead(D0);
 // Skicka värdet till serieporten
 Serial.println(state);
}

Ladda ner programmet till din mikrodator. När nedladdningen är klar ska du öppna menyn Verktyg/Seriell monitor för att kunna ta emot värdet från mikrodatorn. Välj 9600 baud längst ner till höger om det inte redan är valt.

Nu ska du få upp en 1:a om fuktighetsgivaren inte är i kontakt med vatten. Om du stoppar ner den i ett glas med vatten ska den visa en 0:a. Genom att sänka den upp och ner i glaset kan du se vad gränsvärdet är. Om du ändrar på potentiometern (blåa kuben på modulen) ser du att du kan ändra gränsvärdet.

Nu ska vi testat att läsa in det analoga värdet också. Det är nästan lika enkelt. Koppla stiftet A0 på modulen till stiftet A0 på mikrodatorn. Klistra sedan in programmet nedan och ladda ner det till mikrodatorn.

void setup() {
 // Sätt hastigheten på serieporten till 9600
 Serial.begin(9600);
}
void loop() {
 // Läs in det analoga värdet
 int sensorValue = analogRead(A0);
 // Skicka värdet till serieporten
 Serial.println(sensorValue);
}

Obs! För att jordfuktighetsgivaren ska hålla länge är det viktigt att stänga av givaren mellan mättillfällena. Är den påslagen hela tiden försvinner (ärgar) blecken på delen i jorden så den slutar att fungera. Enklast är att koppla in matningen till givare till D0 och sedan slå av den mellan varje mätning. Det går även att laga jorddelen genom att löda fast en kopparkabel eller ersätta den med 2 spikar eller ledningar.