Sadržaj:
- Korak 1: Prikupite materijale
- Korak 2: Povežite sve komponente
- Korak 3: Postavite Raspberry Pi
- Korak 4: Instalirajte SPI i I2C
- Korak 5: Instalirajte MySQL
- Korak 6: Pokretanje skripte baze podataka
- Korak 7: Instaliranje MySQL konektora za Python3
- Korak 8: Instalirajte Flask
- Korak 9: Kopirajte web poslužitelj na svoj Raspberry Pi
- Korak 10: Uredite klasu baze podataka
- Korak 11: Testiranje
- Korak 12: Web stranica
- Korak 13: Stavite sve u kućište
- Korak 14: Vaša meteorološka stanica radi
Video: Kompletna vremenska stanica Raspberry Pi: 14 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
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
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
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
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
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
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
Ž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
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
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
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
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
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
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
Čestitamo, vaš Raspberry Pi je sada potpuno funkcionalan. Postavite ga negdje na otvoreno i prikupite podatke!
Preporučuje se:
Ručna vremenska stanica: 4 koraka
Ručna meteorološka stanica: U ovom Instructableu koristit ćemo Arduino, oled ekran i SparkFun kombinaciju senzora okoliša sa senzorima CCS811 i BME280 na brodu za izradu ručnog uređaja koji mjeri temperaturu, vlažnost, nivo TVOC -a, barometarski tlak
WiFi sat, mjerač vremena i vremenska stanica, kontrolirano Blynkom: 5 koraka (sa slikama)
WiFi sat, mjerač vremena i vremenska stanica, kontrolirano Blynkom: Ovo je digitalni sat Morphing (zahvaljujući Hari Wiguna za koncept i kôd za promjenu), također je analogni sat, stanica za izvještavanje o vremenu i kuhinjski mjerač vremena. U potpunosti se kontrolira pomoću Blynk aplikacija na vašem pametnom telefonu putem WiFi -ja. Aplikacija vam omogućuje
Lična vremenska stanica Photon IoT od čestica: 4 koraka (sa slikama)
Lična vremenska stanica Photon IoT od čestica:
ESP8266 - 12 Vremenska stanica: 4 koraka (sa slikama)
ESP8266 - 12 Weatherstation: Ovaj projekt govori o izgradnji i testiranju meteorološke stanice zasnovane na ESP8266 - 12. Koncept se temelji na niskom napajanju sa punjenjem baterije pomoću solarne ćelije. Ovo uputstvo je zasnovano na mojim prethodna 2 projekta sistema za punjenje i esp logger -u.BOM:P
Sunčeva vremenska stanica Raspberry Pi: 7 koraka (sa slikama)
Solarna vremenska stanica Raspberry Pi: Potaknuta završetkom dva prethodna projekta, kompaktnom kamerom i prijenosnom konzolom za igre, htjela sam pronaći novi izazov. Prirodni napredak bio je vanjski daljinski sistem … Htio sam izgraditi Raspberry Pi meteorološku stanicu koja