#define TRIG_PIN 9
#define ECHO_PIN 8
#define LED_PIN 7
#define BUZZER_PIN 6
long duration;
int distance;
void setup() {
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(LED_PIN, OUTPUT);
pinMode(BUZZER_PIN, OUTPUT);
Serial.begin(9600);
Serial.println("Sensor Pendeteksi Gerakan Aktif...");
}
void loop() {
// Kirim pulsa trigger ke sensor
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
// Hitung durasi pantulan echo
duration = pulseIn(ECHO_PIN, HIGH);
// Konversi ke jarak (cm)
distance = duration * 0.034 / 2;
Serial.print("Jarak: ");
Serial.print(distance);
Serial.println(" cm");
// Jika ada objek dalam jarak < 20 cm
if (distance > 0 && distance < 300) {
digitalWrite(LED_PIN, HIGH);
tone(BUZZER_PIN, 1000); // buzzer bunyi
delay(200);
digitalWrite(LED_PIN, LOW);
noTone(BUZZER_PIN); // buzzer mati
delay(200);
}
else {
digitalWrite(LED_PIN, LOW);
noTone(BUZZER_PIN);
}
delay(100);
}