Inhoudsopgave:

UltraV: een draagbare UV-indexmeter - Ajarnpa
UltraV: een draagbare UV-indexmeter - Ajarnpa

Video: UltraV: een draagbare UV-indexmeter - Ajarnpa

Video: UltraV: een draagbare UV-indexmeter - Ajarnpa
Video: *UV EXPERIMENT* | DAY 1| UV INDEX 11.44 TODAY 2024, Juli-
Anonim
UltraV: een draagbare UV-indexmeter
UltraV: een draagbare UV-indexmeter

Omdat ik door een dermatologisch probleem mezelf niet aan de zon kon blootstellen, gebruikte ik de tijd die ik op het strand zou hebben doorgebracht om een ultraviolette stralingsmeter te bouwen. UltraV.

Het is gebouwd op een Arduino Nano rev3, met een UV-sensor, een DC/DC-converter om de 3v-batterijspanning te verhogen en een klein OLED-display. Mijn belangrijkste doel was om het draagbaar te houden, zodat ik op elk moment en op elke plaats gemakkelijk de UV-index kon kennen.

Stap 1: Onderdelen en componenten

  • Microcontroller Arduino Nano rev.3
  • ML8511 UV-sensor
  • 128×64 OLED-display (SSD1306)
  • MT3608 DC-DC step-up
  • CR2-batterij
  • CR2 batterijhouder
  • schakelaar
  • behuizing behuizing

Stap 2: De sensor

De sensor
De sensor
De sensor
De sensor

De ML8511 (Lapis Semiconductors) is een UV-sensor, die geschikt is voor het meten van UV-intensiteit binnen of buiten. De ML8511 is uitgerust met een interne versterker, die fotostroom omzet in spanning afhankelijk van de UV-intensiteit. Deze unieke functie biedt een gemakkelijke interface naar externe circuits zoals ADC. In de uitschakelmodus is de typische stand-bystroom 0,1 µA, wat een langere levensduur van de batterij mogelijk maakt.

Functies:

  • Fotodiode gevoelig voor UV-A en UV-B
  • Ingebouwde operationele versterker
  • Analoge spanningsuitgang:
  • Lage voedingsstroom (300 µA typ.) en lage stand-by stroom (0,1 µA typ.)
  • Klein en dun pakket voor opbouwmontage (4,0 mm x 3,7 mm x 0,73 mm, 12-pins keramische QFN)

Helaas heb ik geen UV-transparant materiaal kunnen vinden om de sensor te beschermen. Elke soort transparante hoes die ik heb getest (plastic, glas, enz.) verzwakte de UV-meting. De betere keuze lijkt kwarts-gesmolten silicaglas te zijn, maar ik heb er geen gevonden voor een redelijke prijs, dus besloot ik de sensor buiten de doos te laten, in de open lucht.

Stap 3: Operaties

Activiteiten
Activiteiten

Om een meting te doen, zet u het apparaat aan en richt u het enkele seconden op de zon, waarbij u het in de richting van de zonnestralen houdt. Kijk dan op het display: de index aan de linkerkant toont altijd de instant-maat (één per 200 ms), terwijl de meting aan de rechterkant de maximale meting is die tijdens deze sessie is genomen: dat is degene die je nodig hebt.

In de linkerbenedenhoek van het display wordt ook de WHO-equivalente nomenclatuur (LAAG, GEMIDDELD, HOOG, ZEER HOOG, EXTREEM) voor de gemeten UV-index vermeld.

Stap 4: Batterijspanning en aflezen

Ik kies een CR2-batterij, vanwege zijn grootte en capaciteit (800 mAh). Ik heb de hele zomer UltraV gebruikt en de batterij geeft nog steeds 2,8 v aan, dus ik ben best tevreden met de keuze. Wanneer het in werking is, verbruikt het circuit ongeveer 100 mA, maar een uitleesmeting duurt niet langer dan enkele seconden. Omdat de nominale spanning van de batterij 3v is, heb ik een DC-DC step-up converter toegevoegd om de spanning op 9 volt te brengen en deze op de Vin-pin aangesloten.

Om de indicatie van de accuspanning op het display te krijgen heb ik een analoge ingang (A2) gebruikt. Arduino analoge ingangen kunnen worden gebruikt om gelijkspanning tussen 0 en 5V te meten, maar deze techniek vereist een kalibratie. Om de kalibratie uit te voeren, heeft u een multimeter nodig. Voed eerst het circuit met uw laatste batterij (de CR2) en gebruik niet de USB-stroom van de computer; meet de 5V op de Arduino vanaf de regelaar (te vinden op de Arduino 5V-pin): deze spanning wordt standaard gebruikt voor de Arduino ADC-referentiespanning. Zet nu de gemeten waarde als volgt in de schets (stel ik lees 5.023):

spanning = ((lange) som / (lange) NUM_SAMPLES * 5023) / 1024.0;

In de schets neem ik de spanningsmeting als een gemiddelde over 10 monsters.

Stap 5: Schema en verbindingen

Schema en verbindingen
Schema en verbindingen

Stap 6: Software

Voor de weergave heb ik de U8g2lib gebruikt die zeer flexibel en krachtig is voor dit soort OLED-schermen, waardoor een ruime keuze aan lettertypen en goede positioneringsfuncties mogelijk is.

Wat betreft de spanningsmeting van de ML8511, gebruikte ik de 3.3v Arduino-referentiepin (nauwkeurig binnen 1%) als basis voor de ADC-converter. Dus door een analoog naar digitaal conversie uit te voeren op de 3,3V-pin (door deze aan te sluiten op A1) en deze meting vervolgens te vergelijken met de meting van de sensor, kunnen we een levensechte meting extrapoleren, ongeacht wat VIN is (zolang het boven de 3,4 V is).

int uvLevel = gemiddeldeAnalogRead(UVOUT);int refLevel = gemiddeldeAnalogRead(REF_3V3);float outputVoltage = 3,3 / refLevel * uvLevel;

Download de volledige code via de volgende link.

Stap 7: Behuizing:

Behuizing
Behuizing

Na verschillende (slechte) tests met het handmatig snijden van de rechthoekige etalage op een commerciële plastic doos, besloot ik er mijn eigen voor te ontwerpen. Dus met een CAD-applicatie heb ik een doos ontworpen en om deze zo klein mogelijk te houden, heb ik de CR2-batterij extern aan de achterkant gemonteerd (met een batterijhouder op de doos zelf gelijmd).

Download het STL-bestand voor de behuizing via de volgende link.

Stap 8: Mogelijke toekomstige verbeteringen

  • Gebruik een UV-spectrometer om de werkelijke real-time UV-Index-waarden onder verschillende omstandigheden te meten (UV-spectrometers zijn erg duur);
  • Tegelijkertijd output van de ML8511 opnemen met de Arduino-microcontroller;
  • Schrijf een algoritme om de uitvoer van de ML8511 te relateren aan de werkelijke UVI-waarde in realtime onder een breed scala aan atmosferische omstandigheden.

Stap 9: Afbeeldingengalerij

Afbeeldingengalerij
Afbeeldingengalerij
Afbeeldingengalerij
Afbeeldingengalerij
Afbeeldingengalerij
Afbeeldingengalerij

Stap 10: Tegoeden

  • Carlos Orts:
  • Arduino-forum:
  • Elektronica starten:
  • U8g2lib:
  • Wereldgezondheidsorganisatie, UV-index:

Aanbevolen: