Датчик измерения УФ
1. Введение датчика
- Обеспечивает надежность и точность измерения ультрафиолетового индекса (UVI)
- Подходит для измерения общей интенсивности ультрафиолетового излучения солнечного света;
- Согласно стандарту классификации УФ-индекса Всемирной организации здравоохранения
- Длина волны обнаружения УФ: 200-370 нм;
- Быстрый отклик, менее 0,5 секунды;
2. Схема подключения
3. Таблица преобразования УФ-индекса
4. Полный код
--定义函数:将传感器输出电压(单位:mv)转换成紫外线指数index
function GetUvIndex(v)
if v < 50.0 then
index = 0
elseif v < 227.0 then
index = 1;
elseif v < 318.0 then
index = 2;
elseif v < 408.0 then
index = 3;
elseif v < 503.0 then
index = 4;
elseif v < 606.0 then
index = 5;
elseif v < 696.0 then
index = 6;
elseif v < 795.0 then
index = 7;
elseif v < 881.0 then
index = 8;
elseif v < 976.0 then
index = 9;
elseif v < 1079.0 then
index = 10;
else
index = 11
end
return index
end
--配置Core的USB口以虚拟串口模式工作,这样print()输出的内容就可以在电脑串口终端上显示了
LIB_UsbConfig("CDC")
--配置AD电压采集功能,最大值采样值4096对应3.6V输入电压
--当通道采集满1个点时缓存满,每个点的采集时间间隔为300ms
LIB_ADConfig(1,300000)
--开始大循环
while(GC(1) == true)
do
--每隔300ms查询A0通道是否转换完成
--开发者也可以将传感器接至A1-A3中的任一通道,也可以多个通道接多个传感器,用法都和下面一样
LIB_DelayMs(300)
A0_full_flag, A0_buf = LIB_ADCheckBufFull("A0")
if A0_full_flag == 1 then
vol_mv = A0_buf[1]*3600/4096.0 --将AD原始值转换成电压(单位:mv)
uv_index = GetUvIndex(vol_mv)--将电压转换成紫外等级指数
--打印输出A0通道的AD采样值以及对应的电压值和紫外线强度
print(string.format("A0=%04d vol=%.0fmv index=%02d",A0_buf[1],vol_mv,uv_index))
end
end
5. Результаты тестирования кода (погода: солнечно в начале лета, солнце в десять часов утра)
Шаг 1. Поместите датчик в помещении без солнечного света.
В это время выходное напряжение датчика близко к 0 мВ, а уровень УФ-индекса также равен 0.Шаг 2. Поместите датчик в помещении с солнечным светом, но отделенным от него окном.
В это время выходное напряжение датчика составляет 150 В.
160 мВ или около того, уровень УФ-индекса равен 1Шаг 3: Поместите датчик в помещение с прямым солнечным светом.
480 мВ или около того, уровень УФ-индекса 4Шаг 4. Поместите датчик под прямые солнечные лучи на открытом воздухе.
В это время выходное напряжение датчика составляет 470 В.
В это время выходное напряжение датчика составляет около 660~670 мВ, а уровень УФ-индекса также равен 6.в заключении:Из приведенных выше экспериментов видно, что значения напряжения, выдаваемые датчиком в четырех состояниях «без солнечного света» --> «внутри помещения, разделенного стеклом» --> «внутри помещения без стекла» --> «лицом наружу солнце" соответственно Для: 0 мВ, 160 мВ, 480 мВ, 670 мВ, что соответствует уровням УФ-индекса 0, 1, 4, 6.
Можно видеть, что чем выше интенсивность УФ-излучения, тем выше значение напряжения, выдаваемое датчиком, и тем выше соответствующий уровень УФ-индекса.