Cara Membuat Lampu Otomatis dengan Sensor LDR dan Arduino — Simulasi Online
Lampu malam otomatis menyala sendiri saat ruangan gelap. Template ini memakai modul sensor LDR yang pin AO-nya dibaca di A0: begitu cahaya turun melewati ambang gelap, LED di D13 menyala.
Komponen yang dipakai
- Arduino Uno
- LED
- Resistor
- Modul sensor cahaya (LDR)
Cara kerja
- Modul LDR disambungkan ke 5V dan GND, pin AO-nya ke pin analog A0.
- analogRead(A0) membaca tingkat cahaya: ruangan gelap menghasilkan nilai ADC kecil.
- Jika nilai cahaya di bawah ambang 135, program menganggapnya gelap dan menyalakan LED D13.
- Geser nilai Cahaya pada panel sensor LDR di simulator untuk melihat LED menyala dan mati bergantian.
Konsep yang dipelajari
Kode program
/*
Lampu malam otomatis: LED menyala saat gelap, mati saat terang.
Rangkaian: modul sensor LDR (VCC -> 5V, GND -> GND, AO -> A0),
D13 -> LED -> 220 Ohm -> GND.
Geser "Cahaya" pada modul LDR di panel Properti dan perhatikan LED D13.
*/
const int PIN_LDR = A0;
const int PIN_LED = 13;
// Ambang gelap dalam satuan ADC (0..1023), BUKAN lux!
// 135 ADC ≈ 350 lux: di bawah nilai ini dianggap gelap (LED menyala),
// di atasnya dianggap terang (LED mati). Geser slider ILLUMINATION (LUX)
// pada modul LDR untuk mencoba — perhatikan nilai "cahaya" di Serial Monitor.
const int BATAS_GELAP = 135;
void setup() {
pinMode(PIN_LED, OUTPUT);
Serial.begin(9600);
Serial.println(F("Lampu malam siap. Gelapkan LDR untuk menyalakan LED."));
}
void loop() {
// Gelap -> hambatan LDR besar -> tegangan di AO turun -> nilai ADC kecil.
int cahaya = analogRead(PIN_LDR);
bool gelap = cahaya < BATAS_GELAP;
digitalWrite(PIN_LED, gelap ? HIGH : LOW);
Serial.print(F("cahaya="));
Serial.print(cahaya);
Serial.print(F(" gelap="));
Serial.println(gelap ? F("ya") : F("tidak"));
delay(500);
}