Deteksi Gerakan dengan PIR HC-SR501 pada Raspberry Pi Pico

Sensor PIR HC-SR501 merupakan salah satu sensor yang cukup populer untuk mendeteksi keberadaan atau gerakan manusia. Sensor ini banyak digunakan pada berbagai proyek elektronik, seperti lampu otomatis, alarm keamanan, sistem monitoring, hingga smart home. Dengan menghubungkan PIR HC-SR501 ke Raspberry Pi Pico, Anda dapat membuat sistem sederhana yang mampu mendeteksi gerakan di sekitar sensor. Ketika PIR mendeteksi adanya gerakan, Raspberry Pi Pico dapat memberikan respons tertentu, misalnya menyalakan LED atau buzzer. Pada artikel ini akan membahas tentang cara menggunakan sensor PIR HC-SR501 dengan Raspberry Pi Pico, mulai dari mengenal sensor, menyiapkan komponen, wiring, hingga membuat program menggunakan MicroPython.

Apa Itu PIR HC-SR501?

PIR HC-SR501 adalah sensor yang digunakan untuk mendeteksi perubahan radiasi inframerah yang berasal dari objek di sekitarnya, terutama tubuh manusia dan hewan. PIR merupakan singkatan dari Passive Infrared. Disebut passive karena sensor ini tidak memancarkan sinyal inframerah untuk mendeteksi objek. Sensor hanya menerima perubahan radiasi inframerah yang ada di lingkungan. Ketika seseorang bergerak di depan sensor, terjadi perubahan radiasi inframerah yang kemudian dideteksi oleh PIR. Sensor selanjutnya menghasilkan sinyal digital yang dapat dibaca oleh Raspberry Pi Pico.

Fungsi PIR HC-SR501

Dalam proyek Raspberry Pi Pico, sensor PIR HC-SR501 dapat digunakan untuk:

- Mendeteksi gerakan manusia.

- Membuat lampu otomatis.

- Membuat sistem alarm sederhana.

- Membuat sistem keamanan ruangan.

- Mengaktifkan buzzer ketika ada gerakan.

- Membuat proyek smart home.

- Mengontrol perangkat elektronik berdasarkan keberadaan seseorang.

Komponen yang Dibutuhkan

Sebelum membuat proyek deteksi gerakan dengan PIR HC-SR501 pada Raspberry Pi Pico, siapkan beberapa komponen berikut:

1. Raspberry Pi Pico

2. Sensor PIR HC-SR501

3. LED

4. Resistor 330Ω

5. Breadboard

6. Kabel jumper

7. Kabel USB

8. Komputer atau laptop

LED sebenarnya bersifat opsional. Namun, pada tutorial ini LED digunakan sebagai indikator sehingga Anda dapat melihat respons Raspberry Pi Pico ketika PIR mendeteksi gerakan.

Mengenal Pin PIR HC-SR501

Sensor PIR HC-SR501 umumnya memiliki tiga pin utama, yaitu:


Pin PIR HC-SR501

Fungsi

VCC

Tegangan suplai

OUT

Sinyal keluaran sensor

GND

Ground


Pin OUT merupakan bagian yang paling penting dalam proyek ini karena digunakan untuk mengirimkan status deteksi gerakan ke Raspberry Pi Pico. Ketika tidak mendeteksi gerakan, output sensor berada pada kondisi LOW. Ketika sensor mendeteksi gerakan, output akan berubah menjadi HIGH selama periode tertentu.

Potensiometer pada PIR HC-SR501

PIR HC-SR501 biasanya dilengkapi dua buah potensiometer yang dapat digunakan untuk mengatur karakteristik sensor. Potensiometer tersebut umumnya digunakan untuk mengatur:

- Sensitivity – mengatur sensitivitas atau jarak deteksi sensor.

- Time Delay – mengatur berapa lama output sensor tetap HIGH setelah mendeteksi gerakan.

Terdapat juga jumper pada modul yang digunakan untuk memilih mode pemicu sensor.

Wiring PIR HC-SR501 dengan Raspberry Pi Pico

Untuk membuat PIR HC-SR501 Raspberry Pi Pico, Anda dapat menggunakan salah satu GPIO sebagai input untuk membaca sinyal dari sensor. Contoh koneksi yang digunakan:


PIR HC-SR501

Raspberry Pi Pico

VCC

VBUS (5V)

GND

GND

OUT

GP15


Kemudian hubungkan LED sebagai indikator:


LED

Raspberry Pi Pico

Anoda (+)

GP14 melalui resistor 330Ω

Katoda (-)

GND


  


Catatan: Pastikan tegangan pada pin OUT sensor aman untuk GPIO Raspberry Pi Pico. Jika menggunakan modul PIR tertentu atau sumber tegangan yang berbeda, periksa spesifikasi modul terlebih dahulu. Raspberry Pi Pico menggunakan logika GPIO 3,3V.

Cara Kerja Sistem Deteksi Gerakan

Secara sederhana, alur kerja proyek ini adalah sebagai berikut:

1. Raspberry Pi Pico mulai menjalankan program.

2. GPIO GP15 membaca output dari PIR HC-SR501.

3. Ketika tidak ada gerakan, output PIR berada pada kondisi LOW.

4. Ketika ada gerakan, output PIR berubah menjadi HIGH.

5. Raspberry Pi Pico mendeteksi perubahan tersebut.

6. LED dinyalakan sebagai indikator adanya gerakan.

7. Ketika PIR kembali LOW, LED dimatikan.

Dengan konsep tersebut, Raspberry Pi Pico berfungsi sebagai mikrokontroler yang membaca data dari sensor PIR dan menentukan tindakan berdasarkan kondisi sensor.

Program MicroPython PIR HC-SR501 Raspberry Pi Pico

Setelah rangkaian selesai dibuat, selanjutnya Anda dapat membuat program menggunakan MicroPython. Program dapat ditulis menggunakan Thonny IDE, yang umum digunakan untuk melakukan pemrograman Raspberry Pi Pico menggunakan MicroPython. Berikut contoh kode program sederhananya:

 

from machine import Pin

import time


# Pin PIR

pir = Pin(15, Pin.IN)


# Pin LED

led = Pin(14, Pin.OUT)


print("Sistem deteksi gerakan aktif")

print("Menunggu gerakan...")


while True:

    if pir.value() == 1:

        print("Gerakan terdeteksi!")

        led.value(1)

    else:

        print("Tidak ada gerakan")

        led.value(0)


    time.sleep(0.2)


Penjelasan Program

Mari lihat bagian-bagian penting dari kode berikut:.

1. Mengimpor Modul Pin dan Time

 

from machine import Pin

import time


Pin digunakan untuk mengatur GPIO Raspberry Pi Pico sebagai input atau output. Sedangkan modul time digunakan untuk memberikan jeda pada program.

2. Mengatur Pin PIR

 

pir = Pin(15, Pin.IN)

Kode tersebut mengatur GPIO 15 atau GP15 sebagai input. Input digunakan karena Raspberry Pi Pico akan membaca sinyal yang berasal dari pin OUT sensor PIR HC-SR501.

3. Mengatur Pin LED

 

led = Pin(14, Pin.OUT)


GPIO 14 atau GP14 digunakan sebagai output untuk mengontrol LED. Ketika LED diberi nilai 1, LED menyala. Ketika diberi nilai 0, LED mati.

4. Membaca Kondisi Sensor

Bagian utama program terdapat pada kode berikut:

 

if pir.value() == 1:

pir.value() digunakan untuk membaca kondisi GPIO yang terhubung dengan sensor PIR. Jika hasil pembacaan adalah 1, berarti sensor memberikan sinyal HIGH sehingga program menganggap gerakan terdeteksi. Jika hasilnya 0, sensor berada dalam kondisi LOW dan program menganggap tidak ada gerakan yang terdeteksi.

5. Mengontrol LED

Ketika gerakan terdeteksi:

 

led.value(1)


LED dinyalakan. Sebaliknya, ketika tidak ada gerakan:

 

led.value(0)


LED dimatikan.

Menguji Sensor PIR HC-SR501

Setelah kode dijalankan pada Raspberry Pi Pico, buka Shell pada Thonny IDE untuk melihat hasil pembacaan sensor. Jika tidak ada gerakan, kurang lebih akan muncul:

 

Sistem deteksi gerakan aktif

Menunggu gerakan...

Tidak ada gerakan

Tidak ada gerakan

Tidak ada gerakan


Ketika seseorang bergerak di depan sensor:

 

Gerakan terdeteksi!

Gerakan terdeteksi!

Gerakan terdeteksi!


Pada saat yang sama, LED akan menyala.

 

 

Jangan Langsung Menguji Setelah Sensor Dinyalakan

Sensor PIR HC-SR501 biasanya membutuhkan waktu untuk melakukan proses stabilisasi setelah pertama kali mendapatkan daya. Oleh karena itu, jangan khawatir jika sensor belum langsung memberikan hasil yang stabil ketika baru dinyalakan. Tunggu beberapa saat sebelum melakukan pengujian.

Membuat Alarm Gerakan dengan Buzzer

Selain LED, sensor PIR HC-SR501 juga dapat digunakan untuk mengaktifkan buzzer. Misalnya, Anda menggunakan buzzer pada GPIO13. Programnya dapat dibuat seperti berikut:

 

from machine import Pin

import time


pir = Pin(15, Pin.IN)

led = Pin(14, Pin.OUT)

buzzer = Pin(13, Pin.OUT)


print("Sistem alarm PIR aktif")


while True:

    if pir.value() == 1:

        print("Gerakan terdeteksi!")


        led.value(1)

        buzzer.value(1)


    else:

        print("Tidak ada gerakan")


        led.value(0)

        buzzer.value(0)


    time.sleep(0.2)


Dengan program tersebut, ketika PIR HC-SR501 mendeteksi gerakan, Raspberry Pi Pico akan menyalakan LED sekaligus buzzer. Konsep ini dapat dikembangkan menjadi sistem alarm sederhana untuk pintu, kamar, gudang, atau area tertentu.

Tips Menggunakan PIR HC-SR501

Agar hasil deteksi gerakan PIR HC-SR501 lebih baik, ada beberapa hal yang perlu diperhatikan.

1. Atur Sensitivitas Sensor

Gunakan potensiometer sensitivity pada modul PIR untuk menyesuaikan jarak deteksi sesuai kebutuhan. Jika terlalu sensitif, sensor mungkin lebih mudah memberikan trigger ketika ada perubahan kondisi di sekitar.

2. Atur Time Delay

Potensiometer time delay dapat digunakan untuk mengatur durasi output HIGH setelah gerakan terdeteksi. Pengaturan ini penting jika sensor digunakan untuk mengontrol lampu atau alarm.

3. Perhatikan Posisi Sensor

Posisi sensor juga memengaruhi hasil deteksi. Letakkan sensor pada posisi yang memungkinkan area yang ingin dipantau berada dalam jangkauan sensor. Hindari memasangnya langsung menghadap sumber panas atau area dengan perubahan temperatur yang ekstrem.

4. Berikan Waktu Stabilisasi

Setelah mendapatkan suplai listrik, berikan waktu kepada PIR HC-SR501 untuk melakukan kalibrasi dan menstabilkan pembacaan.

Pengembangan Proyek

Proyek Raspberry Pi Pico dengan PIR HC-SR501 masih dapat dikembangkan menjadi sistem yang lebih kompleks. Beberapa ide pengembangan yang dapat dicoba antara lain:

- Lampu otomatis berdasarkan gerakan

- Sistem alarm keamanan rumah

- Pengontrol relay

- Penghitung orang sederhana

- Sistem monitoring ruangan

- Smart home sederhana

- Alarm pintu

- Sistem keamanan berbasis Raspberry Pi Pico

- Mengirim notifikasi menggunakan modul Wi-Fi tambahan

Raspberry Pi Pico juga dapat dikombinasikan dengan komponen lain untuk membuat sistem otomatisasi yang lebih menarik.

 

Baca juga: Raspberry Pi Pico dan Relay 1 Channel: Membuat Saklar Elektronik dengan Push Button

 

 

 

Dalam praktik, hasil dan kendala yang ditemui bisa berbeda tergantung perangkat, konfigurasi, versi library, dan sistem yang digunakan.

 

Posting Komentar

0 Komentar