Ana Sayfa Arduino Arduino ile Dinamik Far Asistanı ve Park Sensörü Projesi

Arduino ile Dinamik Far Asistanı ve Park Sensörü Projesi

8 min read
12
0
5,860

Merhaba arkadaşlar,

Bu yazımızda,Arduino ile park sensörü ve uzunları kapat uygulamasıyla karşınızdayız.Sizde Ultrasonik sensör kullanarak kendi park sensörünüzü yapabilir ve bununla birlikte LDR (Light Depented Resistance) kullanarak uzunları otomatik kapatıp kısa farları yaktırabilirsiniz.

Tavsiye Edilen Malzeme Linkleri ve Kullanılan Malzemeler

  • 1 Adet Arduino Uno
  • 1 Adet Ultrasonik Sensör
  • 1 Adet LDR
  • 1 Adet 2*16 LCD
  • 3 Adet LED
  • 1 Adet 10k direnç
  • 3 Adet 330 ohm direnç(330-390 ohm arası olabilir)
  • 1 Adet Buzzer

Öncelikle biraz sensörlerden bahsetmek istiyorum.Çoğu teknolojik icatta olduğu gibi bu sensörümüzde doğadan ilham alınarak bulunmuştur.En iyi örneği yarasalar ve yunuslar yaratılıştan bu yana bu teknikle yollarını buluyor ve nesnelerin yerlerini tespit ediyorlar.

  Ultrasonik Sensör

dd

Bu sensörle ölçüm yaparken aslında sensörümüz bize doğrudan mesafe bilgisini vermez.Bize verdiği değer gönderdiği ses dalgasının yansımasının geri dönüş süresidir.Biz de fizikteki en basit hareket denklemini kullanarak mesafeyi buluruz… X=V*t
Bu denklemde bildiğimiz tek şey sesin hızıdır V=343 m/s , t değerinide bize sensörümüz tarafından gelir ve mesafeyi bulmak için basit bir çarpma işlemi yapılır.Burada dikkat edilmesi gereken husus,sensörden gelen sürenin gidiş ve dönüş süresi olduğudur.Gidiş dönüşe eşittir.Yani bize sadece gittiği yada döndüğü süre lazım bunun için sensörden gelen t’yi ikiye bölmeyi unutmamak gerekir.Ve bir diğer husus mikrosaniye kullanımı yani saniyenin milyonda biri gibi küçücük bir zaman zarfında ses gönderip yankılanmasını dinliyoruz…

dd

LDR

                         Biraz da ldr (light depented resistance),yani ışığa bağımlı dirençden bahsedecek olursak.
dd

Elektrik devrelerin altın formulü olan V=I.R ‘dan sabit ve gerilimi veriyorken dirençte değişim varsa I akımı buna ters orantılı olarak değişecektir.Bizde bu değişimi analog girişimizden okuyayrak ışıktaki değişimi algılayıp,yapmamız gerekenleri yaptırıyoruz.

Devre Şeması

asd                                                                                                   Arduino Kodları

#define trigPin 4 // Trigger Pini (Ses gönderme)
#define echoPin 5 // Echo Pini (Yansıyan ses algılama)
#include <LiquidCrystal.h>
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
int ldr = 0;             //analog pin to which LDR is connected
int ldr_value = 0;        //variable to store LDR values
int kisa =13;
int uzun =6;
int stp = 3;
int bzr =2;
int maksimumMesafe = 200; // Maksimum mesafe. Farketmesi için uzak nesneler daha büyük olmalıdır. 
int minimumMesafe = 3; // Minimum mesafe 
long microsaniyeSure, cmMesafe; // Mesafe hesabında kullanılan değişkenler
int ldr_pin=A0;
int tonePin = 2;

byte possible_patterns[9] = {
B00000000, 
B00000001,
B00000011,
B00000111,
B00001111,
B00011111,
B00111111, 
B01111111, 
B11111111,
};


void setup() {
 Serial.begin (9600); // Seri iletişimi başlat
 pinMode(trigPin, OUTPUT); // Ses gönderme pin türünü çıkış olarak ayarla
 pinMode(echoPin, INPUT);  // Yansıyan ses algılama pin türünü giriş olarak ayarla
 lcd.begin(16, 2);
 pinMode(kisa, OUTPUT);
 pinMode(uzun, OUTPUT);
 pinMode(stp, OUTPUT);
 pinMode(bzr, OUTPUT);
 pinMode(tonePin, OUTPUT);
}

void loop() {
/* Aşağıda trigPin/echoPin döngüsü en yakın nesneden yansıyan sesin yansıma süresini hesaplar. */ 
 int ldr= analogRead(ldr_pin);
 Serial.println(ldr);
  
 
 
 digitalWrite(trigPin, LOW); // Hoparlör 2ms sessiz
 delayMicroseconds(2); 

 digitalWrite(trigPin, HIGH); // Hoparlör 10ms sesli
 delayMicroseconds(10); 
 
 digitalWrite(trigPin, LOW); // Hoparlör sessiz
 microsaniyeSure = pulseIn(echoPin, HIGH); // Mikrofonu dinle, yansıma süresini microsaniyeSure değişkenine al
 
// Serial.println(microsaniyeSure); // Sesin gitme ve geri yansıma süresi 

 cmMesafe = microsaniyeSure/58.3; // microsaniyeSure'dan cm olarak mesafeyi hesapla

 lcd.clear();

if (ldr >= 500) {
   digitalWrite(kisa ,HIGH);
   digitalWrite(uzun ,HIGH);
   lcd.setCursor(0,0);
   lcd.print("Uzunlar Acik");
  }
  
  
  if (ldr < 500) {
   digitalWrite(kisa ,HIGH);
   digitalWrite(uzun ,LOW);
   lcd.setCursor(0,0);
   lcd.print("Uzunlar Kapali");
   
  }
  
  
if (cmMesafe >= 15 && cmMesafe < 20){
   digitalWrite(stp ,LOW)  ;
   tone(tonePin,200000, 300);
   delay(100);
 } 
  
if (cmMesafe >= 10 && cmMesafe < 15){
   digitalWrite(stp ,LOW);
   tone(tonePin,200000, 50);
   delay(300);
}


if (cmMesafe >=5  && cmMesafe<10  ){
   digitalWrite(stp ,LOW);
   tone(tonePin, 200000,100);
}
if (cmMesafe < 5  ){
   digitalWrite(stp ,HIGH);
   tone(tonePin, 200000);
}
if (cmMesafe >20  ){
   digitalWrite(stp ,LOW);
    noTone(tonePin);
  
}
 
 /* Seri iletişimden ölçülen mesafeyi bilgisayara gönder */
  lcd.setCursor(0,2);
 lcd.print("Mesafe ");
 lcd.print(cmMesafe); //Mesafe bilgisi
 lcd.print(" "); // Birim değeri
 
 
 delay(1000);  //Sonraki ölçümden önce bekleme süresi. 
}

electronic_dslr_wallpaper

electronic_dslr_wallpaper (1)

qwer

Buna Benzer Yazılar Göster !
Daha Fazlasını Yükle - Konuk Yazar
Daha Fazla Göster -  Arduino

12 Yorumlar

  1. umut

    29 Nisan 2015 at 19:58

    Emiğine sağlık güzel olmuş …

    Reply

  2. bugra

    26 Mayıs 2015 at 20:40

    öncelikle projeniz çok guzel omus demek istiyorum.projenin kodlarını yazdım ama asagıda belittigim hataları verdi acaba ne yapabilirim.
    ultrasonic_araba.ino: In function ‘void setup()’:
    ultrasonic_araba:39: error: ‘tonePin’ was not declared in this scope
    ultrasonic_araba.ino: In function ‘void loop()’:
    ultrasonic_araba:56: error: ‘microsaniyeSure’ was not declared in this scope
    ultrasonic_araba:56: error: ‘pulseln’ was not declared in this scope
    ultrasonic_araba:57: error: ‘class HardwareSerial’ has no member named ‘printIn’
    ultrasonic_araba:58: error: ‘cmMesafe’ was not declared in this scope
    ultrasonic_araba:80: error: ‘tonePin’ was not declared in this scope
    ultrasonic_araba:86: error: ‘tonePin’ was not declared in this scope
    ultrasonic_araba:92: error: ‘tonePin’ was not declared in this scope
    ultrasonic_araba:97: error: ‘tonePin’ was not declared in this scope
    ultrasonic_araba:101: error: ‘tonePin’ was not declared in this scope
    ‘tonePin’ was not declared in this scope

    bu arada arduino ile ilgili tam bilgim yok.şimdiden tesekkurler

    Reply

    • sinan yılmaz

      26 Mayıs 2015 at 20:45

      https://yadi.sk/d/_ufBMe3SgtURT
      linkde arduino kod dosyası bulunmakta deneyebilrsin

      Reply

      • bugra

        26 Mayıs 2015 at 21:02

        çok tesekkur ettim derleyip yukledim şimdi deniyecem sensorleri

        Reply

    • gökhan

      3 Aralık 2016 at 23:58

      merhaba ilk öncelikle güzel bi çaşlısma olmus cok begendim kodlarda sıkıntı yasıyorum hata veriyorum kodları tekrardan bna meail atarsanız sevinirim mail adresinizi verebilirmisiniz

      Reply

  3. yusuf

    21 Ekim 2015 at 17:52

    bu sistem analizi ödevimde yardımcı olabilirmisiniz lütfen

    Reply

  4. burhan solmaz

    17 Nisan 2016 at 21:30

    bu projeyı yapıp gonderebılır mısınız hocam ?

    Reply

  5. Yiğit

    29 Mayıs 2016 at 18:10

    Hocam herşey tamam fakat LCD ekranda yazıyı okutamıyorum, çok acil yardımcı olabilecek var mı acaba?

    Reply

    • Bilal Kaya

      Bilal Kaya

      29 Mayıs 2016 at 20:25

      Lcd bağlantılarınızı tekrar kontrol etmenizi rica ediyoruz.

      Reply

  6. serkan

    4 Nisan 2017 at 18:23

    merhabalar cok guzel proje kurdum calıstırdımama lcd ekrana goruntu gelmıyor dolar ısareti var sebebı nedır acaba yardımcı olurmusunuz.

    Reply

    • Bilal Kaya

      Bilal Kaya

      24 Nisan 2017 at 14:49

      bağlantıları doğru yaptığınızdan emin olmanız gerekiyor.

      Reply

  7. hakan

    9 Ekim 2017 at 18:23

    merhabalar öncelikle böyle bir uygulama paylaşımı yaptığınız için teşekkür ederim projeyi yapmak istiyorum lakin bende proğramı derleyemeyenlerdenim sonrasında yukarıda verilen indirme linkinden bilgisayara yüklediğimizde çalışma oluşturulamadı hatası alıyorum buna tamam deyince taslak çalışma açılamadı hatası veriyor sorunun ne olduğunu anlayamadım yardımlarınız bekliyorum iyi günler…

    Reply

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bak Bakalım ?

RoboRace From Ege ’17

IEEE Ege Üniversitesi Öğrenci Kolu, Robotics and Automation Society tarafından ilk kez düz…