HC-SR501 Nedir? Nasıl Çalışır? Arduino ile PIR Hareket Sensörü Kullanımı
HC-SR501 PIR Sensörü, ortamdaki canlıların yaydığı kızılötesi dalgaları (ısı değişimlerini) pasif olarak algılayan ve hareket durumunu dijital sinyale dönüştüren popüler bir modüldür. Akıllı ev otomasyonları, hırsız alarm sistemleri, otomatik yanan merdiven aydınlatmaları ve enerji tasarrufu sağlayan cihazlarda çok sık tercih edilir.
Arduino projelerinde bir canlının odaya girip girmediğini veya sensörün görüş alanından geçip geçmediğini anlamak, otonom sistemlerin tetikleyici unsurudur. HC-SR501, arkasında barındırdığı ayar potansiyometreleri sayesinde algılama mesafesini ve zaman gecikmesini harici bir koda ihtiyaç duymadan mekanik olarak ayarlamanıza olanak tanır. Bu yazıda HC-SR501’in ne olduğunu, çalışma mantığını, bacak yapısını ve Arduino ile hareket algılama uygulamasını adım adım inceleyeceğiz.
HC-SR501 Nedir ve Nasıl Çalışır?
PIR, İngilizce Passive Infrared Sensor (Pasif Kızılötesi Sensör) ifadesinin kısaltmasıdır. Bu sensörler dış dünyaya aktif olarak herhangi bir dalga veya ışık fırlatmazlar. Bunun yerine, mutlak sıfır derecenin üzerindeki her canlının (insanlar, hayvanlar vb.) çevreye yaydığı gözle görülmeyen kızılötesi ısı dalgalarındaki ani değişimleri yakalarlar.
Sensörün üzerinde bulunan beyaz, kubbe şeklindeki plastik kapak aslında bir Fresnel Merceğidir. Bu mercek, dışarıdan gelen dağınık kızılötesi ışınları toplayarak sensörün merkezindeki kristal piroelektrik algılayıcı yüzeye odaklar. Görüş alanında bir ısı değişimi (hareket) algılandığında modül çıkış pini otomatik olarak HIGH (5V) seviyesine yükselir.
Proje Uygulama Videosu
Bu sensörün Arduino ile bağlantı aşamalarını, hassasiyet ayarlarının nasıl yapıldığını ve canlı testini aşağıdaki uygulama videomuzdan detaylıca izleyebilirsiniz:
HC-SR501 Bacak Yapısı ve Fiziksel Ayarları
HC-SR501 modülünün üzerinde 3 adet bağlantı pini ve sensörün çalışma karakteristiğini değiştiren iki adet turuncu potansiyometre bulunur:
| Modül Pini | Görevi | Arduino Bağlantısı |
|---|---|---|
| VCC (+) | Besleme Girişi (5V - 20V) | Arduino 5V |
| OUTPUT (OUT) | Dijital Sinyal Çıkışı (Hareket varken 3.3V, yokken 0V) | Herhangi bir Dijital Pin (Örn: D2) |
| GND (-) | Topraklama Girişi | Arduino GND |
Hassasiyet ve Zaman Ayarı (Potansiyometreler)
- Mesafe (Hassasiyet) Ayarı: Genellikle soldaki potansiyometredir. Saat yönünde çevrildiğinde algılama mesafesi artar (maksimum 7 metreye kadar), saat yönünün tersine çevrildiğinde ise mesafe düşer (minimum 3 metre).
- Zaman Gecikmesi (Time Delay) Ayarı: Genellikle sağdaki potansiyometredir. Hareket algılandıktan sonra çıkış pininin ne kadar süre boyunca HIGH kalacağını belirler. Saat yönünde çevrildiğinde süre artar (maksimum 5 dakika), tersine çevrildiğinde süre kısalır (minimum 3 saniye).
Arduino ile HC-SR501 Kullanımı İçin Gerekli Malzemeler
| Gerekli Malzeme | Ürün Linki |
|---|---|
| Arduino Uno | Arduino Uno R3 Klon + USB Kablo |
| HC-SR501 PIR Sensörü | HC-SR501 PIR Hareket Sensör Modülü |
| Breadboard | Breadboard |
| Jumper Kablo | Jumper Kablo |
Arduino HC-SR501 Kod Örneği
HC-SR501 dijital bir çıkış verdiğinden harici hiçbir kütüphaneye ihtiyaç duyulmaz. Aşağıdaki kod, sensörden gelen veriyi sürekli dinler; hareket algılandığı anda dahili LED'i (Pin 13) yakar ve durumu Seri Monitör ekranına anlık olarak basar.
// Pin tanımlamaları
const int pirPin = 2; // Sensör çıkışının bağlı olduğu dijital pin
const int ledPin = 13; // Arduino üzerindeki dahili LED
int pirState = LOW; // Başlangıçta hareket yok kabul edilir
int val = 0; // Sensör durumunu okumak için değişken
void setup() {
pinMode(ledPin, OUTPUT); // LED pin çıkış olarak ayarlandı
pinMode(pirPin, INPUT); // PIR pin giriş olarak ayarlandı
Serial.begin(9600); // Seri haberleşme başlatıldı
}
void loop() {
val = digitalRead(pirPin); // Sensör verisi dijital olarak okundu
if (val == HIGH) { // Eğer hareket algılandıysa
digitalWrite(ledPin, HIGH); // LED'i yak
if (pirState == LOW) {
Serial.println("Hareket Algılandı! Alan ihlal edildi.");
pirState = HIGH; // Durumu güncelle
}
} else {
digitalWrite(ledPin, LOW); // Hareket bittiyse LED'i söndür
if (pirState == HIGH) {
Serial.println("Hareket Bitti. Alan Güvenli.");
pirState = LOW; // Durumu güncelle
}
}
}
Arduino Güvenlik ve Alarm Projeleri Kaynak Kodları
PIR sensörünün röle kartları ile 220V lamba kontrolü uygulamaları, buzzer entegrasyonlu alarm şemaları ve ESP8266/ESP32 ile geliştirilmiş Wi-Fi tabanlı bildirim sistemlerinin tüm açık kaynak kodlu taslaklarına projemizin GitHub deposundan erişebilirsiniz.
PIR Sensörü Kullanırken Sık Yapılan Hatalar ve Çözümleri
- İlk Isınma Süresini Unutmak: HC-SR501 güç verildikten sonraki ilk 30 ila 60 saniye boyunca ortamın kızılötesi haritasını çıkarır (kalibrasyon süresi). Bu esnada sensör rastgele HIGH ve LOW çıkışları verebilir. Bu bir arıza değildir, ısınma süresi beklenmelidir.
- Yalancı Tetiklemeler (False Trigger): Sensör doğrudan güneş alan pencerelerin önüne, klima menfezlerine, kalorifer peteklerine veya güçlü hava akımı olan yerlere kurulursa ortamdaki ani sıcaklık dalgalanmalarından dolayı rüzgarı veya ısıyı hareket gibi algılayabilir.
- Kablolama Hataları: Modülün bazı klon modellerinde plastik kapağın altındaki bacak isimlerinin sıralaması (VCC ve GND yerleşimi) değişiklik gösterebilir. Bağlantı yapmadan önce PCB üzerindeki baskıları mutlaka dikkatlice kontrol edin.
Robomer’de Bulabileceğiniz Diğer Hareket Sensörü Çeşitleri
HC-SR501 PIR Hareket Sensör Modülü
Mekanik potansiyometreleri ile mesafe ve zaman ayarı yapmaya izin veren, hobi elektroniğinin standart PIR hareket sensörü modeli.
Ürünü İncele
220V Hareket Pır Sensörü - Otomatik Lamba Sensörü
220V PIR hareket sensörü, ortamda hareket algıladığında bağlı olduğu lambayı otomatik olarak çalıştıran pratik bir otomasyon sensörüdür.
Ürünü İnceleSonuç
HC-SR501 PIR Sensörü, akıllı binalardan robotik sistemlere kadar geniş bir yelpazede güvenlik ve enerji verimliliği çözümleri üretmek için en ideal kompanenttir. Kodlamasının son derece yalın olması, donanım projelerine yeni başlayanların algoritma yeteneklerini pekiştirmesini sağlar. Projenizi daha akıllı ve güvenli kılacak tüm sensör çeşitlerine Robomer avantajlarıyla hızlıca ulaşabilirsiniz.
Otomasyon ve Akıllı Ev Projelerinizi Kurun
Geliştirme kartları, LCD / OLED ekranlar, röle modülleri ve projenizin ihtiyacı olan tüm kablolama elemanları Robomer güvencesiyle kapınızda.
Robomer Sensör Kategorisini İncele