Täielik DIY Raspberry Pi ilmajaam koos tarkvaraga: 7 sammu (koos piltidega)
Täielik DIY Raspberry Pi ilmajaam koos tarkvaraga: 7 sammu (koos piltidega)
Anonim
Täielik DIY Raspberry Pi ilmajaam koos tarkvaraga
Täielik DIY Raspberry Pi ilmajaam koos tarkvaraga
Täielik DIY Raspberry Pi ilmajaam koos tarkvaraga
Täielik DIY Raspberry Pi ilmajaam koos tarkvaraga

Veebruari lõpus nägin seda postitust Raspberry Pi saidil.

www.raspberrypi.org/school-weather-station-…

Nad olid loonud koolidele Raspberry Pi ilmajaamad. Ma tahtsin täiesti ühte! Kuid sel ajal (ja ma usun, et selle kirjutamise ajal) ei ole need avalikult kättesaadavad (peate olema valitud testijate rühmas). Noh, ma tahtsin edasi minna ja ma ei tahtnud olemasoleva kolmanda osapoole süsteemi eest sadu dollareid välja käia.

Niisiis, nagu hea Instructable'i kasutaja, otsustasin teha oma !!!

Uurisin veidi ja leidsin häid kommertssüsteeme, millest saaksin lähtuda. Leidsin mõningaid häid juhendeid, mis aitavad mõne anduri või vaarika PI kontseptsiooni puhul. Leidsin isegi selle saidi, mis oli tasuline, nad purustasid olemasoleva Maplini süsteemi:

www.philpot.me/weatherinsider.html

Umbes kuu aega edasi ja mul on põhiline töösüsteem. See on täielik Raspberry Pi ilmastikusüsteem, millel on ainult põhiline Raspberry Pi riistvara, kaamera ja mõned analoog- ja digitaalsensorid, et meie mõõtmisi teha. Ärge ostke valmis anemomeetreid ega vihmamõõtureid, me teeme oma! Siin on selle omadused:

  • Salvestab teabe RRD -sse ja CSV -sse, nii et seda saab manipuleerida või eksportida/importida teistesse vormingutesse.
  • Kasutab Weather Underground API -d, et saada lahedat teavet, nagu ajaloolised tõusud ja mõõnad, kuufaasid ja päikesetõus/-loojang.
  • Kasutab üks kord minutis pildi tegemiseks Raspberry Pi kaamerat (seejärel saate neid kasutada ajakavade tegemiseks).
  • Sellel on veebilehed, mis kuvavad praeguste tingimuste ja mõne ajaloolise teabe (viimane tund, päev, 7 päeva, kuu, aasta). Veebisaidi teema muutub vastavalt kellaajale (4 võimalust: päikesetõus, loojang, päev ja öö).

Kogu teabe salvestamise ja kuvamise tarkvara on Githubis, olen isegi teinud mõningaid veajälgimis- ja funktsioonitaotlusi:

github.com/kmkingsbury/raspberrypi-weather…

See projekt oli minu jaoks suurepärane õppimiskogemus, ma sain tõeliselt sukelduda Raspberry Pi võimetesse, eriti GPIO -ga, ja tabasin ka mõnda õppimisvalupunkti. Loodan, et teie, lugeja, saate mõnest minu katsumusest ja viletsusest õppida.

Samm: materjalid

Materjalid
Materjalid
Materjalid
Materjalid
Materjalid
Materjalid
Materjalid
Materjalid

Elektroonika:

  • 9 pilliroo lülitit (8 tuule suuna jaoks, 1 vihmamõõturi jaoks, valikuliselt 1 tuule kiiruse jaoks Halli anduri asemel), ma kasutasin neid:
  • 1 Halli andur (tuule kiiruse jaoks, mida nimetatakse anemomeetriks) -
  • Temperatuur (https://amzn.to/2RIHf6H)
  • Niiskus (palju niiskusandureid on kaasas temperatuurianduriga), kasutasin DHT11:
  • Rõhk (BMP -l oli ka temperatuuriandur sees), kasutasin BMP180, https://www.adafruit.com/product/1603, see toode on nüüd lõpetatud, kuid BMP280 -ga on samaväärne (https://amzn.to/2E8nmhi)
  • Fotoresistor (https://amzn.to/2seQFwd)
  • GPS -kiip või USB -GPS (https://amzn.to/36tZZv3).
  • 4 tugevat magnetit (2 anemomeetri jaoks, 1 suuna jaoks, 1 vihmamõõturi jaoks), ma kasutasin haruldaste muldmetallide magneteid, väga soovitatav) (https://amzn.to/2LHBoKZ).
  • Mul on käputäis erinevaid takistite pakke, mis on aja jooksul äärmiselt käepäraseks osutunud:
  • MCP3008 - teisendada Raspberry Pi analoog digitaalsisenditeks -

Riistvara

  • Vaarika Pi - kasutasin algselt 2 traadita adapteriga, nüüd saate ka toiteadapteriga 3 B+ komplekti. (https://amzn.to/2P76Mop)
  • Pi kaamera
  • Tugev 5 V toiteadapter (see osutus valusalt tüütuks, lõpuks sain endale Adafruit'i, muidu tõmbab kaamera liiga palju mahla ja saab/riputab Pi, see on siin: https://www.adafruit.com/products /501)

Materjalid:

  • 2 tõukejõu laagrit (või ka rula- või rulluisulaagrid töötavad), sain need Amazonist:
  • 2 veekindlat korpust (kasutasin kohaliku suure kasti poe elektrilist korpust), sellel pole suurt tähtsust, lihtsalt tuleb leida hea suurusega korpus, kus on piisavalt ruumi ja mis kaitseb kõike).
  • Mõned PVC torud ja otsakorgid (erinevad suurused).
  • PVC kinnitusklambrid
  • Paar lehte õhukest pleksiklaasi (ei midagi liiga uhket).
  • plastist vaheseinad
  • minikruvid (kasutasin #4 poldi ja mutrit).
  • 2 Plastikust jõulupuu kaunistus - kasutatud anemomeetri jaoks, sain oma kohalikus hobifuajees.
  • Väike tüübel
  • Väike vineeritükk.

Tööriistad:

  • Dremel
  • Liimipüstol
  • Jootekolb
  • Multimeeter
  • Puurida

2. etapp: põhikorpus - Pi, GPS, kaamera, valgus

Peamine korpus - Pi, GPS, kaamera, valgus
Peamine korpus - Pi, GPS, kaamera, valgus
Peamine korpus - Pi, GPS, kaamera, valgus
Peamine korpus - Pi, GPS, kaamera, valgus
Peamine korpus - Pi, GPS, kaamera, valgus
Peamine korpus - Pi, GPS, kaamera, valgus
Peamine korpus - Pi, GPS, kaamera, valgus
Peamine korpus - Pi, GPS, kaamera, valgus

Peamises korpuses on PI, kaamera, GPS ja valgusandur. See on konstrueeritud veekindlaks, kuna see sisaldab kõiki kriitilisi komponente, mõõtmised võetakse kaugkarbist ja see on mõeldud elementidele avatuks/avatuks.

Sammud:

Valige korpus, ma kasutasin elektrikilpi, erinevad projektikarbid ja veekindlad korpused töötavad sama hästi. Peamine on see, et sellel on piisavalt ruumi kõige mahutamiseks.

Minu ümbris sisaldab:

  • Vaarika pi (ootamatustel) - Vajab WIFI -kiipi, ei taha Cat5e koduõue jooksutada!
  • Kaamera (ka ooterežiimis)
  • GPS -kiip, mis on ühendatud USB kaudu (kasutades sparkfun FTDI -kaablit: https://www.sparkfun.com/products/9718) - GPS pakub laius- ja pikkuskraade, mis on tore, kuid mis veelgi olulisem, saan täpset aega GPS!
  • kaks Ethernet/cat 5 pistikut, et ühendada põhikorpus teise korpusega, kus asuvad teised andurid. See oli lihtsalt mugav viis kaablite kahe kasti vahele minemiseks, mul on umbes 12 juhet ja kaks cat5 pakuvad 16 võimalikku ühendust, nii et mul on ruumi asjade laiendamiseks/muutmiseks.

Minu korpuse ees on aken, kust kaamera välja näeb. Selle aknaga ümbris kaitseb kaamerat, kuid mul oli probleeme, kus kaamera punane LED (pildistamisel) peegeldub pleksiklaasilt ja ilmub fotol. Kasutasin selle leevendamiseks musta linti ja proovisin seda (ja muid Pi ja GPS -i LED -e) blokeerida, kuid see pole veel 100%.

3. samm: kaugjuhtimispult temperatuuri, niiskuse ja rõhu jaoks

'Kaugkarp' temperatuuri, niiskuse ja rõhu jaoks
'Kaugkarp' temperatuuri, niiskuse ja rõhu jaoks
'Kaugkarp' temperatuuri, niiskuse ja rõhu jaoks
'Kaugkarp' temperatuuri, niiskuse ja rõhu jaoks
'Kaugkarp' temperatuuri, niiskuse ja rõhu jaoks
'Kaugkarp' temperatuuri, niiskuse ja rõhu jaoks

Siin hoidsin temperatuuri, niiskuse ja rõhu andureid, samuti vihmamõõturi, tuule suuna ja tuule kiiruse andurite ühendusi.

Kõik on väga lihtne, siin asuvad tihvtid ühenduvad Etherneti kaablite kaudu Raspberry Pi vajalike tihvtidega.

Proovisin kasutada digitaalseid andureid, kus võimalik, ja seejärel lisatakse MCP 3008 -le mis tahes analoog, see võtab kuni 8 analoogi, mis oli minu vajaduste jaoks enam kui piisav, kuid annab ruumi parandamiseks / laiendamiseks.

See korpus on õhule avatud (see peab olema täpse temperatuuri, niiskuse ja rõhu jaoks). Alumised augud on välja hüppatud, nii et ma andsin mõnele ahelale pihusti Silicone Conformal Coating pihustiga (saate selle Internetist või sellisest kohast nagu Fry's Electronics). Loodetavasti peaks see kaitsma metalli niiskuse eest, kuigi peate olema ettevaatlik ja mitte kasutama seda mõnel anduril.

Korpuse ülaosas on ka tuulekiiruse andur. See oli toss up, ma oleks võinud tuule kiiruse või tuule suuna peale panna, ma ei näinud ühegi olulist eelist teise ees. Üldiselt soovite, et mõlemad andurid (tuule suund ja kiirus) oleksid piisavalt kõrged, kus hooned, aiad ja takistused ei sega mõõtmisi.

4. samm: vihmamõõtur

Vihmamõõtur
Vihmamõõtur
Vihmamõõtur
Vihmamõõtur
Vihmamõõtur
Vihmamõõtur

Tegeliku gabariidi tegemiseks järgisin enamasti seda juhendit:

www.instructables.com/id/Arduino-Weather-St…

Tegin selle pleksiklaasist, et näha, mis toimub, ja arvasin, et see on lahe. Üldiselt töötas pleksiklaas hästi, kuid koos liimipüstoli, kummist tihendusvahendi ning üldise lõikamise ja puurimisega ei jää see isegi kaitsekilega nii puutumatuks.

Võtmepunktid:

  • Andur on lihtne pilliroo lüliti ja magnet, mida töödeldakse nagu RaspberryPi koodis nupuvajutust, loen aja jooksul lihtsalt ämbreid ja muudan hiljem "tolli vihma".
  • Tehke see piisavalt suureks, et mahutada piisavalt vett, et kallutada, kuid mitte nii palju, et see kallutaks palju. Esimesel läbimisel tegin iga salve mitte piisavalt suureks, nii et see täituks ja hakkaks üle ääre nõrguma enne selle kallutamist.
  • Leidsin ka, et jääkvesi võib mõõtmisel mõne vea lisada. See tähendab, et täiesti kuivalt kulus külje täitmiseks ja kallutamiseks X tilka, kui see oli märg, kulus Y tilka (mis on väiksem kui X) täitmiseks ja kallutamiseks. Mitte suur summa, kuid see mõjus, kui proovisin kalibreerida ja saada hea "1 koormus võrdub kui palju" mõõtmist.
  • Tasakaalustage see, saate petta, lisades liimipüstoli liimi alumistesse otstesse, kui üks külg on teisest tunduvalt raskem, kuid vajate seda võimalikult tasakaalus.
  • Näete fotol, et seadistan väikese testimisseadme, kasutades mõnda käsna ja puidust hoidikut, et enne paigaldamist testida ja tasakaalustada.

Samm: tuule suund

Tuule suund
Tuule suund
Tuule suund
Tuule suund
Tuule suund
Tuule suund

See oli lihtne tuulelipp. Võtsin elektroonika aluseks Maplini süsteemi:

www.philpot.me/weatherinsider.html

Võtmepunktid:

See on analoogandur. Kaheksa pilliroo lülitit koos erinevate takistitega jagavad väljundi tükkideks, et saaksin väärtuse järgi kindlaks teha, millises koordinaadis andur asub. (Mõistet selgitatakse selles juhendis:

  • Pärast tuulelindi osa kruvimist peate selle kalibreerima nii, et "see suund näitab põhja poole".
  • Tegin puidust testimisseadme, et saaksin hõlpsalt sisse ja välja lülitada takistid, mis hõlmasid minu jaoks kõiki väärtusi, see oli väga kasulik!
  • Kasutasin tõukejõu laagrit, see läks hästi, olen kindel, et tavaline rula- või rulluisulaager oleks sama hea olnud.

6. samm: tuule kiirus

Tuule kiirus
Tuule kiirus
Tuule kiirus
Tuule kiirus
Tuule kiirus
Tuule kiirus

Sellega pöördusin taas Instructable'i kogukonna poole ja leidsin ja järgisin seda juhendatavat:

www.instructables.com/id/Data-Logging-Anemo…

Võtmepunktid:

  • Võite kasutada saali andurit või lülituda ka pillirooandurile. Saali andur on pigem analoogsensor, nii et kui kasutate seda digitaalselt, näiteks nupuvajutust, peate veenduma, et näit/pinge on piisavalt kõrge, et see toimiks nagu õige nupuvajutus, mitte piisavalt.
  • Tassi suurus on otsustava tähtsusega, nii ka pulga pikkus! Algselt kasutasin pingpongi palle ja need olid liiga väikesed. Panin need ka pikkadele pulkadele, mis ka ei töötanud. Ma olin väga pettunud ja siis leidsin selle õpetatava, Ptorelli tegi suurepärast selgitustööd ja see aitas mind välja, kui mu esialgne disain ei töötanud sama hästi.

Samm 7: Tarkvara

Tarkvara
Tarkvara
Tarkvara
Tarkvara

Tarkvara on kirjutatud Pythonis andurite andmete salvestamiseks. Andurite ja GPS -i teabe saamiseks kasutasin mõnda muud Adafruit'i kolmanda osapoole Giti raamatukogu ja teisi. Samuti on mõned cron -tööd, mis tõmbavad ka osa API -teabest. Enamikku selgitatakse/kirjeldatakse Giti dokumentatsioonis aadressil docs/install_notes.txt

Veebitarkvara on PHP -s, et seda veebilehel kuvada, kasutades konfiguratsioonifailide jaoks ka YAML -i ja loomulikult andmete salvestamiseks ja graafikuks RRD -tööriista.

See kasutab Weather Underground API -d, et saada huvitavaid andmeid, mida andurid ei suuda tõmmata: salvestage Hi's ja Lows, Kuu faas, päikeseloojangu ja päikesetõusu ajad, nende API -s on saadaval ka Tides, mis minu arvates oli tõesti puhas, aga ma elan Austin TX -s, mis on veest väga kaugel.

Kõik see on Githubis saadaval ja seda hooldatakse aktiivselt ning seda kasutatakse praegu, kui täiendan ja kalibreerin oma süsteemi, nii et saate esitada ka funktsioonitaotlusi ja veateateid.

Tarkvara läbib teemavahetuse sõltuvalt kellaajast, on 4 etappi. Kui praegune kellaaeg on + või - 2 tundi päikesetõusust või -loojangust, siis saate vastavalt päikesetõusu ja -loojangu teemad (praegu lihtsalt erinev taust, ma teen tulevikus tõenäoliselt erinevaid fondi/äärise värve). Samamoodi annab väljaspool neid vahemikke päeva või öö teema.

Täname lugemise eest. Kui soovite näha rohkem fotosid ja videoid minu projektidest, vaadake minu Instagrami ja YouTube'i kanalit.

Pi/e päeva võistlus
Pi/e päeva võistlus
Pi/e päeva võistlus
Pi/e päeva võistlus

Pi/e päeva konkursi kolmas auhind