Мазмуну:
- 1 -кадам: Кээ бир теория
- 2 -кадам: Бул долбоордун бөлүктөрү
- 3 -кадам: Жамгыр жыйноочу
- 4 -кадам: Район
- 5 -кадам: Кодекс
- 6 -кадам: Калибрлөө жана тестирлөө
- 7 -кадам: Afterthoughts & Acknowledgments
Video: Arduino Rain Gauge калибрлөө: 7 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:40
Киришүү:
Бул көрсөтмөдө биз Arduino менен жамгыр өлчөгүчтү "курабыз" жана аны күнүмдүк жана сааттык жаан -чачын тууралуу билдирүү үчүн калибрлеп алабыз. Мен колдонуп жаткан жамгыр коллектору-бул чайыр чаканын түрүндөгү кайра багытталган жамгыр өлчөгүч. Бул бузулган жеке метеостанциядан келген. Бирок, башынан баштап кантип жасоо керектиги жөнүндө көптөгөн сонун көрсөтмөлөр бар.
Бул көрсөтмө мен жасап жаткан метеостанциянын бир бөлүгү жана окуу процессинин документи болуп, окуу куралы катары жашырылган:)
Rain Gauge өзгөчөлүктөрү:
- Күнүмдүк жана сааттык жаан -чачындын өлчөөлөрү дюймда Метеорологиялык Метрого оңой жүктөлөт.
- Магниттик которгучтун дебюндук коду кодду жөнөкөй кармоо үчүн киргизилген эмес.
- үйрөткүч болуу менен, даяр продукт прототиптин прототипи болуп саналат.
1 -кадам: Кээ бир теория
Жаан -чачын узундугу бар миллиметр же дюймда айтылат/өлчөнөт. Бул жамгырдын ар бир бөлүгү жамгырдын канчалык бийик болгонун көрсөтүп турат, эгер жамгыр суусу тарай элек жана агып кетпесе. Ошентип, 1,63 мм жаан -чачын, эгерде менде кандайдыр бир формадагы жалпак тегизделген танк болсо, анда топтолгон жамгыр суусу бактардын түбүнөн 1,63 мм бийиктикте болмок.
Бардык жамгыр өлчөгүчтөрүндө жаан -чачындын көлөмү жана жаан -чачындын өлчөмү бар. Суу топтоочу аймак - жамгыр топтолгон аймак. Өлчөөчү объект суюктуктун кандайдыр бир көлөмүн өлчөө болмок.
Жаан -чачын мм же дюймда болмок
жаан -чачындын бийиктиги = жамгырдын чогултулган / топтолгон аянты
Менин жамгыр жыйноочу жайымда, узундугу жана туурасы 11 см 5 см болгон жана 55 чарчы см топтоо аянтын берген. Ошентип, 9 миллилитр жамгырдын жыйнагы 9 cc/55 sq.cm = 0.16363… cm = 1.6363… mm = 0.064 дюймду билдирет.
Чакырган жамгыр өлчөгүчтө, чака 4 жолу 9 мл (же 0.064… дюйм жамгыр) үчүн учтары менен учтуу болот (9/4) ml = 2.25ml (же 0.0161.. дюйм). Эгерде биз сааттык көрсөткүчтөрдү алсак (баштапкы абалга келтирүүдөн мурун күнүнө 24 окуу), үч цифралык тактыкты сактоо жетиштүү.
Ошентип, ар бир чака учунда/жыгылганда, код ага 1 күйгүзүү ырааттуулугу же бир чыкылдатуу катары жетет. Ооба, биз 0.0161 дюйм жамгыр тууралуу кабарладык. Кайталап айтуу үчүн, Arduino көз карашынан
бир чыкылдатуу = 0.0161 дюйм жамгыр
Эскертүү 1: Мен Эл аралык бирдиктер системасын жакшы көрөм, бирок Метеорологиялык метро Император/АКШ бирдиктерин жактырат, ошондуктан дюймга айландырылат.
Эскертүү 2: Эгерде эсептөөлөр сиздин чайыңыз болбосо, мындай маселелер үчүн кемчиликсиз жардам көрсөтүүчү Жаан -чачындын көлөмүнө өтүңүз.
2 -кадам: Бул долбоордун бөлүктөрү
Бөлүктөрдүн көбү тегеректе жатты жана адилеттүү тизме (формалдуулук үчүн)
- Arduino Uno (же башка шайкеш келген)
- Эски бузулган метеостанциядан жамгыр өлчөгүч.
- Breadboard.
- RJ11 менин Rain Gauge'имди нан тактасына туташтыруу үчүн.
- 10K же андан жогору резистор тартылуу каршылыгынын ролун аткарат. Мен 15K колдондум.
- 2 даана эркек-ургаачы секирүүчү зымдар
- 2 эркектен эркекке секирүүчү зым.
- USB кабели; Эркектен Б Эркекке
Куралдар:
Шприц (12 мл сыйымдуулугу колдонулган)
3 -кадам: Жамгыр жыйноочу
Менин жамгыр жыйноочумдун сүрөттөрү көптөргө түшүнүктүү болушу керек. Кандай болбосун, анын топтолгон жерине жааган жамгыр анын ичиндеги эки челектин бирине багытталат. Эки челек чакаланган ара сыяктуу туташтырылган жана жамгыр суусунун салмагы (мен үчүн 0,0161 дюйм жамгыр) бир челекти ылдый түшүрөт, ал эми башка чакалар өйдө көтөрүлүп, кийинки жамгыр суусун чогултуу үчүн жайгашат. Оодарылуу кыймылы магнитти "магниттик которгучтун" үстүнө жылдырат жана чынжыр электр менен туташат.
4 -кадам: Район
Районду жасоо үчүн
- Ардуинонун #2 санарип пинин резистордун бир четине туташтырыңыз.
- Резистордун экинчи учун жерге туташтыргычка (GND) туташтырыңыз.
- RJ11 уячасынын бир учун Ардуинонун #2 санарип пинине туташтырыңыз.
- RJ11 уячасынын экинчи учун Arduino (5V) +5V төөнөгүчүнө туташтырыңыз.
- Жамгыр өлчөгүчтү RJ11ге сайыңыз.
Район бүтүп калды. Өткөргүч зымдар жана нан тактасы байланыштарды жеңилдетет.
Долбоорду аяктоо үчүн Arduino -ны USB кабели менен ЖКга туташтырып, төмөндө көрсөтүлгөн эскизди жүктөңүз.
5 -кадам: Кодекс
RainGauge.ino эскизи (бул кадамдын аягында камтылган) жакшы комментарийленген, ошондуктан мен үч бөлүмдү гана көрсөтөм.
Бир бөлүгү чөгүп кетүүчү учтардын санын эсептейт.
эгер (bucketPositionA == false && digitalRead (RainPin) == HIGH) {
… … }
Дагы бир бөлүгү убакытты текшерет жана жамгырдын өлчөмүн эсептейт
if (now.minute () == 0 && first == true) {
hourlyRain = dailyRain - dailyRain_till_LastHour; …… ……
жана башка бөлүгү жамгырды күндүз, түн ортосунда тазалайт.
if (now.hour () == 0) {
dailyRain = 0; …..
6 -кадам: Калибрлөө жана тестирлөө
Rain Коллекторун схеманын калган бөлүгүнөн ажыратып, төмөнкү кадамдарды аткарыңыз.
- Шприцти суу менен толтуруңуз. Мен 10 мл куям.
- Жамгыр жыйноочуну тегиз жерде кармаңыз жана шприцтен сууну акырындык менен төгүңүз.
- Мен челектерди санай берем. Мага төрт кеңеш жетиштүү болду жана шприцтен 9 мл төгүп салышты. Эсептөөлөр боюнча (теория бөлүмүн караңыз) Мен бир учуна 0.0161 дюйм жамгыр алдым.
- Мен бул маалыматты башында кодума киргизем.
const double bucketAmount = 0.0161;
Баары ушунда. Тактык үчүн, 0.01610595 сыяктуу дагы цифраларды камтышы мүмкүн. Албетте, сиздин жамгыр жыйноочуңуз меникине окшош болбосо, сиздин эсептелген сандарыңыз өзгөрүшү мүмкүн.
Сыноо максатында
- Жамгыр жыйноочуну RJ11 розеткасына туташтырыңыз.
- USB кабелин колдонуп, Arduino -ны компьютерге туташтырыңыз.
- Сериялык мониторду ачыңыз.
- Мурда өлчөнгөн сууну куюңуз жана саат бүткөндө чыгымын байкаңыз.
- Эч кандай суу куйбаңыз, бирок кийинки сааттын аягына чейин күтүңүз. Бул учурда сааттык жаан нөлгө барабар болушу керек.
- ЖКны туташтырылган микросхема менен түнү бою кармап туруңуз жана түнкүсүн күнүмдүк жамгыр менен сааттык жамгыр нөлгө түшүп калабы. Бул кадам үчүн, ЖКнын саатын ылайыктуу баага өзгөртө аласыз (сериялык монитордогу чыгууларды түз көрүү үчүн).
7 -кадам: Afterthoughts & Acknowledgments
Менин учурда жамгырдын көрсөткүчтөрүнүн чечилиши 0.0161 дюймду түзөт жана аны такыраак кылуу мүмкүн эмес. Практикалык жагдайлар тактыкты дагы төмөндөтүшү мүмкүн. Аба ырайынын өлчөөлөрү кванттык механиканын тактыгына ээ эмес.
Коддун бир бөлүгү Lazy Old Geek's Instructableден алынган.
Сунушталууда:
Түстөрдү таануу W/ TCS230 Sensor and Arduino [Калибрлөө коду камтылган]: 12 кадам
Түстөрдү таануу W/ TCS230 Sensor and Arduino [Калибрлөө коду камтылган]: Обзор Бул сабакта сиз TCS230 сенсорун жана түстөрдү таануу үчүн аны Arduino менен кантип колдонууну үйрөнөсүз. Бул окуу куралынын аягында сиз түстүү калемди түзүү үчүн кызыктуу идеяны таба аласыз. Бул калем менен сиз түстөрдү сканерлей аласыз
Үйрөткүч: Arduino UNO менен клетканы кантип калибрлөө жана интерфейске салуу: 3 кадам
Үйрөткүч: Arduino UNO менен кантип клетканы калибрлөө жана интерфейске салуу: Салам балдар, биз сизге үйрөткүчтү көрсөтөбүз: Arduino UNO менен жүктөө клеткасын же HX711 тең салмактуулук модулун кантип калибрлеп, интерфейске салуу керек. тактык / конвертер. Бул чип жогорку деңгээлге чейин иштелип чыккан
PiSiphon Rain Gauge (Прототип): 4 кадам
PiSiphon Rain Gauge (Прототип): Бул долбоор Bell sifon Rain Gauge боюнча жакшыртылган. Бул тагыраак жана агып чыккан сифондор мурунку нерсе болушу керек. Жаан -чачын кол менен өлчөөчү машинанын жардамы менен өлчөнөт
Bell Sifhon Rain Gauge: 8 Кадам (Сүрөттөр менен)
Bell Sifhon Rain Gauge: Мунун жакшыртылган версиясы PiSiphon Rain Gauge болуп саналат
Ultrasonic Rain Gauge: Raspebbery Pi Open Weather Station: Part 1: 6 Steps
Ultrasonic Rain Gauge: Raspebbery Pi Open Weather Station: 1 -бөлүк: Коммерциялык жеткиликтүү IOT (Интернет нерселери) Аба ырайы станциялары кымбат жана бардык жерде жеткиликтүү эмес (Түштүк Африкадагыдай). Аба ырайынын катаал шарттары бизге сокку урууда. SA ондогон жылдардагы эң катуу кургакчылыкты башынан кечирүүдө, жер жылыйт жана дыйканчылык кылат