MENDETEKSI GERAKAN MANUSIA DENGAN SENSOR PIR DAN ARDUINO

Author : Ila MulyandiNo comments




Pada kesempatan kali ini, saya akan membuat sebuah alarm menggunakan sensor PIR (pasif inframerah) dan board Arduino Uno. Ini adalah cara yang bagus untuk anda mempelajari dasar-dasar menggunakan input digital pada arduino dari sebuah sensor dan output dalam praktek kali ini menggunakan Alarm sebuah Buzzer dan bisa juga dikombinasikan dengan beban lain.


ALAT DAN BAHAN

1 1x Arduino Uno

2 1x Buzzer

3 1x PIR Sensor

4 1x LED

5 1x Breadboard

6 Kabel jumper secukupnya



Merangkai Sensor Pir dan Arduino








Pin VCC pada PIR Sensor di jumper ke 5V Power pada Arduino.

Pin OUT pada PIR Sensor di jumper ke Digital Pin 2 pada Arduino

Pin GND pada PIR Sensor di jumper ke GND Power pada Arduino

Letakan kaki Anoda LED ke Digital pin 13, dan kaki katoda di GND

Letakan jumper merah ( + ) Buzzer pada Digital pin 10 di Arduino

Letakan jumper hitam ( - ) Buzzer pada GND Power di Arduino



Supply tegangan pada sensor ini dapat menggunakan tegangan vcc 5V dari arduino atau board mikrokontroller lainnya, terdapat tiga pin sensor berupa VCC, Ground dan Output untuk dihubungkan ke Pin 2 Arduino. Buzzer terhubung ke PIN 10 Arduino dan GND sedangkan LED di hubungkan ke 13 sebagai indikator. Contoh prgram penggunaan sensor PIR menggunakan arduino bisa kamu lihat pada kode berikut yang diubah dari contoh kode program sensor PIR pada arduino dengan alarm buzzer dan menggunakan LED untuk indikator adanya gerakan manusia pada radius sensor.

Program Sensor Pir Arduino
Berikut ini adalah program Alrm menggunakan sensor pir dan arduino uno, silahkan kopi dan paste pada program Arduino IDE kemudian silahkan upload pada arduino anda yang sudah di rangkai sesai langkah yang sudah saya berikan di atas:


Source Code:

//http://rajendroid.blogspot.com
int ledPin = 13; // Memilih pin untuk LED
int inputPin = 2; // Memilih input pin (untuk sensor PIR)
int pirState = LOW; // Kita mulai, dengan asumsi tidak ada gerakan terdeteksi
int val = 0; // Variabel untuk membaca status pin
int pinSpeaker = 10; // Mengatur pembicara pada pin PWM (digital 9, 10, atau 11)
void setup() {
pinMode(ledPin, OUTPUT); // Mendeklarasikan LED sebagai output
pinMode(inputPin, INPUT); // Mendeklarasikan sensor sebagai input
pinMode(pinSpeaker, OUTPUT);
Serial.begin(9600);
}
void loop(){
val = digitalRead(inputPin); // Membaca nilai masukan
if (val == HIGH) { // Memeriksa apakah input adalah TINGGI
digitalWrite(ledPin, HIGH); // Hidupkan LED ON
playTone(300, 160);
delay(150);

if (pirState == LOW) {
// Kita baru saja diaktifkan
Serial.println("Motion detected!");
// Kami hanya ingin mencetak pada perubahan output, tidak menyatakan
pirState = HIGH;
}
} else {
digitalWrite(ledPin, LOW); // turn LED OFF
playTone(0, 0);
delay(300);
if (pirState == HIGH){
// Kita baru saja dimatikan
Serial.println("Motion ended!");
// Kami hanya ingin mencetak pada perubahan output, tidak menyatakan
pirState = LOW;
}
}
}
// Durasi msecs dalam, hertz Frekuensi
void playTone(long duration, int freq) {
duration *= 1000;
int period = (1.0 / freq) * 1000000;
long elapsed_time = 0;
while (elapsed_time < duration) {
digitalWrite(pinSpeaker,HIGH);
delayMicroseconds(period / 2);
digitalWrite(pinSpeaker, LOW);
delayMicroseconds(period / 2);
elapsed_time += (period);
}
}
Ide lain penggunaan sensor pir ini dapat anda gunakan sebagai Alarm pencuri, kran air otomatis akan mengalir saat tangan menjulur ke bawah kran, saklar lampu otomatis akan menyala saat ada orang masuk ruangan dan masih banyak lagi,

Posted On : Friday, March 10, 2017Time : 12:35 AM
SHARE TO :
| | Template Created By : Rajendroid | CopyRigt By : ARDUINO | |