Bu yazımda hareket algıladığında dijital çıkış veren PIR Sensörü uygulaması yapacağız. Amacımız hareket algılandığında çıkış olarak led yakılması.
Fritzing devre şeması için kusura bakmayın, herşeyler var bi'tek PIR yok.
PIR SENSÖRÜ NEDİR ?
Orjinal ismi Passive InfraRed Sensor yani Pasif Kızılötesi Sensör olan bu ekipman objelerden yayılan kızılaltı (IR) ışın değişimini tespit etmek için bir Fresnel lens ve IR’ye duyarlı sensör yardımıyla, 6 metreye kadar mesafedeki hareketleri algılayabilir; ucuzdur, kullanımı kolaydır; alarm sistemleri, hareketle aktif olan ışıklar gibi uygulamalar için idealdir.
Sensörün başlığını açarsak üzerinde bulunan 3 bacağın ne ile alakalı bacaklar olduğunu görebiliriz.
Üstten baktığımızda en soldaki pin TOPRAK, en sağdaki pin +VCC, ortadaki pin de DATA çıkışıdır.Hareket varken DATA çıkışı '1', yokken '0' olmaktadır.
PIR sensörleri bir mikrodenetleyiciye bağlı olmadan kendi başlarına çalışabilen elemanlardır. Bu sayede satın aldığımız PIR sensörünü önce kendimiz test edebiliriz. Sensörümüze verdiğimiz besleme ile DATA çıkışının ucuna bir LED bağlayarak çalışıp çalışmadığına bakabiliriz. Sensörün arkasında 2 adet trimer var ve bu test aşamasında trimerlerin değerlerini küçük bir tornavida ile değiştirerek istenilen hassasiyete ve DATA çıkışının istenilen zaman kadar '1' olmasını sağlayabiliriz.
Uygulamamızın kodlarına bakacak olursak...
int pirPin = 3; // PIR pin
int ledPin = 4; // LED pin
int deger = 0;
void setup() {
pinMode(pirPin, INPUT); // PIR Pin'i giriş yapılıyor
pinMode(ledPin, OUTPUT); // LED Pin'i çıkış yapılıyor
Serial.begin(9600); //Serial Porttan veri göndermek için baundrate ayarlanıyor.
}
void loop(){
deger = digitalRead(pirPin); // Dijital pin okunuyor
Serial.println(deger); // Okunan değer seri porttan okunuyor.
if (deger == HIGH) {
digitalWrite(ledPin, HIGH);
}
else{
digitalWrite(ledPin,LOW); // Eğer okunan değer 0 ise LED söndürülüyor.
}
}
Programımızı bu şekilde bırakırsak trimerlerin ayarlarına bağlı olarak çalışır sensörümüz. Bu haliyle bırakırsak Arduino kullanmamızın bir mantığı olmaz. O yüzden sizler "digitalWrite (ledPin,HIGH)" olan kısmın altına "delay(istenilen zaman)" kodunu ekleyerek hareket algılandıktan sonra ledin 1 olma süresini kendiniz ayarlayabilirsiniz.
Bu da videomuz ;
Bu uygulamada yardımcı olan arkadaşım Aykut KELEŞ'e teşekkür ederim.
Kaynak olarak kullandığım ve daha detaylı bilgi edinmek isteyenler için bu sitelerin linkleri;
http://www.mcu-turkey.com/arduino-pir-sensor-kullanimi/
https://learn.adafruit.com/pir-passive-infrared-proximity-motion-sensor/overview
Merhaba
YanıtlaSilPır sensörü ile sd karttan müzik çalmayı birleştirmek istiyorum bu konuda yardımcı olma imkanınız olur mu? sensör gördüğünde sd karttaki müzik çalacak şeklinde.
Aynı konuyla ilgili bende kafa patlatıyorum..
SilHatta ilk projem şu an..
Brnim derdimde sensör her algıladığında 10sn hareket algılasada 10sn sonra kapanması..
Yada sadece dfplayermini next tuşunu tetikledikten sonra kapanması...
Ve 10sn sonra aynı işlemi tekrar etmesi..
Burdaki sıkıntı şu
Sensöre bir türlü next yaptıramadım..
Yaptırsamda her algılamada next yapıyor..
Aynı konuyla ilgili bende kafa patlatıyorum..
SilHatta ilk projem şu an..
Brnim derdimde sensör her algıladığında 10sn hareket algılasada 10sn sonra kapanması..
Yada sadece dfplayermini next tuşunu tetikledikten sonra kapanması...
Ve 10sn sonra aynı işlemi tekrar etmesi..
Burdaki sıkıntı şu
Sensöre bir türlü next yaptıramadım..
Yaptırsamda her algılamada next yapıyor..
Aynı konuyla ilgili bende kafa patlatıyorum..
SilHatta ilk projem şu an..
Brnim derdimde sensör her algıladığında 10sn hareket algılasada 10sn sonra kapanması..
Yada sadece dfplayermini next tuşunu tetikledikten sonra kapanması...
Ve 10sn sonra aynı işlemi tekrar etmesi..
Burdaki sıkıntı şu
Sensöre bir türlü next yaptıramadım..
Yaptırsamda her algılamada next yapıyor..
Merhaba
YanıtlaSilBen pır sensörü ve mesafe sensörünü bir arada kullanmak istiyorum.Yani pır hareketi algıladığında mesafe sensörünü tetikleyerek mesafe sensörünün çalışmasını sağlamalı.
Yardımlarınızı bekliyorum ..Şimdiden teşekkürler
if koşulu oluşturun ve bu koşulu pir sensörüne bağlayın. Mesafe ölçmek için bir function oluşturun ve bu functionı daha önce oluşturduğumuz koşulun içine koyun. Böylelikle sadece koşul sağlandığında (pir sensörü hareket algıladığında) mesafe sensörü ölçüm yapabilecektir.
SilPır sensörün bacaklarını uzatabilecegimiz bir aparat varmı
YanıtlaSilPır sensörün bacaklarını uzatabilecegimiz bir aparat varmı
YanıtlaSilkablo lehimleyerek istediğin kadar uzatabilirsin.aparata gerek yok 😊
SilBu yorum yazar tarafından silindi.
YanıtlaSilMerhaba,Kodların doğruluğundan emin misiniz sadece yazdığınız şekilde mi yazmamız gerekiyor ?
YanıtlaSil