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.
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 |

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
}
Çö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.
Çö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.
Henüz yorum yapılmamış. İlk yorumu siz yapın!