Arduino Nano - Grondvochtigheidssensor

Deze tutorial legt uit hoe u een vochtigheidssensor gebruikt met Arduino Nano. We behandelen specifiek:

Hardware Benodigd

1×Official Arduino Nano
1×Alternatief: DIYables ATMEGA328P Nano Development Board
1×USB A naar Mini-B USB kabel
1×Capacitive Soil Moisture Sensor (capacitive grondvochtigheidssensor)
1×Jumper Draden (koppel draden)
1×(Aanbevolen) Schroefklem Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Breakout Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Stromsplitter voor Arduino Nano

Of u kunt de volgende kits kopen:

1×DIYables Sensorkit (30 sensoren/displays)
1×DIYables Sensorkit (18 sensoren/displays)
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.

Aankoopadvies: Veel capacitieve bodemvochtsensoren op de markt zijn van lage kwaliteit, ongeacht de versie. We raden u ten zeerste aan de sensor met TLC555I-chip van het merk DIYables te kopen via de bovenstaande link. We hebben het getest en het werkte goed.

Over de Grondvochtigheidssensor

capacitive moisture sensor vs resistive moisture sensor

Er bestaan twee types vochtigheidssensoren:

  • De resistieve vochtigheidssensor
  • De capacitive vochtigheidssensor

Beide sensoren geven informatie over de grondvochtigheid. Hun werkingsprincipe is echter verschillend. Wij raden sterk aan de capacitive sensor te gebruiken vanwege het volgende:

  • De resistieve grondvochtigheidssensor is gevoelig voor corrosie na verloop van tijd. Dit komt doordat er elektrische stroom tussen de probes loopt, wat elektrochemische corrosie veroorzaakt.
  • De capacitive grondvochtigheidssensor corrodeert veel langzamer dan de resistieve sensor. Dit komt doordat de elektroden niet direct blootgesteld zijn en daardoor beter bestand zijn tegen corrosie.

Hier ziet u een voorbeeld van een resistieve grondvochtigheidssensor die door corrosie beschadigd is geraakt.

resistive soil moisture sensor corroded

De rest van deze tutorial maakt gebruik van de capacitive grondvochtigheidssensor.

Capacitive Soil Moisture Sensor Pinout

De capacitive grondvochtigheidssensor heeft drie pinnen:

  • GND pin: deze wordt verbonden met GND (0V)
  • VCC pin: deze wordt verbonden met VCC (5V of 3,3V)
  • AOUT pin: deze analoge uitgangs pin levert een spanning die evenredig is aan het vochtigheidsniveau in de grond. Verbind deze met een analoge input pin van de Arduino.
capacitive soil moisture sensor pinout

Hoe het werkt

De AOUT pin geeft een hogere spanning als er minder water in de grond zit.

Bedradingsschema

Arduino Nano soil moisture sensor wiring diagram

This image is created using Fritzing. Click to enlarge image

Arduino Nano Code voor uitlezen van de grondvochtigheidssensor

/* * Deze Arduino Nano code is ontwikkeld door newbiely.nl * Deze Arduino Nano code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino-nano/arduino-nano-soil-moisture-sensor */ #define AOUT_PIN A6 // The Arduino Nano pin that connects to AOUT pin of moisture sensor void setup() { Serial.begin(9600); } void loop() { int value = analogRead(AOUT_PIN); // read the analog value from sensor Serial.print("Moisture: "); Serial.println(value); delay(500); }

Snelle Stappen

  • Kopieer de bovenstaande code en open deze met de Arduino IDE.
  • Klik op de Upload knop in de Arduino IDE om de code te compileren en te uploaden naar de Arduino Nano.
  • Begraaf de sensor in de grond en giet water op de grond. Of dompel de sensor langzaam onder in een glas zout water.
  • Bekijk het resultaat in de Seriële Monitor. Het ziet er ongeveer zo uit:
COM6
Send
Moisture: 581 Moisture: 581 Moisture: 575 Moisture: 566 Moisture: 556 Moisture: 547 Moisture: 539 Moisture: 530 Moisture: 521 Moisture: 513 Moisture: 506 Moisture: 500 Moisture: 495 Moisture: 492 Moisture: 490 Moisture: 489 Moisture: 488
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

※ Notiz:

  • Vermijd testen met puur water, omdat water zonder opgeloste stoffen elektriciteit niet goed geleidt, wat de sensorwaarden niet beïnvloedt.
  • De sensorwaarden zullen nooit nul worden. Meestal liggen ze tussen 500 en 600, afhankelijk van factoren zoals de diepte van de sensor, het type grond of water en de voedingsspanning.
  • Begraaf het circuitgedeelte (bovenop de sensor) niet in de grond of in water, dit kan de sensor beschadigen.

Kalibratie voor de Capacitive Soil Moisture Sensor

De waarde die de vochtigheidssensor geeft is niet absoluut. Hij is afhankelijk van de samenstelling van de grond en de hoeveelheid water. Om nauwkeurig een grenswaarde te bepalen tussen nat en droog, moet kalibratie worden uitgevoerd.

Instructies voor kalibratie:

  • Voer de code uit op Arduino Nano
  • Plaats de vochtigheidssensor in de grond
  • Voeg geleidelijk water toe aan de grond
  • Bekijk de Seriële Monitor
  • Noteer de waarde op het moment dat de grond verandert van droog naar nat. Dit wordt de DREMPEL (THRESHOLD) genoemd.

Arduino Nano bepaalt of de grond nat of droog is

Als de kalibratie voltooid is, werkt u de THRESHOLD waarde die u genoteerd heeft bij in onderstaande code. Deze Arduino Nano code bepaalt of de grond nat of droog is.

/* * Deze Arduino Nano code is ontwikkeld door newbiely.nl * Deze Arduino Nano code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino-nano/arduino-nano-soil-moisture-sensor */ #define AOUT_PIN A6 // The Arduino Nano pin that connects to AOUT pin of moisture sensor #define THRESHOLD 530 // CHANGE YOUR THRESHOLD HERE void setup() { Serial.begin(9600); } void loop() { int value = analogRead(AOUT_PIN); // read the analog value from sensor if (value > THRESHOLD) Serial.print("The soil is DRY ("); else Serial.print("The soil is WET ("); Serial.print(value); Serial.println(")"); delay(500); }

De uitvoer die in de Seriële Monitor wordt weergegeven:

COM6
Send
The soil is DRY (581) The soil is DRY (575) The soil is DRY (566) The soil is DRY (547) The soil is DRY (539) The soil is WET (521) The soil is WET (513) The soil is WET (492) The soil is WET (488)
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

Functiereferenties

Gerelateerde Tutorials

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!