Съдържание:

Калибриране на дъждомера на Arduino: 7 стъпки
Калибриране на дъждомера на Arduino: 7 стъпки

Видео: Калибриране на дъждомера на Arduino: 7 стъпки

Видео: Калибриране на дъждомера на Arduino: 7 стъпки
Видео: #11 LM35 and 4-20mA Industrial Temperature Sensor to Outseal Arduino PLC 2024, Декември
Anonim
Калибриране на дъждомера на Arduino
Калибриране на дъждомера на Arduino

Въведение:

В тази инструкция „конструираме“дъгомер с Arduino и го калибрираме, за да отчитаме дневни и почасови валежи. Колекторът за дъжд, който използвам, е преназначен дъждомер от типа на ковшовата кофа. Идва от повредена лична метеорологична станция. Има обаче много страхотни инструкции как да направите такъв от нулата.

Този Instructable е част от метеорологична станция, която правя и е документация на моя процес на обучение, прикрит като урок:)

Характеристики на дъждомера:

  • измерванията на дневните и почасовите валежи са в инчове за лесно качване в Weather Underground.
  • кодът за отстраняване на магнитния превключвател не е включен, за да поддържа кода прост.
  • като по -скоро урок, крайният продукт е по -скоро прототип на прототип.

Стъпка 1: Някои теории

Някаква теория
Някаква теория

Валежите се отчитат/измерват в милиметри или инчове, които имат размера на дължината. Показателно е колко високо, всяка част от дъждовната област е валяла, ако дъждовната вода не се е разсеяла и не се е оттичала. И така, 1,63 мм валежи би означавало, че ако имах плосък изравнен резервоар с каквато и да е форма, събраната дъждовна вода би била на височина 1,63 мм от дъното на резервоарите.

Всички дъгомери имат зона за улавяне на валежите и измерване на количеството на валежите. Водосборният район е районът, върху който се събира дъждът. Измервателният обект би бил някакъв вид измерване на обема за течност.

Така валежите в мм или инчове биха били

височина на валежите = обем на събраните дъждове / водосборна площ

В моя колектор за дъжд дължината и ширината бяха съответно 11 см на 5 см, което даваше водосборна площ от 55 кв.см. Така че събирането на 9 милилитра дъжд би означавало 9 cc/55 кв.см = 0,16363 … см = 1,6363 … мм = 0,064 инча.

В дъждомера с преобръщаща кофа, кофата се връхва 4 пъти за 9 ml (или 0,064… инча дъжд) и така единичният връх е за (9/4) ml = 2,25 ml (или 0,0161.. инча). Ако вземем почасови показания (24 показания на ден преди нулиране), поддържането на три значими цифри е достатъчно прилично.

По този начин при всеки връх/кофа на кофата кодът има достъп до него като 1 последователност включване-изключване или едно щракване. Да, съобщихме за 0,0161 инча дъжд. Да повторя, от гледна точка на Arduino

едно щракване = 0,0161 инча дъжд

Забележка 1: Предпочитам Международната система от единици, но Weather Underground предпочита имперските/американските единици и затова това преобразуване в инчове.

Забележка 2: Ако изчисленията не са вашата чаша чай, преминете към Volume of Rainfall, който осигурява перфектна помощ за такива въпроси.

Стъпка 2: Части за този проект

Части за този проект
Части за този проект
Части за този проект
Части за този проект
Части за този проект
Части за този проект

Повечето от частите лежаха наоколо и честен списък (за формалност) е такъв

  1. Arduino Uno (или всяка друга съвместима)
  2. Rain Gauge от стара повредена метеорологична станция.
  3. Платка.
  4. RJ11 за свързване на Rain Gauge към дъската.
  5. 10K или по -висок резистор, който да действа като издърпващ резистор. Използвал съм 15K.
  6. 2 броя джъмперни проводници от мъжки към женски
  7. 2 джъмпер проводник от мъжки към мъжки.
  8. USB кабел; Мъж до В мъж

Инструменти:

Спринцовка (използван е капацитет от 12 ml)

Стъпка 3: Събирачът на дъжд

Колекторът на дъжда
Колекторът на дъжда
Колекторът на дъжда
Колекторът на дъжда

Снимките на моя колекционер на дъжд трябва да изяснят нещата на мнозина. Както и да е, дъждът, който пада върху водосбора му, се насочва към една от двете кофи за преобръщане вътре в него. Двете кофи за преобръщане са свързани като трион и като теглото на дъждовната вода (0,0161 инча дъжд за моята) се накланя една кофа надолу, тя се изпразва, а другите кофи се издигат нагоре и се позиционират, за да събират следващата дъждовна вода. Преместващото движение премества магнит върху „магнитен превключвател“и веригата се свързва електрически.

Стъпка 4: Схема

Верига
Верига

За да направите веригата

  1. Свържете цифров щифт #2 на Arduino към единия край на резистора.
  2. Свържете другия край на резистора към заземяващия щифт (GND).
  3. Свържете единия край на жака RJ11 към цифровия щифт #2 на Arduino.
  4. Свържете другия край на жака RJ11 към +5V щифта на Arduino (5V).
  5. Включете манометъра към RJ11.

Веригата е завършена. Джъмперните проводници и платката улесняват осъществяването на връзките.

За да завършите проекта, свържете Arduino към компютъра с помощта на USB кабел и заредете скицата, предоставена по -долу.

Стъпка 5: Кодът

Скицата RainGauge.ino (вградена в края на тази стъпка) е добре коментирана и затова ще посоча само три раздела.

Едната част отчита броя на върховете на кофата за преобръщане.

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

… … }

Друга част проверява времето и изчислява количеството на дъжда

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

hourlyRain = dailyRain - dailyRain_till_LastHour; …………

и друга част изчиства дъжда за деня, в полунощ.

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

dailyRain = 0; …..

Стъпка 6: Калибриране и тестване

Изключете дъждосборника от останалата част на веригата и изпълнете следните стъпки.

  1. Напълнете спринцовката с вода. Моята пълня с 10 мл.
  2. Дръжте колектора за дъжд на равна повърхност и излейте водата от спринцовката малко по малко.
  3. Аз преброявам кофите за преобръщане. Четири накрайника ми бяха достатъчни и източих 9 мл от спринцовката. Според изчисленията (вижте раздела за теория) получих сумата от 0,0161 инча дъжд на връх.
  4. Включвам тази информация в кода си в началото.

const double bucketAmount = 0.0161;

Това е всичко. За по -голяма точност можете да включите повече цифри като 0.01610595. Разбира се, вашите изчислени числа се очаква да варират, ако вашият колектор за дъжд не е идентичен с моя.

За целите на тестването

  1. Свържете Rain Collector към гнездото RJ11.
  2. Свържете Arduino към компютъра с помощта на USB кабел.
  3. Отворете серийния монитор.
  4. Изсипете предварително измерени количества вода и наблюдавайте изхода, когато часът приключи.
  5. Не наливайте вода, но изчакайте следващия час да приключи. В този случай почасовият дъжд трябва да е нула.
  6. Дръжте компютъра със свързаната верига захранван през нощта и вижте дали дневният дъжд и часовият дъжд се нулират в полунощ. За тази стъпка можете също да промените часовника на компютъра на подходяща стойност (за да гледате изходите на серийния монитор на живо).

Стъпка 7: Замисли и признания

Разделителната способност на показанията на валежите в моя случай е 0,0161 инча и не може да бъде направена по -точна. Практическите обстоятелства могат допълнително да намалят точността. Измерванията на времето нямат точността на квантовата механика.

Част от кода е заимстван от Instructable на Lazy Old Geek.

Препоръчано: