Inhoudsopgave:
- Stap 1: Enige theorie
- Stap 2: Onderdelen voor dit project
- Stap 3: De regencollector
- Stap 4: Circuit
- Stap 5: De code
- Stap 6: Kalibratie en testen
- Stap 7: Nabeschouwingen en dankbetuigingen
Video: Arduino regenmeter kalibratie - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Invoering:
In deze Instructable 'construeren' we een regenmeter met Arduino en kalibreren deze om dagelijkse en uurlijkse regenval te rapporteren. De regenvanger die ik gebruik, is een regenmeter van het type kantelbak die opnieuw is bedoeld. Het kwam van een beschadigd persoonlijk weerstation. Er zijn echter veel geweldige Instructables over hoe je er een helemaal opnieuw kunt maken.
Dit Instructable is een onderdeel van een weerstation dat ik aan het maken ben en is een documentatie van mijn leerproces vermomd als een tutorial:)
Kenmerken van de regenmeter:
- metingen van dagelijkse en uurlijkse regenval zijn in inches voor eenvoudig uploaden naar Weather Underground.
- debouncing-code voor de magnetische schakelaar is niet inbegrepen om de code eenvoudig te houden.
- omdat het meer een tutorial is, is het eindproduct meer een prototype van een prototype.
Stap 1: Enige theorie
Neerslag wordt gerapporteerd/gemeten in millimeters of inches die de afmeting van lengte heeft. Het geeft aan hoe hoog elk deel van het regengebied de regen kreeg, als het regenwater niet was gedissipeerd en afgevoerd. Dus een regen van 1,63 mm zou betekenen dat als ik een vlakke, waterpas gemaakte tank van welke vorm dan ook had, het opgevangen regenwater een hoogte zou hebben van 1,63 mm vanaf de bodem van de tank.
Alle regenmeters hebben een regenvalopvanggebied en een neerslaghoeveelheidmeting. Het stroomgebied is het gebied waarover de regen wordt verzameld. Het meetobject zou een soort volumemeting voor een vloeistof zijn.
Dus de regenval in mm of inches zou zijn
regenhoogte = hoeveelheid opgevangen regen / stroomgebied
In mijn regencollector waren de lengte en breedte respectievelijk 11 cm bij 5 cm, wat een stroomgebied van 55 vierkante cm geeft. Dus een verzameling van 9 milliliter regen zou betekenen 9 cc/55 vierkante cm = 0,16363… cm = 1,6363… mm = 0,064 inch.
In de regenmeter van de kantelbak kantelt de emmer 4 keer voor 9 ml (of 0,064… inch regen) en dus is een enkele tip voor (9/4) ml = 2,25 ml (of 0,0161… inch). Als we metingen per uur doen (24 metingen per dag vóór reset), is het voldoende om drie significante cijfers nauwkeurig te houden.
Dus bij elke emmertip/tuimeling krijgt de code er toegang toe als 1 aan-uit-aan-reeks of één klik. Ja, we hebben 0,0161 inch regen gemeld. Om te herhalen, vanuit het oogpunt van Arduino
één klik = 0,0161 inch regen
Noot 1: Ik geef de voorkeur aan het International System of Units, maar Weather Underground geeft de voorkeur aan de Imperial/US units en dus deze omzetting in inches.
Opmerking 2: Als berekeningen niet jouw ding zijn, ga dan naar Volume of Rainfall, dat perfecte hulp biedt voor dergelijke zaken.
Stap 2: Onderdelen voor dit project
De meeste onderdelen waren rondslingeren en een eerlijke lijst (voor formaliteit) is
- Arduino Uno (of een ander compatibel)
- Regenmeter van oud beschadigd weerstation.
- Broodplank.
- RJ11 om mijn regenmeter op het breadboard aan te sluiten.
- 10K of hoger weerstand om als pull-up weerstand te fungeren. Ik heb 15K gebruikt.
- 2 stuks man-naar-vrouw jumperdraden
- 2 man-naar-man jumper draad.
- USB-kabel; A Man naar B Male
Gereedschap:
Spuit (12 ml capaciteit werd gebruikt)
Stap 3: De regencollector
De foto's van mijn regencollector zullen velen duidelijk maken. Hoe dan ook, de regen die op het stroomgebied valt, wordt naar een van de twee kiepbakken erin geleid. De twee kiepbakken zijn als een wip met elkaar verbonden en als het regenwatergewicht (0,0161 inch regen voor de mijne) een emmer naar beneden kantelt, wordt deze geleegd en de andere emmers gaan omhoog en positioneren zichzelf om het volgende regenwater op te vangen. De kantelbeweging beweegt een magneet over een 'magnetische schakelaar' en de schakeling wordt elektrisch aangesloten.
Stap 4: Circuit
Om het circuit te maken
- Sluit digitale pin #2 van Arduino aan op het ene uiteinde van de weerstand.
- Sluit het andere uiteinde van de weerstand aan op de aardingspin (GND).
- Sluit het ene uiteinde van de RJ11-aansluiting aan op de digitale pin #2 van Arduino.
- Sluit het andere uiteinde van de RJ11-aansluiting aan op de +5V-pin van Arduino (5V).
- Sluit de regenmeter aan op de RJ11.
De schakeling is voltooid. Doorverbindingsdraden en breadboard maken de verbindingen gemakkelijker te maken.
Om het project te voltooien, sluit u de Arduino aan op de pc met behulp van de USB-kabel en laadt u de onderstaande schets.
Stap 5: De code
De schets RainGauge.ino (ingesloten aan het einde van deze stap) is goed becommentarieerd en daarom zal ik slechts op drie secties wijzen.
Een deel telt het aantal kiepbakken.
if(bucketPositionA==false && digitalRead(RainPin) == HOOG){
… … }
Een ander deel controleert de tijd en berekent de hoeveelheid regen
if(now.minute()==0 && first == true){
hourlyRain = dailyRain - dailyRain_till_LastHour; …… ……
en een ander deel ruimt de regen voor de dag op, om middernacht.
if(nu.uur() == 0){
dagelijkse regen = 0; …..
Stap 6: Kalibratie en testen
Koppel de regencollector los van de rest van het circuit en voer de volgende stappen uit.
- Vul de spuit met water. Ik vul de mijne met 10 ml.
- Houd de Rain Collector op een vlakke ondergrond en giet het water beetje bij beetje uit de spuit.
- Ik tel de kiepende emmers. Vier tips waren genoeg voor mij, en er kwam 9 ml uit de spuit. Volgens berekeningen (zie theoriegedeelte) kreeg ik de hoeveelheid van 0,0161 inch regen per tip.
- Ik neem deze informatie in het begin op in mijn code.
const dubbele bucketAmount = 0,0161;
Dat is alles. Voor meer nauwkeurigheid kan men meer cijfers opnemen, zoals 0.01610595. Natuurlijk wordt verwacht dat je berekende aantallen variëren als je Rain Collector niet identiek is aan de mijne.
Voor testdoeleinden
- Sluit de Rain Collector aan op de RJ11-bus.
- Verbind de Arduino met de pc met behulp van de USB-kabel.
- Open de seriële monitor.
- Giet eerder afgemeten hoeveelheden water en observeer de output wanneer het uur is verstreken.
- Giet geen water, maar wacht tot het volgende uur is voltooid. De regen per uur moet in dit geval nul zijn.
- Houd de pc met het aangesloten circuit 's nachts ingeschakeld en kijk of de dagelijkse regen en uurregen om middernacht op nul worden gezet. Voor deze stap kan men ook de klok van de pc wijzigen in een geschikte waarde (om de uitgangen op de seriële monitor live te bekijken).
Stap 7: Nabeschouwingen en dankbetuigingen
De resolutie van de neerslagmetingen is in mijn geval 0,0161 inch en kan niet nauwkeuriger worden gemaakt. Praktische omstandigheden kunnen de nauwkeurigheid verder verminderen. Weermetingen hebben niet de nauwkeurigheid van de kwantummechanica.
Een deel van de code is geleend van Lazy Old Geek's Instructable.
Aanbevolen:
ARDUINO ORP SENSOR KALIBRATIE: 3 stappen:
ARDUINO ORP SENSOR KALIBRATIE: In deze tutorial zullen we de EZO ORP-sensor (oxidatie-reductiepotentiaal) van Atlas Scientific kalibreren met behulp van Arduino Uno. KALIBRATIETHEORIE Het belangrijkste onderdeel van kalibratie is het bekijken van de metingen tijdens het kalibratieproces. Het is gemakkelijk
ARDUINO OPLOSSENDE ZUURSTOF SENSOR KALIBRATIE: 4 stappen:
ARDUINO OPLOSSENDE ZUURSTOF SENSOR KALIBRATIE: In deze tutorial zullen we de EZO opgeloste zuurstof (D.O) sensor van Atlas Scientific kalibreren met behulp van Arduino Uno. KALIBRATIE THEORIE Het belangrijkste onderdeel van kalibratie is het bekijken van de meetwaarden tijdens het kalibratieproces. Het is het gemakkelijkst te kalibreren
Hoe maak je een babygewichtmachine met Arduino Nano, HX-711 Load Cell en OLED 128X64 -- Kalibratie van HX-711: 5 stappen
Hoe maak je een babygewichtmachine met Arduino Nano, HX-711 Load Cell en OLED 128X64 || Kalibratie van HX-711: Hallo Instructables, een paar dagen geleden werd ik vader van een schattige baby?. Toen ik in het ziekenhuis lag, ontdekte ik dat het gewicht van de baby zo belangrijk is om de groei van de baby te volgen. Dus ik heb een idee? om een babygewichtmachine van mezelf te maken. in deze Instructable I
PiSiphon-regenmeter (prototype): 4 stappen
PiSiphon Rain Gauge (prototype): Dit project is een verbetering van de Bell siphon Rain Gauge. Het is nauwkeuriger en lekkende sifons behoren tot het verleden te behoren.Traditioneel wordt regenval gemeten met een handmatige regenmeter.Geautomatiseerde weerstations (oa IoT-weersta
Ultrasone regenmeter: Raspebbery Pi Open weerstation: deel 1: 6 stappen
Ultrasone regenmeter: Raspebbery Pi Open Weerstation: Deel 1: Commercieel verkrijgbaar IoT (Internet Of Things) Weerstations zijn duur en niet overal beschikbaar (zoals in Zuid-Afrika). Extreme weersomstandigheden treffen ons. SA beleeft de zwaarste droogte in decennia, de aarde warmt op en landbouw