Indholdsfortegnelse:
- Trin 1: Nødvendige dele (trin 1)
- Trin 2: Byg dit kredsløb (trin 2)
- Trin 3: Byg din måler (trin 3)
- Trin 4: Beregninger og kalibrering (trin 4)
- Trin 5: Software (trin 5)
- Trin 6: Stadig at gøre (trin 6)
Video: Ultrasonic Rain Gauge: Raspebbery Pi Open Weather Station: Del 1: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Kommerciel tilgængelig IoT (Internet Of Things) Vejrstationer er dyre og ikke tilgængelige overalt (som i Sydafrika). Ekstreme vejrforhold rammer os. SA oplever den hårdeste tørke i årtier, jorden varmes op, og landmænd kæmper for at producere rentabelt, uden teknisk eller økonomisk støtte fra regeringen til kommercielle landmænd.
Der er et par Raspberry Pi vejrstationer rundt, som den, Raspberry Pi Foundation bygger til britiske skoler, men det er ikke tilgængeligt for offentligheden. Der findes masser af egnede sensorer, nogle analoge, nogle digitale, nogle solid state, nogle med bevægelige dele og nogle meget dyre sensorer som ultralydsanemometre (vindhastighed og retning)
Jeg besluttede at bygge en open source, åben hardware Weather Station, med generelle dele tilgængelige i Sydafrika kan være et meget nyttigt projekt, og jeg vil have masser af sjov (og udfordrende hovedpine).
Jeg besluttede at starte med en solid state (ingen bevægelige dele) regnmåler. Den traditionelle tipspand imponerede mig ikke på det tidspunkt (troede selv, at jeg aldrig havde brugt en på det tidspunkt). Så jeg tænkte, regn er vand, og vand leder elektricitet. Der er mange analoge resistive sensorer, hvor modstanden falder, når sensoren kommer i kontakt med vand. Jeg troede, at dette ville være en perfekt løsning. Desværre lider disse sensorer af alle former for anomalier som elektrolyse og deoxidation, og målingerne fra disse sensorer var upålidelige. Jeg bygger endda mine egne prober i rustfrit stål og et lille printkort med relæer for at skabe vekselstrøm (konstant 5 volt, men skiftevis de positive og negative poler) for at eliminere elektrolyse, men målingerne var stadig ustabile.
Mit seneste valg er ultralydssensor. Denne sensor, der er tilsluttet toppen af måleren, kan måle afstanden til vandstanden. Til min overraskelse var disse sensorer meget præcise og meget billige (Mindre end 50 ZAR eller 4 USD)
Trin 1: Nødvendige dele (trin 1)
Du skal bruge følgende
1) 1 Raspberry Pi (Enhver model, jeg bruger en Pi 3)
2) 1 Brød Bord
3) Nogle springkabler
4) En en ohm modstand og en to (eller 2,2) ohm modstand
5) En gammel lang kop til opbevaring af regnen. Jeg har trykt min (blød kopi tilgængelig)
6) En gammel manuel regnmåler, der fanger del (Eller du kan designe din egen og udskrive den)
7) Måleudstyr til måling af milliliter eller en vægt til vægtning af vand
8) HC-SR04 ultralydssensor (sydafrikanere kan få dem fra Communica)
Trin 2: Byg dit kredsløb (trin 2)
Jeg fandt en meget nyttig guide til at hjælpe mig med at bygge kredsløbet og til at skrive python -scripts til dette projekt. Dette scrip beregner afstande, og du vil bruge det til at beregne afstanden mellem sensoren monteret øverst i din målerbeholder og vandstanden
Du kan finde den her:
www.modmypi.com/blog/hc-sr04-ultrasonic-range-sensor-on-the-raspberry-pi
Undersøg det, opbyg dit kredsløb, tilslut det til din pi og leg med pythonkoden. Sørg for at bygge spændingsdeleren korrekt. Jeg brugte en 2,2 ohm modstand mellem GPIO 24 og GND.
Trin 3: Byg din måler (trin 3)
Du kan udskrive din måler, bruge en eksisterende måler eller kop. HC-SR04-sensoren fastgøres til toppen af din målehovedtank. Det er vigtigt at sørge for, at det hele tiden forbliver tørt.
Det er vigtigt at forstå målevinklen på din HC-SR04 sensor. Du kan ikke fastgøre den til toppen af en kegle i form af traditionelle regnmålere. Jeg normal cylindrisk kop vil gøre. Sørg for, at den er bred nok til, at en ordentlig lydbølge kan gå ned til bunden. Jeg tror, at et 75 x 300 mm PVC -rør vil klare. For at teste, om signalet går gennem din cylinder og hoppe korrekt tilbage, skal du måle afstanden fra censoren til bunden af din cylinder med en lineal, sammenligne denne måling med den afstand, du får fra sensoren TOF (Time of flight) estimeret afstand til bunden.
Trin 4: Beregninger og kalibrering (trin 4)
Hvad betyder 1 millimeter regn? Én mm regn betyder, at hvis du havde en terning på 1000mm X 1000mm X 1000mm eller 1m X 1m X 1m, vil terningen have en dybde på 1 mm regnvand, hvis du forlod den udenfor, når det regnede. Hvis du tømmer denne regn i en 1 liters flaske, vil den fylde flasken 100 %, og vandet måler også 1 kg. Forskellige regnmålere har forskellige opland. Hvis dit opland på din måler var 1m X 1m, er det let.
Også 1 gram vand er konventionel 1 ml
For at beregne din nedbør i mm fra din måler kan du gøre følgende efter vægtning af regnvandet:
W er nedbørsvægten i gram eller mililiter
A er dit opland i kvadrat mm
R er din samlede nedbør i mm
R = B x [(1000 x 1000)/A]
Der er to muligheder ved at bruge HC-SR04 til at estimere W (Du skal bruge W til at beregne R).
Metode 1: Brug almindelig fysik
Mål afstanden fra HC-SR til bunden af din måler (Du gjorde det også i et tidligere trin) med sensoren ved hjælp af TOF (Time of Flight) -beregningerne i python-scriptet fra https://www.modmypi. com/blog/hc-sr04-ultrasonic-range-sensor-on-the-hindbær-pi Ring til denne cd (cylinderdybde)
Mål arealet af den indvendige bund af din cylinder med alt, hvad der er egnet i kvadrat mm. Kald dette IA.
Smid nu 2 ml vand (eller en passende mængde) i din cylinder. Brug vores sensor til at estimere afstanden til det nye vandstand i mm, Cal denne dist_To_Water).
Vanddybden (WD) i mm er:
WD = CD - Dist_To_Water (eller cylinderdybde minus afstanden fra censoren til vandstanden)
Nej den anslåede vægt af vandet er
W = WD x IA i ml eller gram (Husk 1 ml vandvægt 1 gram)
Nu kan du estimere nedbør (R) i mm med B x [(1000 x 1000)/A] som tidligere forklaret.
Metode 2: Kalibrer din måler med statistik
Da HC-SR04 ikke er perfekt (der kan opstå fejl), ser det ud til, at den i det mindste er konstant til at måle, om din cylinder er egnet.
Byg en lineær model med sensoraflæsninger (eller sensorafstande) som afhængig variabel og injicerede vægte af vand som afhængig variabel.
Trin 5: Software (trin 5)
Software til dette projekt er stadig under udvikling.
Python-scripts på https://www.modmypi.com/blog/hc-sr04-ultrasonic-range-sensor-on-the-raspberry-pi skal kunne bruges.
Vedhæft er nogle nyttige python -applikationer (General Public License) udviklet af mig selv.
Jeg planlægger at udvikle en webgrænseflade til den komplette vejrstation senere. Vedhæft er nogle af mine programmer, der bruges til at kalibrere måleren og foretage sensoraflæsninger
Brug vedhæfte kalibrerings script til at kalibrere måleren statistisk. Importer dataene i et regneark til analyse.
Trin 6: Stadig at gøre (trin 6)
En magnetventil er nødvendig for at tømme tanken, når den er fuld (tæt på sensoren)
De første par regndråber måles ikke altid korrekt, især hvis måleren ikke er korrekt nivelleret. Jeg er i gang med at udvikle en disdro -måler til at fange disse dråber korrekt. Disdro min fremtid næste.
Ad en anden ultralydssensor for at måle effekten af temp på TOF. Jeg sender snart en opdatering om dette.
Jeg fandt følgende ressource, der kan hjælpe
www.researchgate.net/profile/Zheng_Guilin3/publication/258745832_An_Innovative_Principle_in_Self-Calibration_by_Dual_Ultrasonic_Sensor_and_Application_in_Rain_Gauge/links/540d53e00cf2f2b29a38392b/An-Innovative-Principle-in-Self-Calibration-by-Dual-Ultrasonic-Sensor-and-Application-in- Regnmåler.pdf
Anbefalede:
NaTaLia Weather Station: Arduino Solar Powered Weather Station Gjorde den rigtige vej: 8 trin (med billeder)
NaTaLia Weather Station: Arduino Solar Powered Weather Station Gjorde den rigtige vej: Efter 1 års vellykket drift på 2 forskellige steder deler jeg mine solcelledrevne vejrstation projektplaner og forklarer, hvordan det udviklede sig til et system, der virkelig kan overleve over lang tid perioder fra solenergi. Hvis du følger
PiSiphon Rain Gauge (prototype): 4 trin
PiSiphon Rain Gauge (Prototype): Dette projekt er en forbedring i forhold til Bell Siphon Rain Gauge. Det er mere præcist, og utætte vandlåse burde være noget fra fortiden. Traditionelt måles nedbør med en manuel regnmåler. Automatiske vejrstationer (herunder IoT -vejrstationer
Bell Siphon Rain Gauge: 8 trin (med billeder)
Bell Siphon Rain Gauge: En forbedret version af dette er PiSiphon Rain Gauge Traditionelt regnes nedbør med en manuel regnmåler. Automatiske vejrstationer (herunder IoT vejrstationer) bruger normalt tipskovle, akustiske disdrometre eller laserdisometre. T
Arduino Rain Gauge Kalibrering: 7 trin
Arduino Rain Gauge Kalibrering: Introduktion: I denne Instructable 'konstruerer' vi en regnmåler med Arduino og kalibrerer den til at rapportere daglig nedbør hver dag og time. Regnopsamleren, jeg bruger, er en omformet regnemåler af typen tipskovl. Det kom fra en beskadiget personlig vi
Akustisk DISDRO -måler: Raspebbery Pi Open Weather Station (del 2): 4 trin (med billeder)
Akustisk DISDRO -måler: Raspebbery Pi Open Weather Station (del 2): DISDRO står for distribution af dråber. Enheden registrerer størrelsen af hver dråbe med et tidsstempel. Dataene er nyttige til en række forskellige applikationer, herunder meteorologisk (vejr) forskning og landbrug. Hvis disdro er meget præcis, kan det mig