Съдържание:

UltraV: преносим UV-индекс метър: 10 стъпки (със снимки)
UltraV: преносим UV-индекс метър: 10 стъпки (със снимки)

Видео: UltraV: преносим UV-индекс метър: 10 стъпки (със снимки)

Видео: UltraV: преносим UV-индекс метър: 10 стъпки (със снимки)
Видео: ☀️ Защита от солнца: фотостарение, УФ-индекс, типы лучей и фильтров 2024, Юли
Anonim
UltraV: Преносим UV-индекс
UltraV: Преносим UV-индекс

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

Той е изграден върху Arduino Nano rev3, с UV сензор, DC/DC преобразувател за повишаване на напрежението на 3v батерията и малък OLED дисплей. Основната ми цел беше да го поддържам преносим, за да мога лесно да знам UV-индекса във всеки момент и на всяко място.

Стъпка 1: Части и компоненти

  • Микроконтролер Arduino Nano rev.3
  • ML8511 UV сензор
  • 128 × 64 OLED diplay (SSD1306)
  • MT3608 DC-DC увеличаване
  • CR2 батерия
  • Поставка за батерии CR2
  • превключвател
  • кутия за заграждение

Стъпка 2: Сензорът

Сензорът
Сензорът
Сензорът
Сензорът

ML8511 (Lapis Semiconductors) е UV сензор, който е подходящ за придобиване на UV интензивност на закрито или на открито. ML8511 е оборудван с вътрешен усилвател, който преобразува фототока в напрежение в зависимост от UV интензитета. Тази уникална функция предлага лесен интерфейс към външни схеми като ADC. В режим на изключване, типичният ток в режим на готовност е 0,1 µA, което позволява по -дълъг живот на батерията.

Характеристика:

  • Фотодиод, чувствителен към UV-A и UV-B
  • Вграден операционен усилвател
  • Изход за аналогово напрежение
  • Нисък захранващ ток (300 µA тип.) И нисък ток в режим на готовност (0,1 µA тип.)
  • Пакет с малък и тънък повърхностен монтаж (4,0 мм х 3,7 мм х 0,73 мм, 12-пинов керамичен QFN)

За съжаление нямах възможност да намеря UV-прозрачен материал за защита на сензора. Всеки вид прозрачен капак, който тествах (пластмаса, стъкло и т.н.), намаляваше измерването на UV лъчите. Изглежда, че по -добрият избор е кварцово стопено силициево стъкло, но не намерих такова на разумна цена, затова реших да оставя сензора извън кутията, на открито.

Стъпка 3: Операции

Операции
Операции

За да вземете мярка, просто включете устройството и го насочете към слънцето за няколко секунди, като го държите в съответствие с посоката на слънчевите лъчи. След това гледайте на дисплея: индексът вляво винаги показва моменталната мярка (по една на всеки 200 ms), докато показанието вдясно е максималното отчитане, взето по време на тази сесия: това е това, от което се нуждаете.

В долната лява част на дисплея се отчита също еквивалентната номенклатура на СЗО (НИСКА, УМЕРЕНА, ВИСОКА, МНОГО ВИСОКА, ЕКСТРЕМНА) за измерения UV-индекс.

Стъпка 4: Напрежение на батерията и отчитане

Избирам батерия CR2, за нейния размер и капацитет (800 mAh). Използвах UltraV през лятото и батерията все още чете 2.8 v, така че съм доста доволен от избора. Когато работи, веригата източва около 100 mA, но измерването на отчитане не отнема повече от няколко секунди. Тъй като номиналното напрежение на батерията е 3v, добавих DC-DC усилващ преобразувател, за да повиша напрежението до 9 волта и го свързах към щифта Vin.

За да има индикация за напрежението на батерията на дисплея, използвах аналогов вход (A2). Аналоговите входове на Arduino могат да се използват за измерване на DC напрежение между 0 и 5V, но тази техника изисква калибриране. За да извършите калибрирането, ще ви е необходим мултицет. Първо захранвайте веригата с последната си батерия (CR2) и не използвайте USB захранването от компютъра; измерете 5V на Arduino от регулатора (намерено на 5V щифта на Arduino): това напрежение се използва за референтното напрежение на Arduino ADC по подразбиране. Сега поставете измерената стойност в скицата, както следва (да предположим, че прочетох 5.023):

напрежение = ((дълга) сума / (дълга) NUM_SAMPLES * 5023) / 1024,0;

В скицата вземам измерването на напрежението като средно над 10 проби.

Стъпка 5: Схеми и връзки

Схеми и връзки
Схеми и връзки

Стъпка 6: Софтуер

За дисплея използвах U8g2lib, който е много гъвкав и мощен за този вид OLED дисплеи, позволяващ богат избор от шрифтове и добри функции за позициониране.

Що се отнася до отчитането на напрежението от ML8511, използвах референтния щифт 3.3V Arduino (с точност до 1%) като основа за ADC конвертора. Така че, като правим аналогово-цифрово преобразуване на 3.3V щифт (като го свържем към A1) и след това сравняваме това отчитане с показанията от сензора, можем да екстраполираме истинско отчитане, без значение какъв е VIN (стига да е над 3.4V).

int uvLevel = averageAnalogRead (UVOUT); int refLevel = averageAnalogRead (REF_3V3); float outputVoltage = 3.3 / refLevel * uvLevel;

Изтеглете пълния код от следната връзка.

Стъпка 7: Калъф за заграждение

Калъф за заграждение
Калъф за заграждение

След няколко (лоши) теста за ръчно изрязване на правоъгълния прозорец на дисплея върху търговска пластмасова кутия, реших да проектирам свой собствен за него. Така че с CAD приложение проектирах кутия и за да я поддържам възможно най -малка, монтирах CR2 батерията външно на задната страна (със държач на батерията, залепен върху самата кутия).

Изтеглете STL файла за кутията на кутията от следната връзка.

Стъпка 8: Възможни бъдещи подобрения

  • Използвайте UV спектрометър за измерване на действителните стойности на UV-индекса в реално време при различни условия (UV спектрометрите са много скъпи);
  • Едновременно запис на изход от ML8511 с микроконтролера Arduino;
  • Напишете алгоритъм за свързване на изхода ML8511 с действителната стойност на UVI в реално време при широк диапазон от атмосферни условия.

Стъпка 9: Галерия с изображения

Галерия с изображения
Галерия с изображения
Галерия с изображения
Галерия с изображения
Галерия с изображения
Галерия с изображения

Стъпка 10: Кредити

  • Карлос Ортс:
  • Форум на Arduino:
  • Стартиране на електрониката:
  • U8g2lib:
  • Световна здравна организация, UV индекс:

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