СОДЕРЖАНИЕ ►
Модуль датчика ультрафиолета GUVA-S12SD используется для определения интенсивности ультрафиолетового излучения. Сенсор имеет аналоговый выход, сигнал которого изменяется пропорционально в зависимости от интенсивности УФ-излучения. Рассмотрим подключение датчика SGM8521 GUVA-S12SD к Ардуино и вывод ультрафиолетового индекса на монитор порта Arduino IDE и дисплей OLED 128×64.
Датчик GUVA-S12SD характеристики, распиновка
Ультрафиолетовое излучение — это форма электромагнитного излучения с длиной волны от 200 до 370 нм, короче, чем у видимого света, но длиннее, чем у рентгеновских лучей. Датчик собран на фотодиоде Шоттки на основе нитрида галлия, который обнаруживает большую часть УФ-излучения. GUVA-S12SD выдает откалиброванное аналоговое напряжение, которое можно прочитать через АЦП Ардуино.

Характеристики GUVA-S12SD
- Напряжение: 2,5 — 5,5 В постоянного тока
- Диапазон измерений: от 240 до 370 нм
- Выход: Vo = 4,3 * ток диода (мкА)
- УФ-индекс: Vo/0,1 В
Солнце — это естественный источник УФ-излучения. Для получения информации об уровне радиации составляют УФ-индекс, выражаемый в виде числового значения. Цель индекса ультрафиолетового излучения — эффективная защита от ультрафиолета, которое приносит пользу в умеренных количествах, но в избытке вызывает преждевременное старение кожи, повреждение глаз и солнечные ожоги.
1…2 — низкий уровень УФ-излучения,
3…5 — средний уровень УФ-излучения, рекомендуются солцезащитные очки,
6…7 — высокий уровень, рекомендуется использовать защитные кремы,
8…10 — очень высокий уровень, рекомендуется находиться в тени,
11 — крайне высокий уровень УФ-излучения, нахождение на улице следует ограничить.
Как подключить УФ датчик GUVA-S12SD к Ардуино
Для этого занятия потребуется:
- Arduino Uno / Arduino Nano / Arduino Mega;
- сенсор GUVA-S12SD;
- 128×64 OLED экран;
- провода «папа-мама».

Данные с датчика GUVA-S-12-SD, как и с любого другого аналогового сенсора, считывают с помощью команды analogRead. Затем в соответствии с технической документацией датчика, мы вычисляем УФ-индекс, разделив поступающее напряжение с датчика на 0,1. В итоге мы отображаем УФ-индекс и УФ-излучение. Подключите датчик CJMCU-GUVA-S12SD к Arduino и загрузите следующий код в микроконтроллер.
Скетч для сенсора ультрафиолета GUVA-S12SD
float sensorVoltage; float sensorValue; void setup() { Serial.begin(9600); pinMode(A1, INPUT); } void loop() { sensorValue = analogRead(A1); sensorVoltage = sensorValue / 1024 * 5.0; Serial.print("sensor reading = "); Serial.print(sensorValue); Serial.print(" sensor voltage = "); Serial.print(sensorVoltage); Serial.println(" V"); delay(1000); }
Пояснения к коду:
- сенсор подключается к любому аналоговому входу микроконтроллера.
Ток создаваемый фотодиодом S12SD, преобразуется усилителем SGM8521 в пропорциональный уровень напряжения. Дополнительное усиление выходного напряжения, пропорционально падающему на фотодиод модуля ультрафиолетового излучения, обеспечивает усилитель LM358. В следующем примере добавим к схеме OLED дисплей с I2C протоколом связи для подключения к плате Ардуино.

| OLED i2c 0,96 | Arduino Uno | Arduino Nano | Arduino Mega |
| GND | GND | GND | GND |
| VDD | 5V | 5V | 5V |
| SDA | A4 | A4 | 20 |
| SCL | A5 | A5 | 21 |
Скетч для датчика GUVA-S12SD и OLED дисплея
#include "Wire.h" #include "OLED_I2C.h" // библиотека для экрана OLED myOLED(SDA, SCL, 8); // создаем объект myOLED extern uint8_t BigNumbers[]; extern uint8_t SmallFont[]; float sensorVoltage; float sensorValue; void setup() { Serial.begin(9600); myOLED.begin(); pinMode(A1, INPUT); } void loop() { sensorValue = analogRead(A1); sensorVoltage = sensorValue / 1024 * 5.0; Serial.print("sensor reading = "); Serial.print(sensorValue); Serial.print(" sensor voltage = "); Serial.print(sensorVoltage); Serial.println(" V"); myOLED.setFont(BigNumbers); myOLED.print(String(sensorValue), CENTER, 20); myOLED.setFont(SmallFont); myOLED.print("UV INDEX", CENTER, 50); myOLED.update(); delay(1000); }
Пояснения к коду:
- после преобразования измерения, значение отображается на OLED-дисплее.
Заключение. Выход модуля аналоговый, благодаря чему работа с этим датчиком максимально проста. Модуль можно использовать в автономных устройствах при создании термометров на Ардуино или метеостанций. GUVA S12SD имеет широкий диапазон измерений от 240 до 370 нм и широкий угол обзора — около 130 градусов.










Добавить комментарий