Okos öntözőrendszer készítése

Okos öntözőrendszer készítése

Okos öntözőrendszer készítése

Loading Likes...

A nyáron kezdtem megunni, hogy halnak meg a virágaim, mert nem locsolom őket, úgyhogy arra gondoltam, hogy építhetnék egy okos öntözőrendszert a Wemos Mini D1 mikrokontrollerrel és egy kis szivattyúval.

Az volt a célom, hogy be lehessen állítani, hogy a hét melyik napjain locsoljon, illetve mennyi ideig folyassa a vizet. Használhattam volna intefészként egy LCD kijelzőt, pár gombot és egy inkrementális jeladót/enkódert, de úgy döntöttem, hogy kihasználom a Wemos által nyújtott lehetőségeket, mégpedig hogy Wifi Access Point-ként működhessen, illetve webszerverként. (ESP-8266 alapú)

Az első feladat az volt, hogy kiderítsem, mennyi az idő. A Wemos nem tudja a pontos időt, mivel nincs mindig áram alatt, ha kihúznánk, elvesztené az időérzékét. Erre két megoldás is létezik, én mindkettőt beleépítettem a rendszerbe, hogy bombabiztos legyen. Az első és nagyon logikus megoldás az, hogy amikor bekapcsolódik a Wemos, akkor kérje le az internetről valami távoli emberek atomórájáról a pontos időt, és azután azzal dolgozzon. Ezzel viszont az lehet a baj, hogy ha éppen világvége van, azaz nincs internet, akkor nem fogjuk tudni a pontos időt a bekapcsoláskor és lehet, hogy a virág nem lesz meglocsolva időben 😢. Tehát valahogyan kellene követni lokálisan is az időt, amire létezik egy Real Time Clock module-nak nevezett áramkör, ami párszáz forintért rendelhető kínából, vagy a Hestore.hu-ról, ahonnan 1 nap alatt megjön, ha értemész. Ez igazából annyit csinál, hogy van benne egy gombelem, aminek segítségével a mikrokontroller kikapcsolt állapotában is tudja nagyon kis áramfelvétel mellett követni az időt.

Ez viszont azért nem teljesen jó, mert mi van, ha éppen óraátállítás volt és egy órával el lesz tolódva az egész? Nem akartam szórakozni azzal, hogy megnézzem mikor van óraátállítás és akkor módosítsam az RTC modul idejét, főleg, hogy nem is biztos, hogy mindig is lesz óraátállítás. Úgy döntöttem, hogy naponta szinkronizálom az időt egy online forrással, ha lehetséges.

A következő feladat az volt, hogy készítsek egy motorvezérlő áramkört a szivattyúhoz. Teszteltem, be lehetne dugni direktbe a mikrokontroller digitális kimenetébe is a motort, de mindenki azt mondja, hogy olyan 20mA-nél nagyobb áram nem kéne rajta folyjon, mert megsütheti az áramkört, úgyhogy a biztonság kedvéért készítettem egy ilyet:

Az NPN tranzisztor egy digitális kapcsolóként funkcionál, a dióda pedig az áram folyására ellentétesen be van kötve a motorral párhuzamosan, hogy amennyiben termelődne valami fura feszültség a motor tekercseiben, akkor azok ne menjenek rá a földelésre, mert akkor az a többi komponenst is befolyásolhatja. Ezt egy kis próbapanelen valósítottam meg:

Összekapcsoltam a komponenseket, majd beleépítettem egy 3D nyomtatott dobozba. Raktam rá egy kapcsolót a ki-be kapcsolásra, valamint egy nyomógombot, amivel bármikor üzemeltetni tudjuk a szivattyút. Az egyik oldalon van egy micro usb csatlakozó is, azon kapja az áramot.

Az egyik csövet belelógattam egy kulacsba, a másikat pedig hozzáerősítettem a cseréphez.

Itt van a rendszer Fritzing rajza:

A szoftver megírásához az Arduino programozói rendszerét és a Visual Studio Code-ot használtam, illetve ezeket a könyvtárakat:

A szoftver részletei és forráskódja megtalálható a Github oldalán, a https://github.com/tothambrus11/autowater linken.

Leave a Comment

Az email címedet nem tesszük publikussá. A kötelező mezők *-ként vannak jelölve.

Show Buttons
Hide Buttons