Mengukur Indeks UV dengan Akurat: Panduan Lengkap Modul Sensor UV CJMCU-GUVA-S12SD


Paparan sinar matahari memang baik untuk kesehatan, tetapi radiasi Ultraviolet (UV) yang berlebihan bisa berdampak buruk bagi kulit dan kesehatan. Di era otomasi dan IoT (Internet of Things) saat ini, memantau intensitas UV secara real-time menjadi sangat mudah berkat kehadiran modul sensor CJMCU-GUVA-S12SD.


Modul ini adalah pilihan utama bagi para akademisi, penghobi elektronika, dan maker untuk mendeteksi intensitas radiasi UV matahari secara linear. Yuk, kita bedah secara lengkap komponen, spesifikasi, hingga cara kerja modul sensor yang satu ini!
1. Mengenal Anatomi Modul CJMCU-GUVA-S12SD
Berdasarkan struktur fisik board-nya, modul ini memiliki desain yang kompak dengan beberapa komponen kunci:


- S12SD UV Sensor: Ini adalah jantung dari modul ini, sebuah photodiode berbasis Gallium Nitride (GaN) yang dioptimalkan untuk merespons spektrum sinar UV (khususnya UV-A dan UV-B).
- LMV358 Op-Amp Chip: Karena arus/tegangan yang dihasilkan oleh photodiode S12SD sangat kecil (skala mikro-ampere), IC LMV358 bertindak sebagai penguat operasional (operational amplifier) berdaya rendah untuk memperkuat sinyal tersebut menjadi tegangan analog yang stabil dan siap dibaca oleh mikrokontroler.
- Pin Out Terintegrasi:
- VCC: Pin input daya (Analog Signal Power).
- GND: Pin ground (Analog Signal GND).
- SIG / SIO: Pin output sinyal analog yang tegangannya berbanding lurus dengan intensitas sinar UV yang diterima.
2. Spesifikasi Teknis
Sebelum mengintegrasikannya ke proyek Anda, berikut adalah spesifikasi utama yang perlu diketahui:
| Parameter | Spesifikasi |
| Tegangan Operasi (VCC) | 2.5V hingga 5.0V DC |
| Arus Operasi | Spektrum Mikro-ampere (sangat hemat daya) |
| Panjang Gelombang Deteksi | 240 nm – 370 nm (Mencakup UV-A dan UV-B) |
| Sudut Deteksi | 120 Derajat |
| Tipe Output | Tegangan Analog (Linear) |
| Akurasi / Respons | Respon cepat dalam hitungan milidetik |
3. Hubungan Tegangan Output vs Indeks UV
Salah satu keunggulan utama dari sensor GUVA-S12SD adalah outputnya yang bersifat linear. Artinya, kenaikan intensitas UV akan diikuti oleh kenaikan tegangan output secara konstan dan teratur.
Secara umum, acuan konversi tegangan output (V) ke UV Index (skala standar internasional kekuatan radiasi UV) adalah sebagai berikut:
- 0V s.d < 0.1V –> UV Index: 0 (Aman/Malam hari)
- 0.2V s.d 0.3V –> UV Index: 1 s.d 2 (Rendah)
- 0.4V s.d 0.5V –> UV Index: 3 s.d 4 (Sedang)
- 0.6V s.d 0.7V –> UV Index: 5 s.d 6 (Tinggi)
- 0.8V s.d 0.9V –> UV Index: 7 s.d 8 (Sangat Tinggi)
- > 1.0V (hingga 1.1V) –> UV Index: 9 s.d 11+ (Ekstrem)
Catatan Teknis: Rumus dasar kalkulasi kasar yang sering digunakan pada coding mikrokontroler adalah membagi tegangan output (dalam milivolt) dengan nilai 100. Misalnya, jika output sensor adalah 400mV (0.4V), maka Indeks UV-nya berkisar di angka 4.
4. Cara Koneksi (Wiring) ke Mikrokontroler
Menghubungkan modul ini ke board seperti Arduino Uno, ESP32, atau STM32 sangatlah mudah karena hanya membutuhkan 3 jalur kabel:
- VCC –> Hubungkan ke 5V atau 3.3V pada Arduino/ESP32.
- GND –> Hubungkan ke GND mikrokontroler.
- SIG (SIO) –> Hubungkan ke Pin Analog Input (Contoh: A0 pada Arduino Uno).
5. Implementasi Menggunakan Arduino Uno
Arduino Uno menggunakan logika tegangan 5V dengan resolusi ADC bawaan 10-bit (0 – 1023).
Skema Koneksi Arduino Uno
- VCC à 5V Arduino
- GND à GND Arduino
- SIG à Pin Analog A0
Kode Program Arduino Uno
const int uvPin = A0; // Pin SIG terhubung ke A0
void setup() {
Serial.begin(9600);
pinMode(uvPin, INPUT);
Serial.println("--- Arduino Uno & GUVA-S12SD Ready ---");
}
void loop() {
int sensorValue = analogRead(uvPin);
// Mengonversi nilai ADC (0-1023) ke Tegangan (0-5V)
float voltage = (sensorValue * 5.0) / 1023.0;
// Estimasi kasar UV Index (Tegangan / 0.1V)
float uvIndex = voltage / 0.1;
Serial.print("ADC: ");
Serial.print(sensorValue);
Serial.print(" | Tegangan: ");
Serial.print(voltage);
Serial.print(" V | UV Index: ");
Serial.println(uvIndex, 1);
delay(1000);
}
6. Implementasi Menggunakan ESP32
Berbeda dengan Arduino Uno, ESP32 bekerja pada tegangan 3.3V dan memiliki resolusi ADC 12-bit (0 – 4095). Kita akan menggunakan salah satu pin ADC1 yang aman, yaitu GPIO 34.
Skema Koneksi ESP32
- VCC à Pin 3V3 ESP32
- GND à Pin GND ESP32
- SIG à Pin GPIO 34 (Analog Input)
Kode Program ESP32
const int uvPin = 34; // Pin SIG terhubung ke GPIO 34
const float VREF = 3.3; // Tegangan referensi ESP32
const int ADC_RES = 4095; // Resolusi ADC 12-bit
void setup() {
Serial.begin(115200); // Baudrate standar ESP32
pinMode(uvPin, INPUT);
Serial.println("--- ESP32 & GUVA-S12SD Ready ---");
}
void loop() {
int adcValue = analogRead(uvPin);
// Mengonversi nilai ADC (0-4095) ke Tegangan (0-3.3V)
float voltage = (adcValue * VREF) / ADC_RES;
// Menghitung estimasi UV Index
float uvIndex = voltage / 0.1;
Serial.print("ADC Value: ");
Serial.print(adcValue);
Serial.print(" | Tegangan: ");
Serial.print(voltage, 3);
Serial.print(" V | Estimasi UV Index: ");
Serial.println(uvIndex, 1);
tampilkanKategoriUV(uvIndex);
Serial.println("-----------------------------------------");
delay(1500);
}
// Fungsi klasifikasi kategori tingkatan bahaya UV
void tampilkanKategoriUV(float index) {
Serial.print("Kategori Risiko: ");
if (index < 3.0) {
Serial.println("RENDAH (Hijau)");
} else if (index >= 3.0 && index < 6.0) {
Serial.println("SEDANG (Kuning)");
} else if (index >= 6.0 && index < 8.0) {
Serial.println("TINGGI (Oranye)");
} else if (index >= 8.0 && index < 11.0) {
Serial.println("SANGAT TINGGI (Merah)");
} else {
Serial.println("EKSTREM (Ungu) !");
}
}
7. Tips Penting Saat Eksperimen
- Karakteristik ADC ESP32: ADC internal ESP32 terkenal memiliki sedikit masalah non-linearitas di ujung bawah (dekat 0V) dan ujung atas (dekat 3.3V). Jika proyek Anda memerlukan tingkat presisi riset, pertimbangkan kalibrasi tabel (lookup table) atau gunakan modul ADC eksternal seperti ADS1115.
- Pengujian Sensor: Untuk menguji apakah sensor berfungsi dengan baik di dalam ruangan, Anda bisa menggunakan lampu UV pembersih kuman, senter UV money detector, atau membawanya langsung ke bawah terik sinar matahari. Lampu LED ruangan biasa tidak akan menaikkan nilai pembacaan secara signifikan.
Kesimpulan
Modul sensor UV CJMCU-GUVA-S12SD adalah solusi hemat biaya yang tangguh untuk memantau lingkungan. Baik diaplikasikan pada modul edukasi sederhana dengan Arduino maupun dikembangkan menjadi sistem stasiun cuaca canggih berbasis IoT dengan ESP32, sensor ini memberikan pembacaan linear yang sangat mudah diolah. Selamat mencoba dan berkreasi!












