Mundarija:

Arduino yomg'ir o'lchagichini kalibrlash: 7 qadam
Arduino yomg'ir o'lchagichini kalibrlash: 7 qadam

Video: Arduino yomg'ir o'lchagichini kalibrlash: 7 qadam

Video: Arduino yomg'ir o'lchagichini kalibrlash: 7 qadam
Video: Обзор измерителя постоянного тока YB5140 50A с шунтирующим резистором 75 мВ 2024, Noyabr
Anonim
Arduino yomg'ir o'lchagichini kalibrlash
Arduino yomg'ir o'lchagichini kalibrlash

Kirish:

Ushbu yo'riqnomada biz Arduino bilan yomg'ir o'lchagichni "quramiz" va uni har kungi va soatlik yog'ingarchilik haqida xabar berish uchun sozlaymiz. Men ishlatayotgan yomg'ir yig'uvchi-bu chelak tipidagi yomg'ir o'lchagichi. Bu shikastlangan shaxsiy ob -havo stantsiyasidan kelgan. Biroq, uni noldan qanday qilish kerakligi haqida juda ko'p ko'rsatmalar mavjud.

Bu ko'rsatma men tayyorlayotgan ob -havo stantsiyasining bir qismi va o'quv jarayonining hujjati bo'lib, u darslik sifatida yashiringan:)

Yomg'ir o'lchagichining xususiyatlari:

  • Ob -havo metrosiga osongina yuklash uchun kunlik va soatlik yog'ingarchilik o'lchami dyuymda.
  • magnit kalitni o'chirish kodi kodni oddiy saqlash uchun kiritilmagan.
  • ko'proq o'qituvchi bo'lish, tayyor mahsulot - bu prototipning prototipi.

1 -qadam: Ba'zi nazariyalar

Ba'zi nazariyalar
Ba'zi nazariyalar

Yomg'ir haqida millimetr yoki dyuym uzunlik o'lchovlari haqida xabar beriladi/o'lchanadi. Agar yomg'ir suvi to'kilmasa va drenajlanmasa, yomg'ir maydonining har bir qismi qanchalik baland bo'lganini ko'rsatadi. Shunday qilib, 1,63 mm yog'ingarchilik, agar menda har qanday shakldagi tekis tekislangan tank bo'lsa, yomg'ir suvi tanklar tubidan 1,63 mm balandlikda bo'ladi.

Barcha yomg'ir o'lchagichlarida yomg'ir yig'ish maydoni va yomg'ir miqdori o'lchovi mavjud. Hovuz - bu yomg'ir yig'iladigan hudud. O'lchov ob'ekti suyuqlik uchun qandaydir hajm o'lchovi bo'lardi.

Yomg'ir mm yoki dyuymda bo'ladi

yomg'ir balandligi = yig'ilgan yomg'ir miqdori / yig'ilish maydoni

Mening yomg'ir yig'uvchimning uzunligi va kengligi mos ravishda 11 sm va 5 sm bo'lib, yig'ilish maydoni 55 kv. Shunday qilib, 9 mililitr yomg'ir yig'ilsa, 9 sm/55 kv.sm = 0.16363… sm = 1.6363… mm = 0.064 dyuymga to'g'ri keladi.

Yomg'ir o'lchagichda, chelak 4 marta 9 ml (yoki 0,064… dyuymli yomg'ir) uchun uchlari uch marta (9/4) ml = 2,25 ml (yoki 0,0161.. dyuym) bo'ladi. Agar biz soatlik o'qishlarni olsak (qayta tiklashdan oldin kuniga 24 o'qish), uchta aniq raqamni saqlash etarli darajada yaxshi.

Shunday qilib, har bir paqir uchi/yiqilishida, kod unga 1 ochilish ketma-ketligi yoki bitta bosish orqali kiradi. Ha, biz 0,0161 dyuymli yomg'ir haqida xabar berdik. Takror aytganda, Arduino nuqtai nazaridan

bir marta bosish = 0.0161 dyuym yomg'ir

Eslatma 1: Men Xalqaro birliklar tizimini afzal ko'raman, lekin Weather Underground Imperial/US birliklarini afzal ko'radi va shuning uchun dyuymga aylanadi.

2 -eslatma: Agar hisob -kitoblar sizning chashka choyingiz bo'lmasa, bu masalada mukammal yordam beradigan "Yomg'ir miqdori" bo'limiga o'ting.

2 -qadam: Ushbu loyihaning qismlari

Ushbu loyiha qismlari
Ushbu loyiha qismlari
Ushbu loyiha qismlari
Ushbu loyiha qismlari
Ushbu loyiha qismlari
Ushbu loyiha qismlari

Aksariyat qismlar yotar edi va adolatli ro'yxat (rasmiyatchilik uchun)

  1. Arduino Uno (yoki boshqa mos keladigan)
  2. Yomg'ir o'lchagich eski shikastlangan ob -havo stantsiyasidan.
  3. Non paneli.
  4. Yomg'ir o'lchagichimni non paneliga ulash uchun RJ11.
  5. 10K yoki undan yuqori qarshilik tortishish qarshiligi vazifasini bajaradi. Men 15K dan foydalanganman.
  6. Erkak-ayol 2 ta o'tish simlari
  7. Erkak-erkak 2 ta o'tish kabeli.
  8. USB kabeli; Erkakdan B erkakgacha

Asboblar:

Shprits (12 ml hajmda ishlatilgan)

3 -qadam: Yomg'ir yig'uvchi

Yomg'ir yig'uvchi
Yomg'ir yig'uvchi
Yomg'ir yig'uvchi
Yomg'ir yig'uvchi

Mening yomg'ir yig'uvchimning fotosuratlari ko'pchilikka tushunarli bo'lishi kerak. Qanday bo'lmasin, uning yig'ish joyiga tushgan yomg'ir uning ichidagi ikkita chelakdan biriga o'tadi. Ikkita paqir arra kabi bog'langan va yomg'ir suvining og'irligi (men uchun 0,0161 dyuymli yomg'ir) bir chelakdan pastga tushganda, boshqa chelaklar yuqoriga ko'tarilib, keyingi yomg'ir suvini yig'ish uchun joylashadi. Burilish harakati magnitni "magnit-kalit" ustidan siljitadi va zanjir elektrga ulanadi.

4 -qadam: O'chirish

O'chirish
O'chirish

O'chirish uchun

  1. Arduino raqamli 2 -sonli pinni rezistorning bir uchiga ulang.
  2. Rezistorning ikkinchi uchini Ground piniga (GND) ulang.
  3. RJ11 uyasining bir uchini Arduino raqamli 2 -raqamli piniga ulang.
  4. RJ11 uyasining boshqa uchini +5V Arduino piniga (5V) ulang.
  5. Yomg'ir o'lchagichni RJ11 ga ulang.

O'chirish tugallandi. Jumper simlari va non paneli ulanishni osonlashtiradi.

Loyihani yakunlash uchun Arduino -ni USB kabeli yordamida kompyuterga ulang va quyida keltirilgan eskizni yuklang.

5 -qadam: Kod

RainGauge.ino eskizi (bu qadamning oxirida joylashtirilgan) yaxshi izohlangan, shuning uchun men faqat uchta bo'limni ko'rsataman.

Bir qismi paqir uchlari sonini hisoblab chiqadi.

agar (bucketPositionA == false && digitalRead (RainPin) == YUQORI) {

… … }

Boshqa qismi vaqtni tekshiradi va yomg'ir miqdorini hisoblab chiqadi

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

hourlyRain = kundalikYomg'ir - kundalikRain_till_LastHour; …………

va boshqa qismi yomg'irni kunduzi, yarim tunda tozalaydi.

agar (hozir.soat () == 0) {

kundalik yomg'ir = 0; …..

6 -qadam: Kalibrlash va sinov

Yomg'ir kollektorini sxemaning qolgan qismidan uzing va quyidagi amallarni bajaring.

  1. Shpritsni suv bilan to'ldiring. Men o'zimga 10 ml to'ldiraman.
  2. Yomg'ir kollektorini tekis yuzaga qo'ying va shpritsdagi suvni asta -sekin to'kib tashlang.
  3. Men chelaklarni hisoblab chiqaman. Menga to'rtta maslahat etarli edi va shpritsdan 9 ml to'kib tashladim. Hisob -kitoblarga ko'ra (nazariya bo'limiga qarang) men har uchiga 0,0161 dyuym yomg'ir oldim.
  4. Men bu ma'lumotni boshida o'z kodimga kiritaman.

const double bucketAmount = 0.0161;

Hammasi shu. Aniqroq bo'lish uchun 0.01610595 kabi ko'proq raqamlarni kiritish mumkin. Agar sizning yomg'ir kollektoringiz meniki bilan bir xil bo'lmasa, sizning hisoblangan raqamlaringiz o'zgarishi kutilmoqda.

Sinov maqsadlari uchun

  1. Yomg'ir kollektorini RJ11 uyasiga ulang.
  2. USB kabel yordamida Arduino -ni kompyuterga ulang.
  3. Seriya monitorini oching.
  4. Oldindan o'lchangan suv miqdorini to'kib tashlang va soat tugaganda chiqishini kuzatib boring.
  5. Hech qanday suv quymang, lekin keyingi soat tugashini kuting. Bu holda soatlik yomg'ir nolga teng bo'lishi kerak.
  6. Kompyuterni bir kecha -kunduzda elektr tarmog'iga ulangan holda saqlang va yarim tunda kundalik yomg'ir va soatlik yomg'ir nolga qaytariladimi yoki yo'qligini bilib oling. Ushbu qadam uchun, shuningdek, kompyuter soatini mos keladigan qiymatga o'zgartirish mumkin (ketma -ket monitordagi chiqishlarni to'g'ridan -to'g'ri ko'rish uchun).

7 -qadam: So'nggi fikrlar va minnatdorchilik

Mening holatimda yomg'ir ko'rsatkichlarining o'lchamlari 0,0161 dyuymni tashkil qiladi va uni aniqroq qilib bo'lmaydi. Amaliy holatlar aniqlikni yanada kamaytirishi mumkin. Ob -havo o'lchovlari kvant mexanikasining aniqligiga ega emas.

Kodning bir qismi "Lazy Old Geek's Instructable" dan olingan.

Tavsiya: