Täydellinen DIY Raspberry Pi -aseman ohjelmisto: 7 vaihetta (kuvilla)
Täydellinen DIY Raspberry Pi -aseman ohjelmisto: 7 vaihetta (kuvilla)
Anonim
Täydellinen DIY Raspberry Pi Weather Station -ohjelmisto
Täydellinen DIY Raspberry Pi Weather Station -ohjelmisto
Täydellinen DIY Raspberry Pi Weather Station -ohjelmisto
Täydellinen DIY Raspberry Pi Weather Station -ohjelmisto

Helmikuun lopussa näin tämän postauksen Raspberry Pi -sivustolla.

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

He olivat luoneet Raspberry Pi -asemat kouluille. Halusin täysin sellaisen! Mutta tuolloin (ja uskon vielä tämän kirjoittamisen jälkeen) ne eivät ole julkisesti saatavilla (sinun on oltava valittujen testaajien ryhmässä). No, halusin jatkaa, enkä halunnut nostaa satoja dollareita olemassa olevasta kolmannen osapuolen järjestelmästä.

Joten, kuten hyvä Instructable -käyttäjä, päätin tehdä oman !!!

Tein pienen tutkimuksen ja löysin hyviä kaupallisia järjestelmiä, joihin voisin perustaa omani. Löysin hyviä ohjeita, jotka auttavat joissakin Sensor- tai Vadelma PI -konsepteissa. Löysin jopa tämän sivuston, joka oli maksullista, he olivat repineet olemassa olevan Maplin -järjestelmän:

www.philpot.me/weatherinsider.html

Nopeasti eteenpäin noin kuukausi ja minulla on perustyöjärjestelmä. Tämä on täydellinen Raspberry Pi Weather -järjestelmä, jossa on vain perus Raspberry Pi -laitteisto, kamera ja joitakin valikoituja analogisia ja digitaalisia antureita mittausten tekemiseen. Ei osteta valmiita tuulimittaria tai sademittaria, teemme omamme! Tässä sen ominaisuudet:

  • Tallentaa tiedot RRD- ja CSV -tiedostoihin, joten niitä voidaan käsitellä tai viedä/tuoda muihin muotoihin.
  • Käyttää Weather Underground -sovellusliittymää saadakseen hienoja tietoja, kuten historiallisia huippuja ja alamäkiä, kuun vaiheita ja auringonnousua/-laskua.
  • Ottaa kuvan Raspberry Pi -kameralla kerran minuutissa (voit käyttää niitä aikaviiveiden tekemiseen).
  • Sisältää verkkosivut, jotka näyttävät nykyisten olosuhteiden tiedot ja joitain historiallisia tietoja (viimeinen tunti, päivä, 7 päivää, kuukausi, vuosi). Sivuston teema muuttuu kellonajan mukaan (4 vaihtoehtoa: auringonnousu, auringonlasku, päivä ja yö).

Kaikki ohjelmistot tietojen tallentamiseen ja näyttämiseen ovat Githubissa, olen jopa tehnyt joitakin virheiden seurantaa, ominaisuuspyyntöjä myös siellä:

github.com/kmkingsbury/raspberrypi-weather…

Tämä projekti oli minulle suuri oppimiskokemus, sain todella sukeltaa Raspberry Pi: n ominaisuuksiin erityisesti GPIO: n kanssa ja osuin myös oppimiskipuihin. Toivon, että sinä, lukija, voit oppia joistakin koettelemuksistani ja ahdistuksistani.

Vaihe 1: Materiaalit

Materiaalit
Materiaalit
Materiaalit
Materiaalit
Materiaalit
Materiaalit
Materiaalit
Materiaalit

Elektroniikka:

  • 9 Reed -kytkintä (8 tuulen suunnalle, 1 sademittarille, valinnaisesti 1 tuulen nopeudelle Hall -anturin sijaan), käytin näitä:
  • 1 Hall -anturi (tuulen nopeudelle, jota kutsutaan tuulimittariksi) -
  • Lämpötila (https://amzn.to/2RIHf6H)
  • Kosteus (lämpötila -anturin mukana tulee paljon kosteusantureita), käytin DHT11: tä:
  • Paine (BMP: n mukana tuli myös lämpötila -anturi), käytin BMP180: tä, https://www.adafruit.com/product/1603, tämä tuote on nyt lopetettu, mutta vastaavaa on BMP280: n kanssa (https://amzn.to/2E8nmhi)
  • Valovastus (https://amzn.to/2seQFwd)
  • GPS -siru tai USB -GPS (https://amzn.to/36tZZv3).
  • 4 vahvaa magneettia (2 tuulimittaria, 1 suunta, 1 sademittari), käytin harvinaisten maametallien magneetteja, erittäin suositeltavaa) (https://amzn.to/2LHBoKZ).
  • Minulla on kourallinen valikoituja vastuksia, tämä paketti on osoittautunut erittäin käteväksi ajan myötä:
  • MCP3008 - muuntaa analogiset digitaalituloiksi Raspberry Pi: lle -

Laitteisto

  • Raspberry Pi - Käytin alun perin kahta langattoman sovittimen kanssa, hanki nyt myös 3 B+ -sarja virtalähteen kanssa. (https://amzn.to/2P76Mop)
  • Pi -kamera
  • Vankka 5 V: n virtalähde (tämä osoittautui tuskallisen ärsyttäväksi, sain lopulta Adafruit -laitteen, muuten kamera vetää liikaa mehua ja voi/ripustaa Pi: n, se on täällä: https://www.adafruit.com/products /501)

Materiaalit:

  • 2 työntölaakereita (tai rullalauta- tai rullaluistinlaakerit toimivat myös), sain nämä Amazonista:
  • 2 vedenpitävää koteloa (käytin sähkökoteloa paikallisesta isosta laatikkomyymälästä), ei ole väliä, vain täytyy löytää hyvän kokoinen kotelo, jossa on tarpeeksi tilaa ja joka suojaa kaiken).
  • Jotkut PVC -putket ja päätykorkit (erikokoisia).
  • PVC -kiinnikkeet
  • Pari arkkia ohutta pleksilasia (ei mitään hienoa).
  • muoviset esteet
  • miniruuvit (käytin #4 ruuvia ja muttereita).
  • 2 Muovinen joulukuusenkoriste - jota käytettiin tuulimittarissa, sain omani paikallisesta harrasteaulasta.
  • Pieni tappi
  • Pieni pala vaneria.

Työkalut:

  • Dremel
  • Liimapistooli
  • Juotin
  • Yleismittari
  • Porata

Vaihe 2: Pääkotelo - Pi, GPS, kamera, valo

Pääkotelo - Pi, GPS, kamera, valo
Pääkotelo - Pi, GPS, kamera, valo
Pääkotelo - Pi, GPS, kamera, valo
Pääkotelo - Pi, GPS, kamera, valo
Pääkotelo - Pi, GPS, kamera, valo
Pääkotelo - Pi, GPS, kamera, valo
Pääkotelo - Pi, GPS, kamera, valo
Pääkotelo - Pi, GPS, kamera, valo

Pääkotelossa on PI, kamera, GPS ja valoanturi. Se on suunniteltu vedenpitäväksi, koska se sisältää kaikki tärkeät komponentit, mittaukset otetaan etäkotelosta ja että se on suunniteltu altistumaan/avautumaan elementeille.

Askeleet:

Valitse kotelo, käytin sähköistä kytkentärasiaa, erilaiset projektikotelot ja vedenpitävät kotelot toimivat yhtä hyvin. Tärkeintä on, että siinä on tarpeeksi tilaa kaiken säilyttämiseen.

Oma koteloni sisältää:

  • Vadelma pi (standoffs) - Tarvitsee WIFI -sirun, älä halua ajaa Cat5e: tä takapihalle!
  • Kamera (myös valmiustilassa)
  • GPS -siru, joka on kytketty USB: n kautta (käyttäen kipinä -FTDI -kaapelia: https://www.sparkfun.com/products/9718) - GPS tarjoaa leveys- ja pituusasteita, mikä on mukavaa, mutta mikä tärkeintä, voin saada tarkan ajan GPS!
  • kaksi ethernet/cat 5 -liitintä pääkotelon liittämiseen toiseen koteloon, jossa muut anturit sijaitsevat. Tämä oli vain kätevä tapa saada kaapelit kulkemaan kahden laatikon väliin, minulla on noin 12 johtoa ja kaksi cat5: tä tarjoavat 16 mahdollista liitäntää, joten minulla on tilaa laajentaa/muuttaa asioita.

Kotelon edessä on ikkuna, josta kamera voi nähdä. Tämän ikkunan kotelo suojaa kameraa, mutta minulla oli ongelmia, joissa kameran punainen ledi (kun se ottaa valokuvaa) heijastuu pleksilasista ja näkyy valokuvassa. Käytin mustaa teippiä lieventämään tätä ja yritin estää sen (ja muut Pi- ja GPS -merkkivalot), mutta se ei ole vielä 100%.

Vaihe 3: 'Etäkotelo' lämpötilalle, kosteudelle ja paineelle

'Etäkotelo' lämpötilalle, kosteudelle ja paineelle
'Etäkotelo' lämpötilalle, kosteudelle ja paineelle
'Etäkotelo' lämpötilalle, kosteudelle ja paineelle
'Etäkotelo' lämpötilalle, kosteudelle ja paineelle
'Etäkotelo' lämpötilalle, kosteudelle ja paineelle
'Etäkotelo' lämpötilalle, kosteudelle ja paineelle

Tänne tallensin lämpötila-, kosteus- ja paineanturit sekä sademittarin, tuulen suunnan ja tuulen nopeusantureiden "kytkennät".

Kaikki on hyvin yksinkertaista, nastat kytkeytyvät ethernet -kaapeleiden kautta Raspberry Pi: n tarvittaviin nastoihin.

Yritin käyttää digitaalisia antureita missä voisin ja sitten kaikki analogit lisätään MCP 3008: een, se kestää jopa 8 analogia, mikä oli enemmän kuin tarpeeksi tarpeisiini, mutta antaa tilaa parantaa / laajentaa.

Tämä kotelo on avoin ilmalle (sen on oltava tarkka lämpötila, kosteus ja paine). Pohjareiät ponnahtaa ulos, joten annoin joillekin piireille sumutetta Silicone Conformal Coating -suihkeella (voit saada sen verkossa tai paikassa, kuten Fry's Electronics). Toivottavasti sen pitäisi suojata metallia kaikelta kosteudelta, vaikka sinun on oltava varovainen äläkä käytä sitä joissakin antureissa.

Kotelon yläosassa on myös tuulen nopeusanturi. Se oli heitto, olisin voinut laittaa tuulen nopeuden tai tuulen suunnan päälle, en nähnyt mitään suuria etuja toisiinsa nähden. Kaiken kaikkiaan haluat, että molemmat anturit (tuulen suunta ja nopeus) ovat riittävän korkealla, missä rakennukset, aidat ja esteet eivät häiritse mittauksia.

Vaihe 4: Sademittari

Sademittari
Sademittari
Sademittari
Sademittari
Sademittari
Sademittari

Lähinnä seurasin tätä ohjeellista tehdäkseni todellisen mittarin:

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

Tein tämän pleksistä, jotta voisin nähdä, mitä tapahtui, ja ajattelin, että se olisi siistiä. Kaiken kaikkiaan pleksi toimi hyvin, mutta yhdessä liimapistoolin, kumitiivisteen ja yleisen leikkaamisen ja poraamisen kanssa se ei näytä koskemattomalta edes suojakalvolla.

Avainkohdat:

  • Anturi on yksinkertainen ruoko -kytkin ja magneetti, jota käsitellään RaspberryPi -koodin painikkeen painalluksena. Lasken kauhat ajan mittaan ja muunnan myöhemmin "tuuman tuumaa".
  • Tee siitä tarpeeksi suuri, jotta siihen mahtuu tarpeeksi vettä, mutta ei niin paljon, että se tarvitsee paljon kaatuakseen. Ensimmäisellä kerralla tein jokaisen lokeron liian suureksi, jotta se täyttyisi ja alkaisi valua reunan yli ennen kuin se kaatui.
  • Huomasin myös, että jäännösvesi voi lisätä virheen mittaukseen. Täysin kuivana kesti X tippaa sivun täyttämiseksi ja kaatamiseksi, kun se oli märkä, Y tippaa (joka on alle X) täytettäessä ja kaatamalla. Ei suuri määrä, mutta se vaikutti, kun yritettiin kalibroida ja saada hyvä "1 kuorma vastaa kuinka paljon" mittaus.
  • Tasapainota se, voit huijata lisäämällä liimapistooliliimaa alla oleviin päihin, jos toinen puoli on huomattavasti raskaampi kuin toinen, mutta tarvitset sitä mahdollisimman lähellä tasapainoa.
  • Kuvasta näet, että asennan pienen testauslaitteen käyttämällä joitain sieniä ja puupidikettä testataksesi ja tasapainottaaksesi sen oikein ennen asennusta.

Vaihe 5: Tuulen suunta

Tuulen suunta
Tuulen suunta
Tuulen suunta
Tuulen suunta
Tuulen suunta
Tuulen suunta

Tämä oli yksinkertainen tuuliviiri. Perustin elektroniikan Maplin -järjestelmän ulkopuolelle:

www.philpot.me/weatherinsider.html

Avainkohdat:

Tämä on analoginen anturi. Kahdeksan reed -kytkintä yhdistettynä erilaisiin vastuksiin jakavat ulostulon paloiksi, jotta voin tunnistaa mitkä koordinaatit anturi on arvolla. (Käsite selitetään tässä ohjeessa:

  • Kun tuuliviiriosa on ruuvattu kiinni, se on kalibroitava niin, että "tämä suunta osoittaa pohjoisen".
  • Tein koelaitteen puulla, jotta voisin helposti kytkeä sisään ja ulos vastukset, jotka kattoivat minulle kaikki arvot, mikä oli erittäin hyödyllistä!
  • Käytin painelaakeria, se toimi hyvin, olen varma, että tavallinen rullalauta- tai rullalautalaakeri olisi ollut yhtä hyvä.

Vaihe 6: Tuulen nopeus

Tuulen nopeus
Tuulen nopeus
Tuulen nopeus
Tuulen nopeus
Tuulen nopeus
Tuulen nopeus

Tämän kerran käännyin Instructable -yhteisön puoleen ja löysin ja seurasin tätä ohjeellista:

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

Avainkohdat:

  • Voit käyttää myös hallianturia tai vaihtaa ruokoanturiin. Hall -anturi on enemmän analoginen anturi, joten jos käytät sitä digitaalisesti, kuten painikkeen painalluksella, sinun on varmistettava, että lukema/jännite on riittävän korkea, jotta se toimii kuin oikea painallus, ei tarpeeksi.
  • Kupin koko on ratkaiseva, samoin kuin tikun pituus! Alunperin käytin pingispallopalloja ja ne olivat aivan liian pieniä. Laitoin ne myös pitkiin tikkuihin, jotka eivät myöskään toimineet. Olin hyvin turhautunut ja törmäsin sitten siihen opettavaiseen, Ptorelli selitti hienosti ja auttoi minua, kun alkuperäinen suunnitteluni ei toiminut yhtä hyvin.

Vaihe 7: Ohjelmisto

Ohjelmisto
Ohjelmisto
Ohjelmisto
Ohjelmisto

Ohjelmisto on kirjoitettu Pythonilla antureiden tietojen tallentamiseksi. Käytin joitain muita Adafruitin kolmannen osapuolen Git -kirjastoja ja muita saadakseni tietoja antureista ja GPS: stä. On myös joitain cron -töitä, jotka vetävät myös joitain API -tietoja. Suurin osa on selitetty/hahmoteltu Git -asiakirjoissa osoitteessa docs/install_notes.txt

Web -ohjelmisto on PHP -muodossa näyttääkseen sen verkkosivulla samalla, kun se käyttää YAML: ää konfigurointitiedostoihin ja tietysti RRD -työkalua tietojen tallentamiseen ja kuvaamiseen.

Se käyttää Weather Underground -sovellusliittymää saadakseen joitain mielenkiintoisia tietoja, joita anturit eivät voi vetää: Tallenna Hi's and Lows, Phase of the Moon, Sunset ja Sunrise times, myös Tides on saatavilla niiden API: ssa, joka oli mielestäni todella siisti, mutta asun Austin TX: ssä, joka on hyvin kaukana vedestä.

Kaikki se on saatavilla Githubissa, ja sitä ylläpidetään aktiivisesti, ja sitä käytetään parhaillaan, kun kehitän ja kalibroin edelleen omaa järjestelmääni, joten voit lähettää myös ominaisuuspyyntöjä ja virheraportteja.

Ohjelmisto käy läpi teemanmuutoksen kellonajasta riippuen, siinä on 4 vaihetta. Jos nykyinen aika on + tai - 2 tuntia auringonnoususta tai -laskusta, saat auringonnousu- ja -laskuteemat vastaavasti (tällä hetkellä vain erilainen tausta, luultavasti teen eri fontin/reunuksen värejä tulevaisuudessa). Samoin näiden alueiden ulkopuolella on päivä- tai yöteema.

Kiitos, että luit. Jos haluat nähdä enemmän valokuvia ja videoita projekteistani, tutustu Instagramiin ja YouTube -kanavaani.

Pi/e -päivän kilpailu
Pi/e -päivän kilpailu
Pi/e -päivän kilpailu
Pi/e -päivän kilpailu

Kolmas palkinto Pi/e Day -kilpailussa