PIR kepanjangannya adalah Passive infrared sensor, sensor ini digunakan untuk mendeteksi gerakan. Sensor ini mengukur sinar inframerah yang dikeluarkan oleh objek (seperti manusia, binatang, dll). Jadi berdasarkan konsep Fisika, semua objek yang berada pada suhu di atas suhu mutlak (suhu mutlak adalah 0 K atau -273,15 C) akan memancarkan sinar inframerah, sinar inilah yang ditangkap oleh sensor PIR. Perhatikan sensor PIR berikut ini:
Gambar 1. Sensor PIR
Output dari sensor PIR adalah digital, artinya HIGH dan LOW. Kondisi HIGH terjadi jika sensor ini mendeteksi adanya gerak sedangkan jika tidak ada gerakan maka kondisinya LOW.
Koneksi sensor PIR dengan Arduino
Sensor PIR bekerja pada tegangan 5V jadi Vcc nya kita hubungkan dengan pin 5V pada Arduino, supaya lebih jelas berikut ini koneksi tiap pinnya dengan Arduino:
Tabel 1. Koneksi tiap pin sensor PIR dengan Arduino
Rangkaiannya dapat dilihat pada gambar di bawah ini:
Gambar 2. Koneksi sensor PIR dengan Arduino
Program deteksi gerak dari serial monitor
1. Setalah rangkaian pada gambar 2 dibuat, selanjutnya ditulis koding di bawah ini pada IDE Arduino:
//Blog: pauzan.com //Youtube: Muhammad Pauzan /* * masalah yang selalu HIGH, atur potensiometer ke posisi minimum * potensiometer pertama adalah sensitivity, artinya terkait rentang jarak yang dapat dideteksi (approximate 7m),atur pada nilai minimum * potensiometer kedua adalah terkait dengan delay waktu, pada nilai minimum delaynya 5 detik pada maks delaynya 200 detik */ int sensor=7; //output sensor PIR ke pin7 Arduino int sensor_value; //variable untuk menyimpan nilai pembacaan sensor void setup() { pinMode(sensor,INPUT); // pin 7 sebagai input Serial.begin(9600); // menginisiasi komunikasi serial dengan laptop } void loop() { sensor_value=digitalRead(sensor); // membaca nilai dari pin 7 Serial.println(sensor_value); }
2. Upload kode tersebut, klik kanan atas pada serial monitor. Tampilannya adalah sebagai berikut:
Gambar 3. Tampilan pembacaan sensor PIR pada serial monitor
Program deteksi gerak menggunakan Buzzer dan LED
1. Selanjutnya kita buat program deteksi gerak dengan tanda suara dari buzzer dan cahaya dari LED, koneksi tiap pin pad akomponennya dapat dilihat pada tabel di bawah ini:
Tabel 2. Koneksi sensor PIR, Buzzer dan KED ke Arduino Uno
Supaya lebih jelas, berikut ini adalah rangkaiannya:
Gambar 4. Deteksi gerak menggunakan sensor PIR dengan Buzzer dan LED
2. Atur potensiometer sensitivitas dan potensiometer delay waktu pada posisi minimum, perhatikan gambar di bawah ini:
Gambar 5. Potensiometer pada posisi minimum
3. Buat kode program di bawha ini menggunakan IDE Arduino:
//Blog: pauzan.com //Youtube: Muhammad Pauzan /* * masalah yang selalu HIGH, atur potensiometer ke posisi minimum * potensiometer pertama adalah sensitivity, artinya terkait rentang jarak yang dapat dideteksi (approximate 7m),atur pada nilai minimum * potensiometer kedua adalah terkait dengan delay, pada nilai minimum delaynya 5 detik pada maks delaynya 200 detik */ int sensor=7; //output sensor PIR ke pin7 Arduino int sensor_value; //variable untuk menyimpan nilai pembacaan sensor const int Buzzer = 2; //pin 2 untuk buzzer const int LED = 3; //pin 3 koneksi ke LED void setup() { pinMode(sensor,INPUT); // pin 7 sebagai input Serial.begin(9600); // menginisiasi komunikasi serial dengan laptop pinMode(Buzzer, OUTPUT); //Buzzer dijadikan output pinMode(LED, OUTPUT); } void loop() { sensor_value=digitalRead(sensor); // membaca nilai dari pin 7 if(sensor_value == HIGH){ //jika ada gerakan digitalWrite(Buzzer, HIGH); digitalWrite (LED, HIGH); Serial.println(sensor_value); delay(2000); }else{ //jika tidak ada gerakan digitalWrite(Buzzer, LOW); digitalWrite(LED, LOW); Serial.println(sensor_value); // print output sensor ke serial monitor delay(2000); } }
4. Upload program di atas ke Arduino, hasilnya dapat dilihat pada gambar di bawah ini:
Gambar 6. Output suara dan cahaya saat mendeteksi gerak oleh sensor PIR