Sadržaj:

Kompletna vremenska stanica Raspberry Pi: 14 koraka (sa slikama)
Kompletna vremenska stanica Raspberry Pi: 14 koraka (sa slikama)

Video: Kompletna vremenska stanica Raspberry Pi: 14 koraka (sa slikama)

Video: Kompletna vremenska stanica Raspberry Pi: 14 koraka (sa slikama)
Video: Веб-программирование – информатика для руководителей бизнеса 2016 2024, Novembar
Anonim
Kompletna meteorološka stanica Raspberry Pi
Kompletna meteorološka stanica Raspberry Pi
Kompletna meteorološka stanica Raspberry Pi
Kompletna meteorološka stanica Raspberry Pi
Kompletna meteorološka stanica Raspberry Pi
Kompletna meteorološka stanica Raspberry Pi
Kompletna meteorološka stanica Raspberry Pi
Kompletna meteorološka stanica Raspberry Pi

Zdravo svima, Ovo je moj prvi Instructable! U ovom vodiču vodit ću vas kako napraviti meteorološku stanicu Raspberry Pi sa vlastitom bazom podataka i web lokacijom. Napravio sam ovu meteorološku stanicu u kontekstu školskog zadatka, inspiraciju sam dobio na Instructables. Meteorološka stanica može mjeriti temperaturu, vlažnost, barometarski pritisak, brzinu vjetra i nivo svjetlosti u postocima. Svi uzorci koje Raspberry Pi prikupi bit će uskladišteni unutar MySQL servera na samom Pi i bit će prikazani na web serveru!

Korak 1: Prikupite materijale

Materijali ove stanice su vrlo jednostavni. Trebat će vam svi odgovarajući materijali, senzor i kućište.

Materijali

Raspberry Pi

Vrsta nije važna, čak možete koristiti i Raspberry Pi Zero W, ali pazite da ne napravite prvu reviziju jer će vam za mrežni poslužitelj biti potrebna mrežna veza. U ovom Instructableu ću koristiti Raspberry Pi 3.

www.amazon.com/Raspberry-Model-A1-2GHz-64-…

Neki kratkospojni kablovi

Trebat će vam neki kabeli za povezivanje svih senzora i čipa s vašim Raspberry Pi. Postoje tri vrste kratkospojnih kabela: muški na ženski, muški na muški i ženski na ženski. Trebat će vam oko 15 muško -ženskih i muško -muških tipova. U svakom slučaju ne bi škodilo dobiti ih sve tri.

www.amazon.com/Elegoo-120pcs-Multicolored-…

Breadboard

Raditi elektroniku bez matične ploče je nezgrapno. Ako planirate raditi više DIY elektronike, to će vam uvijek dobro doći.

www.amazon.com/dp/B072FC35GT/ref=sxr_pa_cl…

Senzori

Temperatura i vlažnost: Grove Temp & Hum v1.0

www.seeedstudio.com/Grove-Temperature%26Hu..

Barometarski tlak: Grove - senzor barometra BMP280 (ovaj senzor također bilježi temperaturu)

www.seeedstudio.com/Grove-Barometer-Sensor…

Brzina vjetra: Modul infracrvenog senzora (FC-03) LM393

www.amazon.com/LM393-Measuring-Sensor-Phot…

Svjetlo: Senzor svjetlosti Grove (napomena: ovo je analogni senzor, nužno je potreban analogno -digitalni pretvarač, poput MCP3008)

www.seeedstudio.com/Grove-Light-Sensor-v1….

Stanovanje

Stanovanje je vrlo važan dio vašeg projekta. Ovdje ćete smjestiti svu svoju elektroniku i senzore. Kućište ne mora biti lijepo, ali sigurno može biti. U ovom Instructableu napravit ću kućicu za ptice s odjeljkom na dnu u koji mogu pohraniti svoj Raspberry Pi.

Uvijek možete odabrati manje naporno kućište, poput bijele kutije s elektronikom. Jedini uvjet je da moraju postojati rupe za odzračivanje kako bi vjetar i zrak mogli prodirati pored senzora, inače nećete dobiti točne uzorke.

Korak 2: Povežite sve komponente

Povežite sve komponente
Povežite sve komponente
Povežite sve komponente
Povežite sve komponente
Povežite sve komponente
Povežite sve komponente

Nakon što ste dobili sve svoje komponente, možete početi s postavljanjem testa. Ovdje povezujete svu svoju elektroniku s vašim Raspberry Pi. Shemu Fritzinga možete pronaći u datotekama. Kad se sve veze uspostave, možete započeti postavljanjem Raspberry Pi.

Korak 3: Postavite Raspberry Pi

Postavljanje Raspberry Pi
Postavljanje Raspberry Pi

Ako vam je ovo prvi put da radite s Raspberry Pi, toplo vam preporučujem da posjetite web stranicu raspberrypi.org, ima sjajnu dokumentaciju i vodiče za početnike.

www.raspberrypi.org

Provjerite imate li najnoviju verziju Debiana. Možete nadograditi upisivanjem terminala u Raspberry Pi ili u SSH sesiji:

sudo apt-get update && sudo apt-get upgrade

Korak 4: Instalirajte SPI i I2C

Instalirajte SPI i I2C
Instalirajte SPI i I2C
Instalirajte SPI i I2C
Instalirajte SPI i I2C

Nakon što u potpunosti nadogradite, morat ćemo urediti neke konfiguracije na našem Raspberry Pi. Svi različiti senzori osim svjetlosnog i infracrvenog senzora brzine koriste I2C protokol. Ako želite koristiti ovaj protokol zajedno sa SPI sučeljem, morate to omogućiti u postavkama Raspberry Pi. SPI i I2C sučelje možete postaviti slijedeći ove naredbe.

sudo raspi-config

Omogući i SPI i I2C. Zatim ponovo pokrenite sistem koristeći:

sudo reboot

Nakon ponovnog pokretanja, provjerit ćemo je li “dtparam = spi = on” i “dtsparam = i2C_arm = on” unutar /boot /config datoteke. Kad pronađete ove retke, morat ćete ih otkomentirati.

sudo nano /boot/config.txt

Izađite iz uređivača pomoću ctrl + x i spremite.

Sada ćemo instalirati različite biblioteke za kontrolu senzora.

sudo apt-get install python3-spidev

sudo apt-get install python-smbus sudo apt-get install i2c-tools

Korak 5: Instalirajte MySQL

Instalirajte MySQL
Instalirajte MySQL
Instalirajte MySQL
Instalirajte MySQL
Instalirajte MySQL
Instalirajte MySQL

Nakon što ste postavili osnove Raspberry Pi -a, poput povezivanja na internet i ažuriranja softvera. Možemo početi s postavljanjem našeg sistema baze podataka u kojem ćemo pohraniti sve naše vremenske podatke. Koristićemo MySQL. Ovo je jednostavan sistem baze podataka u kojem možemo povezati više tabela jedna s drugom pomoću relacija. Da biste instalirali MySQL tip u terminal:

sudo apt-get install mysql-server

sudo apt-get install mysql-client

Tokom instalacije od vas će biti zatraženo da unesete lozinku za root korisnika. Ova lozinka će vam trebati kasnije. Nakon što su ovi paketi instalirani, možete provjeriti status vašeg MySQL servera upisivanjem:

mysql -uroot -p

status

Korak 6: Pokretanje skripte baze podataka

Pokretanje skripte baze podataka
Pokretanje skripte baze podataka
Pokretanje skripte baze podataka
Pokretanje skripte baze podataka

Kada MySQL poslužitelj radi, možemo pokrenuti skriptu baze podataka. Ova skripta će stvoriti model s različitim tablicama. Ovdje ćemo pohraniti sve datume snimanja senzora i sve različite postavke koje web stranica koristi.

Da bismo pokrenuli MySQL skriptu iz Pi, prvo moramo kopirati skriptu u Raspberry Pi. FileZilla je odličan način za kopiranje datoteka između vašeg računara i vašeg Pi -a. Evo sjajnog vodiča kako to učiniti.

www.raspberrypi.org/documentation/remote-a…

Kada je skripta na vašem Pi, možete je pokrenuti upisivanjem terminala:

mysql -uroot -p

izvor /path/to/script.sql

Korak 7: Instaliranje MySQL konektora za Python3

Instaliranje MySQL konektora za Python3
Instaliranje MySQL konektora za Python3

Želimo povezati našu bazu podataka s web poslužiteljem koji radi na Python3. Da biste instalirali ovaj konektor, pokrenite ovu naredbu.

sudo apt-get install python3-mysql.connector

Korak 8: Instalirajte Flask

Instalirajte Flask
Instalirajte Flask

Web poslužitelj koristi Flask. Ovaj mikro okvir je vrlo prilagodljiv i jednostavan za upotrebu. Savršeno za našu meteorološku stanicu. Za instaliranje bočice upišite ovu naredbu u prozor terminala.

sudo apt-get install python3-flask

Korak 9: Kopirajte web poslužitelj na svoj Raspberry Pi

Kopirajte web server na svoj Raspberry Pi
Kopirajte web server na svoj Raspberry Pi

Svaki paket je sada instaliran i sve je podešeno. Sada možemo kopirati kôd s GitHub -a. Postoje dva načina na koji možete dobiti kôd na svom Raspberry Pi -u: možete preuzeti glavnu zip datoteku i kopirati je na svoj Pi pomoću FileZille ili možete klonirati spremište direktno na svom Raspberry Pi -u. Da biste klonirali spremište, upišite ove naredbe na svoj Pi.

cd/path/you/like/

git clone

Sada biste trebali imati novi direktorij pod nazivom WeatherStation. To možete provjeriti prema sljedećim uputama:

ls

Korak 10: Uredite klasu baze podataka

Uredite klasu baze podataka
Uredite klasu baze podataka
Uredite klasu baze podataka
Uredite klasu baze podataka

Sav kôd je sada na vašem Raspberry Pi. Prije testiranja moramo konfigurirati MySQL konektor. Postavke konektora pohranjene su u novostvorenom direktoriju. Za odlazak na datoteku moramo promijeniti naš trenutni direktorij. Nakon što lociramo datoteku, umetnut ćemo našu root lozinku našeg MySQL poslužitelja u datoteku. To možete učiniti slijedeći ove naredbe.

cd WeatherStation/Flask/Database/

nano pswd.py

Sada možete urediti datoteku. Zamijenite “your_password” sa svojom root lozinkom za MySQL. Sada smo spremni za testiranje koda.

Korak 11: Testiranje

Testiranje
Testiranje

Sada kada je sve konačno instalirano i ožičeno, možemo započeti testiranje. Idite u direktorij Flask i upišite naredbu:

python3 Flask.py

Sve bi trebalo početi. Sada možete otići na svoju web stranicu upisivanjem u adresnu traku: http: IP_RASPBERRY: 5000/.

Korak 12: Web stranica

Web stranica
Web stranica

Kada prvi put otvorite stranicu, vidjet ćete ekran za prijavu. Na web mjesto možete ući ako kao korisničko ime koristite "Lander" i lozinku "Test12". Web stranica je napisana na nizozemskom, možete je prevesti ako imate znanja o web razvoju.

Korak 13: Stavite sve u kućište

Stavite sve u kućište
Stavite sve u kućište
Stavite sve u kućište
Stavite sve u kućište
Stavite sve u kućište
Stavite sve u kućište
Stavite sve u kućište
Stavite sve u kućište

Uzmite kućište i postavite elektroniku tako da budu ravnomjerno raspoređeni. Koristit ću svoju novonastalu kućicu za ptice, dolje sam uključio dizajn. To je jednostavna kutija s lažnim dnom za spremanje Raspberry Pi.

Napomena: da bi senzor vlažnosti pravilno radio, uvijek mora postojati strujanje zraka. Kad budete zadovoljni rezultatom, sve možete zatvoriti i meteorološka stanica je gotova. Sada ga možete postaviti gdje god želite i prikupiti vremenske podatke.

Korak 14: Vaša meteorološka stanica radi

Vaša meteorološka stanica radi
Vaša meteorološka stanica radi
Vaša meteorološka stanica radi
Vaša meteorološka stanica radi
Vaša meteorološka stanica radi
Vaša meteorološka stanica radi

Čestitamo, vaš Raspberry Pi je sada potpuno funkcionalan. Postavite ga negdje na otvoreno i prikupite podatke!

Preporučuje se: