4.10 Project: Automatisch Irrigatiesysteem


Let op! Laat geen water uit plastic bakken overlopen tijdens experimenten. Het morsen van water op andere sensoren kan niet alleen kortsluiting veroorzaken die de normale werking verstoort, maar ook warmteontwikkeling en zelfs explosie. Wees extra voorzichtig! Vooral voor jongere gebruikers, gelieve onder begeleiding van uw ouders te werken. Om de veiligheid te garanderen, dient u de richtlijnen en veiligheidsvoorschriften op te volgen.


In dit project stimuleren we irrigatie via een waterpomp die wordt aangestuurd door een relaismodule. Daarnaast bepalen we ook of er water in het bassin is via een waterniveausensor en detecteren we de bodemvochtigheid met een bodemvochtigheidssensor. Op deze manier wordt het systeem intelligenter in het aansturen van de waterpomp.

img


4.10.1 Stroomdiagram

image-20230607183214310


4.10.2 Waterpompsysteem

Beschrijving:

In dit experiment gebruiken we het ESP32 ontwikkelbord om de waterpomp aan/uit te zetten met een relaismodule. Een pomp tilt water op en transporteert vloeistoffen, en wordt meestal in combinatie met een relaismodule gebruikt.

Hierin verbinden we de relaismodule en de pomp met het ESP32-bord, en programmeren we om de pomp op afstand aan of uit te zetten door de status van het relais te schakelen. Hoe we dit doen, bepalen we de status van het relais aan de hand van de uitgangswaarde van de module of een vooraf ingestelde tijd.


Relaismodule:

In gebruik wordt het vaak toegepast bij het beheer van hoge spanning en belastingstroom, zoals motoren, sensoren met hoge stroom en krachtige lampen.

img

  • Normally Open (NO): Deze pin is normaal open, tenzij een signaal wordt ontvangen door de signaalpin van het relais. Daarom zijn gemeenschappelijke pinnen losgekoppeld via de NC-pin en verbonden via de NO-pin.

  • Common Contact (COM): Deze pin maakt verbinding met andere modules, bijvoorbeeld een waterpomp.

    • Waterpomp:

img

  • Normally Closed (NC): De NC-pin is verbonden met de COM-pin om een gesloten circuit te vormen. Het gebruikt het ESP32-bord om het sluiten en loskoppelen van de relaismodule te regelen.


Parameters:

  • Voedingsspanning: 5V

  • Statische stroom: 2mA

  • Maximale contactspanning: 250VAC/30VDC

  • Maximale stroom: 10A

Schematisch diagram:

img


Bedradingsschema:

Let op: Verbind geel met S (Signaal), rood met V (Voeding) en zwart met GND. Draai ze niet om!

img


Testcode:

img

Testresultaat:

Na het uploaden van de code zal het apparaat eenmaal water pompen.

In dit experiment wordt de waterpomp geautomatiseerd, waardoor tijd en moeite van handmatige bediening worden verminderd en de efficiëntie wordt verbeterd. Daarom wordt dit waterpompsysteem veel gebruikt in de landbouwproductie en waterzuivering.


4.10.3 Automatisch Irrigatiesysteem

Beschrijving:

In dit experiment implementeren we een slim irrigatiesysteem met behulp van een bodemvochtigheidssensor, een waterniveausensor, een relaismodule en een waterpomp. We verbinden de twee sensoren met het ESP32-ontwikkelbord en programmeren om hun uitgangswaarden uit te lezen om het relais en de waterpomp te bedienen.

Als de bodem erg droog is, zal het relais inschakelen om de waterpomp aan te sturen om planten te irrigeren; en als het waterniveau te laag is, zal de waterpomp niet kunnen werken en zal de zoemer afgaan. Op deze manier worden het water geven van planten en het regelen van het waterniveau geautomatiseerd, wat de productie-efficiëntie verhoogt en de tijd en moeite van handmatige handelingen vermindert.


Bedradingsschema:

  • Verbind de relaismodule met io25; verbind de NC-pin met de GND (zwart) op io2.

  • Waterpomp:

    • Verbind de rode draad met POWER 3V3 van het bord

    • Verbind de zwarte draad (GND) met de COM-pin van het relais

  • Verbind de bodemvochtigheidssensor met io32

  • Verbind de waterniveausensor met io33

Let op: Verbind geel met S (Signaal), rood met V (Voeding) en zwart met GND. Draai ze niet om!

img


Testcode:

Codestroom:

img

Code:

  • Initialiseer en wis het LCD, schakel de achtergrondverlichting van het LCD in. Definieer twee variabelen als de gedetecteerde sensorwaarden.

img

  • Wijs de twee gelezen sensorwaarden toe aan die variabelen.

img

  • Geef deze waarden weer op het LCD.

img

  • Als de waterniveauwaarde lager is dan 700 of de bodemvochtigheidswaarde minder is dan 1200, zal de zoemer afgaan.

img

  • Wanneer de bodemvochtigheidswaarde lager is dan 1200 maar de waterstandwaarde groter is dan 700, zal de waterpomp de boerderij automatisch irrigeren.

img

Volledige code:

img

Testresultaat:

img

  • LCD 1602 toont de huidige waarden van bodemvochtigheid en waterstand. Wanneer de gedetecteerde vochtigheid lager is dan de ingestelde drempel, betekent dit dat de bodem droog is en begint de irrigatie automatisch.

  • Wanneer de gedetecteerde waterstand lager is dan de ingestelde drempel, werkt het waterpompsysteem niet en alarmeert de zoemer om te melden dat er onvoldoende water is.

  • Druk op de knop om het alarm te stoppen.


Samenvattend hebben we in dit project een analoog automatisch irrigatiesysteem gerealiseerd, dat intelligent de aan- en uit-stand van de waterpomp regelt op basis van de waterstand. In de praktijk wordt dit systeem meestal gebruikt voor huishoudelijke en agrarische productie.


4.10.4 Veelgestelde vragen

V: Zijn de modules waterdicht?

A: De relaismodule niet, de waterpomp wel. De waterdichtheidsklasse van de waterpomp is IP68.


V: ESP32-bord wordt gereset wanneer de waterpomp werkt.

A: Wanneer de waterpomp werkt, is er meer stroom nodig dan bij andere modules, vandaar dat spanning en stroom in het circuit kunnen fluctueren. Soms kunnen de fluctuaties te hevig zijn, wat resulteert in een reset door extreem lage spanning en stroom in het ESP32-ontwikkelbord.

Volg bij het bedienen van de waterpomp de voorbeeldcode:

img


V: Lukt het niet om water te pompen?

A: Er zijn verschillende pompoperaties nodig om de waterpomp te vullen voordat deze wordt gebruikt. Deze initiële pompingen trekken het water niet daadwerkelijk aan, maar introduceren voldoende water in de pomp. Pas nadat de pomp vol is, kan water worden afgevoerd. We vullen dus eerst, pompen niet.