A föld mintegy 71% -át víz borítja, de sajnos csak 2,5% -a ivóvíz. A népesség növekedésével, a szennyezéssel és az éghajlatváltozással várhatóan 2025-ig évelő vízhiányt tapasztalunk. Egyrészt már kisebb viták vannak a nemzetek és államok között a folyóvíz megosztása miatt, másrészt mi, emberek, gondatlanságunk miatt rengeteg ivóvizet pazarolunk.
Lehet, hogy nem tűnik először nagynak, de ha a csapod másodpercenként egyszer csepegtet egy csepp vizet, csak körülbelül öt órába telik, mire egy gallon vizet pazarolsz el, ez annyi víz, hogy egy átlagos ember ketten túlélje napok. Tehát mit lehet tenni ennek megakadályozására? Mint mindig, a válasz erre is a technológia fejlődésével rejlik. Ha az összes kézi csapot kicseréljük egy intelligensre, amely automatikusan nyit és zár, nem csak vizet takaríthatunk meg, hanem egészségesebb életmódot folytathatunk, mivel nem kell koszos kézzel működtetnünk a csapot. Tehát ebben a projektben felépítünk egy automatikus vízadagolót Arduino és egy mágnesszelep segítségével, amely automatikusan vizet adhat Önnek, ha egy poharat a közelébe helyezünk. Jól hangzik! Tehát építsünk egyet…
Szükséges anyagok
- Szolenoid szelep
- Arduino Uno (bármilyen verzió)
- HCSR04 - Ultrahangos érzékelő
- IRF540 MOSFET
- 1k és 10k ellenállás
- Kenyérlemez
- Vezetékek csatlakoztatása
Működő koncepció
Az automatikus vízadagoló koncepciója nagyon egyszerű. Fogjuk használni HCSR04 ultrahangos érzékelő, hogy ellenőrizze, hogy minden tárgyat úgy, hogy az üveg elé kerül az adagoló. A víz áramlásának szabályozására mágnesszelepet használnak, amely akkor van, amikor áram alatt áramlik a víz, és amikor áramtalanítják, a víz leáll. Tehát írunk egy Arduino programot, amely mindig ellenőrzi, hogy van-e valamilyen tárgy a csap közelében, ha igen, akkor a mágnesszelep bekapcsol, és várja meg, amíg az objektum eltávolításra kerül. vízellátás. Tudjon meg többet az ultrahangos érzékelő Arduino-val történő használatáról itt.
Kördiagramm
Az Arduino alapú vízadagoló teljes kapcsolási rajza az alábbiakban látható
A projektben használt mágnesszelep egy 12 V-os szelep, amelynek maximális áramerőssége 1,2 A és folyamatos áramerőssége 700mA. Ekkor a szelep bekapcsolásakor kb. 700mA fogyaszt, hogy a szelep be legyen kapcsolva. Mint tudjuk, az Arduino egy fejlesztési kártya, amely 5 V-val működik, ezért szükségünk van egy kapcsoló meghajtó áramkörre a mágnesszelep be- és kikapcsolásához.
A projektben használt kapcsoló eszköz az IRF540N N-Channel MOSFET. Ennek 3 érintkezõje van: Gate, Source és Drain from 1 pin. Amint a kapcsolási rajz mutatja, a mágnesszelep pozitív kapcsa az Arduino Vin csapjával működik. Mivel egy 12 V-os adaptert fogunk használni az Arduino táplálásához, és így a Vin tű 12 V-ot fog kimenni, amely felhasználható a mágnesszelep vezérlésére. A mágnesszelep negatív kapcsa a MOSFET Source és Drain csapjain keresztül csatlakozik a földhöz. Tehát a mágnesszelep csak akkor működik, ha a MOSFET be van kapcsolva.
A MOSFET kapu tüskéje be- vagy kikapcsolásra szolgál. Nem marad, ha a kaputüske földelve van, és bekapcsol, ha kapufeszültséget alkalmaznak. Annak érdekében, hogy a MOSFET kikapcsolt állapotban maradjon, ha a kapu tüskéjére nincs feszültség, a kaput csapot egy 10k-os ellenálláson keresztül földre kell húzni. Az Arduino 12 tűvel a MOSFET be- vagy kikapcsolására szolgál, így a D12 tű 1K ellenálláson keresztül csatlakozik a kapu csapjához. Ezt az 1K ellenállást áramkorlátozó célokra használják.
Az ultrahangos érzékelőt az Arduino + 5 V-os és földelt csapai táplálják. Az Echo és a Trigger csapok a 8. és a 9. csaphoz vannak csatlakoztatva. Ezután beprogramozhatjuk az Arduino-t, hogy az ultrahangos érzékelővel mérje meg a távolságot és kapcsolja be a MOSFET-et, ha egy tárgy észlelhető. Az egész áramkör egyszerű, és ezért könnyen felépíthető a kenyérlap tetejére. Az enyém valami hasonlót nézett ki alább, miután létrehozta a kapcsolatokat.
Az Arduino Board programozása
Ehhez a projekthez meg kell írnunk egy programot, amely a HCSR-04 ultrahangos érzékelővel megméri az előtte lévő tárgy távolságát. Ha a távolság kevesebb, mint 10 cm, be kell kapcsolnunk a MOSFET-et, máskülönben pedig ki kell kapcsolnunk a MOSFET-et. Ezenkívül a 13. érintkezőhöz csatlakoztatott fedélzeti LED-et is használjuk, és a MOSFET-szel együtt kapcsoljuk be, hogy megbizonyosodhassunk arról, hogy a MOSFET be- vagy kikapcsolt állapotban van-e. Az ehhez szükséges teljes program az oldal végén található. Közvetlenül az alábbiakban magyaráztam a programot azzal, hogy apró, értelmes részletekre bontottam.
A program a makrók meghatározásával kezdődik. Megvan a ravaszt és visszhang csap az ultrahangos érzékelőhöz, valamint a MOSFET kapu csap és a LED I / O-ként az Arduino-hoz. Tehát meghatároztuk, hogy melyik tűhöz kapcsolódnak ezek. A mi hardver már csatlakozik az Echo és a Trigger pin 8 és 9 -én a digitális pin volt. Ezután a MOSFET tű csatlakozik a 12. érintkezőhöz, és a fedélzeti LED alapértelmezés szerint a 13. érintkezőhöz csatlakozik. Ugyanezt a következő sorok segítségével definiáljuk
#define trigger 9 #define echo 8 #define LED 13 #define MOSFET 12
A beállítási funkción belül deklaráljuk, hogy melyik csapok vannak bemenetben és melyek kimenetek. Hardverünkben csak az ultrahangos (USA) érzékelő visszhangcsapja a bemeneti tű, a többi pedig kimeneti csap. Tehát az Arduino pinMode függvényét használjuk az alábbiak megadásához
pinMode (trigger, OUTPUT); pinMode (visszhang, INPUT); pinMode (LED, OUTPUT); pinMode (MOSFET, OUTPUT);
A fő hurok függvényen belül megadjuk az intézkedés_távolság () nevű függvényt . Ez a funkció az amerikai érzékelővel méri az előtte lévő tárgy távolságát, és az értéket a „ távolság” változóra frissíti. A távolság méréséhez az amerikai szenzorral a kioldó csapot először két másodpercig alacsonyan kell tartani, majd tíz mikromásodpercig magasan kell tartani, és ismét két másodpercig alacsonyan kell tartani. Ez ultrahangos jelek hangos robbantását juttatja a levegőbe, amelyet az előtte lévő tárgy visszaverődik, és az echo tű felveszi az általa visszavert jeleket. Ezután az elért idő értékét használjuk az érzékelő előtti objektum távolságának kiszámításához. Ha tudni akarod