Arduino İle PIR Sensörü Nasıl Kullanılır?

PIR (pasif kızılötesi) sensörler, tüm nesnelerden yayılan ısıyı ölçmek için kızılötesi algılamayı kullananan, genellikle hırsız alarm sistemlerinde ve kameralarda yer alan kızılötesi ışınımı kullanan devrelerdir. Sensör tarafından herhangi bir ısı veya enerji yayılmadığı için bu sensörler pasif kızılötesi olarak adlandırılırlar. PIR sensörü genellikle Pasif Kızılötesi, Pyroelektrik veya IR hareket sensörü olarak bilinir.

PIR Hareket Sensörleri Nasıl Çalışır?

Pasif Kızılötesi sensörler, IR ışığı yayan nesnelerin (insan vücudu gibi) hareketini algılayabilir. Bu nedenle, güvenlik sistemlerinde insan hareketini veya doluluğunu algılamak için bu sensörleri kullanmak çok yaygındır. Bu sensörlerin ilk kurulumu ve kalibrasyonu yaklaşık 10 ila 60 saniye sürer.

HC-SR501’in kızılötesi görüntüleme sensörü, ortamdaki hareketi algılamak için verimli, ucuz ve ayarlanabilir bir modüldür. Bu modülün küçük boyutu ve fiziksel tasarımı, projenizde kolayca kullanmanıza olanak tanır.

PIR hareket algılama sensörünün çıkışı, doğrudan Arduino (veya herhangi bir mikrodenetleyici) dijital pinlerinden birine bağlanabilir. Sensör tarafından herhangi bir hareket algılanırsa bu pin değeri “1” olarak ayarlanır. Kart üzerindeki iki potansiyometre, bir hareket algıladıktan sonra hassasiyeti ve gecikme süresini ayarlamanıza olanak tanır.

Pır Sensörü

PIR modülleri, insan vücudundan yayılan kızılötesinden doluluk ve hareketi algılayan pasif bir kızılötesi sensöre sahiptir. Bu modülü güvenlik sistemlerinde, akıllı aydınlatma sistemlerinde, otomasyonda vs. kullanabilirsiniz. Piyasada farklı PIR modülleri mevcuttur ancak hepsi temelde aynıdır. Hepsinin en az bir Vcc pini, GND pini ve dijital çıkışı(sinyal) vardır. Bu modüllerin bazılarında sensör üzerinde görüş açısını iyileştiren mercek benzeri bir top bulunmaktadır.

PIR Pinleri-Arduinodestek
PIR Sensör Pinleri

Arduino ile PIR Sensörü Kullanımı

PIR Bağlantı Şeması

PIR çıkışını herhangi bir dijital pine bağlayabilirsiniz.

Bu modülün arkasında bir jumper var. Jumper’ı L konumuna getirirseniz, hareket algılandığında sensör “geçiş yapar” (durum değiştirir). Bunun pratik uygulamalarda pek kullanılması olası değildir. Bu moda, tetiklemeyen veya Tek Tetikleme modu denir.

Jumper’ı H konumuna getirmek, daha olağan sensör mantığına neden olacaktır. Sensör, hareket algılandığında açılır ve son hareket algılandıktan bir süre sonra kapanır. Bu sensör, her hareket algılandığında zamanlayıcıyı sıfırlayacaktır (aksi halde çıkışı kapatacaktır); bu, örneğin, ünite sıfırlanırken ışıkların yanıp sönmesini istemediğiniz oda doluluk aydınlatma kontrolü için geçerli olacaktır. Buna Yeniden Tetikleme modu denir. (Tekrarlı Tetik Modu).

Bu modülün arkasında ayrıca iki adet potansiyometre bulunmaktadır. HASSASİYET potansiyometresini değiştirerek sensörün hassasiyetini azaltabilir veya artırabilirsiniz (saat yönünde artış) ve ayrıca TIME potansiyometresini değiştirerek hareket algılamadan sonraki çıkış gecikmesi ayarlayabilirsiniz.


int ledPin = 13;                // LED 
int pirPin = 2;                 // PIR Çıkış Pini
int pirStat = 0;                   // PIR durumu
void setup() {
 pinMode(ledPin, OUTPUT);     
 pinMode(pirPin, INPUT);     
 Serial.begin(9600);
}
void loop(){
 pirStat = digitalRead(pirPin); 
 if (pirStat == HIGH) {            // Eğer hareket tespit edilirsin
   digitalWrite(ledPin, HIGH);  // Led yak
   Serial.println("Hey I got you!!!");
 } 
 else {
   digitalWrite(ledPin, LOW); // hareket yoksa led kapat
 }
} 

Uygun kalibrasyon için, PIR sensörünün önünde 15 saniyeye kadar (Pin 13 kapatılana kadar) herhangi bir hareket olmamalıdır. Bu sürenin ardından sensör, görüş alanının anlık görüntüsünü alır ve hareketleri algılayabilir. PIR sensörü bir hareket algıladığında çıkış YÜKSEK olacaktır, aksi takdirde DÜŞÜK olacaktır.