#define trigPin 9
#define echoPin 10
#define redLED 2
#define yellowLED 3
#define greenLED 4
#define buzzer 8
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(redLED, OUTPUT);
pinMode(yellowLED, OUTPUT);
pinMode(greenLED, OUTPUT);
pinMode(buzzer, OUTPUT);
Serial.begin(9600);
}
void loop() {
long sure, mesafe;
// Ultrasonik ölçüm
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
sure = pulseIn(echoPin, HIGH);
mesafe = (sure / 2) / 29.1; // cm
Serial.print("Mesafe: ");
Serial.println(mesafe);
// LED ve buzzer mantığı
if (mesafe < 10) {
// Çok yakın
digitalWrite(redLED, HIGH);
digitalWrite(yellowLED, LOW);
digitalWrite(greenLED, LOW);
tone(buzzer, 1000); // sürekli alarm
}
else if (mesafe < 20) {
// Orta mesafe
digitalWrite(redLED, LOW);
digitalWrite(yellowLED, HIGH);
digitalWrite(greenLED, LOW);
tone(buzzer, 800);
delay(100);
noTone(buzzer);
}
else if (mesafe < 40) {
// Uzak ama algıladı
digitalWrite(redLED, LOW);
digitalWrite(yellowLED, LOW);
digitalWrite(greenLED, HIGH);
tone(buzzer, 600);
delay(200);
noTone(buzzer);
}
else {
// Güvenli mesafe
digitalWrite(redLED, LOW);
digitalWrite(yellowLED, LOW);
digitalWrite(greenLED, LOW);
noTone(buzzer);
}
delay(100);
}
LED’ler nasıl çalışıyor?
Mesafe < 10 cm: Kırmızı LED yanar + sürekli alarm 10–20 cm: Sarı LED yanar + hızlı aralıklı alarm 20–40 cm: Yeşil LED yanar + yavaş aralıklı alarm 40 cm üzeri: Tüm LED’ler söner + buzzer kapanır
Bilişim Teknolojileri Kaynak Site