Arduino İle Araç Park Sensörü
Yeni nesil araçların sahip olduğu teknolojilerden biriside alarmlı park sensörüdür. Biz de bu projemizde HC-SR04 mesafe sensörü ve buzzer ile kendi aracımız için belli mesafelerde belli frekans ve tempoda ses çıkaran bir cihaz tasarlayacağız.
Kullanılan Malzemeler
- Bir adet Arduino Uno Kartı,
- Bir adet HC-SR04 Mesafe Sensörü,
- Bir adet Buzzer,
- Bir adet 0-1 anahtar,
- Bord ve devre tasarım elemanları.
Tasarım
HC-SR04 mesafe ölçüm sensörünü bir önceki dersimizde görmüştük. Sensöre ek olarak bu projede anahtar ve buzzer elemanı vardır. Anahtar 0 konumundan 1 konumuna getirilirse devre çalışmaya başlayacaktır. Anahtar aktif edilince sensörden gelen bilgiye göre buzzer üzerinden ses olarak çıkış alınacaktır.
Kodlar
Kodların altında bulunan açıklamalar projenin anlaşılması noktasında yeterlidir.
#define trigPin 13 //trig pini sabit olarak tanımlandı #define echoPin 12 // echo pini sabit olarak tanımlandı #define buzzerPin 2 // buzzer pini void setup() { Serial.begin (9600); //seri iletişim başlatılıyor. pinMode(trigPin, OUTPUT); // ses sinyali görderme pini çıkış pinMode(echoPin, INPUT); // sinyali geri alma pini giriş pinMode(buzzerPin, OUTPUT); //buzzer çıkış } void loop() { long sure, mesafe; // ses sinyalinin hesabı için sure ve mesafe değişkenleri digitalWrite(trigPin, LOW); // ses sinyali beklemede delayMicroseconds(2); // 2 mikrosaniye sonra digitalWrite(trigPin, HIGH); // ses sinyali yükseltiliyor delayMicroseconds(10); // 10 mikrosaniye sonra digitalWrite(trigPin, LOW); // ses sinyali alçaltılıyor sure = pulseIn(echoPin, HIGH); // ses sinyalinin alınması sorgulanıyor mesafe = (sure/58.2); // mesafe için hesaplama yapılıyor // eğer arabanın arkasındaki nesne ile sensör arasındaki mesafe 1 metre'den büyükse // alarmı çalıştırma if (mesafe > 200 ) { noTone(buzzerPin); } //eğer mesafe 1 metre ile 80 cm arasındaysa // 440 frekasında 4'lü tempoda çal else if( 160<mesafe<=200) { tone(buzzerPin,440,4);} //eğer mesafe 80 cm ile 60 cm arasındaysa // 466 frekasında 8'li tempoda çal else if( 120<mesafe<=160) { tone(buzzerPin,466,8);} //eğer mesafe 60 cm ile 40 cm arasındaysa // 494 frekasında 16'lı tempoda çal else if( 80<mesafe<=120) { tone(buzzerPin,494,16);} //eğer mesafe 40 cm ile 20 cm arasındaysa // 523 frekasında 32'li tempoda çal else if( 40<mesafe<=80) { tone(buzzerPin,523,32);} //eğer mesafe bunlardan da az ise // 554 frekasında 64'lü tempoda çal else { tone(buzzerPin,554,64); } delay(500); }