Sisukord:

UltraV: kaasaskantav UV-indeksi mõõtja: 10 sammu (piltidega)
UltraV: kaasaskantav UV-indeksi mõõtja: 10 sammu (piltidega)

Video: UltraV: kaasaskantav UV-indeksi mõõtja: 10 sammu (piltidega)

Video: UltraV: kaasaskantav UV-indeksi mõõtja: 10 sammu (piltidega)
Video: ВОПРОС-ОТВЕТ SPF: ЧТО ВЫБРАТЬ, ОПАСНЫЕ ФИЛЬТРЫ, UV-ИНДЕКС, ВИТАМИН D, САНСКРИН ЗИМОЙ и т.д. 2024, November
Anonim
UltraV: kaasaskantav UV-indeksi mõõtja
UltraV: kaasaskantav UV-indeksi mõõtja

Kuna ma ei saanud end dermatoloogilise probleemi tõttu päikese kätte jätta, kasutasin ma rannas veedetud aega ultraviolettkiirguse mõõturi ehitamiseks. UltraV.

See on ehitatud Arduino Nano rev3 -le, millel on UV -andur, DC/DC muundur 3v aku pinge tõstmiseks ja väike OLED -ekraan. Minu peamine eesmärk oli hoida seda kaasaskantav, et saaksin hõlpsalt teada UV-indeksit igal hetkel ja igas kohas.

Samm: osad ja komponendid

  • Mikrokontroller Arduino Nano rev.3
  • ML8511 UV -andur
  • 128 × 64 OLED -diplay (SSD1306)
  • MT3608 DC-DC suurendamine
  • CR2 aku
  • CR2 akuhoidik
  • lüliti
  • korpuse ümbris

2. samm: andur

Andur
Andur
Andur
Andur

ML8511 (Lapis Semiconductors) on UV -andur, mis sobib UV -intensiivsuse saamiseks siseruumides või väljas. ML8511 on varustatud sisemise võimendiga, mis muudab fotovoolu pingeks sõltuvalt UV-intensiivsusest. See ainulaadne funktsioon pakub lihtsat liidest välistele ahelatele nagu ADC. Väljalülitusrežiimis on tüüpiline ootevool 0,1 µA, mis võimaldab pikemat aku kasutusaega.

Funktsioonid:

  • Fotodiood, mis on tundlik UV-A ja UV-B suhtes
  • Sisseehitatud operatsioonivõimendi
  • Analoogpinge väljund
  • Madal toitevool (300 µA tüüpiline) ja madal ooterežiimi vool (tüüpiline 0,1 µA)
  • Väike ja õhuke pinnakinnituspakett (4,0 mm x 3,7 mm x 0,73 mm, 12-kontaktiline keraamiline QFN)

Kahjuks ei olnud mul võimalust leida ühtegi UV-läbipaistvat materjali anduri kaitsmiseks. Igasugune läbipaistev kate, mida ma testisin (plastik, klaas jne), nõrgendas UV -mõõtmist. Parem valik tundub olevat kvartsist sulatatud ränidioksiidklaas, kuid ma pole seda mõistliku hinnaga leidnud, seega otsustasin anduri jätta väljaspool kasti, vabas õhus.

3. samm: toimingud

Operatsioonid
Operatsioonid

Mõõtmiseks lülitage seade lihtsalt sisse ja suunake see mitmeks sekundiks päikese poole, hoides seda päikese kiirte suunaga joondatuna. Seejärel vaadake ekraanilt: vasakpoolses indeksis kuvatakse alati hetkeline mõõt (üks iga 200 ms), samal ajal kui paremal olev näitaja on selle seansi jooksul saadud maksimaalne näit: see on see, mida vajate.

Ekraani vasakus alanurgas on ka WHO samaväärne nomenklatuur (LOW, MODERATE, HIGH, VERY HIGH, EXTREME) mõõdetud UV-indeksi jaoks.

4. samm: aku pinge ja näit

Ma valin CR2 aku selle suuruse ja mahutavuse (800 mAh) järgi. Kasutasin suve jooksul UltraV -d ja aku näitab endiselt 2,8 v, seega olen valikuga üsna rahul. Töötamisel voolab vooluahel umbes 100 mA, kuid näidu mõõtmine ei kesta kauem kui paar sekundit. Kuna aku nimipinge on 3v, lisasin pingele kuni 9 volti DC-DC suurendusmuunduri ja ühendasin selle Viini tihvtiga.

Aku pinge näitamiseks ekraanil kasutasin analoogsisendit (A2). Arduino analoogsisendeid saab kasutada alalispinge mõõtmiseks vahemikus 0 kuni 5 V, kuid see tehnika nõuab kalibreerimist. Kalibreerimiseks vajate multimeetrit. Esmalt lülitage vooluahel sisse oma viimase akuga (CR2) ja ärge kasutage arvuti USB -toiteallikat; mõõta Arduino 5V regulaatorist (leitud Arduino 5V tihvtilt): seda pinget kasutatakse vaikimisi Arduino ADC võrdluspinge jaoks. Nüüd pange mõõdetud väärtus visandisse järgmiselt (oletan, et lugesin 5.023):

pinge = ((pikk) summa / (pikk) NUM_SAMPLES * 5023) / 1024,0;

Visandis võtan pinge mõõtmise keskmiselt üle 10 proovi.

Samm: skeem ja ühendused

Skeem ja ühendused
Skeem ja ühendused

6. samm: tarkvara

Ekraani jaoks kasutasin U8g2lib, mis on seda tüüpi OLED -ekraanide jaoks väga paindlik ja võimas, võimaldades laia valikut fonte ja häid positsioneerimisfunktsioone.

Mis puutub ML8511 pinge lugemisse, siis kasutasin ADC muunduri alusena 3.3v Arduino võrdlusnõela (täpne 1%piires). Niisiis, tehes analoog-digitaalmuundamise 3,3 V kontaktile (ühendades selle A1-ga) ja seejärel võrdledes seda näitu anduri näituga, saame ekstrapoleerida tõepärase näidu, olenemata sellest, milline on VIN-kood (kui see on üle 3,4 V).

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

Laadige täielik kood alla järgmiselt lingilt.

7. samm: korpuse ümbris

Korpuse ümbris
Korpuse ümbris

Pärast mitmeid (halbu) katseid ristkülikukujulise ekraaniakna käsitsi lõikamisel kaubanduslikul plastkarbil otsustasin selle jaoks oma kujundada. Niisiis, CAD -rakenduse abil kujundasin ma karbi ja et see oleks võimalikult väike, paigaldasin CR2 aku väljastpoolt tagaküljele (karbi enda külge liimitud akuhoidjaga).

Laadige korpuse korpuse STL -fail alla järgmiselt lingilt.

8. samm: võimalikud edasised parandused

  • Kasutage UV-spektromeetrit, et mõõta tegelikke reaalajas UV-indeksi väärtusi erinevates tingimustes (UV-spektromeetrid on väga kallid);
  • Salvestage samaaegselt ML8511 väljund Arduino mikrokontrolleriga;
  • Kirjutage algoritm, et seostada ML8511 väljund tegeliku UVI väärtusega reaalajas laias atmosfääritingimustes.

9. samm: pildigalerii

Pildigalerii
Pildigalerii
Pildigalerii
Pildigalerii
Pildigalerii
Pildigalerii

10. samm: krediidid

  • Carlos Orts:
  • Arduino foorum:
  • Elektroonika käivitamine:
  • U8g2lib:
  • Maailma Terviseorganisatsioon, UV -indeks:

Soovitan: