Apartmana girdiğinizde ışık kendiliğinden nasıl yanıyor? Veya hırsız alarmları hareket eden birini zifiri karanlıkta nasıl görüyor? Cevap: PIR Sensörü. Bu teknoloji, canlıların yaydığı vücut ısısını (Kızılötesi Enerji) algılayarak çalışır.

1. O Beyaz Kapak Ne İşe Yarıyor?

Sensörün üzerindeki o beyaz, petek dokulu kubbe sadece süs değildir. O bir Fresnel Lens'tir. Ortamdaki kızılötesi ışınları toplayıp sensörün tam kalbine odaklar.

FRESNEL Algılama Alanı (Konik) Hareket (Isı Değişimi) ALARM! Sensör ısı değişimini
fark eder.
İlginç Bilgi: Sensörün önünde hareketsiz durursanız sizi görmezden gelir. Çünkü o sadece "değişimi" (Delta) algılar. El salladığınız anda tekrar sizi yakalar. 👋

2. Turuncu Vidalar Ne İşe Yarar?

HC-SR501 modülünün arkasında iki adet turuncu potansiyometre vardır. Bunları karıştırmak çok kolaydır, dikkatli bakın.

1. Zaman Ayarı (Time Delay)

Sensör hareketi gördükten sonra çıkışın ne kadar süre açık kalacağını belirler.

  • Sola Çevir: 3 Saniye (En az)
  • Sağa Çevir: 5 Dakika (En çok)
2. Hassasiyet (Sensitivity)

Sensörün ne kadar uzaktaki hareketi göreceğini belirler.

  • Sola Çevir: 3 Metre (Sadece yakını gör)
  • Sağa Çevir: 7 Metre (Uzağı da gör)

3. Arduino Bağlantısı

PIR sensörü dijital bir sensördür. Hareket varsa "1" (HIGH), yoksa "0" (LOW) verir. Çok basittir.

ARDUINO UNO 5V GND D2 OUT VCC GND
Dikkat: Pin sıralaması her modelde aynı değildir! Bazı modellerde (GND-OUT-VCC) şeklinde olabilir. Kapağı hafifçe kaldırıp PCB üzerindeki yazıları kontrol edin.

4. Yazılım (Hırsız Alarmı)

Bu kod, hareket algıladığında Seri Monitör'e yazar ve (varsa) 13. pindeki LED'i yakar.

PIR_Test.ino C++
const int pirPin = 2;    // Sensörün çıkış pini
const int ledPin = 13;   // Dahili LED
int hareketDurumu = 0;   // Hareket var mı?

void setup() {
  pinMode(pirPin, INPUT);  // Sensör veri GÖNDERİR (Giriş)
  pinMode(ledPin, OUTPUT); // LED ışık VERİR (Çıkış)
  Serial.begin(9600);
  
  Serial.println("Sensor Kalibrasyonu (30sn bekleyin)...");
  delay(30000); // PIR sensörün ısınması ve ortamı tanıması için süre
  Serial.println("HAZIR!");
}

void loop() {
  hareketDurumu = digitalRead(pirPin);

  if (hareketDurumu == HIGH) {
    digitalWrite(ledPin, HIGH);   // LED Yak
    Serial.println("!!! HAREKET ALGILANDI !!!");
    
    // Hareket bitene kadar bekleme yapmayız, 
    // sensörün "Time Delay" ayarı süreyi belirler.
  } 
  else {
    digitalWrite(ledPin, LOW);    // LED Söndür
  }
}
        

5. Sensör Sürekli Yanık Kalıyor?

PIR sensörüne ilk elektrik verdiğinizde ortamın "ısı haritasını" çıkarmak için yaklaşık 30-60 saniye zamana ihtiyaç duyar. Bu sürede rastgele alarmlar verebilir. Sabırlı olun.

Modülün köşesinde 3 pinli sarı bir jumper vardır.
H (High - Repeatable): Hareket devam ettiği sürece çıkış hep "1" kalır. (Önerilen)
L (Low - Non-Repeatable): Hareket olsa bile çıkış bir kere "1" olur, sonra "0"a düşer ve tekrar algılar.