Blog Archive

Arduino Indonesia. Gambar tema oleh Storman. Diberdayakan oleh Blogger.

Supported by Electronics 3 in 1

1. Jasa pencetakan PCB single layer dengan harga paling murah.

(Metode Pembuatan dengan Transfer Toner)
>PCB design sendiri (siap cetak) : Rp.150,-/Cm2
>PCB design dari kami : Rp.250,-/Cm2

(Metode Sablon Full Masking dan Silk Screen minimal pemesanan 100 Pcs)
>PCB design sendiri (siap cetak) : Rp.200,-/Cm2
>PCB design dari kami : Rp.250,-/Cm2

2. Jasa perancangan, perakitan, dan pembuatan trainer pembelajaran elektronika untuk SMK dan Mahasiswa.

3. Jasa perancangan, perakitan, dan pembuatan berbagai macam kontroller, sensor, aktuator, dan tranduser.
>Design Rangkaian / Sistem Elektronika
>Design Rangkaian / Sistem Instrumentasi
>Design Rangkaian / Sistem Kendali
>Kerjasama Riset (data atau peralatan)
>Kerjasama Produksi Produk-Produk KIT Elektronika
>Produksi Instrumentasi Elektronika

4. Jasa Pembuatan Proyek, Tugas Akhir, Tugas Laboratorium, PKM, Karya Ilmiah, SKRIPSI, dll

Like My Facebook

Popular Posts

Senin, 29 Juni 2026

Arduino Mengontrol LED Menggunakan Sensor Gerak PIR HC-SR501

Sensor gerak PIR (Passive Infrared) HC-SR501 merupakan salah satu sensor yang paling populer dalam proyek Arduino karena mampu mendeteksi pergerakan manusia atau hewan berdasarkan perubahan radiasi inframerah (infrared). Sensor ini banyak digunakan pada sistem keamanan, lampu otomatis, alarm rumah, hingga berbagai aplikasi smart home karena bekerja tanpa memerlukan kontak langsung dengan objek yang dideteksi. Salah satu penerapan paling sederhana dari sensor PIR adalah mengendalikan LED secara otomatis. 

 

Ketika sensor mendeteksi adanya gerakan, Arduino akan menyalakan LED sebagai indikator. Sebaliknya, jika tidak ada gerakan yang terdeteksi, LED akan dimatikan. Konsep sederhana ini menjadi dasar bagi berbagai sistem otomatis yang banyak digunakan dalam kehidupan sehari-hari. Pada tutorial ini, Anda akan mempelajari cara menghubungkan sensor gerak HC-SR501 dengan Arduino Uno, melakukan pengaturan awal pada sensor, serta membuat program untuk mengontrol LED berdasarkan hasil deteksi gerakan. Selain itu, status deteksi juga akan ditampilkan pada Serial Monitor sehingga proses kerja sensor dapat dipantau secara langsung.

Tujuan Tutorial

Pada tutorial ini Anda akan mempelajari cara menghubungkan sensor gerak PIR HC-SR501 ke Arduino Uno, mengatur konfigurasi awal sensor PIR, membaca sinyal digital dari sensor gerak, menyalakan LED ketika gerakan terdeteksi, mematikan LED ketika tidak ada gerakan, dan menampilkan status deteksi pada Serial Monitor.

 

Baca juga: Arduino Mengontrol LED Menggunakan Sensor Ultrasonik HC-SR04 

Perangkat Keras yang Dibutuhkan

- Arduino Uno R3

- Kabel USB

- Sensor Gerak PIR HC-SR501

- LED Merah

- Resistor 220 Ohm

- Breadboard

- Kabel Jumper

Mengenal Cara Kerja Sensor PIR

Sensor PIR bekerja dengan mendeteksi perubahan radiasi inframerah yang dipancarkan oleh tubuh manusia atau makhluk hidup lainnya. Saat seseorang bergerak di dalam area deteksi sensor, perubahan radiasi tersebut akan dikenali oleh sensor dan menghasilkan sinyal digital HIGH. Sebaliknya, ketika tidak ada perubahan radiasi inframerah atau tidak ada pergerakan yang terdeteksi, sensor akan mengeluarkan sinyal LOW. Arduino kemudian membaca perubahan sinyal tersebut untuk menentukan apakah LED harus dinyalakan atau dimatikan.

Pengaturan Awal Sensor HC-SR501

Sebelum digunakan, sensor PIR sebaiknya diatur terlebih dahulu agar bekerja secara optimal.

Lakukan pengaturan berikut:

- Putar Time Delay sepenuhnya ke arah berlawanan jarum jam agar waktu aktif sensor menjadi paling singkat.

- Putar Sensitivity sepenuhnya searah jarum jam agar area deteksi menjadi maksimal.

- Atur Trigger Mode pada mode Repeatable Trigger (H) dengan memasang jumper sesuai petunjuk pada modul sensor.

Pengaturan ini memudahkan proses pengujian karena sensor akan lebih cepat merespons setiap gerakan yang terdeteksi.

Cara Kerja Sistem

1. Arduino akan membaca status keluaran digital dari sensor PIR melalui pin input.

2. Ketika sensor mendeteksi adanya gerakan, pin output sensor berubah dari LOW menjadi HIGH.

3. Arduino mengenali perubahan tersebut kemudian menyalakan LED serta menampilkan pesan "Motion detected!" pada Serial Monitor.

4. Saat gerakan tidak lagi terdeteksi, keluaran sensor berubah kembali menjadi LOW.

5. Arduino kemudian mematikan LED dan menampilkan pesan "Motion stopped!" pada Serial Monitor.

Dengan cara ini, LED akan berfungsi sebagai indikator visual adanya aktivitas yang terdeteksi oleh sensor PIR.

Kode Program Arduino

Berikut adalah program Arduino untuk mengontrol LED menggunakan sensor gerak HC-SR501.


const int MOTION_SENSOR_PIN = 7;

const int LED_PIN = 3;


int motionStateCurrent = LOW;

int motionStatePrevious = LOW;


void setup() {


  Serial.begin(9600);


  pinMode(MOTION_SENSOR_PIN, INPUT);

  pinMode(LED_PIN, OUTPUT);

}


void loop() {


  motionStatePrevious = motionStateCurrent;


  motionStateCurrent = digitalRead(MOTION_SENSOR_PIN);


  if (motionStatePrevious == LOW && motionStateCurrent == HIGH) {


    Serial.println("Motion detected!");


    digitalWrite(LED_PIN, HIGH);

  }

  else if (motionStatePrevious == HIGH && motionStateCurrent == LOW) {


    Serial.println("Motion stopped!");


    digitalWrite(LED_PIN, LOW);

  }

}

Penjelasan Program

Program diawali dengan menentukan pin yang digunakan untuk sensor PIR dan LED.

 

const int MOTION_SENSOR_PIN = 7;

const int LED_PIN = 3;


Kemudian dibuat dua variabel untuk menyimpan status sensor saat ini dan status sebelumnya.

 

int motionStateCurrent = LOW;

int motionStatePrevious = LOW;


Pada fungsi setup(), Arduino mengaktifkan komunikasi serial dan mengatur mode pin.

 

Serial.begin(9600);


pinMode(MOTION_SENSOR_PIN, INPUT);


pinMode(LED_PIN, OUTPUT);


Di dalam fungsi loop(), Arduino terlebih dahulu menyimpan status sensor sebelumnya.

 

motionStatePrevious = motionStateCurrent;


Selanjutnya Arduino membaca kondisi terbaru dari sensor PIR.

 

motionStateCurrent = digitalRead(MOTION_SENSOR_PIN);


Jika terjadi perubahan dari LOW menjadi HIGH, berarti sensor mendeteksi adanya gerakan.

 

if (motionStatePrevious == LOW &&

    motionStateCurrent == HIGH)


Arduino kemudian menampilkan pesan:

 

Serial.println("Motion detected!");


dan menyalakan LED.

 

digitalWrite(LED_PIN, HIGH);


Sebaliknya, apabila status berubah dari HIGH menjadi LOW, berarti tidak ada lagi gerakan yang terdeteksi. Arduino akan menampilkan pesan:

 

Serial.println("Motion stopped!");


kemudian mematikan LED.

 

digitalWrite(LED_PIN, LOW);

Koneksi Rangkaian

1. Hubungkan pin VCC sensor PIR ke pin 5V Arduino.

2. Hubungkan pin GND sensor ke pin GND Arduino.

3. Pin OUT pada sensor PIR dihubungkan ke pin digital 7 Arduino.

4. Untuk LED, hubungkan kaki anoda ke pin digital 3 melalui resistor 220 Ohm, sedangkan kaki katoda dihubungkan ke pin GND Arduino.

5. Pastikan seluruh sambungan telah terpasang dengan benar sebelum mengunggah program.

Langkah-langkah Menjalankan Program

1. Hubungkan Arduino Uno ke komputer menggunakan kabel USB.

2. Buka aplikasi Arduino IDE, kemudian pilih board Arduino Uno dan port yang sesuai.

3. Salin kode program di atas ke dalam Arduino IDE.

4. Klik tombol Upload dan tunggu hingga proses kompilasi selesai.

5. Setelah program berhasil dijalankan, buka Serial Monitor dengan baud rate 9600.

6. Gerakkan tangan atau berjalan di depan sensor PIR.

7. Perhatikan perubahan status LED serta pesan yang muncul pada Serial Monitor.

Hasil Pengujian

Ketika tidak terdapat aktivitas di depan sensor, LED akan tetap mati dan sensor berada pada kondisi siaga. Saat seseorang bergerak di area deteksi sensor PIR, Arduino akan langsung menerima sinyal HIGH, menyalakan LED, serta menampilkan pesan "Motion detected!" pada Serial Monitor. Ketika gerakan berhenti dan sensor kembali mengeluarkan sinyal LOW, LED akan mati dan muncul pesan "Motion stopped!". Dengan demikian, sistem mampu mendeteksi keberadaan gerakan secara otomatis dan memberikan indikator visual menggunakan LED.

 





Baca juga: Arduino Mengontrol Motor Servo Menggunakan Sensor Gerak PIR HC-SR501

 

 

 

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

0 on: "Arduino Mengontrol LED Menggunakan Sensor Gerak PIR HC-SR501"