Komplett barkács Raspberry Pi Weather Station szoftverrel: 7 lépés (képekkel)
Komplett barkács Raspberry Pi Weather Station szoftverrel: 7 lépés (képekkel)
Anonim
Komplett DIY Raspberry Pi Weather Station szoftverrel
Komplett DIY Raspberry Pi Weather Station szoftverrel
Komplett DIY Raspberry Pi Weather Station szoftverrel
Komplett DIY Raspberry Pi Weather Station szoftverrel

Még február végén láttam ezt a bejegyzést a Raspberry Pi oldalon.

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

Létrehozták a Raspberry Pi meteorológiai állomásokat az iskolák számára. Teljesen egyet akartam! De abban az időben (és úgy gondolom, hogy a cikk írásakor még mindig) nem állnak nyilvánosan elérhetők (a tesztelők kiválasztott csoportjába kell tartoznia). Nos, tovább akartam menni, és nem volt kedvem több száz dollárt kiadni egy létező harmadik fél rendszerért.

Szóval, mint egy jó Instructable felhasználó, úgy döntöttem, hogy elkészítem a sajátomat !!!

Kicsit kutakodtam, és találtam néhány jó kereskedelmi rendszert, amelyekre alapozhatom az enyémet. Találtam néhány jó utasítást, amelyek segítenek néhány érzékelő vagy málna PI koncepcióban. Még ezt az oldalt is megtaláltam, ami piszkos volt, lebontották a meglévő Maplin rendszert:

www.philpot.me/weatherinsider.html

Gyorsan előre egy hónap, és van egy alapvető működési rendszer. Ez egy teljes Raspberry Pi Weather rendszer, amely csak az alap Raspberry Pi hardvert, kamerát és néhány analóg és digitális érzékelőt tartalmaz a mérések elvégzéséhez. Nincs szükség előre elkészített szélmérőkre vagy esőmérőkre, mi magunk készítjük! Íme a jellemzői:

  • Az adatokat RRD -be és CSV -be rögzíti, így manipulálható vagy exportálható/importálható más formátumokba.
  • A Weather Underground API segítségével hűvös információkat kaphat, például történelmi csúcsokat és mélypontokat, holdfázisokat és napfelkeltét/napnyugtát.
  • A Raspberry Pi kamerával percenként egyszer készít képeket (ezután időzítéseket készíthet).
  • Vannak weboldalai, amelyek megjelenítik az aktuális állapot adatait és néhány előzményt (utolsó óra, nap, 7 nap, hónap, év). A weboldal témája a napszaktól függően változik (4 lehetőség: napkelte, napnyugta, nappal és éjszaka).

Az információk rögzítésére és megjelenítésére szolgáló összes szoftver Github -ban található, sőt néhány hibakövetést és funkciókérést is elvégeztem:

github.com/kmkingsbury/raspberrypi-weather…

Ez a projekt nagyszerű tanulási élményt jelentett számomra, különösen a GPIO -val kellett igazán belemerülnöm a Raspberry Pi képességeibe, és néhány tanulási fájdalmat is eltaláltam. Remélem, te, olvasó, tanulhatsz néhány próbámból és megpróbáltatásomból.

1. lépés: Anyagok

Anyagok
Anyagok
Anyagok
Anyagok
Anyagok
Anyagok
Anyagok
Anyagok

Elektronika:

  • 9 nádkapcsoló (8 a szélirányhoz, 1 az esőmérőhöz, opcionálisan 1 a szélsebességhez Hall -érzékelő helyett), ezeket használtam:
  • 1 csarnokérzékelő (szélsebességhez, anemométernek nevezve) -
  • Hőmérséklet (https://amzn.to/2RIHf6H)
  • Páratartalom (sok páratartalom -érzékelőhöz tartozik hőmérséklet -érzékelő), én a DHT11 -et használtam:
  • Nyomás (a BMP -hez hőmérséklet -érzékelő is tartozott), a BMP180 -at használtam, https://www.adafruit.com/product/1603, ez a termék mostantól megszűnt, de van megfelelője a BMP280 -nak (https://amzn.to/2E8nmhi)
  • Fotorezisztor (https://amzn.to/2seQFwd)
  • GPS -chip vagy USB GPS (https://amzn.to/36tZZv3).
  • 4 erős mágnes (2 az anemométerhez, 1 az irányhoz, 1 az esőmérőhöz), én a ritkaföldfém mágneseket használtam, erősen ajánlott) (https://amzn.to/2LHBoKZ).
  • Néhány maroknyi ellenállás van nálam, ez a csomag rendkívül praktikusnak bizonyult az idő múlásával:
  • MCP3008 - analóg digitális bemenetek konvertálása a Raspberry Pi számára -

Hardver

  • Raspberry Pi - A 2 -t eredetileg vezeték nélküli adapterrel használtam, most megkapom a 3 B+ készletet tápegységgel is. (https://amzn.to/2P76Mop)
  • Pi kamera
  • Szilárd 5 V -os tápegység (ez fájdalmasan bosszantónak bizonyult, végül megkaptam az Adafruit egyet, különben a kamera túl sok gyümölcslevet húz le, és felakaszthatja/fel tudja akasztani a Pi -t, itt van: https://www.adafruit.com/products /501)

Anyagok:

  • 2 tolóerő csapágy (vagy gördeszka vagy görkorcsolya csapágy is működni fog), ezeket az Amazon-on szereztem be:
  • 2 vízálló szekrény (én a helyi nagy dobozból származó elektromos házat használtam), nem számít sokat, csak meg kell találni egy jó méretű szekrényt, amelyben elegendő hely lesz, és mindent meg kell védenie).
  • Néhány PVC cső és zárósapka (különböző méretű).
  • PVC tartókonzolok
  • Pár lap vékony plexiüvegből (semmi különös).
  • műanyag állványok
  • mini csavarok (#4 csavart és anyát használtam).
  • 2 Műanyag karácsonyfadísz - az anemométerhez használt, az enyémet a helyi Hobby Lobbyban szereztem be.
  • Kis tipli
  • Kis darab rétegelt lemez.

Eszközök:

  • Dremel
  • Ragasztópisztoly
  • Forrasztópáka
  • Multiméter
  • Fúró

2. lépés: Fő ház - Pi, GPS, kamera, fény

Fő ház - Pi, GPS, kamera, fény
Fő ház - Pi, GPS, kamera, fény
Fő ház - Pi, GPS, kamera, fény
Fő ház - Pi, GPS, kamera, fény
Fő ház - Pi, GPS, kamera, fény
Fő ház - Pi, GPS, kamera, fény
Fő ház - Pi, GPS, kamera, fény
Fő ház - Pi, GPS, kamera, fény

A fő házban található a PI, a kamera, a GPS és a fényérzékelő. Vízállónak tervezték, mivel tartalmazza az összes kritikus alkatrészt, a méréseket a távoli szekrényből veszik, és az egyiket úgy tervezték, hogy ki legyenek téve az elemeknek.

Lépések:

Válasszon egy házat, én elektromos csatlakozódobozt használtam, a különböző projektdobozok és vízálló tokok ugyanúgy működnek. A lényeg az, hogy elegendő hely van ahhoz, hogy mindent elférjen.

Mellékletem a következőket tartalmazza:

  • A málna pi (standoffs) - WIFI chipre van szüksége, ne akarja, hogy a Cat5e -t a hátsó udvarra futtassa!
  • A kamera (készenléti állapotban is)
  • A GPS chip, USB -n keresztül csatlakoztatva (egy sparkfun FTDI kábel segítségével: https://www.sparkfun.com/products/9718) - A GPS szélességet és hosszúságot biztosít, ami szép, de ami még fontosabb, pontos időt tudok kapni a GPS!
  • két ethernet/cat 5 aljzat a fő szekrény csatlakoztatásához a másik házhoz, amely a többi érzékelőt tartalmazza. Ez csak egy kényelmes módja annak, hogy a kábelek a két doboz közé kerüljenek, nagyjából 12 vezetékem van, és a két cat5 16 lehetséges csatlakozást biztosít, így van helyem a dolgok bővítésére/megváltoztatására.

A ház előtt van egy ablak, ahonnan a kamera láthat. Ennek az ablaknak a tokja védi a kamerát, de voltak olyan problémáim, amikor a fényképezőgépen lévő piros led (amikor fényképez) visszaverődik a plexiről és megjelenik a fényképen. Fekete szalagot használtam ennek enyhítésére, és megpróbáltam blokkolni (és a Pi és a GPS többi LED -jét), de ez még nem 100%.

3. lépés: „Távoli ház” hőmérséklet, páratartalom és nyomás tekintetében

"Távoli ház" hőmérséklet, páratartalom, nyomás tekintetében
"Távoli ház" hőmérséklet, páratartalom, nyomás tekintetében
"Távoli ház" hőmérséklet, páratartalom, nyomás tekintetében
"Távoli ház" hőmérséklet, páratartalom, nyomás tekintetében
"Távoli ház" hőmérséklet, páratartalom, nyomás tekintetében
"Távoli ház" hőmérséklet, páratartalom, nyomás tekintetében

Itt tároltam a hőmérséklet-, páratartalom- és nyomásérzékelőket, valamint az esőmérő, a szélirány- és a szélsebesség -érzékelők "csatlakozásait".

Minden nagyon egyszerű, itt a csapok az ethernet kábeleken keresztül csatlakoznak a Raspberry Pi szükséges csapjaihoz.

Próbáltam digitális érzékelőket használni, ahol csak tudtam, majd bármilyen analógot hozzáadnak az MCP 3008 -hoz, amely akár 8 analógot is igényel, ami több mint elég volt az igényeimhez, de lehetőséget ad a fejlesztésre / bővítésre.

Ez a burkolat nyitott a levegőre (a pontos hőmérséklet, páratartalom és nyomás érdekében kell lennie). Az alsó lyukak kiugranak, ezért néhány áramkört egy szilikon konform bevonat spray -vel adtam be (online beszerezhető, vagy olyan helyen, mint a Fry's Electronics). Remélhetőleg meg kell védenie a fémet a nedvességtől, bár óvatosnak kell lennie, és nem szabad néhány érzékelőre használni.

A ház tetején található a szélsebesség -érzékelő is. Feldobás volt, a szélsebességet vagy a szélirányt feltehettem volna a tetejére, egyiknek sem láttam nagyobb előnyeit a másikkal szemben. Összességében azt szeretné, hogy mindkét érzékelő (szélirány és sebesség) elég magas legyen, ahol az épületek, kerítések, akadályok nem zavarják a méréseket.

4. lépés: Esőmérő

Csapadékmérő
Csapadékmérő
Csapadékmérő
Csapadékmérő
Csapadékmérő
Csapadékmérő

Leginkább ezt az utasítást követtem a tényleges mérőeszköz elkészítéséhez:

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

Ezt plexiből készítettem, hogy lássam, mi történik, és gondoltam, hogy jó lesz. Összességében a plexi jól működött, de a ragasztópisztollyal, a gumi tömítőanyaggal és a teljes vágással és fúrással együtt még védőfóliával sem marad olyan tiszta.

Főbb pontok:

  • Az érzékelő egy egyszerű nádkapcsoló és mágnes, amelyet gombnyomásra kezelnek a RaspberryPi kódban, idővel egyszerűen számolom a vödröket, majd később átalakítom "hüvelyk esővé".
  • Legyen elég nagy ahhoz, hogy elegendő víz férjen hozzá a borravaláshoz, de ne annyira, hogy sokra legyen szüksége a borravaláshoz. Első menetemben minden tálcát nem tettem eléggé nagyra, így megtelt, és elkezdett lefolyni a szélén, mielőtt megbillent volna.
  • Azt is megállapítottam, hogy a maradék víz némi hibát okozhat a mérésben. Ez azt jelenti, hogy teljesen kiszáradva X csepp kellett egy oldal kitöltéséhez és megdöntéséhez, ha nedves volt, akkor Y cseppnek (ami kevesebb, mint X) kellett kitöltenie és megdöntenie. Nem túl nagy mennyiség, de hatással volt, amikor kalibrálni és jó "1 terhelés mennyi" mérést próbált elérni.
  • Kiegyensúlyozva, csalhat, ha ragasztópisztoly ragasztót ad hozzá az alsó végéhez, ha az egyik oldal jelentősen nehezebb, mint a másik, de a lehető legközelebb kell lennie.
  • A fényképen látható, hogy egy kis tesztelő berendezést beállítok néhány szivacs és egy fa tartó segítségével, hogy teszteljem és kiegyensúlyozzam a telepítés előtt.

5. lépés: Szélirány

Szélirány
Szélirány
Szélirány
Szélirány
Szélirány
Szélirány

Ez egy egyszerű szélkakas volt. Az elektronikát a Maplin rendszeren alapultam:

www.philpot.me/weatherinsider.html

Főbb pontok:

Ez egy analóg érzékelő. A nyolc nádkapcsoló különféle ellenállásokkal kombinálva felosztja a kimenetet darabokra, így az érték alapján meg tudom határozni, hogy az érzékelő melyik koordinátájában van. (A fogalmat ebben az utasításban ismertetjük:

  • Az időjárólapát csavarozása után kalibrálnia kell, hogy "ez az irány észak felé mutasson".
  • Készítettem egy fából készült tesztberendezést, hogy könnyen ki- és bekapcsolhassam az ellenállásokat, amelyek a teljes értéktartományt lefedték számomra, ami rendkívül hasznos volt!
  • Tolócsapágyat használtam, jól sikerült, biztos vagyok benne, hogy egy rendes gördeszka vagy görkorcsolya csapágy ugyanolyan jó lett volna.

6. lépés: Szélsebesség

Szélsebesség
Szélsebesség
Szélsebesség
Szélsebesség
Szélsebesség
Szélsebesség

Ezúttal ismét az Instructable közösséghez fordultam, és megtaláltam és követtem ezt az utasítást:

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

Főbb pontok:

  • Használhatja a csarnokérzékelőt, vagy válthat nádérzékelőre is. A hall -érzékelő inkább analóg érzékelő, ezért ha digitális módon használja, például gombnyomásra, győződjön meg arról, hogy az olvasás/feszültség elég magas ahhoz, hogy úgy működjön, mint egy igazi gombnyomás, nem pedig eléggé.
  • A csésze mérete kulcsfontosságú, így a bot hossza is! Eredetileg ping -pong labdákat használtam, és túl kicsik voltak. Hosszú rudakra is felraktam őket, amelyek sem működtek. Nagyon elkeseredtem, majd rábukkantam erre a tanulságosra, Ptorelli remekül elmagyarázta a dolgot, és segített nekem, amikor az eredeti tervem nem működött jól.

7. lépés: Szoftver

Szoftver
Szoftver
Szoftver
Szoftver

A szoftver Python nyelven íródott az érzékelők adatainak rögzítésére. Néhány más, harmadik féltől származó Git könyvtárat használtam az Adafruit -tól és másokat az érzékelőkből és a GPS -ből származó információk lekéréséhez. Vannak olyan cron feladatok is, amelyek az API információk egy részét is lekérik. A legtöbbet a Git dokumentáció magyarázza/vázolja fel a docs/install_notes.txt címen

A webes szoftver PHP -ben van, hogy megjelenítse azt a weboldalon, miközben a YAML -t is használja a konfigurációs fájlokhoz, és természetesen az RRD eszközt az adatok tárolására és grafikálására.

A Weather Underground API -t használja, hogy megkapjon néhány olyan érdekes adatot, amelyet az érzékelők nem tudnak felvenni: Rögzítse a Hi's és Lows értékeket, a Holdfázis, a Napnyugta és a Napkelte időket, az API -n pedig elérhetőek a Tides, amelyek szerintem nagyon ügyesek voltak, de Austin TX -ben élek, ami nagyon távol van a víztől.

Mindez elérhető a Githubon, és aktívan karbantartják, és jelenleg is használják, miközben tovább finomítom és kalibrálom a saját rendszeremet, így funkciókéréseket és hibajelentéseket is küldhet.

A szoftver a napszaktól függően témaváltáson megy keresztül, 4 szakaszból áll. Ha a jelenlegi idő + vagy - 2 óra napkeltétől vagy napnyugtától, akkor a napfelkelte és a naplemente témákat kapja (jelenleg csak egy másik háttér, valószínűleg más betűtípusokat/szegélyeket fogok használni a jövőben). Hasonlóképpen ezeken a tartományokon kívül a nappali vagy éjszakai témát adja.

Köszönjük, hogy elolvasta. Ha több fotót és videót szeretne látni a projektjeimről, nézze meg Instagram és YouTube csatornámat.

Pi/e napi verseny
Pi/e napi verseny
Pi/e napi verseny
Pi/e napi verseny

Harmadik díj a Pi/e Day versenyen

Ajánlott: