Arduino ve HC-SR04 ile Ultrasonik Park Sensörü Yapımı

👤 Yazar: ozcan 📅 Tarih: 09.07.2026 06:11 👁️ Görüntüleme: 40

Arduino ve HC-SR04 ile Ultrasonik Park Sensörü Yapımı

Bu rehberde, projelerin çevreyle etkileşime geçmesini sağlayan en popüler sensörlerden biri olan HC-SR04 Ultrasonik Mesafe Sensörünü inceleyeceğiz. Yapacağımı bu uygulamayla, nesneler yaklaştıkça sesli uyarı veren basit bir park sensörü mantığı oluşturacağız.

Gerekli Malzemeler

  • Arduino Uno
  • HC-SR04 Mesafe Sensörü
  • Buzzer (Sesli Uyarıcı)
  • Jumper Kablolar

1. HC-SR04 ve Buzzer Bağlantı Şeması

HC-SR04 sensörü üzerinde 4 adet pin bulunur. Bu pinlerin ve buzzer'ın Arduino bağlantılarını aşağıdaki tabloya göre yapabilirsiniz:

Bileşen ve Pini Arduino Uno Pini
HC-SR04 VCC 5V
HC-SR04 GND GND
HC-SR04 Trig Pin 3
HC-SR04 Echo Pin 2
Buzzer (+) Artı Uç Pin 7
Buzzer (-) Eksi Uç GND


arduino ultrasonik sensör

2. Arduino Kod Blokları

Bu proje için ekstra bir kütüphane kurmanıza gerek yoktur. Aşağıdaki kodu doğrudan kopyalayıp Arduino kartınıza yükleyebilirsiniz. Kod, sensörün önündeki nesne 15 cm'den daha yakına geldiğinde buzzer'ı öttürecektir.

const int trigPin = 3;
const int echoPin = 2;
const int buzzerPin = 7;

long sure;
int mesafe;

void setup() {
  pinMode(trigPin, OUTPUT); // Trig pini ses dalgası gönderdiği için çıkış
  pinMode(echoPin, INPUT);  // Echo pini dönen dalgayı tuttuğu için giriş
  pinMode(buzzerPin, OUTPUT); // Buzzer ses vereceği için çıkış
  
  Serial.begin(9600);       // Bilgisayardan mesafeyi okumak için seri haberleşme
}

void loop() {
  // Tetikleme pini temizleniyor
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  
  // 10 mikrosaniye boyunca ses dalgası gönderiliyor
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  
  // Dönen dalganın süresi ölçülüyor
  sure = pulseIn(echoPin, HIGH);
  
  // Süre, ses hızına göre santimetreye çevriliyor
  mesafe = sure * 0.034 / 2;
  
  // Mesafeyi bilgisayar ekranına yazdırıyoruz
  Serial.print("Mesafe: ");
  Serial.print(mesafe);
  Serial.println(" cm");
  
  // Eğer mesafe 15 cm veya daha az ise buzzer ötsün
  if (mesafe <= 15 && mesafe > 0) {
    digitalWrite(buzzerPin, HIGH);
    delay(100);
    digitalWrite(buzzerPin, LOW);
    delay(100);
  } else {
    digitalWrite(buzzerPin, LOW);
  }
  
  delay(200); // Ölçümler arası kısa bir bekleme
}

Sık Yaşanan Sorunlar ve Çözümleri

1. Seri Port Ekranında Mesafe Sürekli "0" veya Kararsız Değerler Gösteriyor

Çözüm: Jumper kabloların sensör pinlerine tam oturduğundan emin olun. Özellikle Trig ve Echo pinlerinin koddaki pin numaralarıyla (9 ve 8) yer değiştirmediğini kontrol edin. Ayrıca sensörün tam önünde dalgayı yansıtacak düz bir yüzey olmasına dikkat edin.

2. Buzzer Hiç Ses Çıkarmıyor veya Çok Kısık Ses Çıkarıyor

Çözüm: Buzzer'ın artı (+) kutbunun Arduino'nun 7. pinine bağlı olduğundan emin olun. (Genellikle uzun bacak veya üzerinde "+" işareti olan taraf artıdır). Hala ses gelmiyorsa buzzer'ın üzerindeki koruyucu yapışkan etiketi çıkarmayı unutmuş olabilirsiniz.

💬 Yorumlar

Henüz yorum yapılmamış. İlk yorumu siz yapın!

Bir Yorum Bırakın

Güvenlik Kontrolü:

Yenidir.com
↑ Sayfa Başı
📞 İletişim ✉ E-Posta Gönder 🟥 YouTube
© 2026 Yenidir.com
Yenidir CMS V0.1