Skip to main content

Xadow - Sensor UV

El Sensor UV Xadow es adecuado para medir la radiación UV en la luz solar. Puede detectar la longitud de onda UV de 290 ~ 400 nm. El Sensor UV emite un valor de voltaje digital correspondiente a la intensidad de la luz UV. Con el diagrama de voltaje de salida y UV, podemos conocer fácilmente el índice UV actual. El Sensor UV Xadow puede ser alimentado por 3.3V. Y es compatible con el sistema Xadow.

Especificaciones


  • Puede detectar banda UV-A y UV-B
  • Detección de longitud de onda UV: 290 ~ 400nm
  • Longitud de onda de máxima sensibilidad: 330nm
  • Circuito ADC integrado, alta precisión de conversión
  • Precisión de prueba: ±0.1 Índice UV
  • Temperatura de funcionamiento: -25 ~ 70 ℃
  • Dimensiones: 25.43mm x 20.35mm

Demostración


El Sensor UV Xadow puede emitir un valor de voltaje correspondiente al índice UV. Debido a que existe una relación lineal entre el voltaje de salida y el índice UV, también puedes ver directamente el índice UV con una fórmula. A continuación mostramos cómo usar el sensor UV para conocer el índice UV y mostrarlo en la pantalla OLED.

Instalación de Hardware

note

Cuando conectes el Sensor UV Xadow a la Placa Principal Xadow, debes preocuparte por la dirección de conexión. El método de conexión es que la esquina no rellena de un módulo Xadow necesita conectarse al ángulo recto de otro módulo (ver las cuatro esquinas de cada módulo Xadow).

Descargar Código

  • Ahora puedes subirlo a la Placa Principal Xadow copiando y pegándolo en el IDE de Arduino.
#include <Wire.h>
#include <SeeedOLED.h>
#include <Streaming.h>

#define ADDR_ADC121 0x5A

#define V_REF 3.00

#define REG_ADDR_RESULT 0x00
#define REG_ADDR_ALERT 0x01
#define REG_ADDR_CONFIG 0x02
#define REG_ADDR_LIMITL 0x03
#define REG_ADDR_LIMITH 0x04
#define REG_ADDR_HYST 0x05
#define REG_ADDR_CONVL 0x06
#define REG_ADDR_CONVH 0x07

unsigned int getData;
float analogVal=0;
float UVIndex = 0;
void init_adc()
{
Wire.beginTransmission(ADDR_ADC121); // transmit to device
Wire.write(REG_ADDR_CONFIG); // Configuration Register
Wire.write(0x20);
Wire.endTransmission();
}
void setup()
{
Wire.begin();
Serial.begin(38400);
SeeedOled.init(); //initialize SEEED OLED display
SeeedOled.clearDisplay(); // clear the screen and set start position to top left corner

init_adc();
}

void loop()
{
readVoltage();
//SeeedOled.clearDisplay();
SeeedOled.setTextXY(1,0);
SeeedOled.putString("Voltage: ");
SeeedOled.setTextXY(1,8);
SeeedOled.putFloat(analogVal);
SeeedOled.setTextXY(1,12);
SeeedOled.putString("mV");
SeeedOled.setTextXY(2,0);
SeeedOled.putString("UVIndex: ");
SeeedOled.setTextXY(2,8);
SeeedOled.putFloat(UVIndex);
delay(50);
}
void readVoltage() //unsigned int *data
{
Wire.beginTransmission(ADDR_ADC121); // transmit to device
Wire.write(REG_ADDR_RESULT); // get result
Wire.endTransmission();

Wire.requestFrom(ADDR_ADC121, 2); // request 2byte from device
delay(1);
if(Wire.available()<=2)
{
getData = (Wire.read()&0x0f)<<8;
getData |= Wire.read();
}
delay(50);
analogVal = getData*V_REF/4096/2;
Serial.print("analogVal:");
Serial.print(analogVal);
Serial.println("mV");
UVIndex = analogVal/9.71;
Serial.print("UVIndex:");
Serial.println(UVIndex);

}
  • Abre el monitor serie, se muestran el valor de voltaje y el índice UV:

  • Puedes ver en la pantalla OLED:

  • Determinar el índice UV no es un asunto diferente refiriéndose al diagrama de abajo.

Acerca del Sensor UV Xadow, usamos una resistencia cuyo valor de resistencia es 3M, por lo que necesitas referirte a esta línea para RL=3M.

Es lineal observando la relación entre voltaje y UV. Y la fórmula calculada puede obtenerse: Índice UV = Voltaje/9.71 que ha sido usada en el código.

Referencia


Dirección I2C del Sensor UV

El Sensor UV Xadow tiene una dirección de hardware de siete bits que se refiere como dirección esclava. Y la dirección esclava está configurada por las entradas de selección de dirección ADR0 y ADR1. ADR0 y ADR1 pueden estar en nivel bajo, dejadas flotantes, o conectadas a nivel alto. El estado de estas entradas establece la dirección de hardware a la que el módulo responde en el bus I2C (ver la Tabla de abajo).

Dirección Esclava[A6 - A0] Estado de entradas ADR0 y ADR1
ADR1 ADR0
1010000(0x50)FlotanteFlotante
1010001(0x51) Flotante L
1010010(0x52) Flotante H
1010100(0x54) L Flotante
1010101(0x55) L L
1010110(0x56) L H
1011000(0x58) H Flotante
1011001(0x59) H L
1011010(por defecto 0x5A) H H

En modo predeterminado, ADR0 y ADR1 están conectados a "H"(ver el Xadow UV Sensor)

curva de respuesta espectral del Sensor UV

Visor de Esquemas en Línea

Recursos


Archivo Eagle del Xadow UV Sensor

Soporte Técnico y Discusión de Productos

¡Gracias por elegir nuestros productos! Estamos aquí para brindarle diferentes tipos de soporte para asegurar que su experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para satisfacer diferentes preferencias y necesidades.

Loading Comments...