Cara menggunakan sensor gerak HC-SR501 PIR dengan Arduino

How to Use the HC-SR501 PIR Motion Sensor with Arduino

HC-SR501 adalah modul sensor gerakan inframerah pasif (PIR) yang populer yang mendeteksi gerakan dengan mengukur perubahan radiasi inframerah di lingkungannya. Ini biasanya digunakan dalam pencahayaan yang diaktifkan gerak, sistem keamanan, dan proyek IoT. Tutorial ini akan memandu Anda melalui pengaturan dan menggunakan HC-SR501 dengan Arduino.


Apa yang Anda Butuhkan

  1. Modul sensor gerak HC-SR501
  2. Dewan Arduino (mis., Uno, mega, nano)
  3. Papan tempat memotong papan dan kabel jumper
  4. Komputer dengan IDE Arduino diinstal

Langkah 1: Memahami sensor HC-SR501

Modul HC-SR501 memiliki sensitivitas yang dapat disesuaikan dan pengaturan waktu tunda, menjadikannya serbaguna untuk berbagai aplikasi deteksi gerak. Ini beroperasi pada daya 5V dan mengeluarkan sinyal tinggi ketika gerakan terdeteksi.

HC-SR501 Pinout

Pin Fungsi
Vcc Catu daya (5V)
KELUAR Sinyal output digital
Gnd Tanah

Pengaturan yang dapat disesuaikan

  1. Kepekaan: Sesuaikan rentang deteksi (hingga ~ 7 meter).
  2. Waktu tunda: Sesuaikan durasi sinyal tinggi setelah gerakan terdeteksi (sekitar 5 detik hingga 5 menit).

Langkah 2: Kabel HC-SR501 ke Arduino

Inilah cara menghubungkan HC-SR501 ke Arduino UNO:

Pin HC-SR501 Pin Arduino
Vcc 5v
KELUAR Pin 2
Gnd Gnd

Langkah 3: Unggah kode

Berikut adalah contoh sketsa untuk memantau deteksi gerak dan menampilkan status pada monitor serial:

const int pirPin = 2; // Connect HC-SR501 OUT to pin 2

void setup() {
  pinMode(pirPin, INPUT);
  Serial.begin(9600);
  Serial.println("HC-SR501 PIR Motion Sensor Test");
}

void loop() {
  int motionStatus = digitalRead(pirPin); // Read the sensor output

  if (motionStatus == HIGH) {
    Serial.println("Motion detected!");
  } else {
    Serial.println("No motion detected.");
  }

  delay(500); // Update every 500ms
}

Langkah 4: Uji pengaturan

  1. Hubungkan Arduino ke komputer Anda melalui USB.
  2. Buka IDE Arduino dan pilih yang benar Papan Dan Pelabuhan di bawah Peralatan menu.
  3. Unggah kode dengan mengklik Mengunggah.
  4. Buka monitor serial (Peralatan > Monitor serial) dan atur baud rate ke 9600.
  5. Bergerak dalam kisaran sensor, dan amati status gerak yang dicetak pada monitor serial.

Opsional: Mengontrol LED dengan gerakan

Anda dapat memodifikasi kode untuk menyalakan LED saat gerakan terdeteksi:

Pengkabelan LED

Pin LED Pin Arduino
Anoda (+) Pin 13
Katoda (-) Gnd

Kode yang dimodifikasi

const int pirPin = 2; // Connect HC-SR501 OUT to pin 2
const int ledPin = 13; // Connect LED to pin 13

void setup() {
  pinMode(pirPin, INPUT);
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
  Serial.println("HC-SR501 PIR Motion Sensor Test");
}

void loop() {
  int motionStatus = digitalRead(pirPin); // Read the sensor output

  if (motionStatus == HIGH) {
    digitalWrite(ledPin, HIGH); // Turn on LED
    Serial.println("Motion detected!");
  } else {
    digitalWrite(ledPin, LOW); // Turn off LED
    Serial.println("No motion detected.");
  }

  delay(500); // Update every 500ms
}

Aplikasi HC-SR501

  1. Pencahayaan yang diaktifkan gerakan
  2. Alarm penyusup
  3. Otomatisasi Rumah Cerdas
  4. Perangkat IoT yang dipicu oleh kedekatan

Pemecahan masalah

  • Tidak ada gerakan yang terdeteksi: Pastikan sensor didukung dengan benar dan sensitivitas disesuaikan dengan tepat.
  • Pemicu palsu: Kurangi kebisingan lingkungan (mis., Sumber panas) dan hindari paparan sinar matahari langsung.
  • Bacaan yang tidak stabil: Periksa catu daya grounding dan stabil yang tepat.

Kesimpulan

Anda telah berhasil menghubungkan sensor gerak HC-SR501 PIR dengan Arduino. Sensor serbaguna ini sangat cocok untuk deteksi gerak di berbagai proyek. Eksperimen dengan fitur tambahan, seperti menyesuaikan sensitivitas atau mengintegrasikannya dengan komponen lain, untuk membuat sistem berbasis gerak canggih!

Tinggalkan komentar

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.