Az Önhöz hasonló olvasók támogatják a MUO-t. Amikor a webhelyünkön található linkek használatával vásárol, társult jutalékot kaphatunk. Olvass tovább.

Zöld hüvelykujjjal és némi türelemmel a kertészkedés nagyszerű hobbi, függetlenül attól, hogy van-e néhány egzotikus növény beltéren, vagy van-e kivirágzott kültéri kertje burgonyával és évelő növényekkel.

Ennek ellenére előfordulhat, hogy elfogy a türelme, amikor a növények elkezdenek elpusztulni, aminek látszólag egyáltalán nem volt jó oka.

A Raspberry Pi Pico W megoldást kínálhat annak biztosítására, hogy a növények anélkül is boldoguljanak, hogy egy ujjunkat sem kell felemelni (hát, majdnem).

Tekintsük át, hogyan fogja nyomon követni egy növényfigyelő, néhány kód és egy apró mikrokontroller a növény egészségi állapotát bárhonnan otthonában.

Szükséges hardver

Meglepő módon nincs sok hardver szükséges. A varázslatok nagy része a Plant Monitorban található. Valójában csak néhány elemre van szüksége az induláshoz.

  • Növényfigyelő, Monk Makes
  • 4x anya-apa áthidaló vezetékek
  • Raspberry Pi Pico W
instagram viewer

Bár ez a növényfigyelő támogatja az aligátorkapcsok használatát, ez a projekt a növényfigyelő eszköz hátuljához csatlakoztatott tűs csatlakozókat használja.

A kertészeti asszisztens beállítása

Ez a projekt magában foglalja az üzemmonitor csatlakoztatását a Raspberry Pi Pico W-hez, valamint kód létrehozását és kezelését, hogy minden működjön. Egy webszerverre lesz szükség az otthoni internetkapcsolaton keresztül elérhető egyszerű weboldal kiszolgálásához.

A Raspberry Pi Pico különböző modellváltozatai léteznek. Ehhez a projekthez Raspberry Pi Pico W-t kell használnia. Ha meg szeretné tudni, mire képes a Pico W, tekintse meg útmutatónkat mi az a Pico W és mire képes.

Először is győződjön meg arról, hogy az üzemfigyelő csatlakoztatva van és megfelelően működik. A cikk későbbi részében egy egyszerű webszerver beállításával fog foglalkozni, amellyel az üzem monitorozására használható bármely, az otthoni hálózathoz csatlakoztatott böngészőképes eszközzel.

A növényfigyelő előkészítése

A különféle internetes oldalakon számos érzékelő megvásárolható, így megtudhatja, hogy egyes talajérzékelők könnyen elhasználódnak a talajban, mások pedig meglehetősen jól ellenállnak az elemeknek. A Monk Makes Plant Monitor jó választás, mivel nem hajlamos a talaj korrodálódására. Ez a monitor nemcsak a talaj nedvességét méri, hanem a páratartalmat és a hőmérsékletet is.

Csak négy érintkezőt kell csatlakoztatni a növénymonitortól a Raspberry Pi Pico W-hez:

  • A GND a GND-hez megy
  • 3V csatlakozik a 3V3 kimenethez
  • Az RX_IN megtalálja az utat a GP0-hoz
  • A TX_OUT találkozik a GP1-gyel

Miután csatlakoztatta az áramellátáshoz, a Raspberry Pi Pico W képes lesz árammal ellátni önmagát és a növényfigyelőt. Észrevesz néhány jelzőfényt a hardveren, amelyek megerősítik, hogy az eszköz működőképes. Ezenkívül van egy LED-lámpa, amely zölden, sárgán vagy pirosan világít (a talaj nedvességtartalmától függően).

Bár a Monk Makes Plant Monitor néhány nagyszerű python modullal rendelkezik, mégis létre kell hoznia néhány egyszerű kódot, hogy figyelemmel kísérhesse növénye talajának állapotát. A következő python fájlokat letöltheti tőlünk MUO GitHub adattár.

Szükséged lesz pmon.py és test.py a talajérzékelő részhez és a python fájlokhoz microdot.py, mm_wlan.py, és pico_w_server.py az egyszerű webszerver későbbi befejezéséhez.

Itt az alkalom, hogy megállj és felfrissítsd magad apró különbségek a MicroPython és a Python között ha még nem tette meg.

A python fájl, pmon.py, létrehoz egy MicroPython osztályt a növényfigyelőhöz. Az UART gondoskodik a duplex adatátvitelről, majd az analóg digitálisvá konvertálása is szükséges. Azt is észre fogja venni a nedvesség, hőm, és páratartalom függvények is definiálva vannak ebben a fájlban.

defget_wetness(maga):
Visszatérés int(maga.request_property("w"))

defget_temp(maga):
Visszatérés úszó(maga.request_property("t"))

defget_humidity(maga):
Visszatérés úszó(maga.request_property("h"))

defled_off(maga):
maga.uart.write("l")

defled_on(maga):
maga.uart.write("L")

Ezután szüksége lesz a test.py tőlünk kapott fájl MUO GitHub adattár.

Észre fogja venni, hogy a modulok idő, pmon (tól től PlantMonitor), és gép szükséges, hogy megfelelően ellenőrizze a növény egészségét.

Ahogy a PlantMonitor modul importálva van, mindössze egy egyszerű while ciklusra van szükség a talajviszonyok figyeléséhez. Továbbá a nyomtatás A parancs futtatás után kiadja a talaj nedvességtartalmát, hőmérsékletét és páratartalmát test.py Thonnyban.

time.sleep(2) # A PlantMonitor indítási ideje
pm = PlantMonitor()

mígIgaz:
w = pm.get_wetness()
t = pm.get_temp()
h = pm.get_humidity()
nyomtatás("Nedvesség: {0} Hőmérséklet: {1} Páratartalom: {2}".formátum (w, t, h))
idő.alvás(1)

Nincs kedve öntözni a növényt, ha a talaj túl száraz? Rendelje hozzá a szivattyú relét a Raspberry Pi Pico tűjéhez, és használja az if utasítást, hogy figyeljen nedvességi érték (100-ból) a vízszivattyú aktiválásához egy relén keresztül, hogy bekapcsolja és kiadja a vizet újra.

relay1 = Pin(15, Pin. KI) #relé GP15-ig és GND-ig van bekötve

ha w = 24# figyeljen a 24/100 nedvességi értékre

relay1.value(1) # kapcsolja be a relét
relé1(0) # kapcsolja ki a relét

Érdemes néhány tesztet elvégezni annak érdekében, hogy megtalálja a tökéletes egyensúlyt, hogy megbizonyosodjon arról, hogy a növény elégedett a kapott vízmennyiséggel. Hozzáadhat egy másik if utasítást a hőlámpa bekapcsolására egy relén keresztül, ha az üzem túl hideg.

Egyszerű webszerver

Három python fájlra lesz szüksége a mi tőlünk MUO GitHub adattár, hogy a Raspberry Pi Pico W sugározza a talajstatisztikát otthoni internetkapcsolataira:

  • microdot.py
  • mm_wlan.py
  • pico_w_server.py

A mikropont fájl kezeli a háttérfunkciókat, hogy létrehozza ezt az egyszerű HTTP-alapú webszervert, és megjeleníti a python kód kimenete html alapú weboldalként, amely a Raspberry Pi IP-címével hívható meg Pico W.

A mm_wlan.py fájl egyszerű módot kínál a vezeték nélküli hálózathoz való csatlakozásra. Megkapja a Raspberry Pi Pico IP-címét és a kapcsolódó üzenetet. Ha a kapcsolat sikertelen volt, akkor helyette a Sikertelen kapcsolat üzenetet kapja.

A pico_w_server.py fájlba írja be az SSID-t (ne feledje, hogy a Raspberry Pi Pico W csak 2,4 GHz-es SSID-ekhez csatlakozik) és a Wi-Fi jelszavát. A HTML részben testreszabhatja, hogy a webszerver mit jelenítsen meg a webböngészőben. Eltávolíthatja a megjegyzéseket a frissítési szakaszból, és módosíthatja az intervallumot, ha nem szeretné, hogy a weboldal másodpercenként frissüljön.

A fájl alján testreszabhatja a portot is. Ez akkor hasznos, ha ezeket az információkat az otthonán kívül szeretné az interneten megjeleníteni.

Amikor futtatod a test.py fájlt, a szükséges szerver python fájlokat (mm_wlan és pico_w_server) importálják az Ön számára. Miután futtatta a test.py fájlt, vegye meg az IP-címet, ha a Pi (a Thonny kimenetben található), és adja hozzá a használt portot (alapértelmezett 80) bármely olyan webböngészőből, amely otthon ugyanahhoz a 2,4 GHz-es SSID-hez csatlakozik. Valami ilyesmit kellene látnod:

A csatlakoztatott számítógép függőségének csökkentése érdekében módosítsa a test.py fájlba main.py és spóroljon Raspberry Pi Pico W készülékén. Érdemes lehet LCD-t is csatlakoztatni a Pico-hoz, hogy beprogramozza a kijelzőt az IP-cím kiadására (amikor eltávolítja a csatlakoztatott számítógép függőségét).

Hozd vissza azt a zöld hüvelykujjat

Egy kifinomult talajérzékelővel és egy egyszerű webszerverrel mostantól otthona bármely pontján webböngészőből nyomon követheti növénye egészségi állapotát.

Nyugodtan módosítsa a kódot, ahogy jónak látja. Ha készen áll rá, fontolja meg egy talajérzékelő alkalmazás létrehozását, amely némi fényezést ad az imént beállított egyszerű webszerveren.

Ahhoz, hogy ez a projekt teljesnek érezze magát, adjon hozzá egy szivattyút és relét, valamint egy hőlámpát, és máris teljesen automatizált kertje lesz. Most már örökre megőrizheti „zöld hüvelykujj” állapotát.