UltraV: portativ UV indeksli o'lchagich: 10 qadam (rasmlar bilan)
UltraV: portativ UV indeksli o'lchagich: 10 qadam (rasmlar bilan)
Anonim
UltraV: portativ UV indeksli o'lchagich
UltraV: portativ UV indeksli o'lchagich

Dermatologik muammo tufayli o'zimni quyoshga qo'yib bera olmaganim uchun, plyajda o'tkazgan vaqtimni ultrabinafsha nurlar o'lchagichini qurishga sarfladim. UltraV.

U Arduino Nano rev3, UV sensori, 3V batareya zo'riqishini oshirish uchun DC/DC konvertori va kichik OLED -displey bilan qurilgan. Mening asosiy maqsadim-uni portativ holda saqlash edi, shunda UV-indeksini istalgan vaqtda va istalgan joyda osongina bilishim mumkin edi.

1 -qadam: qismlar va komponentlar

  • Mikro nazoratchi Arduino Nano rev.3
  • UV sensori ML8511
  • 128 × 64 OLED diplay (SSD1306)
  • MT3608 DC-DC kuchaytirgichi
  • CR2 batareyasi
  • CR2 batareya ushlagichi
  • almashtirish
  • korpus

2 -qadam: Sensor

Sensor
Sensor
Sensor
Sensor

ML8511 (Lapis Semiconductors) - bu ultrabinafsha datchigi, u ichki va tashqi muhitda ultrabinafsha nurlanishini olish uchun javob beradi. ML8511 ichki kuchaytirgich bilan jihozlangan, u ultrabinafsha nurlanish intensivligiga qarab foto-tokni kuchlanishga aylantiradi. Bu noyob xususiyat ADC kabi tashqi davralarga oson interfeysni taklif qiladi. Quvvatni o'chirish rejimida odatdagi kutish oqimi 0,1 mA ni tashkil etadi, bu batareyaning ishlash muddatini uzaytiradi.

Xususiyatlari:

  • UV-A va UV-B nurlariga sezgir fotodiod
  • O'rnatilgan operatsion kuchaytirgich
  • Analog kuchlanish chiqishi
  • Kam ta'minlangan oqim (300 mkA tipidagi) va past kutish oqimi (0,1 mA tipidagi)
  • Kichik va ingichka sirtga o'rnatish to'plami (4,0 mm x 3,7 mm x 0,73 mm, 12-pinli seramika QFN)

Afsuski, men sensorni himoya qilish uchun ultrabinafsha nurli materialni topishga imkonim bo'lmadi. Men sinovdan o'tkazgan har qanday shaffof qopqoq (plastik, shisha va boshqalar) UV o'lchovini susaytirardi. Eng yaxshi tanlov - bu kvartsli eritilgan silika oynasi, lekin men uni arzon narxda topmadim, shuning uchun men sensorni qutidan tashqarida, ochiq havoda qoldirishga qaror qildim.

3 -qadam: operatsiyalar

Operatsiyalar
Operatsiyalar

O'lchovni o'lchash uchun qurilmani yoqing va uni quyosh nuri yo'nalishi bo'yicha bir necha soniya davomida quyoshga yo'naltiring. Keyin displeyga qarang: chapdagi indeks har doim tezkor o'lchovni ko'rsatadi (har biri 200 ms), o'ngdagi o'qish - bu sessiya davomida olingan maksimal ko'rsatkich: bu sizga kerak.

Displeyning pastki chap qismida, shuningdek, JSSTning ultrabinafsha indeksining ekvivalent nomenklaturasi (LOW, MODERATE, HIGH, VERY HIGH, EXTREME) ko'rsatilgan.

4 -qadam: Batareya quvvati va o'qish

Men CR2 batareyasini tanlayman, uning hajmi va sig'imi (800 mA / soat). Men UltraV -ni yoz davomida ishlatardim va batareya hali ham 2,8 v o'qiydi, shuning uchun men tanlovdan juda mamnunman. Ishlayotganda, kontaktlarning zanglashiga 100 mA tushadi, lekin o'qish o'lchami bir necha soniyadan oshmaydi. Batareyaning nominal zo'riqishi 3v bo'lgani uchun, men kuchlanishni 9 voltgacha etkazish uchun DC-DC zaryadlovchi konvertorini qo'shdim va uni Vin piniga uladim.

Displeyda batareya zo'riqishining ko'rsatkichi bo'lishi uchun men analog kirishni (A2) ishlatardim. Arduino analogli kirishlari 0 dan 5V gacha bo'lgan shahar kuchlanishini o'lchash uchun ishlatilishi mumkin, ammo bu usul kalibrlashni talab qiladi. Kalibrlashni amalga oshirish uchun sizga multimetr kerak bo'ladi. Avval elektronni oxirgi batareyangiz bilan (CR2) quvvatlantiring va kompyuterdan USB quvvatini ishlatmang; regulyatordan Arduino -dagi 5Vni o'lchang (Arduino 5V pinida joylashgan): bu kuchlanish sukut bo'yicha Arduino ADC mos yozuvlar kuchlanish uchun ishlatiladi. Endi o'lchov qiymatini eskizga quyidagicha qo'ying (men 5.023 ni o'qigan deb o'ylayman):

kuchlanish = ((uzun) sum / / uzun) NUM_SAMPLES * 5023) / 1024,0;

Eskizda men kuchlanish o'lchovini o'rtacha 10 ta namunadan olaman.

5 -qadam: sxemalar va ulanishlar

Sxemalar va ulanishlar
Sxemalar va ulanishlar

6 -qadam: dasturiy ta'minot

Displey uchun men U8g2lib -dan foydalandim, u shu turdagi OLED -displeylar uchun juda moslashuvchan va kuchli bo'lib, shriftlarning keng tanlovini va joylashishni aniqlashning yaxshi funktsiyalarini beradi.

ML8511 -dan kuchlanish ko'rsatkichiga kelsak, men ADC konvertori uchun asos sifatida 3.3v Arduino mos yozuvlar pinini (1%ichida aniq) ishlatardim. Shunday qilib, 3.3V pinli raqamli konvertatsiyani analog qilib (A1 ga ulab) va keyin bu o'qishni sensordan o'qish bilan solishtirib, VIN nima bo'lishidan qat'i nazar, haqiqiy o'qishni ekstrapolyatsiya qilishimiz mumkin. 3.4V dan yuqori ekan).

int uvLevel = o'rtachaAnalogRead (UVOUT); int refLevel = o'rtachaAnalogRead (REF_3V3); float outputVoltage = 3.3 / refLevel * uvLevel;

To'liq kodni quyidagi havoladan yuklab oling.

7 -qadam: Qoplama qutisi

Qoplama qutisi
Qoplama qutisi

Tijorat plastik qutidagi to'rtburchaklar displey oynasini qo'lda kesish bo'yicha bir nechta (yomon) sinovlardan so'ng, men o'zim uchun dizayn yaratishga qaror qildim. Shunday qilib, SAPR ilovasi yordamida men qutini loyihalashtirdim va uni iloji boricha kichikroq qilib qo'yish uchun CR2 batareyasini tashqi tomondan orqa tomonga o'rnatdim (akkumulyator ushlagichi qutiga yopishtirilgan).

Qopqoq qutisi uchun STL faylini quyidagi havoladan yuklab oling.

8 -qadam: Mumkin bo'lgan kelajakdagi yaxshilanishlar

  • UV-spektrometridan foydalanib, har xil sharoitda UV-indeksining haqiqiy qiymatini o'lchash mumkin (UV spektrometrlari juda qimmat);
  • Bir vaqtning o'zida Arduino mikrokontroller bilan ML8511 chiqishini yozib olish;
  • ML8511 chiqishini atmosfera sharoitlarining keng diapazonida real vaqtda UVI qiymatiga bog'lash uchun algoritm yozing.

9 -qadam: Rasm galereyasi

Rasm galereyasi
Rasm galereyasi
Rasm galereyasi
Rasm galereyasi
Rasm galereyasi
Rasm galereyasi

10 -qadam: kreditlar

  • Karlos Orts:
  • Arduino forumi:
  • Elektronikani ishga tushirish:
  • U8g2lib:
  • Jahon sog'liqni saqlash tashkiloti, UV indeksi:

Tavsiya: