Sadržaj:

Mini-Serre: 11 koraka
Mini-Serre: 11 koraka

Video: Mini-Serre: 11 koraka

Video: Mini-Serre: 11 koraka
Video: Советы и Хитрости Мастеров по Дому, Которые Действительно Помогают▶11 2024, Srpanj
Anonim
Mini-Serre
Mini-Serre
Mini-Serre
Mini-Serre

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 se nema tko o njoj brinuti.

Pokušat ću riješiti ovaj problem s Mini-Serreom. Mini-Serre je automatizirani sustav praćenja vrtlarstva koji šalje podatke o različitim vrstama senzora koji su instalirani na web poslužitelj koji radi na Raspberry Pi. Na ovaj način korisnik može pratiti svoje biljke na web stranici gdje god se nalazili. Ovaj se koncept razvija kao završni projekt u prvoj godini multimedijske i komunikacijske tehnologije u Howest Kortrijku u Belgiji.

Korak 1: Materijali

Materijali
Materijali

Za izradu ovog projekta trebat će vam sljedeće stavke:

Elektronika

  1. Malina pi 3 - komplet
  2. Oglasna ploča
  3. Priključci muško-muško
  4. Priključci muško-žensko
  5. Dallas 18B20 (senzor temperature)
  6. Fotootpornik Otkrivanje Fotoosjetljiv svjetlosni senzor
  7. MCP3008
  8. Potenciometar
  9. LCD zaslon
  10. Otpornici
  11. Plava LED dioda
  12. 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. Čavli 16. Vijci

Alati:

17. Čekić 18. Pila 19. Odvijač 20. Bušilica

Korak 2: Izrada kruga

Izrada kruga
Izrada kruga
Izrada kruga
Izrada kruga

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 prženje i dijagrama napravite kopiju kruga. Ovdje trebate sve električne materijale iz koraka 1.

Podaci o krugu:

Na MCP3008 imamo 2 senzora koji su osjetnik svjetla i osjetnik vlage u tlu. Senzor temperature ima digitalni izlaz i koristi GPIO-pin na Raspberry Pi.

Ekstra:

Također sam implementirao LCD zaslon koji će kasnije olakšati spajanje na Raspberry Pi bez potrebe za povezivanjem s prijenosnim računalom. To nije potrebno, ali je vrlo preporučljivo.

Korak 3: Stvorite bazu podataka

Stvorite bazu podataka
Stvorite 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 osobnim 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 iz naše Raspberry Pi. To možete učiniti preuzimanjem MySQL ili MariaDB za Raspberry Pi. Najprije želite napraviti bazu podataka na svom računalu u MySQL Workbench -u. Zatim izvezite 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 pokrenutu 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 je učinjeno 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 izravno u nju. Raspberry Pi podatke izravno čita i LED diode će zasvijetliti u skladu s vašim potrebama.

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: prehladno je, zatvorite krov ako je otvoren.

Sve skripte možete preuzeti iz mog github spremišta:

Napomena: Koristio sam svoje osobne podatke za prijavu u baze podataka pa ćete ih možda morati promijeniti kako bi odgovarali vašim.

Bilješka: Mapa DB1 sadrži klasu 'baza podataka' koja se uvozi u kôd koji će se povezati s vašom bazom podataka.

Korak 5: Prikaz vašeg IP -a na zaslonu

Prikazivanje vašeg IP -a na zaslonu
Prikazivanje vašeg IP -a na zaslonu

Zaslon prikazuje IP adresu na kojoj vaš Raspberry Pi radi, na ovaj način možete se jednostavno povezati bez žica s vašim Raspberry Pi. Napisao sam i skriptu za ovo koja čita IP vašeg pi-ja i prikazuje ga na zaslonu (imajte na umu da se vaši GPIO-pinovi podudaraju inače ne bi radili). Raspberry Pi automatski pokreće ovu skriptu 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 jednom pokrene i odmah zaustavi kako bi se i druge skripte mogle pokrenuti.

Korak 6: Mjerenje senzora svakih 10 minuta

Mjerenje senzora svakih 10 minuta
Mjerenje senzora svakih 10 minuta

Ne želimo da našu bazu podataka popunjavaju senzorski podaci 0,001 sekunde, u protivnom će baza podataka otežati praćenje svih podataka 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 naredbenu liniju Raspberry Pi 'crontab -e', to otvara uređivač za crontab. Pomaknite se do dna datoteke i dodajte 3 retka, po jedan za svaki senzor.

' */10 * * * * python3.5/home/user/filepath/sensor1'

Napomena: '*/10' je 10 minuta koliko želimo biti između svakog mjerenja. Kôd koji sam upisao nakon njega je verzija pythona koju pokrećete i datoteka koju želite pokrenuti pa morate napisati jedan redak za svaki senzor jer postoje od 3 različite datoteke.

Korak 7: Izrada web stranice

Izrada web stranice
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.

Sav kôd i slike koje možete upotrijebiti 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: Stvaranje 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 ponovno povezujemo s 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š prednji kraj kako bismo ih mogli prikazati na web stranici.

Kôd za back-end možete pronaći ovdje:

Napomena: Koristimo klasu baze podataka koju smo ranije koristili pa ovo nisam uključio u ovo spremište.

Korak 9: Stvaranje prednjeg kraja

Prednji kraj kombiniramo naš HTML i CSS kôd zajedno sa JavaScriptom i naš Back-end. JavaScript koji sam napisao pokušava uspostaviti vezu s back-endom koji mora biti Running. 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

Izrada staklenika
Izrada staklenika
Izrada staklenika
Izrada staklenika

Kupio sam gotov paket od Brica:

Samo slijedite korake koji dolaze s paketom. Nakon što to učinimo, još nismo spremni staviti naš Raspberry Pi unutra. Prvo moramo napraviti 'pod' ili dno za staklenik, to možete učiniti tako da uzmete drvenu ploču i izmjerite koliko velika mora biti kako bi stala. Prvo sam napravio drveni okvir tako da drvena ploča ima na čemu počivati.

Korak 11: Sve spojite

Spajanje svega
Spajanje svega
Spajanje svega
Spajanje svega
Spajanje svega
Spajanje svega

Skoro smo spremni! Samo ovaj posljednji korak i spremni ste za pokret. Uzmite Raspberry Pi i staklenik, napravite nekoliko rupa kako biste mogli provući LED diode kroz njih, napraviti rupu za zaslon i otvor za napajanje Raspberry Pi. Stavite sve u staklenik, priključite Pi i sve je spremno! Imate svoj staklenik!

Preporučeni: