PENJELASAN
Sensor PIR (Passive Infra Red) adalah sensor yang digunakan untuk mendeteksi adanya pancaran sinar infra merah dari suatu object. Sensor PIR bersifat pasif, artinya sensor ini tidak memancarkan sinar infra merah tetapi hanya menerima radiasi sinar infra merah dari luar.
Sensor PIR |
Sensor ini biasanya digunakan dalam perancangan detektor gerakan berbasis PIR. Karena semua benda memancarkan energi radiasi, sebuah gerakan akan terdeteksi ketika sumber infra merah dengan suhu tertentu (misal: manusia) melewati sumber infra merah yang lain dengan suhu yang berbeda (misal: dinding), maka sensor akan membandingkan pancaran infra merah yang diterima setiap satuan waktu, sehingga jika ada pergerakan maka akan terjadi perubahan pembacaan pada sensor.
Sensor PIR terdiri dari beberapa bagian yaitu :
- Lensa Fresnel
- Penyaring Infra Merah (Sensor)
- Sensor Pyroelektrik (Sensor)
- Penguat Amplifier
- Komparator
Blok Diagram |
JARAK PANCAR
Sensor PIR memiliki jangkauan jarak dan sudut pembacaan yang bervariasi, tergantung karakteristik sensor. Proses penginderaan sensor PIR dapat digambarkan sebagai berikut:
Pancaran Signal |
Ilustrasi |
Pada umumnya sensor PIR memiliki jangkauan pembacaan efektif hingga 5 meter, dan sensor ini sangat efektif digunakan sebagai human detector.
UJI COBA
Bahan yang diperlukan :
1. Arduino Uno
2. Komputer dan IDE Arduino
3. Sensor PIR
4. Resistor 330Ω
5. LED merah 5mm/3mm
6. Breadboard
7. Kabel Jumper
SKEMA
Rangkailah arduino dengan sensor PIR seperti rangkaian berikut:
Skema Rangkaian |
SOURCE CODE
#define waktutunda 5 //untuk 5 detik
const int ledPin = 13; //Menggunakan led built in Arduino
const int SensorPir = 2; //menggunakan pin ke-2 arduino
unsigned long now = millis();
unsigned long TriggerAkhir = 0;
boolean waktumulai = false;
void setup() {
Serial.begin(115200); //baut komunikasi serial monitor
pinMode(SensorPir, INPUT_PULLUP);
attachInterrupt(digitalPinToInterrupt(SensorPir), deteksigerakan, RISING);
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
}
void loop() {
now = millis();
if(waktumulai && (now - TriggerAkhir > (waktutunda*1000))) {
Serial.println("Tidak ada gerakan!");
digitalWrite(ledPin, LOW);
waktumulai = false;
}
}
void deteksigerakan() {
Serial.println("GERAKAN TERDETEKSI");
digitalWrite(ledPin, HIGH);
waktumulai = true;
TriggerAkhir = millis();
}
SELESAI
Kamu juga bisa bereksperimen dengan menambahkan komponen elektronika lain. Silahkan Share dan tinggalkan komentar untuk bertanya tanya.
comment 0 komentar
more_vert