Sadržaj:
- Korak 1: Materijali
- Korak 2: Pravljenje kola
- Korak 3: Kreirajte bazu podataka
- Korak 4: Zapisivanje podataka senzora u bazu podataka
- Korak 5: Prikaz vaše IP adrese na ekranu
- Korak 6: Mjerenje senzora svakih 10 minuta
- Korak 7: Izrada web stranice
- Korak 8: Kreiranje pozadine
- Korak 9: Kreiranje prednjeg kraja
- Korak 10: Izrada staklenika
- Korak 11: Spajanje svega zajedno
Video: Mini-Serre: 11 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
Kao student, imam lošu naviku da zaboravljam stvari. Zbog toga, ako želim uzgajati određenu vrstu biljke, obično zaboravim na nju i ona umire jer nema nikoga da se brine o njoj.
Pokušat ću riješiti ovaj problem pomoću Mini-Serrea. Mini-Serre je automatizirani sustav praćenja vrtlarstva koji šalje podatke o različitim vrstama senzora koji su instalirani na web poslužitelju koji radi na Raspberry Pi. Na ovaj način korisnik može pratiti svoje biljke na web stranici gdje god se nalazili. Ovaj koncept razvija se kao završni projekt u prvoj godini multimedijske i komunikacijske tehnologije u Howest Kortrijku u Belgiji.
Korak 1: Materijali
Za izradu ovog projekta bit će vam potrebne sljedeće stavke:
Elektronika
- Raspberry pi 3 - kit
- Breadboard
- Muški priključci
- Konektori muško-žensko
- Dallas 18B20 (senzor temperature)
- Fotootpornik za otkrivanje fotoosjetljivog svjetlosnog senzora
- MCP3008
- Potenciometar
- LCD displej
- Otpornici
- Plava LED dioda
- RGB LED
Kućište:
13. Central Park kweekkas (https://www.brico.be/nl/tuin-buitenleven/moestuin/…) 14. Drvena ploča (dno kućišta) 15. Nokti 16. Vijci
Alati:
17. Čekić 18. Testera 19. Odvijač 20. Bušilica
Korak 2: Pravljenje kola
U koraku 2 napravit ćemo krug za ovaj projekt. Ovo je apsolutni minimum koji vam je potreban ako želite da radi. Pomoću tablice za fritzing i dijagrama napravite kopiju kola. Ovdje su vam potrebni svi električni materijali iz koraka 1.
Podaci o krugu:
Na MCP3008 imamo 2 senzora koji su senzor svjetlosti i osjetnik vlage u tlu. Senzor temperature ima digitalni izlaz i koristi GPIO-pin na Raspberry Pi.
Extra:
Takođe sam implementirao LCD ekran koji će kasnije olakšati povezivanje na Raspberry Pi bez potrebe za povezivanjem sa vašim laptopom. To nije potrebno, ali je vrlo preporučljivo.
Korak 3: Kreirajte bazu podataka
Vrlo je važno pohraniti vaše podatke sa senzora na organiziran, ali i siguran način. Zbog toga sam odlučio pohraniti svoje podatke u bazu podataka. Na ovaj način samo ja mogu pristupiti ovoj bazi podataka (s ličnim računom) i održavati je organiziranom. Na gornjoj slici možete pronaći moju shemu iz moje baze podataka, a ispod datoteke za izvoz baze podataka u program baze podataka, na primjer MySQL.
Program baze podataka Važno je da naša baza podataka može samostalno raditi s našeg Raspberry Pi-a. To možete učiniti preuzimanjem MySQL ili MariaDB za Raspberry Pi. Prvo želite da napravite bazu podataka na svom računaru u MySQL Workbench -u. Zatim izvozite ovu bazu podataka kao samostalnu datoteku. Sada se povežite s bazom podataka vašeg Raspberry Pi -a putem MySQL Workbencha i vratite bazu podataka ovdje. Sada imate bazu podataka koja radi na vašem Raspberry Pi!
Korak 4: Zapisivanje podataka senzora u bazu podataka
Nakon što se baza podataka pokrene na vašem Raspberry Pi -u, želimo da naši senzori mogu u nju pohraniti svoje podatke. To možemo učiniti stvaranjem 3 zasebne skripte (što se radi u PyCharmu). Lijepa značajka uključena u PyCharm je ta što se možete spojiti na svoj Pi i na taj način možete pristupiti svojoj bazi podataka i pisati direktno u nju. Raspberry Pi podatke također direktno čita i LED diode će zasvijetliti u skladu s onim što vam je potrebno.
Plava LED lampica svijetli: Tlo nije dovoljno vlažno. RGB LED svijetli zeleno: sve je u redu. RGB LED svijetli crveno: previše je vruće, otvorite krov da se malo ohladi. RGB LED svijetli plavo: previše je hladno, zatvorite krov ako je otvoren.
Možete preuzeti sve skripte iz mog github spremišta:
Napomena: Koristio sam svoje lične podatke za prijavu u baze podataka pa ćete ih možda morati promijeniti tako da odgovaraju vašim.
Bilješka: Mapa DB1 sadrži klasu 'baza podataka' koja je uvezena u kôd koji će se povezati s vašom bazom podataka.
Korak 5: Prikaz vaše IP adrese na ekranu
Na ekranu se prikazuje IP adresa na kojoj vaš Raspberry Pi radi, na ovaj način možete se lako povezati bez žica na vaš Raspberry Pi. Napisao sam i skriptu za ovo koja čita IP vašeg pi-ja i prikazuje ga na ekranu (imajte na umu da se vaši GPIO-pinovi podudaraju inače ne bi radili). Raspberry Pi pokreće ovu skriptu automatski pri pokretanju. To možete učiniti dodavanjem nekog koda u datoteku rc.local na vašem Raspberry Pi. Do toga možete doći upisivanjem 'sudo nano /etc/rc.local', prije zadnjeg retka koda koji želite dodati 'Python3.5/home/user/filelocation &'.
Skriptu možete pronaći ovdje:
Napomena: '&' na kraju, ovo će učiniti da se skripta pokrene jednom i odmah zaustavi tako da se i druge skripte mogu pokrenuti.
Korak 6: Mjerenje senzora svakih 10 minuta
Ne želimo da našu bazu podataka popunjavaju senzorski podaci 0,001 sekunde, u protivnom će otežati bazu podataka da prati sve podatke koji dolaze i mogla bi se srušiti. Ovo je razlog zašto sam dodao zapis u 'crontab' na Raspberry Pi. Crontab je program koji prati zakazane zadatke, pa na ovaj način možete jednostavno pokrenuti skriptu svakih 10 minuta samo jednom.
Kako ga postaviti:
To možete postaviti tako da prvo upišete u komandnu liniju Raspberry Pi 'crontab -e', to otvara uređivač za crontab. Pomaknite se do dna datoteke i dodajte 3 retka, po jednu za svaki senzor.
' */10 * * * * python3.5/home/user/filepath/sensor1'
Napomena: '*/10' je 10 minuta koje želimo proći između svakog mjerenja. Kôd koji sam upisao nakon toga je verzija pythona koju pokrećete i datoteka koju želite pokrenuti pa morate napisati jedan red za svaki senzor jer postoje od 3 različite datoteke.
Korak 7: Izrada web stranice
Napravio sam svoju web stranicu u programu pod nazivom Atom. Program je vrlo jednostavan za korištenje i preporučuje se ako ste tek počeli pisati HTML i CSS poput mene.
Sve kodove i slike koji se koriste možete pronaći na ovoj poveznici:
Prednji dio web stranice napravio sam u Visual Studio Code-u pa ako ne planirate sami izraditi HTML i CSS, možete jednostavno dodati datoteke u novu mapu u Visual Studio Code-u umjesto u Atom.
Korak 8: Kreiranje pozadine
Back-end i front-end bit će stvari koje zapravo čine da se nešto dogodi na web stranici koju smo upravo napravili. U pozadini se ponovo povezujemo sa našom bazom podataka i umjesto da stavimo podatke u bazu podataka. Sada ćemo pročitati sve podatke s različitih senzora i koristeći Socket. IO poslat ćemo ih na našu prednju stranu kako bismo ih mogli prikazati na web stranici.
Kôd za back-end možete pronaći ovdje:
Bilješka: Koristimo klasu baze podataka koju smo ranije koristili pa ovo nisam uključio u ovo spremište.
Korak 9: Kreiranje prednjeg kraja
Front-end je mjesto gdje kombiniramo naš HTML i CSS kôd zajedno sa JavaScript-om i naš Back-end. JavaScript koji sam napisao pokušava uspostaviti vezu sa pozadinom koja mora biti pokrenuta. Sada će nam Back-end poslati sve podatke sa senzora, a mi možemo napraviti nekoliko funkcija u JavaScript-u koje uređuju HTML datoteku tako da odgovara našim trenutnim vrijednostima.
JavaScript možete pronaći ovdje:
Napomena: pobrinite se da u HTML -u povežete ispravnu mapu mjesta vašeg JavaScript -a, u protivnom možda neće funkcionirati.
Korak 10: Izrada staklenika
Kupio sam gotov paket od Brica:
Samo slijedite korake koji dolaze s paketom. Nakon što to učinimo, nismo spremni za ugradnju našeg Raspberry Pi -a. Prvo moramo napraviti „pod“ili dno za staklenik, to možete učiniti tako što ćete uzeti drvenu ploču i izmjeriti koliko velika mora biti da bi se uklopila. Prvo sam napravio drveni okvir tako da drvena ploča ima na čemu da počiva.
Korak 11: Spajanje svega zajedno
Skoro smo spremni! Samo ovaj posljednji korak i spremni ste za polazak. Uzmite Raspberry Pi i staklenik, napravite nekoliko rupa kako biste mogli provući LED diode kroz njih, napraviti rupu za ekran i otvor za napajanje Raspberry Pi. Stavite sve u staklenik, priključite Pi i sve je spremno! Imate svoj staklenik!
Preporučuje se:
PRENOSNO MINI VISOKONAPETNO napajanje sa USB-om, Bljeskalicom, KOMPONENTNIM TESTEROM I UGRADNIM PUNJAČEM: 6 koraka
PRENOSNO MINI VISOKONAPONSKO PSU SA USB, SVJETLOSNICOM, KOMPONENTNIM TESTEROM I UGRADNIM PUNJAČEM: Dobro došli u moj prvi instruktor! Pomoću ove instrukcije možete pretvoriti laganu/jeftinu solarnu bateriju (s nekim dodatnim dijelovima) u nešto korisno. Nešto što možete koristiti svaki dan, poput mene, jer je zaista odlično za korištenje! Većina av
CRT osciloskop s mini baterijskim napajanjem: 7 koraka (sa slikama)
CRT osciloskop sa mini baterijskim napajanjem: Zdravo! U ovom uputstvu pokazat ću vam kako napraviti mini CRT osciloskop na baterije. Osciloskop je važan alat za rad s elektronikom; možete vidjeti sve signale koji kruže u krugu i riješiti probleme
Kako napraviti MP3 player s LCD -om pomoću modula mini MP3 playera Arduino i DFPlayer: 6 koraka
Kako napraviti MP3 player s LCD -om pomoću modula Arduino i DFPlayer Mini MP3 Player: Danas ćemo napraviti MP3 player s LCD -om koristeći Arduino i DFPlayer mini modul MP3 playera. Projekt može čitati MP3 datoteke na SD kartici, a može i pauzirati i igrati isto kao i uređaj prije 10 godina. Takođe ima prethodnu pjesmu i sljedeću pjesmu zabavno
Mini napajanje 5V Breadboard Mini: 4 koraka
Mini napajanje 5V Breadboard Mini: Mikro napajanje za napajanje matične ploče sa 5 volti. Priključite na 9V bateriju, 12V ili bilo koji drugi izvor istosmjerne struje od 8 do 18 volti
Mod mini mini pogona: Tipke: 9 koraka
Mod USB mini pogona: Tipke: Ovo je mod koji će vam dati slatki mali USB pogon do 4 gigabajta! Takođe, ovo je zaista malo. Zabavite se i nadamo se da će vam se svidjeti! EDIT: USB pogon će i dalje raditi i zadržati memoriju nakon što završite. Nema razloga za prekid strujnog kola