Gisteren heb ben ik druk bezig geweest met het automatiseren van het meten van het waterlevel in het zwembad.
Afgelopen jaar zijn er slangen geknapt, waardoor ik genoodzaakt was om de pomp(en) stil te leggen. Maar er was veel water weg gelopen. Dit jaar wil ik dit toch niet weer. Ik heb er eind vorig jaar voor gekozen om dit via de pc in de gaten te houden, maar aangezien de pc gaat verdwijnen, moet dit worden om geprogrammeerd naar de Arduino.
Na een avond puzzelen en proefopstellingen maken, kan ik nu melden dat het helemaal naar behoren werkt.
Ik heb als volgt gehandeld:
Via internet heb ik een CD4066 besteld. Dit is een CMOS QUAD BILATERAL SWITCH. Deze bevat vier schakelaars de afhankelijk van elkaar kunnen schakelen.
Hierdoor is het mogelijk om vier verschillende waterniveau’s te detecteren.
Door gebruik te maken van het volgende schema, worden er leds aangestuurd die aangeven hoe vol of hoe leeg het zwembad of wat voor water voorraad dan ook maar is.
Ik heb er voor gekozen om geen gebruik te maken van een buzzer e.d. Dus dit deel van de schakeling kan er af worden gelaten.
De uitgangen naar de leds toe bestaan nog als indicator, maar die gaan er later van af. Ik tak de signalen na de weerstanden van 330 ohm af en deze voer ik in de Arduino Mega.
Als eerste heb ik een draad getrokken van de +5v van de Arduino in het glas water wat ik gebruik als proef voor de detectie.
De digitale ingangen 22-25 heb ik gebruikt om de signalen voor de leds te gebruiken, maar daar reageerde de Arduino in het totaal niet op. Waarschijnlijk was het signaal niet positief genoeg om een TTL hoog te kunnen registreren. Om dit toch te kunnen registreren, heb ik maar gebruik gemaakt van de Analoge ingangen A1-A4. Hierdoor kreeg ik waarden die ik dan weer kon afvangen in de Arduino.
Om dit te kunnen doen, heb ik gebruik gemaakt van de Serial.print-functie. Hierdoor kreeg ik de waarden goed in beeld. De waarden varieerden van 600-750. Om en nabij de 600 als de pen in het water lag en 750 en hoger als de pen niet in het water zat.
Hierdoor was er makkelijk een functie te maken die hierop zou kunnen gaan triggeren. Ik heb er voor gekozen om de vier pennen onder te verdelen in procenten water:
Pen 1-4 in water | 80-100% water | 5 cm water te weinig |
Pen 2-4 in water | 60-80% water | 10 cm water te kort |
Pen 3-4 in water | 40-60% water | 15 cm water te kort |
Pen 4 in water | 20-40% water | 20 cm water te kort |
[de laatste kolom gaat worden gebruikt om aan te geven op het scherm hoeveel water er is verdwenen.
Het zwembad is namelijk 65 cm hoog, dus is 5 cm water erg veel wat er dan verdwijnt. Dit gaat om 9,1 % water wat omgezet is naar de totale inhoud van het zwembad ongeveer 218 Liter water wat dan de tuin in stroomt (5/55*100=9,1% water verdwenen => 2400*9,1/100=218 liter water)]
Door van het bovenstaande schema gebruik te maken, was het voor mij mogelijk om te controleren hoeveel water er in het glas zat.
Nu moet ik nog een soort van peilstok maken, waar deze sensoren (pennen) aan bevestigd zitten. Dit wordt een pen van ongeveer 50 cm hoog waar ik om de 5 cm een pen in het water laat steken.
Dit doe ik om te voorkomen dat er liters water worden weg gepompt.
De volgende stap zal zijn om deze pen te maken en een blokkering signaal naar de pomp te geven. Dit moet gebeuren als alleen pen 4 in het water is gekomen. Als dat het geval is, moeten er minimaal drie dingen gebeuren:
- De pomp moet acuut stoppen (mag niet meer aan tot er een bevestiging is geweest dat alles is gecontroleerd en weer klopt)
- Er moet op het scherm een melding komen, dat de pomp is uitgeschakeld in verband met een laag water nivea
- Er moet een mailtje / sms uit worden gestuurd naar mijn mailboxl c.q. telefoon om mij te waarschuwen, dat er iets aan de hand is met het zwembad
Voor het mailtje in punt 3 moet er gebruik worden gemaakt van een ethernet shield. Deze is al besteld en is onderweg vanuit China naar Nederland.
Hallo,
Welke niveau sensors heb jij voor dit project gebruikt, want dit kan ik nergens terug vinden?
Verder kan ik zo 1,2,3 geen geschikte sensors vinden voor een Arduino.
Ik zou namelijk zo’n zelfde soort systeem willen maken voor mijn vijver, hiervoor kan ik alleen sensors vinden die je in een tank wand kunt monteren.
Groet,
A. Pasop
Hallo,
Ik maak gebruik van de HC-SR04 ultrasonic sensor. Die heb ik aangesloten op de Arduino.
Ik heb deze wel in siliconenkit gezet zodat hij niet nat wordt.