Arduino Park Sensörü Uygulaması (Ultrasonik HC-SR04)

Arduino Park Sensörü Uygulaması (Ultrasonik HC-SR04)

Park Sensörü Uygulaması ile amacımız günümüz araçlarında olan park sensörü mantığını kullanarak hareket edelim.Belli kademelerle yazdığımız kodumuzda yaklaşan cisme göre hem buzzer hem de led aracılığı ile yaklaşan mesafeyi algılamaya çalışacağız.Mesafe yaklaştıkça sıra sıra ledler devreye girecek ve buzzer yaklaşan cisme göre ses şiddetini arttıracak.

Kullanılan Malzemeler
ARDUINO
4 ADET LED
5 ADET 220 OHM DİRENÇ
1 ADET BUZZER
BREAD BOARD
YETERİ KADAR JUMPER KABLO

Devrede Arduino,Ultrasonik Mesafe Sensörü,4 Led ve 1 Buzzer kullanılmıştır.Ledlerin uzun bacakları sırasıyla 2,3,4 ve 5. pinlere Buzzerın uzun bacağı ise 6. pine bağlanmıştır.Buzzer ve Ledlerin kısa bacakları ise zarar görmemeleri için direnç yardımıyla – pinine bağlanmıştır.Ultra Sonik Mesafe sensörünün Trig ve Echo pinleri 11 ve 12. pinlere Vcc ve Gnd ise + ve – pinine bağlanmıştır.
int trigPin = 12;
int echoPin = 13;
long sure, mesafe;

void setup () {
  Serial.begin(9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(2, OUTPUT);
  Serial.println("Arduino İle Mesafe Sensörü Uygulaması Başlatılıyor...");
  delay(3000);
}

void loop () {
  mesafeFonk();
  Serial.print(mesafe);
  Serial.println(" cm uzaklıkta");
  if (mesafe <= 20 && mesafe >= 15) {
    digitalWrite(2, HIGH);
  }
  else if (mesafe <= 14 && mesafe >= 10) {
    digitalWrite(2, HIGH);
    digitalWrite(3, HIGH);
  }
  else if (mesafe <= 9 && mesafe >= 5) {
    digitalWrite(2, HIGH);
    digitalWrite(3, HIGH);
    digitalWrite(4, HIGH);
  }
  else if (mesafe <= 4) {
    digitalWrite(2, HIGH);
    digitalWrite(3, HIGH);
    digitalWrite(4, HIGH);
    digitalWrite(5, HIGH);
    buzerSinyal();
  }
  else {
    digitalWrite(2, LOW);
    digitalWrite(3, LOW);
    digitalWrite(4, LOW);
    digitalWrite(5, LOW);
    digitalWrite(6, LOW);
  }
}

void buzerSinyal() {
  digitalWrite(6, HIGH);
  delay(200);
  digitalWrite(6, LOW);
  delay(200);
}
void mesafeFonk() {                    // Mesafeyi ölçmek için fonksiyon.
  digitalWrite(trigPin, LOW);
  delayMicroseconds(3);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  sure = pulseIn(echoPin, HIGH);
  mesafe = (sure / 29.1) / 2;
  return mesafe;                     // Mesafeyi döndürüyoruz
}

İlk olarak değişkenler ve Mesafe Sensörünün Trig ve Echo pinleri tamamlanmıştır.”mesafeFonk()” Fonksiyonu ile mesafe değeri alınmıştır. Mesafe azaldıkça ledler sırasıyla yanacak ve son kısımda 5 ten küçükse tüm ledler yanacak ve Buzzer ses çıkartmaya başlar mesafenin yakınlığına göre yanan ledlerin sayısı artar.

Yazar hakkında

Orhan Gazi DEMİRCİ administrator

1984 Samsun doğumluyum. Ondokuz Mayıs Üniversitesi Bilgisayar öğretmenliği 2007 Mezunuyum. Bafra İlçe Milli Eğitim Müdürlüğünde Fatih Projesi eğitmenliği görevinde bulunmaktayım. KodlaBafra yürütücülüğü 2017 yılından beri yürütmekteyim. Evli ve bir çocuk babasıyım.