Tartalomjegyzék:

Arduino esőmérő kalibrálása: 7 lépés
Arduino esőmérő kalibrálása: 7 lépés

Videó: Arduino esőmérő kalibrálása: 7 lépés

Videó: Arduino esőmérő kalibrálása: 7 lépés
Videó: #32 - Házi meteorológiai állomás építése - 1.rész 2024, December
Anonim
Arduino esőmérő kalibrálása
Arduino esőmérő kalibrálása

Bevezetés:

Ebben az Instructable programban esőmérőt „építünk” Arduino -val, és kalibráljuk a napi és óránkénti csapadék jelentésére. Az általam használt esőgyűjtő egy újbóli rendeltetésű esőmérő, amely borítóvödör típusú. Egy sérült személyes meteorológiai állomásról érkezett. Van azonban egy csomó nagyszerű utasítás, hogyan lehet a semmiből elkészíteni egyet.

Ez az Instructable egy általam készített időjárásállomás része, és egy oktatóanyagnak álcázott dokumentáció a tanulási folyamatomról:)

Az esőmérő jellemzői:

  • A napi és óránkénti csapadékmennyiség mérése hüvelykben történik, hogy könnyen fel lehessen tölteni a Weather Underground -ra.
  • a mágneses kapcsoló lekapcsolási kódja nem szerepel a kód egyszerűsége érdekében.
  • mivel inkább oktatóanyag, a késztermék inkább egy prototípus prototípusa.

1. lépés: Néhány elmélet

Néhány elmélet
Néhány elmélet

A csapadékot milliméterben vagy hüvelykben jelentik/mérik, amelynek hossza megegyezik. Ez jelzi, hogy az esőterület minden részén milyen magasra esett az eső, ha az esővíz nem szétoszlott és el nem engedte. Tehát az 1,63 mm csapadék azt jelentené, hogy ha bármilyen alakú, sík vízszintes tartályom lenne, az összegyűjtött esővíz 1,63 mm magasságban lenne a tartály aljától.

Minden esőmérő rendelkezik csapadékgyűjtő területtel és csapadékmennyiség méréssel. A vízgyűjtő az a régió, ahol az eső összegyűlik. A mérő objektum valamilyen folyadék térfogatmérése lenne.

Tehát a csapadék mm -ben vagy hüvelykben lenne

csapadékmagasság = az összegyűjtött eső mennyisége / vízgyűjtő terület

Az esőgyűjtőmben a hossza és szélessége 11 x 5 cm volt, ami 55 négyzetméter vízgyűjtő területet eredményezett. Tehát a 9 milliliter esőgyűjtemény 9 cm3/55 négyzetméter cm -t jelentene = 0,16363… cm = 1,6363… mm = 0,064 hüvelyk.

A borítóvödör esőmérőjében a vödör 4 -szer billen 9 ml -re (vagy 0,064… hüvelyk esőre), és így egyetlen tipp (9/4) ml = 2,25 ml (vagy 0,0161.. hüvelyk). Ha óránkénti leolvasást veszünk (napi 24 leolvasás a visszaállítások előtt), akkor a három számjegy pontosságának megtartása elég tisztességes.

Így minden vödörcsúcsnál/-üstnél a kód 1 ki-be kapcsolási sorozatként vagy egy kattintásként fér hozzá. Igen, 0,0161 hüvelyk esőről számoltunk be. Ismétlem, Arduino szempontjából

egy kattintás = 0,0161 hüvelyk eső

1. megjegyzés: Én a Nemzetközi Egységrendszert részesítem előnyben, de a Weather Underground a Birodalmi/USA egységeket, így ez a hüvelykre való átalakítás.

2. megjegyzés: Ha a számítások nem a teája, tekintse át a Rainfall mennyiségét, amely tökéletes segítséget nyújt az ilyen ügyekben.

2. lépés: A projekt alkatrészei

Alkatrészek ehhez a projekthez
Alkatrészek ehhez a projekthez
Alkatrészek ehhez a projekthez
Alkatrészek ehhez a projekthez
Alkatrészek ehhez a projekthez
Alkatrészek ehhez a projekthez

A legtöbb rész feküdt, és a tisztességes felsorolás (a formalitás érdekében) az

  1. Arduino Uno (vagy bármely más kompatibilis)
  2. Esőmérő a régi sérült időjárás állomásról.
  3. Kenyeretábla.
  4. RJ11 az esőmérőm csatlakoztatásához a kenyértáblához.
  5. 10K vagy magasabb ellenállás, amely felhúzó ellenállásként működik. 15K -t használtam.
  6. 2 db férfi-női áthidaló vezeték
  7. 2 férfi-férfi áthidaló vezeték.
  8. USB kábel; Férfi - B férfi

Eszközök:

Fecskendő (12 ml -es kapacitást használtunk)

3. lépés: Az esőgyűjtő

Az esőgyűjtő
Az esőgyűjtő
Az esőgyűjtő
Az esőgyűjtő

Az esőgyűjtőm fényképei sokak számára egyértelművé teszik a dolgot. Mindenesetre a vízgyűjtő területére eső eső a benne lévő két billenővödör egyikére kerül. A két billenővödör úgy van összekapcsolva, mint egy fűrész, és ahogy az esővíz súlya (0,0161 hüvelyk eső az enyémhez) az egyik vödröt lefelé billenti, kiürül, a többi vödör pedig felfelé áll, és összegyűjti a következő esővizet. A billenő mozgás egy mágnest mozgat egy „mágneses kapcsoló” fölé, és az áramkör elektromosan csatlakozik.

4. lépés: Áramkör

Áramkör
Áramkör

Az áramkör elkészítéséhez

  1. Csatlakoztassa az Arduino 2. számú digitális tűjét az ellenállás egyik végéhez.
  2. Csatlakoztassa az ellenállás másik végét a földelőcsaphoz (GND).
  3. Csatlakoztassa az RJ11 csatlakozó egyik végét az Arduino 2. számú digitális tűjéhez.
  4. Csatlakoztassa az RJ11 csatlakozó másik végét az Arduino +5V -os érintkezőjéhez (5V).
  5. Csatlakoztassa az esőmérőt az RJ11 -hez.

Az áramkör teljes. Az áthidaló vezetékek és a kenyértábla megkönnyítik a csatlakozásokat.

A projekt befejezéséhez csatlakoztassa az Arduino -t a számítógéphez az USB -kábel segítségével, és töltse be az alábbi vázlatot.

5. lépés: A kód

A RainGauge.ino vázlata (ennek a lépésnek a végén található) jól kommentált, ezért csak három részt mutatok be.

Az egyik rész a billenővödör-hegyek számát számolja.

if (bucketPositionA == false && digitalRead (RainPin) == HIGH) {

… … }

Egy másik rész ellenőrzi az időt és kiszámítja az eső mennyiségét

if (now.minute () == 0 && first == true) {

hourlyRain = dailyRain - dailyRain_till_LastHour; …… ……

egy másik rész pedig eltakarja az esőt napközben, éjfélkor.

if (now.hour () == 0) {

napi eső = 0; …..

6. lépés: Kalibrálás és tesztelés

Válassza le az esőgyűjtőt az áramkör többi részéről, és hajtsa végre a következő lépéseket.

  1. Töltse fel a fecskendőt vízzel. Az enyémet megtöltöm 10 ml -rel.
  2. Tartsa az esőgyűjtőt vízszintes felületen, és apránként öntse ki a vizet a fecskendőből.
  3. Számolok a billenővödrökről. Négy tipp elég volt számomra, és 9 ml -t leengedtem a fecskendőből. Számítások szerint (lásd az elmélet részt) 0,0161 hüvelyk esőt kaptam borravalónként.
  4. Ezt az információt belefoglalom a kódomba az elején.

const dupla vödörAmount = 0,0161;

Ennyi az egész. A nagyobb pontosság érdekében több számjegyet is megadhat, például 0,01610595. A számított számok természetesen változhatnak, ha az esőgyűjtő nem azonos az enyémmel.

Tesztelés céljából

  1. Csatlakoztassa az esőgyűjtőt az RJ11 aljzathoz.
  2. Csatlakoztassa az Arduino -t a számítógéphez az USB -kábel segítségével.
  3. Nyissa meg a soros monitort.
  4. Öntsön korábban mért mennyiségű vizet, és figyelje a kimenetet, amikor az óra véget ér.
  5. Ne öntsön vizet, hanem várja meg a következő órát. Az óránkénti esőnek ebben az esetben nullának kell lennie.
  6. Tartsa a számítógépet a csatlakoztatott áramkörrel egy éjszakán át, és nézze meg, hogy a napi eső és az óránkénti eső nullára áll -e éjfélkor. Ehhez a lépéshez a PC óráját is megfelelő értékre lehet állítani (a soros monitor kimeneteinek élőben történő megtekintéséhez).

7. lépés: Utógondolatok és köszönetnyilvánítások

Az esőértékek felbontása esetemben 0,0161 hüvelyk, és nem lehet pontosabbá tenni. A gyakorlati körülmények tovább csökkenthetik a pontosságot. Az időjárási mérések nem rendelkeznek a kvantummechanika pontosságával.

A kód egy részét a Lazy Old Geek Instructable -ből kölcsönözték.

Ajánlott: