Sommario:
- Passaggio 1: parti e componenti
- Passaggio 2: il sensore
- Passaggio 3: operazioni
- Passaggio 4: tensione e lettura della batteria
- Passaggio 5: schema e collegamenti
- Passaggio 6: software
- Passaggio 7: custodia
- Passaggio 8: possibili miglioramenti futuri
- Passaggio 9: Galleria di immagini
- Passaggio 10: crediti
Video: UltraV: un misuratore di indice UV portatile: 10 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:03
Non potendo espormi al sole a causa di un problema dermatologico, ho sfruttato il tempo che avrei passato in spiaggia per costruire un misuratore di raggi ultravioletti. UltraV.
È costruito su un Arduino Nano rev3, con un sensore UV, un convertitore DC/DC per aumentare la tensione della batteria a 3v e un piccolo display OLED. Il mio obiettivo principale era mantenerlo portatile, in modo da poter conoscere facilmente l'indice UV in qualsiasi momento e in qualsiasi luogo.
Passaggio 1: parti e componenti
- Microcontrollore Arduino Nano rev.3
- Sensore UV ML8511
- Schermo OLED 128×64 (SSD1306)
- MT3608 DC-DC step-up
- Batteria CR2
- Portabatterie CR2
- interruttore
- custodia
Passaggio 2: il sensore
L'ML8511 (Lapis Semiconductors) è un sensore UV, adatto per acquisire l'intensità UV all'interno o all'esterno. L'ML8511 è dotato di un amplificatore interno, che converte la fotocorrente in tensione a seconda dell'intensità UV. Questa caratteristica unica offre un'interfaccia semplice ai circuiti esterni come l'ADC. In modalità di spegnimento, la corrente di standby tipica è 0,1 µA, consentendo così una maggiore durata della batteria.
Caratteristiche:
- Fotodiodo sensibile a UV-A e UV-B
- Amplificatore operazionale integrato
- Uscita analogica in tensione
- Bassa corrente di alimentazione (300µA tipica) e bassa corrente di standby (0,1µA tipica)
- Pacchetto di montaggio superficiale piccolo e sottile (4,0 mm x 3,7 mm x 0,73 mm, QFN in ceramica a 12 pin)
Sfortunatamente, non ho avuto la possibilità di trovare alcun materiale trasparente ai raggi UV per proteggere il sensore. Qualsiasi tipo di copertura trasparente che ho testato (plastica, vetro, ecc.) stava attenuando la misurazione dei raggi UV. La scelta migliore sembra essere il vetro di silice fuso al quarzo, ma non ne ho trovato a un prezzo ragionevole, quindi ho deciso di lasciare il sensore fuori dagli schemi, all'aria aperta.
Passaggio 3: operazioni
Per prendere una misura è sufficiente accendere il dispositivo e puntarlo verso il sole per alcuni secondi, mantenendolo allineato con la direzione dei raggi solari. Poi guarda il display: l'indice a sinistra mostra sempre la misura istantanea (una ogni 200 ms), mentre la lettura a destra è la lettura massima presa durante questa sessione: è quella che ti serve.
Nella parte inferiore sinistra del display è riportata anche la nomenclatura WHO equivalente (LOW, MODERATE, HIGH, VERY HIGH, EXTREME) per l'indice UV misurato.
Passaggio 4: tensione e lettura della batteria
Scelgo una batteria CR2, per le sue dimensioni e capacità (800 mAh). Ho usato UltraV per tutta l'estate e la batteria legge ancora 2,8 v, quindi sono abbastanza soddisfatto della scelta. Quando funziona, il circuito scarica circa 100 mA, ma una misurazione di lettura non richiede più di pochi secondi. Poiché la tensione nominale della batteria è 3v, ho aggiunto un convertitore step-up DC-DC per portare la tensione fino a 9 volt e l'ho collegato al pin Vin.
Per avere l'indicazione della tensione della batteria sul display ho utilizzato un ingresso analogico (A2). Gli ingressi analogici Arduino possono essere utilizzati per misurare la tensione CC tra 0 e 5V, ma questa tecnica richiede una calibrazione. Per eseguire la calibrazione, avrai bisogno di un multimetro. Prima alimenta il circuito con la tua batteria finale (il CR2) e non utilizzare l'alimentazione USB dal computer; misurare i 5V su Arduino dal regolatore (che si trova sul pin Arduino 5V): questa tensione viene utilizzata di default per la tensione di riferimento ADC Arduino. Ora inserisci il valore misurato nello schizzo come segue (supponiamo che io legga 5.023):
tensione = ((long)sum / (long)NUM_SAMPLES * 5023) / 1024.0;
Nello schizzo, sto prendendo la misurazione della tensione come media su 10 campioni.
Passaggio 5: schema e collegamenti
Passaggio 6: software
Per il display ho utilizzato l'U8g2lib che è molto flessibile e potente per questo tipo di display OLED, permettendo un'ampia scelta di font e buone funzioni di posizionamento.
Per quanto riguarda la lettura della tensione dall'ML8511, ho usato il pin di riferimento Arduino 3.3v (preciso entro l'1%) come base per il convertitore ADC. Quindi, eseguendo una conversione da analogico a digitale sul pin 3.3V (collegandolo ad A1) e quindi confrontando questa lettura con la lettura del sensore, possiamo estrapolare una lettura realistica, indipendentemente dal VIN (purché sia superiore a 3,4 V).
int uvLevel = mediaAnalogRead(UVOUT);int refLevel = mediaAnalogRead(REF_3V3);float outputVoltage = 3.3 / refLevel * uvLevel;
Scarica il codice completo dal seguente link.
Passaggio 7: custodia
Dopo diversi (brutti) test sul taglio manuale della finestra di visualizzazione rettangolare su una scatola di plastica commerciale, ho deciso di progettarne una mia. Quindi, con un'applicazione CAD ho disegnato una scatola e per mantenerla il più piccola possibile, ho montato la batteria CR2 esternamente sul lato posteriore (con un portabatteria incollato sulla scatola stessa).
Scarica il file STL per la custodia del contenitore, dal seguente link.
Passaggio 8: possibili miglioramenti futuri
- Utilizzare uno spettrometro UV per misurare i valori effettivi dell'indice UV in tempo reale in varie condizioni (gli spettrometri UV sono molto costosi);
- Registra simultaneamente l'output dall'ML8511 con il microcontrollore Arduino;
- Scrivere un algoritmo per mettere in relazione l'output ML8511 con il valore UVI effettivo in tempo reale in un'ampia gamma di condizioni atmosferiche.
Passaggio 9: Galleria di immagini
Passaggio 10: crediti
- Carlos Orts:
- Forum Arduino:
- Elettronica di avviamento:
- U8g2lib:
- Organizzazione Mondiale della Sanità, Indice UV:
Consigliato:
Misuratore di portata portatile: 10 passaggi
Misuratore di distanza portatile: Kyle Scott04/11/2020In questo tutorial ti mostrerò come realizzare un misuratore di distanza portatile
Misuratore dell'indice UV utilizzando il sensore ULTRAVIOLET ML8511 Arduino: 6 passaggi
Misuratore di indice UV utilizzando il sensore ULTRAVIOLET ML8511 Arduino: In questo tutorial impareremo come misurare l'indice UV del sole utilizzando il sensore ULTRAVIOLET ML8511.Guarda il video! https://www.youtube.com/watch?v=i32L4nxU7_M
Feed indice UV EPA / IOT: 4 passaggi (con immagini)
Feed indice UV EPA / IOT: questo piccolo dispositivo estrae il tuo indice UV locale dall'EPA e visualizza il livello UV in 5 colori diversi e visualizza anche i dettagli sull'OLED. UV 1-2 è verde, 3-5 è giallo, 6-7 è arancione, 8-10 è rosso, 11+ è viola
Realizza un misuratore di altezza digitale portatile. Made in TechShop Detroit.: 3 passaggi (con immagini)
Realizza un misuratore di altezza digitale portatile. Made in TechShop Detroit.: Background: Al giorno d'oggi, i calibri digitali sono molto economici e fanno parte degli strumenti quotidiani dei produttori durante la progettazione delle cose. È anche molto portatile. Occasionalmente, avremmo bisogno di usare un misuratore di altezza digitale. Di recente ho creato 2 par emisferici
Supporto/dispositivo di raffreddamento portatile semplice, economico e portatile: 9 passaggi (con immagini)
Supporto / dispositivo di raffreddamento portatile semplice, economico e portatile: questo è un progetto super facile e a basso costo che chiunque può fare. Questo supporto / dispositivo di raffreddamento per laptop può essere realizzato per qualsiasi dimensione o laptop di qualsiasi marca (ho realizzato il mio per un MacBook da 13,3 pollici)