Zostavte si automatizovaný záhradnícky systém s Raspberry Pi Pico W

Zostavte si automatizovaný záhradnícky systém s Raspberry Pi Pico W
Čitatelia ako vy pomáhajú podporovať MUO. Keď uskutočníte nákup pomocou odkazov na našej stránke, môžeme získať pridruženú províziu. Čítaj viac.

So zeleným palcom a trochou trpezlivosti je záhradníctvo krásnym koníčkom bez ohľadu na to, či máte v interiéri niekoľko exotických rastlín alebo máte rozkvitnutú vonkajšiu záhradu so zemiakmi a trvalkami.





S tým povedané, sú aj chvíle, keď vaša trpezlivosť môže dôjsť, keď rastliny začnú odumierať z toho, čo sa zdá byť vôbec dobrým dôvodom.





Raspberry Pi Pico W môže pomôcť poskytnúť riešenie, ktoré zabezpečí, že rastliny budú prosperovať bez toho, aby ste vôbec pohli prstom (teda takmer).





Pozrime sa, ako monitor rastlín, nejaký kód a malý mikrokontrolér budú sledovať zdravie vašej rastliny odkiaľkoľvek vo vašej domácnosti.

Požadovaný hardvér

Prekvapivo nie je potrebné veľa hardvéru. Veľa mágie je obsiahnuté v Plant Monitor. Na začiatok potrebujete naozaj len pár položiek.



Hoci tento monitor rastlín podporuje použitie krokosvoriek, tento projekt využíva kolíkové konektory pripojené k zadnej strane zariadenia na monitorovanie rastlín.

Nastavenie záhradného asistenta

Tento projekt zahŕňa pripojenie monitora závodu k vášmu Raspberry Pi Pico W, ako aj vytváranie a manipuláciu s kódom, aby všetko fungovalo. Na obsluhu jednoduchej webovej stránky dostupnej v rámci vášho domáceho internetového pripojenia bude potrebný webový server.





Existujú rôzne verzie modelu Raspberry Pi Pico. Pre tento projekt budete musieť použiť Raspberry Pi Pico W. Ak sa chcete dozvedieť, čo Pico W dokáže, pozrite si našu príručku na čo je Pico W a čo dokáže .

Najprv sa uistite, že monitor zariadenia je pripojený a funguje správne. Ďalej v tomto článku sa budete zaoberať nastavením jednoduchého webového servera, ktorý sa používa na monitorovanie vášho závodu pomocou akéhokoľvek zariadenia s podporou prehliadača pripojeného k vašej domácej sieti.





Príprava Plant Monitor

S mnohými senzormi, ktoré je možné zakúpiť prostredníctvom rôznych internetových stránok, zistíte, že niektoré pôdne senzory sa v pôde ľahko opotrebujú a iné pomerne dobre odolávajú vplyvom počasia. Monitor Monk Makes Plant Monitor je pekná možnosť, pretože nie je náchylný na koróziu v pôde. Tento monitor meria nielen vlhkosť pôdy, ale aj vlhkosť a teplotu.

  monitor rastlín v pôde, ktorý je pripojený k mikrokontroléru

Z monitora závodu k vášmu Raspberry Pi Pico W bude potrebné pripojiť iba štyri kolíky:

  • GND ide do GND
  • 3V sa pripája k výstupu 3V3
  • RX_IN si nájde cestu do GP0
  • TX_OUT sa stretne s GP1

Po pripojení k napájaniu bude Raspberry Pi Pico W schopné napájať seba a monitor závodu. Na hardvéri si všimnete nejaké kontrolky, ktoré potvrdzujú, že zariadenie funguje. K dispozícii je tiež LED svetlo, ktoré bude svietiť na zeleno, nažlto alebo načerveno (v závislosti od úrovne vlhkosti zistenej vo vašej pôde).

Hoci Monk Makes Plant Monitor prichádza s niekoľkými skvelými modulmi python, stále budete musieť vytvoriť nejaký jednoduchý kód, aby ste mohli monitorovať zdravie pôdy vašej rastliny. Môžete si stiahnuť nasledujúce python súbory z nášho Úložisko MUO GitHub .

Budete potrebovať pmon.py a test.py pre časť na snímanie pôdy a súbory python microdot.py , mm_wlan.py , a pico_w_server.py sa použije na neskoršie dokončenie jednoduchého webového servera.

Teraz je skvelý čas zastaviť sa a osviežiť sa jemné rozdiely medzi MicroPythonom a Pythonom ak ste tak ešte neurobili.

súbor python, pmon.py , vytvorí triedu MicroPython pre monitor rastlín. UART sa postará o duplexný prenos dát a potom je potrebná aj konverzia analógového signálu na digitálny. Tiež si všimnete vlhkosť , tepl , a vlhkosť funkcie definované aj v tomto súbore.

    def get_wetness(self): 
        return int(self.request_property("w"))

    def get_temp(self):
        return float(self.request_property("t"))

    def get_humidity(self):
        return float(self.request_property("h"))

    def led_off(self):
        self.uart.write("l")

    def led_on(self):
        self.uart.write("L")

Ďalej budete potrebovať test.py súbor získaný z nášho Úložisko MUO GitHub .

Všimnete si, že moduly čas, pmon (od PlantMonitor ), a stroj sú potrebné na správne sledovanie zdravia vašej rastliny.

Ako PlantMonitor Keď je modul importovaný, všetko, čo je potrebné na monitorovanie pôdnych podmienok, je jednoduchá slučka while. Tiež, vytlačiť príkaz po spustení vypíše údaje o pôdnej vlhkosti, teplote a vlhkosti test.py v Thonny.

 time.sleep(2) # PlantMonitor startup time 
pm = PlantMonitor()

while True:
    w = pm.get_wetness()
    t = pm.get_temp()
    h = pm.get_humidity()
    print("Wetness: {0} Temp: {1} Humidity: {2}".format(w, t, h))
    time.sleep(1)

Nechce sa vám polievať vašu rastlinu, keď je pôda príliš suchá? Priraďte svoje relé pumpy ku kolíku na Raspberry Pi Pico a pomocou príkazu if sledujte hodnotu vlhkosti (z 100), aby sa spustila vodná pumpa cez relé, aby sa zapla a znova dávkovala vodu.

 relay1 = Pin(15, Pin.OUT) #relay is wired up to GP15 and GND 

if w = 24 # watch for a wetness value of 24/100

relay1.value(1) # turn on the relay
    relay1(0) # turn off the relay

Budete chcieť urobiť nejaké testy, aby ste našli dokonalú rovnováhu, aby ste sa uistili, že vaša rastlina je spokojná s množstvom vody, ktoré dostáva. Môžete tiež pridať ďalší príkaz if na zapnutie tepelnej lampy cez relé, ak je vaša rastlina príliš studená.

Jednoduchý webový server

Budete potrebovať tri python súbory z nášho Úložisko MUO GitHub , aby váš Raspberry Pi Pico W vysielal štatistické údaje o pôde na vaše domáce internetové pripojenia:

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

The mikrobodka súbor spracováva back-end funkcie na vytvorenie tohto jednoduchého webového servera založeného na HTTP a zobrazuje výstup kódu python ako webovú stránku založenú na html, ktorú možno volať pomocou adresy IP Raspberry Pi Pico W.

The mm_wlan.py súbor ponúka jednoduchý spôsob pripojenia k bezdrôtovej sieti. Buď dostanete IP adresu vášho Raspberry Pi Pico a pripojenú správu. Ak pripojenie nebolo úspešné, namiesto toho dostanete správu o zlyhaní pripojenia.

The pico_w_server.py súbor je miesto, kam zadáte SSID (nezabudnite, že Raspberry Pi Pico W sa pripája iba k 2,4 GHz SSID) a vaše heslo Wi-Fi. V sekcii HTML si môžete prispôsobiť, čo váš webový server zobrazí vo webovom prehliadači. Môžete tiež odstrániť komentáre z obnovovacej časti a upraviť interval, ak nechcete, aby sa webová stránka obnovovala približne každú sekundu.

V spodnej časti tohto súboru môžete tiež prispôsobiť port. To je užitočné, ak chcete sprístupniť tieto informácie internetu mimo vášho domova.

Keď spustíte svoj test.py súbor, požadované serverové python súbory ( mm_wlan a pico_w_server ) sú pre vás importované. Po spustení test.py súbor, získajte IP adresu vášho Pi (nájdete ho vo výstupe Thonny) a pridajte port, ktorý ste použili (predvolený je 80) z ľubovoľného webového prehliadača, ktorý je doma pripojený k rovnakému 2,4 GHz SSID. Mali by ste vidieť niečo takéto:

výnimka zo systémovej služby modrá obrazovka systému Windows 10
  jednoduchá html stránka zobrazujúca štatistiky pôdy

Aby ste znížili závislosť vášho pripojeného počítača, zmeňte test.py súbor do main.py a uložte na svojom Raspberry Pi Pico W. Môžete tiež zvážiť pripojenie LCD k vášmu Pico, aby ste naprogramovali displej na výstup IP adresy (keď odstránite závislosť vášho pripojeného PC).

Bring Back That Green Thumb

So sofistikovaným pôdnym senzorom a jednoduchým webovým serverom teraz môžete sledovať zdravotný stav vašej rastliny z webového prehliadača kdekoľvek vo vašej domácnosti.

Neváhajte a upravte kód, ako uznáte za vhodné. Ak na to máte chuť, zvážte vytvorenie aplikácie na snímanie pôdy, ktorá pridá trochu lesku jednoduchému webovému serveru, ktorý ste práve nastavili.

Aby bol tento projekt kompletný, pridajte čerpadlo a relé spolu s tepelnou lampou a budete mať plne automatizovanú záhradu. Teraz si budete môcť navždy zachovať status „zeleného palca“.

Kategórie DIY