La radiació ultraviolada (UV) és una forma de radiació electromagnètica amb una longitud d'ona de 200 nm a 370 nm, més curta que la de la llum visible.
L'índex UV és un sistema estàndard que serveix com a orientació per a determinar el risc potencial de la radiació UV per a la salut. En la guia pràctica sobre l'índex UV de l'Organització Mundial de la Salut s'explica els riscos per a la salut de la radiació ultraviolada i es proposen algunes mesures de protecció en funció de la seva intensitat.
.
Per detectar la intensitat de la radiació ultraviolada utilitzem el sensor GUVA-S12SD. Aquest mòdul retorna un senyal analògic proporcional a la intensitat de la radiació UV rebuda.
El rang de longituds d'ona que mesura se situa entre 240 nm i 380 nm.
PAUTES DE CONNEXIÓ
El GUVA-S12SD és un sensor analògic. Per tant el pin S del sensor s'ha de connectar a una entrada analògica de l'ESP32.
L'exemple utilitza el pin 34.
PAUTES DE PROGRAMACIÓ
Recuperació dels valors
Com que el GUVA-S12SD és un sensor analògic i en segons quines condicions serà difícil recuperar valors UV, proposo començar utilitzant un potenciòmetre per definir l'estructura del programa de recuperació de valors.
A més, proposo també definir la resolució ADC a 10 bits per obtenir valors entre 0 i 1023, que faciliarà la comparació amb les taules de referència (per Arduino) per obtenir l'índex UV corresponent.
Obtenció de l'índex UV
La tensió de sortida del sensor és proporcional a la intensitat de la llum UV. Caldrà calcular doncs la tensió corresponent al senyal analògic.
El gràfic i la taula de referència mostren la relació entre la tensió (en mV) i l'índex UV corresponent.
Integració en programes complexos
Per integrar aquest sensor en un programa complex amb més sensors i/o comportaments val la pena definir la recuperació de les seves lectures en una funció i definir les variables com globals perquè puguin ser reconegudes fora d'aquesta funció.
Desem el programa de recuperació de valors dins el dispositiu microPython, amb el nom uv.py