Uz zeleni palac i malo strpljenja, vrtlarstvo je lijep hobi bez obzira na to imate li nekoliko egzotičnih biljaka u zatvorenom prostoru ili imate puni vanjski vrt s krumpirima i trajnicama.
Uz to rečeno, postoje i trenuci kada vaše strpljenje može ponestati kada biljke počnu umirati iz razloga za koji se čini da nema nikakvog dobrog razloga.
Raspberry Pi Pico W može pomoći u pružanju rješenja kako bi se osiguralo da biljke napreduju a da uopće ne pomaknete prstom (pa, skoro).
Pogledajmo kako će monitor za biljke, neki kod i maleni mikrokontroler pratiti zdravlje vaše biljke s bilo kojeg mjesta u vašem domu.
Potreban hardver
Začudo, nije potrebno puno hardvera. Puno je magije sadržano u Plant Monitoru. Za početak vam je potrebno samo nekoliko stvari.
- Plant Monitor od Monk Makesa
- 4x Žensko-muški premosnici
- Raspberry Pi Pico W
Iako ovaj monitor za biljku podržava korištenje krokodilskih kopči, ovaj projekt koristi konektore s iglama pričvršćene na stražnju stranu uređaja za nadzor postrojenja.
Postavljanje pomoćnika za vrtlarenje
Ovaj projekt uključuje povezivanje monitora postrojenja s vašim Raspberry Pi Pico W, kao i stvaranje i manipuliranje kodom kako bi sve funkcioniralo. Web poslužitelj bit će potreban za posluživanje jednostavne web stranice kojoj možete pristupiti unutar vaše kućne internetske veze.
Postoje različite verzije modela Raspberry Pi Pico. Za ovaj projekt morat ćete koristiti Raspberry Pi Pico W. Kako biste saznali za što je Pico W sposoban, pogledajte naš vodič što je Pico W i što može.
Najprije provjerimo je li monitor postrojenja spojen i radi li ispravno. Kasnije u članku bavit ćete se postavljanjem jednostavnog web poslužitelja koji se koristi za nadzor vašeg postrojenja s bilo kojim uređajem s omogućenim preglednikom povezanim s vašom kućnom mrežom.
Priprema Plant Monitora
S mnogo senzora dostupnih za kupnju putem raznih internetskih stranica, saznat ćete da će se neki senzori tla lako istrošiti u tlu, a drugi prilično dobro podnose vremenske uvjete. Monk Makes Plant Monitor je dobra opcija jer nije sklon korodiranju u tlu. Ovaj monitor ne samo da mjeri vlažnost tla, već također mjeri vlažnost i temperaturu.
Samo će četiri pina morati biti spojena s monitora postrojenja na vaš Raspberry Pi Pico W:
- GND prelazi u GND
- 3V se spaja na 3V3 Out
- RX_IN će pronaći svoj put do GP0
- TX_OUT će se sastati s GP1
Nakon što se spoji na napajanje, vaš Raspberry Pi Pico W moći će napajati sebe i monitor postrojenja. Primijetit ćete neke lampice na hardveru koje potvrđuju da uređaj radi. Također, postoji LED svjetlo koje će svijetliti zeleno, žuto ili crveno (ovisno o razini vlage otkrivenoj u vašem tlu).
Iako Monk Makes Plant Monitor dolazi s nekoliko izvrsnih python modula, svejedno ćete morati izraditi neki jednostavan kod kako biste pratili zdravlje tla vaše biljke. Sljedeće python datoteke možete preuzeti s našeg MUO GitHub repozitorij.
Trebat će vam pmon.py i test.py za dio za senzore tla i python datoteke mikrodot.py, mm_wlan.py, i pico_w_server.py koristit će se za kasnije dovršavanje jednostavnog web poslužitelja.
Sada je sjajno vrijeme za pauzu i osvježenje suptilne razlike između MicroPythona i Pythona ako to već niste učinili.
Python datoteka, pmon.py, stvara MicroPython klasu za monitor postrojenja. UART će se pobrinuti za dvostruki prijenos podataka, a zatim je također potrebno nešto raditi na pretvaranju analognog u digitalno. Također ćete primijetiti vlažnost, temp, i vlažnost funkcije koje su također definirane u ovoj datoteci.
defdobiti_mokroću(sebe):
povratak int(sebe.request_property("w"))defdobiti_temp(sebe):
povratak plutati(sebe.request_property("t"))defdobiti_vlažnost(sebe):
povratak plutati(sebe.request_property("h"))defled_off(sebe):
sebe.uart.write("l")
defled_on(sebe):
sebe.uart.write("L")
Zatim će vam trebati test.py datoteka dobivena od našeg MUO GitHub repozitorij.
Primijetit ćete da moduli vrijeme, pmon (iz PlantMonitor), i mašina su potrebni o pravilno pratiti zdravlje vaše biljke.
Kao PlantMonitor modul je uvezen, sve što je potrebno za praćenje stanja tla je jednostavna petlja while. Također, ispisati naredba će ispisati očitanja vlažnosti tla, temperature i vlažnosti nakon pokretanja test.py u Thonnyju.
vrijeme.spavanje(2) # Vrijeme pokretanja PlantMonitora
pm = PlantMonitor()
dokPravi:
w = pm.get_wetness()
t = pm.get_temp()
h = pm.get_humidity()
ispisati("Vlažnost: {0} Temp: {1} Vlažnost: {2}".format (š, t, v))
vrijeme.spavati(1)
Ne želite zalijevati biljku kada je tlo presuho? Dodijelite svoj relej pumpe pinu na Raspberry Pi Pico i upotrijebite naredbu if da pratite vrijednost vlažnosti (od 100) za pokretanje pumpe za vodu, putem releja, za uključivanje i ispuštanje vode opet.
relej1 = Pin(15, Pin. OUT) #relej je spojen na GP15 i GND
ako w = 24# pazite na vrijednost vlažnosti od 24/100
relej1.vrijednost(1) # uključiti relej
relej1(0) # isključite relej
Trebat ćete provesti neka testiranja kako biste pronašli savršenu ravnotežu kako biste bili sigurni da je vaša biljka zadovoljna količinom vode koju prima. Također možete dodati drugu if naredbu za uključivanje grijaće lampe, putem releja, ako je vašoj biljci prehladno.
Jednostavan web poslužitelj
Trebat će vam tri python datoteke, iz našeg MUO GitHub repozitorij, kako bi vaš Raspberry Pi Pico W emitirao statistiku tla na vaše kućne internetske veze:
- mikrodot.py
- mm_wlan.py
- pico_w_server.py
The mikrotočka datoteka upravlja pozadinskim funkcijama za stvaranje ovog jednostavnog web poslužitelja temeljenog na HTTP-u i prikazuje izlaz python koda kao web stranica temeljena na html-u koja se može pozvati pomoću IP adrese Raspberry Pi Pico W.
The mm_wlan.py nudi jednostavan način povezivanja na bežičnu mrežu. Primit ćete IP adresu svog Raspberry Pi Pico i povezanu poruku. Ako povezivanje nije bilo uspješno, primit ćete poruku o neuspješnom povezivanju.
The pico_w_server.py datoteku gdje unosite SSID (zapamtite da se Raspberry Pi Pico W povezuje samo na 2,4 GHz SSID-ove) i svoju Wi-Fi lozinku. Unutar odjeljka HTML možete prilagoditi što će vaš web poslužitelj prikazati u web pregledniku. Također možete ukloniti komentare iz odjeljka za osvježavanje i podesiti interval ako ne želite da se web stranica osvježava svake sekunde.
Na samom dnu ove datoteke također možete prilagoditi priključak. Ovo je zgodno ako ove podatke želite izložiti internetu izvan svog doma.
Kada pokrenete svoj test.py datoteka, potrebne python datoteke poslužitelja (mm_wlan i pico_w_poslužitelj) se uvoze za vas. Nakon što pokrenete test.py datoteku, zgrabite IP adresu ako je vaš Pi (nalazi se u Thonny izlazu) i dodajte priključak koji ste koristili (zadano je 80) iz bilo kojeg web-preglednika koji je kod kuće povezan na isti 2,4 GHz SSID. Trebali biste vidjeti nešto poput ovoga:
Kako biste smanjili ovisnost o vašem spojenom računalu, promijenite test.py datoteka u glavni.py i uštedite na svom Raspberry Pi Pico W. Možda biste također željeli razmotriti povezivanje LCD-a s vašim Picom tako da programirate zaslon za ispis IP adrese (kada uklonite ovisnost vašeg spojenog računala).
Vrati taj zeleni palac
Sa sofisticiranim senzorom za tlo i jednostavnim web poslužiteljem sada možete nadzirati zdravlje svoje biljke iz web preglednika bilo gdje u vašem domu.
Slobodno prilagodite kôd kako vam odgovara. Ako ste za to, razmislite o stvaranju aplikacije za detekciju tla koja će malo dotjerati jednostavan web poslužitelj koji ste upravo postavili.
Kako biste ovaj projekt učinili potpunim, dodajte pumpu i relej, zajedno s toplinskom lampom, i imat ćete potpuno automatizirani vrt. Sada ćete moći zauvijek zadržati svoj status 'zelenog palca'.