Sadržaj:

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

Video: Mini-Serre: 11 koraka

Video: Mini-Serre: 11 koraka
Video: Советы и Хитрости Мастеров по Дому, Которые Действительно Помогают▶11 2024, Novembar
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 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

Materijali
Materijali

Za izradu ovog projekta bit će vam potrebne sljedeće stavke:

Elektronika

  1. Raspberry pi 3 - kit
  2. Breadboard
  3. Muški priključci
  4. Konektori muško-žensko
  5. Dallas 18B20 (senzor temperature)
  6. Fotootpornik za otkrivanje fotoosjetljivog svjetlosnog senzora
  7. MCP3008
  8. Potenciometar
  9. LCD displej
  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. Nokti 16. Vijci

Alati:

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

Korak 2: Pravljenje kola

Pravljenje kola
Pravljenje kola
Pravljenje kola
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

Kreirajte bazu podataka
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

Prikazivanje vaše IP adrese na ekranu
Prikazivanje 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

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 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

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.

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

Pravljenje staklenika
Pravljenje staklenika
Pravljenje staklenika
Pravljenje 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

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

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: