Iki adet hc-sr04 mesafe sensörü ile tek arduino uno kullanarak park sensörü yapımı

Robotistan dan almış olduğum başlangıç seti ile kitap,video desteklerininde yardımıyla buzzerlı park sensörüne 4 adet led ekleyerek başarılı bir şekilde çalıştırdım. Ama projeme birer adet daha sensör,buzzer ve ledleri eklemem istendi. Kafamda planladım uygulamaya geçtiğimde kodları yazdım doğru bağlantıları yaptım ama yeni breadboardun üstüne taktığım hiç bir eleman çalışmadı. doğru çalışan tek sensörlü park sensörümde stabil çalışmaz oldu. sanırım kodları doğru birleştiremedim. Çok acil yardımlarınızı bekliyorum proje ödevim her hafta video çekiyorum projem ile ilgili. ekte foto ve kodları paylaşıyorum.

Kodlar:

const int trigger_pin1 = 8;
const int echo_pin1 = 9;
const int led1 = 2;
const int led2 = 3;
const int led3 = 4;
const int led4 = 5;
const int buzzer1 = 6;

const int trigger_pin2 = 12;
const int echo_pin2 = 13;
const int led_a = 10;
const int led_b = 11;
const int led_c = 12;
const int led_d = 13;
const int buzzer2 = 7;

int sure1 ; /*değişken değer tanımları*/
int mesafe1 ;

int sure2 ; /*değişken değer tanımları*/
int mesafe2 ;
  
void setup()/*void setup() yani kurulum kısmında giriş, çıkış pinleri belirtildi
ve seri haberleşme 9600 baud rate hızında başlatıldı.*/ 
{
pinMode(led1 , OUTPUT); /*led1'in bağlı olduğu 2 nolu port çıkış olarak ayarlandı*/
pinMode(led2 , OUTPUT); /*led2'in bağlı olduğu 3 nolu port çıkış olarak ayarlandı*/
pinMode(led3 , OUTPUT); /*led3'in bağlı olduğu 4 nolu port çıkış olarak ayarlandı*/
pinMode(led4 , OUTPUT); /*led4'in bağlı olduğu 5 nolu port çıkış olarak ayarlandı*/
pinMode(buzzer1 , OUTPUT);/*buzzer'ın bağlı olduğu 6 nolu port çıkış olarak ayarlandı*/
pinMode(trigger_pin1 , OUTPUT);/*sensörün trig ucunun bağlı olduğu 8 nolu port çıkış olarak ayarlandı*/
pinMode(echo_pin1 ,INPUT);/*sensörün echo ucunun bağlı olduğu 9 nolu port giriş olarak ayarlandı*/

pinMode(led_a , OUTPUT); /*led1'in bağlı olduğu 10 nolu port çıkış olarak ayarlandı*/
pinMode(led_b , OUTPUT); /*led2'in bağlı olduğu 11 nolu port çıkış olarak ayarlandı*/
pinMode(led_c , OUTPUT); /*led3'in bağlı olduğu 12 nolu port çıkış olarak ayarlandı*/
pinMode(led_d , OUTPUT); /*led4'in bağlı olduğu 13 nolu port çıkış olarak ayarlandı*/
pinMode(buzzer2 , OUTPUT);/*buzzer'ın bağlı olduğu 7 nolu port çıkış olarak ayarlandı*/
pinMode(trigger_pin2 , OUTPUT);/*sensörün trig ucunun bağlı olduğu 0 nolu port çıkış olarak ayarlandı*/
pinMode(echo_pin2 ,INPUT);/*sensörün echo ucunun bağlı olduğu 1 nolu port giriş olarak ayarlandı*/

Serial.begin(9600); /*monitörü seri iletişimle bağlantıya açar*/
  
}
  
void loop()/*Ana program bloğu*/
{
digitalWrite(trigger_pin1 , HIGH);
delayMicroseconds(1000);/*1000 microsaniyelik gecikme sağlar*/
digitalWrite(trigger_pin1 , LOW);
sure1 = pulseIn(echo_pin1 , HIGH); /*trig kısmından ses dalgası yollandıktan sonra cisimden yansıyıp geri gelmesinin arasında geçen süre*/ 
mesafe1 = (sure1/2) / 29.1; /*29.1 değeri ortamdaki ses hızının sıcaklığa bağlı değişimi sonucu belirli birkaç formül neticesinde türetilmiş olan bir değerdir*/
                          /*2 ile bölüyoruz çünkü ses gidip geliyor yani mesafe “x” ise “2x” yol kat ediyor.Bu yüzden 2 ile bölüyoruz.*/
Serial.println(mesafe1); /*cm cinsinden uzaklığı göster*/

if (mesafe1 <= 10) /*engel 10 cm veya 10 cm den daha yakın mesafede ise*/
{
digitalWrite(led1 , HIGH); /*led1 yanar(HIGH gerilim seviyesidir)*/
digitalWrite(buzzer1 , HIGH);/*buzzer1 ses çıkarır*/
delay(50);/*50 microsaniyelik gecikme*/
digitalWrite(led1 , LOW); /*gerilimi LOW yaparak Led1 söner*/
digitalWrite(buzzer1 , LOW); /*buzzer1 ses çıkarmaz*/
delay(70);/*70 microsaniyelik gecikme*/
}
else if (mesafe1 <=25)
{
digitalWrite(led2 , HIGH);
digitalWrite(buzzer1 , HIGH);
delay(50);
digitalWrite(led2 , LOW);
digitalWrite(buzzer1 , LOW);
delay(150);/*150 microsaniyelik gecikmeli*/
}
else if ( mesafe1 <=50)
{
digitalWrite(led3 , HIGH);
digitalWrite(buzzer1 , HIGH);
delay(50);
digitalWrite(led3 , LOW);
digitalWrite(buzzer1 , LOW);
delay(200);
}
else
{
digitalWrite(led4 , HIGH);/* 50 cm den daha uzak mesafelerde led4 yanacak*/
delay(1000);/*1000 micro saniye yani 1 saniye gecikme*/
digitalWrite(led4 , LOW);  
}


digitalWrite(trigger_pin2 , HIGH);
delayMicroseconds(1000);/*1000 microsaniyelik gecikme sağlar*/
digitalWrite(trigger_pin2 , LOW);
sure2 = pulseIn(echo_pin2 , HIGH); /*trig kısmından ses dalgası yollandıktan sonra cisimden yansıyıp geri gelmesinin arasında geçen süre*/ 
mesafe2 = (sure2/2) / 29.1; /*29.1 değeri ortamdaki ses hızının sıcaklığa bağlı değişimi sonucu belirli birkaç formül neticesinde türetilmiş olan bir değerdir*/
                          /*2 ile bölüyoruz çünkü ses gidip geliyor yani mesafe “x” ise “2x” yol kat ediyor.Bu yüzden 2 ile bölüyoruz.*/
Serial.println(mesafe2); /*cm cinsinden uzaklığı göster*/

if (mesafe2 <= 10) /*engel 10 cm veya 10 cm den daha yakın mesafede ise*/
{
digitalWrite(led_a , HIGH); /*led1 yanar(HIGH gerilim seviyesidir)*/
digitalWrite(buzzer2 , HIGH);/*buzzer1 ses çıkarır*/
delay(50);/*50 microsaniyelik gecikme*/
digitalWrite(led_a , LOW); /*gerilimi LOW yaparak Led_a söner*/
digitalWrite(buzzer2 , LOW); /*buzzer1 ses çıkarmaz*/
delay(70);/*70 microsaniyelik gecikme*/
}
else if (mesafe2 <=25)
{
digitalWrite(led_b , HIGH);
digitalWrite(buzzer2 , HIGH);
delay(50);
digitalWrite(led_b , LOW);
digitalWrite(buzzer2 , LOW);
delay(150);/*150 microsaniyelik gecikmeli*/
}
else if ( mesafe2 <=50)
{
digitalWrite(led_c , HIGH);
digitalWrite(buzzer2 , HIGH);
delay(50);
digitalWrite(led_c , LOW);
digitalWrite(buzzer2 , LOW);
delay(200);
}
else
{
digitalWrite(led_d , HIGH);/* 50 cm den daha uzak mesafelerde led4 yanacak*/
delay(1000);/*1000 micro saniye yani 1 saniye gecikme*/
digitalWrite(led_d , LOW); 
}
}