Documente Academic
Documente Profesional
Documente Cultură
intensidad de rayos UV
El sensor UV ML8511 es fácil de usar, el sensor de luz ultravioleta. El sensor MP8511
UV (ultravioleta) funciona al emitir una señal analógica en relación con la cantidad de
luz UV detectada. Esta ruptura puede ser muy útil para crear dispositivos que adviertan
al usuario de quemaduras solares o detecten el índice UV en relación con las
condiciones climáticas.
Este sensor detecta la luz de 280-390 nm con mayor eficacia. Esto se clasifica como
parte del espectro UVB (rayos ardientes) y la mayoría del espectro UVA (rayos
bronceadores). Produce un voltaje analógico que está relacionado linealmente con
la intensidad UV medida (mW / cm2) . Si su microcontrolador puede hacer una
conversión de señal analógica a digital, entonces puede detectar el nivel de UV.
Componentes requeridos:
Placa Arduino Uno
Sensor UV ML8511
Pantalla LCD 16 * 2
Potenciómetro 10K
Tablero de pruebas
Conexión de cables de puente
Diagrama de bloques:
El sensor UV ML8511 tiene fotodiodo sensible a los rayos UV-A y UV-B . Luego tiene
un amplificador operacional interno incorporado que convertirá la fotocorriente a
salida de voltaje dependiendo de la intensidad de la luz UV .
Características UV:
Las características se dibujan entre el voltaje de salida del sensor con respecto a la
intensidad UV (mW / cm²) con un suministro VDD constante. Las curvas en diferentes
colores representan la operación del sensor en diferentes rangos de temperatura.
Diagrama de circuito: Interfaz del sensor UV ML8511 con
Arduino (imagen principal)
El diagrama de circuito para la interfaz del sensor UV ML8511 con Arduino y pantalla
LCD se muestra a continuación. El LCD 16 × 2 RS, EN, D4, D5, D6, D7 está conectado
a Arduino 12, 11, 5, 4, 3, 2 pines. LCD se suministra con 5V. Tiene un potenciómetro
de 10K conectado al pin LCD 3 para ajustar el contraste.
El sensor UV tiene 5 pines Vin, 3V3, GND, OUT, EN . Algunos de los módulos no
tienen pin Vin, que tampoco se usa. El pin EN y el pin 3V3 están conectados al pin
3.3V de Arduino. El mismo pin 3V3 está conectado al pin analógico A1 que se usa
como voltaje de referencia . El pin de salida está conectado a A0 de Arduino y GND a
GND.
Esta conexión para ML8511 es algo complicada. Las conversiones analógicas a
digitales dependen completamente de VCC. Suponemos que esto es 5.0V, pero si la
placa está alimentada por USB, puede ser tan alta como 5.25V o tan baja como
4.75V. Debido a esta ventana desconocida, hace que el ADC en el Arduino sea
bastante inexacto. Para solucionar esto, utilizamos la referencia de 3.3V integrada muy
precisa (precisa dentro del 1%). Entonces, al hacer una conversión analógica a
digital en el pin de 3.3V (conectándolo a A1) y luego comparar esta lectura con la
lectura del sensor, podemos extrapolar una lectura real, sin importar cuál sea el VIN
(como siempre que esté por encima de 3.4V).
Programa / Código fuente:
# include < LiquidCrystal.h >
LiquidCrystal lcd ( 12 , 11 , 5 , 4 , 3 , 2 );
// Definiciones de pin de hardware
int UVOUT = A0; // Salida del sensor
int REF_3V3 = A1; // 3.3V de potencia en la placa Arduino
configuración nula ()
{
De serie. comenzar ( 9600 );
lcd comenzar ( 16 , 2 );
bucle vacío ()
{
int uvLevel = averageAnalogRead (UVOUT);
int refLevel = averageAnalogRead (REF_3V3);
retraso ( 200 );
}
return (runningValue);
}
float mapfloat ( float x, float in_min, float in_max, float out_min, float
out_max)
{
return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;