Arduino Weathercloud meteorológiai állomás: 16 lépés (képekkel)
Arduino Weathercloud meteorológiai állomás: 16 lépés (képekkel)
Anonim
Arduino Weathercloud meteorológiai állomás
Arduino Weathercloud meteorológiai állomás

Készítettem egy időjárás állomást az internethez. Méri a hőmérsékletet, a páratartalmat, a nyomást, a csapadékot, a szélsebességet, az UV -indexet, és néhány fontosabb meteorológiai értéket számít ki. Ezután elküldi ezeket az adatokat a weathercloud.net -re, amely szép grafikával és UX -el rendelkezik. Időjárási webkamerával is rendelkezik. Nekem kb 140 € -ba került. Ezt az állomást iskolai projektként készítettem. Az állomás az én iskolámban van, Pozsonyban, Szlovákiában. Itt vannak az aktuális adatok.

Fotó: Mimo magazín. Engedéllyel használják.

Megjegyzés: Több mint két éve dolgozom ezen a projekten. Ez az utasítás alapvetően csak egy újratöltés egy utasításból, amelyet egy évvel korábban tettem közzé, de annyi változás történt, hogy úgy döntöttem, hogy új utasítást adok. Ezenkívül soha senki nem nézi az egyéves instrukciókat

UPDATE 2018.12.14: Sziasztok! Hozzáadtam az állomásomhoz egy szélmérőt (szélmérőt). Van néhány új szöveg és fotó, ezért feltétlenül nézze meg

1. lépés: Weathercloud

Weathercloud
Weathercloud

Először is, mi az Weatherclud? A Weathercloud az időjárás -állomások nagy hálózata, amely valós időben adatokat szolgáltat a világ minden tájáról. Ingyenes, és több mint 10 000 meteorológiai állomás csatlakozik hozzá. Először is volt saját HTML webhelyem, ahová az összes adatot elküldték, de a saját webhelyének és grafikájának elkészítése nehéz, és sokkal könnyebb egyszerűen elküldeni az adatokat egy nagy felhőplatformra, amely szép grafikával és stabil szerverekkel rendelkezik. Kerestem, hogyan kell adatokat küldeni az weathercloud -ra, és azt találtam, hogy ezt egyszerűen elérheti egy egyszerű GET hívással. A Weathercloud egyetlen problémája, hogy egy ingyenes fiókkal csak tíz percenként küldhet adatokat, de ez a legtöbb felhasználásnál nem okozhat problémát. Ahhoz, hogy működjön, létre kell hoznia egy Weathercloud fiókot. Ezután létre kell hoznia egy állomásprofilt a webhelyén. Amikor az Weathercloudon hozza létre az időjárás -állomás profilját, megkapja a Weathercloud azonosítót és az Weathercloud KULCSOT. Tartsa meg ezeket, mert az Arduino -nak szüksége lesz rájuk, hogy tudják, hová kell adatokat küldeni.

2. lépés: Alkatrészlista

Alkatrész lista
Alkatrész lista
Alkatrész lista
Alkatrész lista
Alkatrész lista
Alkatrész lista
Alkatrész lista
Alkatrész lista

Google lapok BOM

Becsült ár: 140 €/150 $

3. lépés: Eszközök

Eszközök
Eszközök

Ezek az eszközök jól jöhetnek:

huzalcsupaszító

akkumulátoros fúró

forrasztópáka

fogó

csavarhúzók

ragasztópisztoly

multiméter

fűrész

fa fúró

fájlt

4. lépés: DS18B20 napsugárzás -pajzs

Image
Image
Termináldoboz
Termináldoboz

A napsugárzás elleni védőpajzs nagyon gyakori dolog, amelyet a meteorológiai állomásokon használnak a közvetlen napsugárzás blokkolására, és ezáltal a mért hőmérséklet hibáinak csökkentésére. A hőmérséklet -érzékelő tartóként is működik. A sugárzásvédők nagyon hasznosak, de általában acélból készülnek, és drágák, ezért úgy döntöttem, hogy saját pajzsot építek. Készítettem egy utasítást, amely bemutatja, hogyan kell ilyen sugárvédőt készíteni. Itt az oktatható.

Találtam egy videót is, amely pontosan ugyanazokat a folyamatokat mutatja, így használhatja:

5. lépés: Termináldoboz

Termináldoboz
Termináldoboz
Termináldoboz
Termináldoboz
Termináldoboz
Termináldoboz

A termináldoboz az állomás központja. A 14 magos fő kábel a szerverdobozhoz köti. A DS18B20 kábel megy bele. Az UV -dobozból származó kábel belemegy. A páratartalom- és nyomásérzékelőt is tartalmazza. Amikor egy kapocsdobozt választ, használhat bármilyen IP65 műanyag csatlakozódobozt, amelynek mérete több mint 10x5x5cm (4 "x2" x2 ").

6. lépés: UV -érzékelő doboz

UV érzékelő doboz
UV érzékelő doboz
UV érzékelő doboz
UV érzékelő doboz
UV érzékelő doboz
UV érzékelő doboz

Az UV-érzékelő dobozban található az UVM-30A UV-érzékelő, és ez egy középső pont a fő csatlakozódoboz és az eső- és szélmérők között. Az UV -érzékelő doboz lehet bármilyen műanyag IP65 -ös doboz, teljesen átlátszó fedéllel.

7. lépés: Weathercam

Weathercam
Weathercam
Weathercam
Weathercam
Weathercam
Weathercam

Az időjárás -webkamerákat (vagy időjárás -kamerákat, ahogy szeretem nevezni) arra használjuk, hogy rögzítsük vagy továbbítsuk a tényleges időjárási körülményekről készült képet. A kép alapján meghatározhatja a fény intenzitását és a zavarosságot. A legolcsóbb elérhető wifi kamerát választottam, de bármilyen választott wifi kamerát használhat. Ez az olcsó kamera tökéletesen működik, de van egy probléma vele. Szüksége van egy számítógépre, amely folyamatosan streaming szoftvert futtat. Ez nem jelentett problémát számomra, mert a hálózatban már van egy szerver, amely futtatja a webhelyet, így képes gondoskodni a streamingről is. De ha nincs ilyen számítógépe az otthoni hálózatban, akkor javaslom a Raspberry pi és a Raspberry pi kamera vásárlását. Ez drágább (25 $ vs 70 $), de valójában nincs más lehetősége, ha webkamerát szeretne. Mindkét esetben a fényképezőgépet időjárásálló dobozba kell helyezni. Ugyanazt a dobozt használhatja, mint az UV -érzékelőhöz. Saját dobozt készítettem egy hagyományos műanyag dobozból és plexiből, de ez felesleges. A fényképezőgép akkumulátora folyamatos töltést igényel. Ezt úgy teheti meg, hogy lecsupaszítja az USB -kábelt, és a + és - vezetékeket az érzékelők 5 V -os kimenetéhez csatlakoztatja. Ha a fényképezőgép időjárásálló, akkor bárhová felszerelheti, ahol jó a kilátás, cipzárral.

Most nézzük meg a szoftvert. Ez a rész bizonyos fejlett kódolási ismereteket igényel. Ahhoz, hogy mindezt megtehesse, rendelkeznie kell egy 24/7 futó számítógéppel (lehet Raspberry pi) az otthoni hálózatában. Tehát az első dolog, amit meg kell tennie, hogy csatlakoztassa az IP kamerát az otthoni Wi-Fi hálózathoz. Ezután meg kell változtatnia a felhasználónevet és a jelszót a szkriptben, a felhasználónév és a jelszó szerint a kamera felületén. A szkriptben meg kell változtatnia a kamera IP -címét is. Ezután be kell állítania egy feladatütemezőt, hogy a mellékelt szkriptet körülbelül 5 percenként futtassa a kiszolgálón/számítógépen. A szkriptnek most 5 percenként képernyőképet kell készítenie a fényképezőgép képéről, és el kell mentenie az előre beállított mappába. A mappának nyilvánosnak kell lennie, így a következő keresőmotorban keresheti meg: example.com/felhasználónév/webcam.jpg. A Weathercloud ezt követően kiveszi ezt a képet a nyilvános mappából, és felteszi a weboldalára. Az "élő" (5 percenként frissülő) hírcsatornát itt láthatja.

8. lépés: Felső érzékelő tartó

Felső érzékelő tartó
Felső érzékelő tartó
Felső érzékelő tartó
Felső érzékelő tartó
Felső érzékelő tartó
Felső érzékelő tartó
Felső érzékelő tartó
Felső érzékelő tartó

A felső érzékelőtartó egy acél alkatrész, amely a tetőn lévő felső érzékelőket (UV, csapadék és szélsebesség) tartja. A képeken látható rész csak a mi épületünkbe illik. Ezeket az érzékelőket tetszés szerint rögzítheti. Ez csak egy példa. A tetőre már acélcsövet szereltünk, így könnyű volt a tartó felszerelése.

9. lépés: Pajzs kompatibilitási probléma

Pajzs kompatibilitási probléma
Pajzs kompatibilitási probléma
Pajzs kompatibilitási probléma
Pajzs kompatibilitási probléma
Pajzs kompatibilitási probléma
Pajzs kompatibilitási probléma

Egy egyszerű kompatibilitási probléma van az ethernet pajzs és a protoshield között. Nem teheti a protoshieldet az ethernet pajzs tetejére, mert az Ethernet csatlakozó nem engedi. És nem teheti az ethernet pajzsot a protoshield tetejére, mert az ethernet pajzsnak közvetlen kapcsolatban kell lennie az arduino -val az ICSP csatlakozón keresztül, de a protoshield nem rendelkezik ilyennel. Nos, egyszerű probléma, egyszerű megoldás. Csak egy négyszögletes lyukat vágtam a protoshieldbe, hogy az ethernet csatlakozó beférjen.

10. lépés: Csapadék mérése

Csapadék mérése
Csapadék mérése
Csapadék mérése
Csapadék mérése
Csapadék mérése
Csapadék mérése

A rendelt esőmérő tökéletesen működik, de van egy nagy probléma vele. Nincs olyan kommunikációs interfész, mint az I2C vagy az RX/TX. Csak egy egyszerű kapcsoló van, amely 60 mikroszekundumra kapcsol be minden alkalommal, amikor 0,28 mm/m2 -nél nagyobb eső esik. Az arduino könnyen felfogja ezt, ha nem csinál mást, csak méri a csapadékot. Ha azonban más feladatai vannak (például a hőmérséklet mérése és a felhőbe küldése), nagy a valószínűsége annak, hogy az arduino processzora elfoglalt lesz az esőmérő bekapcsolásakor. Ez pontatlan csapadékértéket eredményez. Ezért adtam hozzá egy második arduino -t - egy arduino nano -t. A nano egyetlen feladata, hogy megmérje a csapadékot, és elküldje azt az arduino mesternek az I2C -n keresztül. Így a csapadékértékek mindig pontosak lesznek. Készítettem egy PCB -t, amely tartalmazza az arduino nano -t és az RTC modult, de forrasztható a protoshieldhez is. Tudom, hogy ez nem a legegyszerűbb és legolcsóbb megoldás, de tetszik, és nagyon ügyes és szervezett.

11. lépés: Szélsebesség mérése

Szélsebesség mérés
Szélsebesség mérés
Szélsebesség mérés
Szélsebesség mérés
Szélsebesség mérés
Szélsebesség mérés

Ez a lépés nagyon hasonlít az előzőhöz. Készítettem egy táblát, amely méri a szélsebességet, majd elküldi az I2C -n keresztül. Csak ismételje meg az előző lépést az RTC nélkül. Próbáltam mindkét táblát egybe tenni, de nem ment.

12. lépés: Szerverdoboz

Szerverdoboz
Szerverdoboz
Szerverdoboz
Szerverdoboz
Szerverdoboz
Szerverdoboz

Mindig jó ötlet elrejteni az összes elektronikát egy kis, rendszerezett dobozba. És pontosan ezt tettem a szerverdobozzal. A szerverdobozban található az Arduino UNO, az ethernet pajzs, a protoshield, az 5 V -os szabályozó, a fő adatkábel -terminál és a csapadékmérő tábla. Egy megjegyzés az Arduino -val kapcsolatban: az állomás kódja az Arduino UNO memória körülbelül 90% -át használja, és ez problémákat okozhat. Lehet, hogy nem kell használnia az Arduino Mega -t.

13. lépés: Csatlakozások

Kapcsolatok
Kapcsolatok

Csatlakoztasson mindent a mellékelt vázlat szerint.

14. lépés: KÓDOLÁS

KÓD
KÓD

Ez az utolsó rész, az a rész, amire mindannyian vártunk - tesztelés, ha működik. Meg kell változtatnia az IP -címet, a Weathercloud azonosítót és a Weathercloud KULCSOT az otthoni hálózatának és Weathercloud -fiókjának megfelelően. Ezután készen áll feltölteni azt az arduino -ra. Ezenkívül fel kell töltenie az I2C eső küldő kódját az Arduino nano -ra a csapadéktáblán, és az I2C széljelzőt az Arduino nano -ra a szélsebesség táblán. Van még index.php szkript, erről további információ a 7. lépésben található..

15. lépés: Telepítés

Telepítés
Telepítés
Telepítés
Telepítés
Telepítés
Telepítés
Telepítés
Telepítés

Az egyik dolog, hogy az időjárás-állomást működtetni kell a műhelyben, de az más, hogy működjön a valódi zord körülmények között. A telepítési eljárás nagyban függ attól az épülettől, amelyre az állomást szereli. De ha rendelkezik a napsugárzás elleni védelemmel és a felső érzékelőtartóval, akkor nem lehet olyan nehéz. A hőmérséklet- és páratartalom -érzékelőt bárhol elhelyezhetjük az épületen, de az UV -érzékelőnek és az esőmérőnek az épület tetején kell lennie. Az UV -érzékelő nem lehet árnyékban, és az esőmérő nem lehet a fal közelében, különben erős szél esetén az esőcseppek nem esnek a mérőórába, és a leolvasások pontatlanok lesznek. Itt van egy kép, amely bemutatja, hogyan szerelheti fel az állomást egy tipikus házra. Nagyon óvatosnak kell lennie, amikor állomást szerel a tetőre, és rendelkeznie kell egy erős fúróval, amely betont fúrhat.

16. lépés: Kész

Kész
Kész
Kész
Kész
Kész
Kész
Kész
Kész

Gratulálunk. Ha minden lépést helyesen tett, akkor teljesen működőképes felhőjárás -állomása van. Itt láthatja az állomásom adatait. Ha kérdése vagy javaslata van, szívesen meghallgatom őket az alábbi megjegyzések részben.

Hasonló állomás építését tervezem ESP32 Wi-Fi kártya és néhány további érzékelő (szélsebesség/irány, napsugárzás, talajnedvesség) használatával, de erről később. Élvezd!

Ajánlott: