Sensor PIR (HC-SR501) digunakan untuk mendeteksi pergerakan benda yang ada di depannya. Sensor ini terbuat dari pyroelectric yang dapat mendeteksi radiasi sinar infra merah. Cara kerja sensor ini adalah dengan memancarkan sinar infra merah ke arah depan dan mendeteksi suatu objek yang ada di depannya dengan cara mendeteksi pantulannya (jika ada objek di depan sensor maka objek tersebut akan memantulkan sinar infra merah). Kurang lebih ilustrasinya ditunjukkan pada gambar di bawah.
Di pasaran sensor SR-HC501 ini sudah berwujud modul jadi Anda tinggal pakai saja. Sensor ini mampu mendeteksi pergerakan objek di depannya sejauh 5-7 m dengan beamwidth (sudut) 1100. Di modul sensor PIR ini ada 3 pinout,masing-masing adalah VCC, Vout, dan GND (jika Anda balik modul ini Anda akan menemukan tulisan Vcc, Vout dan GND pada pin yang bersesuaian). Jika menggunakan board Arduino, Anda cukup menghubungkan pin Vcc dan Gnd modul sensor ke pin Vcc dan Gnd board Arduino. Sedangkan pin ‘Vout’ adalah pin output dari sensor, yakni jika pergerakan (motion) di depan sensor, pin ini akan bernilai logic 1 (HIGH/5V) dan sebaliknya jika tidak ada pergerakan objek di depannya, pin Vout ini akan bernilai ‘0’ (LOW/0V). Hubungkan pin Vout ini ke salah satu pin Arduino, dan Anda tinggal membuat potongan program kecil untuk menangani perubahan pin Vout ini (otomatis merepresentasikan ada tidaknya objek yang bergerak di depan sensor PIR).
Alat dan Bahan
Untuk lebih memahami penggunaan sensor PIR, marilah kita membuat eksperimen sederhana. Dalam percobaan ini kita akan membutuhkan komponen-komponen sebagai berikut:
- Arduino Uno
- Sensor PIR (HC-SR501)
- Kabel jumper male to female
- LED
Sebelumnya buatlah koneksi antara sensor PIR dengan board Arduino sebagai berikut. Saya pikir Anda akan dapat merangkainya dalam waktu 5 menit (bahkan kurang 🙂 ).
Selanjutnya buka IDE Arduino Anda (dapat diunduh di arduino.cc), dan copy-kan listing program kecil sebagai berikut:
// Program motion detect dengan sensor PIR
// =======================================
int indikator = 13; // buat indikator LED
int inputVout = 2; // Vout PIR
int statusPIR = 0; // status logical
int data = 0; // variabel temporary utk menampung data PIR
void setup() {
pinMode(indikator, OUTPUT); //set pin 13 sbg output
pinMode(inputVout, INPUT); // set pin 2 sbg input
Serial.begin(9600); //serial monitor
}
void loop(){
data = digitalRead(inputVout); // baca input dr Vout
if ((data == HIGH) && (statusPIR == LOW)) { // cek jika ada pergerakan
digitalWrite(indikator, HIGH); // nyalakan led indikator di board Arduino
Serial.println("Motion detected!"); //buat monitor ke laptop
statusPIR = HIGH; //diset high spy tdk mendeteksi terus
} else {
if ((data == LOW) && (statusPIR == HIGH)){
digitalWrite(indikator, LOW); // matikan led indikator
Serial.println("Motion ended!"); //buat monitor ke laptop
statusPIR = LOW;
}
}
}
download sketch motion detect sensor PIR – Arduino di sini
Upload sketch (program ke atas) dengan menekan tombol upload atau melalui shortkey CTRL+U, kemudian aktifkan tools ‘Serial Monitor’ di IDE Arduino melalui menu Tools | Serial Monitor. Jika langkah-langkah di atas Anda lakukan dengan benar, maka tampilan di Serial Monitor akan seperti gambar di bawah (pastikan kabel USB antara laptop dan Arduino tetap terpasang). Cobalah untuk menggerakkan tangan tepat di depan sensor PIR dan amati perubahan di program Serial Monitor dan nyala LED. Selamat Anda sudah berhasil mendetekasi pergerakan objek, tinggal Anda kembangkan untuk keperluan yang lebih advanced.
Catatan : Penjelasan tiap baris program sudah tuliskan secara sederhana di samping baris program tersebut dengan dihului tanda ‘//’. Jika Anda membutuhkan sensor gerak PIR ini (HC-SR501) dapat membeli di sini
a Technopreneur – writer – Enthusiastic about learning AI, IoT, Robotics, Raspberry Pi, Arduino, ESP8266, Delphi, Python, Javascript, PHP, etc. Founder of startup Indomaker.com
gan,saya setyawan,saya mau tanya.saya lagi mw ngerjakan TA,TA saya judulnya aplikasi wsn untuk memonitoring kepadatan lalu lintas dengan board arduino,saya ingin memancarkannya dengan infra merah,itu gmn ya mas??apa bisa??
bisa aja sebenarnya, cuma infra red jarak efektif sensing-nya hanya sekitar 100cm. Bandingkan dg lebar jalan yg min 3m. Jd mnr sy kurang efektif utk menghitung jumlah kendaraan, kecuali misalnya ditaruh di kanan-kiri jalan. Alternatifnya bisa menggunakan sensor ultra sonik yg memiliki jangkauan sensing lbh panjang sampai 3m. Saran saya, kumpulin dulu parameter2 yg hendak di sensor, bagaimana kondisi lingkungan sekitar baru kemudian desain teknologi solusinya
mas, saya mw bli sensor PIR nya berapa ya, sxan mikrokontroller jg,,
jdi total brp ya ?
sensor PIR 50rb, arduino uno 170rb. Hubungi 081910026910 utk fast respon ya
itu cara penggunaannya gimana?? bisa gak kalo dikoneksikan ke delphi??
1. cara penggunaannya, kalo ada objek yg bergerak dlm area coverage sensor, maka pin Vout akan berubah logic menjadi ‘HIGH’. Ini kemudian diterjemahkan oleh Arduino sbg ‘motion detect’.
2. Bisa aja kalo mau dikoneksikan ke delphi. Tinggal ditambahi subrutin komunikasi serial di sisi Arduino dan komponen comport di sisi Delphi
mas saya ingin bertanya untuk TA, rencana ingin menggunakan sensor PIR untuk menghitung jumlah orang dalam ruangan. Apa ada solusi dalam pemrogramannya? Dalam 1 pintu ditaruh 2 sensor pir untuk laju masuk dan keluar orang, namun masih sulit dalam listing programnya. makasih
mungkin lebih tepatnya sensor infrared mbak, kalo sensor PIR kan lebih ke arah deteksi motion detector (deteksi pergerakan). Ntar kasih 2 sensor infrared, dan kasih jarak antar keduanya. Sebut saja sensor A di kiri dan B di kanan. Jika sensor aktif dari B ke A maka dianggap ada orang yg masuk ke dalam ruangan, dan sebaliknya jika sensor aktif dari A ke B maka dianggap ada orang yg keluar ruangan. Berikutnya tinggal ditambahkan/dikurangkan nilai dalam variabel ‘jumlah_orang’ di dalam ruangan sesuai kondisi sensor yg terdeteksi.
Ka bertanya lagi , dengan menggunakan Adjustable Infrared Sensor Switch (SKU:SEN0019) hanya terdetek jika tangan melewati depan sensor, maka diserial monitor muncul angka 1. Dan angka 0 jika tangan tidak melewati depan sensor. Untuk proses menggunakan 2 sensor, dari A ke B, dan B ke A masih belum paham ka. Mohon pencerahannya, makasih sebelumnya.
dilihat dari pin nya, misalnya pin digital 2 buat A, pin 3 buat B, kalo aktif pin 2 lebih dulu berarti pergerakan dari A ke B. Demikian sebaliknya
Mas, mau tanya, itu 2 sensor infrarednya harus pake masing2 2 receiver jg? apa ada sensor infrared khusus/jenisnya apa? terima kasih
kalo sensor PIR itu transmitter dan receiver udah jadi satu modul mas, tinggal pake aja
Bg udah pernah coba pakai sensor pir untuk mengontrol lampu ruangan?gimana hasilnya bg?
udah, ya bagus lah hasilnya 🙂
Arah pertanyaannya kemana nih mas?
boleh bertanya soal pengontrolan lampu ? saya masih awam. saya baru bisa sedikit. saya mau tanya gimana codingnya agar lampu bisa nyala terus pas ada orangnya dan mati pas tidak ada orangnya. selain pake delay apalagi yaa ? mohon bantuannya.
pake sensor PIR (Passive Infra Red) aja lebih mudah
mas saya mau buat tugas akhir tentang kran wudu otomatis dengan suara (doa wudu) dengan arduino. suaranya tu kita make apa ya. lalu bisa gak mas kira2 gimana programnya. please mas.
idenya sangat bagus mas, cuma implementasinya yang agak susah :). Challenge-nya gini mas, tiap orang warna suaranya beda, kalo pake arduino agak susah buat filter/sintesis suara. Yang kedua, doa itu kan dilafazkan dalam bahasa arab oleh orang indonesia yang notabene bukan native speaker. Bisa kebayang ada berapa variasi tuh yang harus difilter arduino.
Menurut saya, kerjaan spt di atas agak susah diimplementasikan dg arduino, paling ngga harus sekelas DSP (Digital Signal Prosessor) atau mungkin paling mudah adalah menggunakan smartphone Android, karena udah ada API untuk library speech recognition. Jangan pantang menyerah ya mas … idenya bagus tuh
iya kira-kira kalau hanya pake mp3 gtu bisa gak mas. soalnya kan tgl masukin ke mp3 tu doanya jadi nanti tgl dihub ke input arduino gitu mas. bisa gak tuh mas.
masalahnya gimana caranya mendeteksi perbedaan orang sedang baca doa atau orang sedang berbicara dengan temannya atau orang bergumam? Perlu semacam sound synthetizer atau voice recognition. Nah, utk kerjaan semacam ini Arduino ngga mampu, hrs menggunakan DSP atau smartphone. Tapi kalo mau dicoba dulu ya lebih baik, daripada penasaran
Bg boleh minta no hp nya atau wa atau pinnya, ada yg mau saya tanyakan ttg ta aaya menggunakan sensor pir?
untuk pertanyaan silahkan isi komentar aja ya, insya Allah segera saya respon. Untuk no WA ada di widget sebelah kanan blog ini, tapi hanya melayani orderan
Bg bagaimana supaya sensor pir itu ketika mendeteksi cuma membaca 1 deteksi saja?kan sensor pir ini bisa membaca 2 deteksi dalam pergerakan manusia?
tinggal diatur di programnya
Dan bagaimana caranya supaya ketika otang masuk ruangan lampu hidup, dan meninggalkan ruangan lampu mati dengan menggunakan sensor pir bg?
tinggal diatur di programnya aja bang
mas tau gak kira2 program sensor pir dengan motor servo dan output suara wtv020sd16p
dibikin tau aja mas, he he he
Bg bisa contohin gak listing satu deteksi sensor pir cuma satu gak dua?mohon bantuannya bg
di atas kan sudah ada contohnya, tinggal dikembangkan aja sesuai kebutuhan
bisa gak mas programnya tu? please buat tugas akhir mas. udah mepet banget ni.
bisa aja
bisa kirimin programnya mas ke email saya
mas, mohon maaf, utk permintaan custom spt di atas ada harganya
*Anda sopan, kami segan
mas kok codingannya ada yang salah yaa.
pas mau verify ‘amp’ was not declare in this scope
sketch-nya copy dulu ke notepad baru pindahkan lagi ke IDE Arduino
Siang .. saya nia ..
Saya mau tanya .. bntr lagi saya harus persiapkan skripsi .. tp sama sekali blm ada ide yg mau di buat bisa bntu ngga ??
ada banyak mb, silahkan hubungi contact sy di widget sebelah kanan blog ini
bang, sintaknya koq ada yg slah yah ketika sy aploud d IDE arduino?
warning nya apa mas? coba sy cek
mengatur kepekaannya pada pir sensor nya gimana mas ?
ada dua trimpot di modul sensor PIR, yang satu buat ngatur kecepatan time respon, yang satunya buat ngatur sensitivitas (kepekaan) terhadap objek. Silahkan di-adjust sendiri trimpot2 tersebut sesuai kebutuhan
Mas,saya mau bikin penghitung jumlah orang masuk dan keluar menggunakan 1 sensor pir berbasis arduino dengan output LCD 2×16?klo emng bisa gimna input untuk arduinonya?
bisa mas, tapi harus 2 sensor. Input pin arduino dari output sensor PIR, cuma harus dibikin sketch handler-nya supaya bisa menghitung jumlah orang yg masuk dan keluar. Dikatakan orang masuk jika sensor PIR kiri lebih dulu detect daripada sensor kanan, dan sebaliknya, dikatakan oeang ‘keluar’ jika sensor PIR yg sebelah kanan lebih dulu kena object drpd yg kiri. Ntar tinggal sketch-nya counting aja
ini gimana ya mas posisi dari sensor pir nya ?
maksudnya gimana ya
mas kok listingannya atau codingannya error ya.. & itu maksudnya apa ya mas ?
oh, maaf mas, itu dari plugin wordpress-nya. Yg benar && diganti && (logic AND). Sudah saya sediakan link download sketch-nya juga
Mas saya mau bertanya,kan saya ada tugas akhir.. nah saya disuruh membuat smart trash. Nah saya pinginnya tutup tempat sampahnya terbuka sendiri dengan sensor pir,apakah Emas punya masukan,bagaimanana caranya agar tutup tempat sampah itu terbuka sendiri menggunakan sensor pir
mudah mas. Dari sensor PIR dideteksi outputnya oleh arduino. Ntar Arduino menggerakkan motor atau solenoid (tergantung desain) buat membuka/menutup tutup tempat sampah
Saya mau tanya mas. Diluar masalah ini bisa ditanya gak.?? Soal nya saya mau nyusun T.A teknik elektro ni
silahkan mas
Gini mas saya mau nanya klw untuk sensor warna pakai modul suara apa yaa ??
Mksd nya tuh sensor warna output kan suara misalkan sensor warna deteksi warna hijau modul suara berbunyi hijau gitu mas. Pake modul suara apa yaa ??
utk modul suara bisa pake modul seri ISD (ISD1760 atau ISD 1820) atau seri WT (WTV020 atau WT588D). Atau bisa juga pake modul MP3.
Caranya juga relatif mudah. Kurang lebih flow diagramnya : sensor warna – arduino – modul suara. Tinggal pake ‘if’ aja. Contoh: if warna hijau then keluarkan suara hijau
Oo jadi modul nya harus pake sd card yaa biar bisa nyimpan byk suara warna gtuu mas??
bg klok output sensor pir nya di hubungkan ke aplikasi android bisa ngak?
sebenarnya bisa mas, cuma kan ngga bisa langsung, harus ada perantaranya (gateway) karena device android tidak punya port I/O. Satu-satunya jalan untuk mengirim data sensor ke Android adalah melalui port komunikasi (bisa USB, bluetooth atau WIFI). ‘Perantara’ ini dapat dibuat dari Arduino. Ntar Arduinonya mengubah status sensor menjadi data komunikasi ke Android melalui media komunikasi yg dipilih (BT/USB/WIFI)
Ma . mau nanya kalow sensor untuk menditeksi bentuk benda ada gak ya mas. Kalow ada mohon kasih tau mas.. Makasih.
ada mas, namanya profile scanner. Harganya lumayan mahal, tapi kalo misalkan mau bikin sendiri juga bisa
Keren mas, membantu sekali
Mas, mau tanya nih kalau mau bikin face detector berbasis arduino kira-kira bisa mas ?
kayaknya agak berat mas. Untuk teknologi computer vision seperti face detection membutuhkan kecepatan prosesor yg tinggi. Selain belum ada library yg meng-handle face detection. Alternatifnya bisa pake android, raspberry pi, komputer sekalian. Udah ada library OpenCV yg bisa langsung dipakai
mas saya mau tanya nih lagi kebingungan sama TA mas,
kira2 kalo saya pengen buat sistem Keamanan rumah menggunakan Arduino + sensor Pir yg dtaruh di pintu agar terdeteksi bila ada org masuk kerumah dan Arduino dpt mengirimkan Notif ke Hp via sms bisa gk ya ? mohon bantuan nya mas
Trimakasih
bisa mas. Arduinonya ditambahi modem GSM
Saya mau tanya, sensor nya bisa deteksi benda bergerak sekecil apa ya? kerikil atau bisa lebih kecil?
sekecil apa ya? sy blm pernah mencoba kalo kerikil. Tapi kalo jari tangan pasti terdeteksi oleh sensor ini
mas jika d kombinasikan dengan berbagai sensor apa bisa mas saya sudah ada photo elektrik sensor jk tambah pir sama apa lagi mas kira2 tambah satu sensor lagi gitu mas buat pengaman rumah
bisa mas
di tambah sensor apa lg mas d rmh ada photo elektric sensor .. Jika pir n arduino n sirine buat tndanya dan tmbah satu sensor lagi mas kira2 berapa harganya
mas saya mau nanya bagaimana cara kerja sensor pir untuk mendeteksi gerak burung. adanya burung atau tidak gitu ?
apakah harus diatur kepekaannya tau aapanya gitu mas? sedangkan yang kita ketahui kan sensor pir lebih khusu untuk deteksi gerak manusia
kalo spesifik membedakan yang bergerak adalah burung, kucing atau manusia, sensor PIR ini ngga bisa. Tapi kalo sekedar mendeteksi ada burung bergerak di depan sensor, bisa. Tapi sekali lagi sensor hanya bisa bisa mendeteksi pergerakan objek di depannya ya, entah itu berwujud hewan, manusia atau benda lainnya
mas, saya butuh banget jawaban atas pertanyaan diatas nih
lagi jumatan mb 🙂
sayamau nanya mas,bagaimna cranya agar sensor pir terus mendeteksi objek sampai objek tersebut meninggalkan jangkauan dari pir tsb.. singkatnya bagaimana caranya agar led nyala terus, kemudian dia mati saat objek meninggalkan jangkauan pir
terimakasih
caranya cukup mudah mas, tinggal detect output sensor PIR, dan nyalakan led sesuai dengan status output PIR tersebut. Kalo sketch di artikel di atas cukup hilangkan pendeteksian variabel ‘statusPIR’ pada void loop
Mas mau nanya kalo memakai 4 sensor pir pada arduino bisa ga? Dan rangakainya seperti apa ya?
bisa mas, tinggal ouput sensor pir dihubungkan langsung ke pin digital arduino (contoh: pin 2,3,4,5). Yg penting sketch-nya disesuaikan aja
oke mas saya kan pemula mau coba bikin projek dengan pir , jika output di hubungkan ke pin digital contoh :2, 3, 4, 5 sedangkan untuk pin vcc[5 volt hanya ada 1] dan gnd hanya 3 di arduino uno, solusinya seperti apa? apa ada penambahan modul atau seperti apa? terimakasih sebelumnya. kalo boleh minta kontak emailnya mas
sebenarnya ada tambahan pin Vcc dan Gnd di board arduino uno mas, yakni di port ICSP, setidaknya ada dua tambahan pin Vcc dan Gnd. Tapi misalkan masih kurang ya tinggal bikin kabel extension aja alias jumper 1 kabel jadi banyak kabel pake solder
jika tanpa bantuan breadboard apa bisa?
bisa mas, tinggal disolder aja kabel jumpernya
permisi bang, saya coba sketch yang diatas kok di display cuma muncul “motion detected” satu kali doank yahh?
coba tangannya digerak2kan di depan sensornya mas
mas saya mau menanyakan tentang sensor pir mas
bagaimana algoritma perhitungan sensor PIR tersebut untuk mengetahui objek ?
karena apabila cuma mengetahui dari sensor saja tidak pasti mas. pertanyaan utamanya algoritma perhitungan sensor PIR untuk membaca sebuah objek mas
kalo boleh request jawabannya via email saya saja mas sekalian mau banyak tanya2 tentang mikrokontroler mas
terima kasih sebelumnya
jawabannya ada di gambar pertama di artikel di atas. Kurang lebih cara kerja sensor PIR.
yg pelu diketahui, sensor ini HANYA bisa mendeteksi pergerakan object saja. Sensor pir TIDAK BISA mendeteksi jenis object tipenya apa
mas mau tanya apakah sensor ini bisa mendeteksi gerakan burung/benda yang bergerak selain gerakan tubuh manusia? apakah sudah anda buktikan sendiri?
untuk lebih detailnya silahkan dibaca sendiri di datasheet sensor tersebut, takut salah jawab 🙂
bg mau nanyak ni, saya lagi buat lampu otomatis menggunakan sensor pir tapi pas begitu saya hidupin lampu nya langsung menyala trus tanpa adanya pergerakan dan yang lebih parah nya lagi lampu nya ngak mau mati-mati,, sensor pir nya ngak berfungsi. mohon masukannya bg
& itu maksudnya apa ya mas? Saya compile kok error, ‘amp’ was not declare in this scope. Saya lg belajar arduino mas. Mohon pencerahannya.
dihapus aja mas. Kalo copy dr web kadang ada tambahan karakter itu
Setelah saya anti jd & , di serial monitor ada keterangan motion detect, saat menggerakan tangan lagi nggak kedetect, saat di reset baru ada ke motion detect, itu knp ya mas?
harusnya ngga gitu sih mas. Coba cek sensornya di bagian output, jangan lupa kasih tegangan 5V dan ground. Trus sambungkan output ke avometer, set di pengukur tegangan. habis itu coba gerakkan tangan di depannya. Kalo sensornya bagus, maka di avometer pasti akan bergantian statusnya dr 5v ke ground saat ada objek di bergerak depan sensor dan pas ga ada object
gan,saya mau bertanya,bagaimana bentuk program arduino uno untuk lampu PJU module surya yang menggunakan sensor PIR ? lampu yang digunakan hanya satu lampu saja
programnya hampir sama kayak yang di atas, tapi mungkin wiring kabelnya yang berbeda dan akan dibutuhkan semacam ‘driver’ untuk menyalakan lampu PJU-nya
Mas,saya kurang mengerti program diatas…
jika data = high
kenapa masih ada
pirState Low , pirState HIgh ?
Kenapa tidak langsung jika data = high maka led nyala atau sebaliknya trims
itu udah saya kasih keterangan di sebelah kanannya. Tujuannya supaya cukup sekali aja print di serial monitor ketika ada perubahan status
Memasukkan output dg speaker bagaimana ya ? Perubahan di syntaxnya
bunyi speaker maunya kyk gimana? krn nanti akan menentukan desain drivernya
Mas aku mau nanya nih, bisa nggak sensor PIR ini digunakan untuk mendeteksi burung atau ayam?
sepertinya bisa, cuma memang harus dicoba dulu
Bang, saya nyoba ini kok amp nya gabisa yaa? Ada saran usul ?
oh, dihapus aja & nya, atau download di link di bawah contoh script
halo mas, saya sudah coba Alhamdulillah program run.
kendala saya lampu mati dan hidup dengan sendirinya padahal jarak saya cukup jauh dari sensor pir
mohon bantuan dan petunjuknya mas.
terima kasih
coba dicek tanpa lampu mas, cek output PIR-nya. Ntar dianalisa lampu on/off sendir itu krn dr PIR atau dr programnya