Cara Membuat Lampu Otomatis Sensor LDR di ESP32 — Simulasi Online
Lampu otomatis versi ESP32 ini membaca modul sensor LDR lewat pin AO di GPIO14. Saat cahaya turun melewati ambang gelap, LED di GPIO2 menyala sendiri, sama seperti lampu taman yang menyala saat senja.
Komponen yang dipakai
- ESP32
- Breadboard (setengah)
- LED
- Resistor
- Modul sensor cahaya (LDR)
Cara kerja
- Modul LDR mengambil daya dari rel breadboard dan pin AO-nya disambungkan ke GPIO14.
- analogRead(GPIO14) membaca tingkat cahaya sebagai nilai 0 sampai 4095.
- Bila nilai cahaya di bawah ambang 700, program menganggapnya gelap dan menyalakan LED GPIO2.
- Geser nilai Cahaya pada panel sensor LDR untuk berpindah dari gelap ke terang dan sebaliknya.
Konsep yang dipelajari
Kode program
/*
Lampu malam otomatis ESP32: modul sensor LDR dibaca lewat pin AO di
GPIO14 dengan analogRead (0..4095). Gelap -> nilai kecil -> LED menyala.
Rangkaian: daya lewat breadboard — 3V3 & GND ESP32 memberi makan rel
+ dan -; LDR VCC -> rel +, GND -> rel -, AO -> GPIO14;
GPIO2 -> LED -> 220 Ohm -> rel -.
Coba: ubah nilai "Cahaya" pada sensor LDR — di bawah 700 LED menyala,
di atasnya LED mati (titik silangnya sekitar cahaya 50).
*/
const int PIN_LDR = 14;
const int PIN_LED = 2;
const int AMBANG_GELAP = 700;
void setup() {
Serial.begin(115200);
pinMode(PIN_LED, OUTPUT);
Serial.println("Lampu malam aktif: LED menyala saat gelap.");
}
void loop() {
int cahaya = analogRead(PIN_LDR);
if (cahaya < AMBANG_GELAP) {
digitalWrite(PIN_LED, HIGH);
} else {
digitalWrite(PIN_LED, LOW);
}
Serial.print("Nilai LDR: ");
Serial.println(cahaya);
delay(250);
}