int ledmerah = 10;
int ledkuning = 9;
int ledhijau = 8;
int trigpin = 2;
int echopin = 3;
int ldrpin = A0;
void setup() {
Serial.begin(9600);
pinMode(ledmerah, OUTPUT);
pinMode(ledkuning, OUTPUT);
pinMode(ledhijau, OUTPUT);
pinMode(trigpin, OUTPUT);
pinMode(echopin, INPUT);
pinMode(ldrpin, INPUT);
}
void loop() {
// Membaca nilai dari LDR
int ldrpin = analogRead(ldrpin);
Serial.print("Nilai LDR: ");
Serial.println(ldrpin);
// Mengukur jarak menggunakan HC-SR04
long duration, distance;
digitalWrite(trigpin, LOW);
delayMicroseconds(2);
digitalWrite(trigpin, HIGH);
delayMicroseconds(10);
digitalWrite(trigpin, LOW);
duration = pulseIn(echopin, HIGH);
distance = (duration * 0.034) / 2; // Menghitung jarak dalam cm
// Mengkategorikan berdasarkan nilai LDR dan jarak
if (ldrpin < 200) {
digitalWrite(ledmerah, HIGH);
Serial.println("gelap, Lampu Merah Hidup");
} else if (ldrpin > 200) {
digitalWrite(ledkuning, HIGH);
} else {
digitalWrite(ledhijau, LOW);
}
if (distance < 100) {
Serial.println("Objek Sangat Dekat!");
} else if (distance >= 100) {
Serial.println(" objek terdeteksi");
} else {
Serial.println("objek tidak terdekteksi");
}
delay(1000); // Tunggu 1 detik sebelum pembacaan berikutnya
}