Posted by : MC 14 Kasım 2015 Cumartesi

Merhabalar arkadaşlar,

Bu yazımızda ultrasonik sensörlerden ve bu sensörlerin arduino ile kullanılmasından bahsedeceğiz.
Ultrasonik sensörleri alarm sistemi olarak,engelden kaçan robot yapımında,mesafe uzaklığı ölçmede kullanabilirsiniz.

Nedir bu ultrasonik sensör ve nasıl çalışır ?

Ultrasonik sensörler, ultrasonik ses dalgaları göndererek bu dalgaların geri döünşleri yani eko yapmalarını beklerler.Bekleme süreleri sırasında eğer ki bir cisimden ses dalgası geri dönüyorsa bize geri bildirimde bulunurlar.Ultrasonic sensör içerisinde bulunan işlemci ile sesin ne kadar sürede geri döndüğü bilgisi tutulur ve bu bilgi bize pwm yani pulse olarak geri döndürülür.




Projemizde parallax ping sensörü üzerinden cisimlerin mesafe bilgilerini alacağız.Bunun için 7 numaralı pinimizi hem input hemde output olarak kullanacağız.Parallax ultrasonik sensör üzerinden veri okuyabilmemiz için, sensöre 5 mikrosaniye kadar dijital 1 yani HIGH değeri göndermemiz gerekiyor.Akabinde 7 numaralı pinimizi input pini olarak tanımlayacağız ve pulseIn() fonksiyonu dönen pulse süresi ile sensörün geribildirimi mesafe olarak alacağız.


const int sinyal=7; // sinyalimizin bize geleceği pini seçtik

void setup()
{
}
unsigned long ping()// sensörden dönen bilgiyi bize mesafe olarak döndürecek olan fonksiyonumuzu tanımladık
{
     pinMode(sinyal,OUTPUT);//sinyal pinimizi çıkış olarak atadık
    digitalWrite(sinyal,LOW);// 7 numaralı pinimize dijital 0 gönderdik
    delayMicroseconds(2);// 2 mikro saniye gecikme
    digitalWrite(sinyal,HIGH);// 7 numaralı pinimize dijital 1 gönderdik
    delayMicroseconds(5);
    digitalWrite(sinyal,LOW);//5 mikrosaniye boyunca sensöre dijital 1 verdik ve ölçüm yapmasını istedik.
    pinMode(sinyal,INPUT);//7 numaralı pinimizi giriş olarak değiştirdik
    digitalWrite(sinyal,LOW);// pinimizi dijital 0 yaptık ve pulse bekliyoruz
    return pulseIn(sinyal,HIGH);//7 numaralı pinin lowdan high olana kadar olan zaman yani sensör değeri
}
void loop()
{
    int range =ping() / 29;// sensörden dönen pulse süresini aldık
    delay(50);//50 ms gecikme
}

Yukarıdaki koddar 29 ile neden böldüğümüz aklınıza gelebilir.Parallax sensörün bizen döndürdüğü her pulse 29 microsaniyesi 1 cm ye denk gelmektedir.Bizde gelen süreyi cm ye çevirmek için gelen değeri 29 ile bölmekteyiz.

yorumlarınız bizim için önemli

Bültene abone ol | Yorumlara abone ol

ELEKTRO BLOGGER A HOŞGELDINIZ

ARAMA YAP

EN COK OKUNANLAR

- Copyright © ELEKTRO-BLOGGER Blogger