Banner 468x 60

Tuesday, January 20, 2026

Sensor PIR

 PIR (Passive Infrared Receiver) merupakan sebuah sensor berbasiskan infrared. Sensor ini mendeteksi pergerakan benda yang ada didepanya sejauh 5-7M

sensor ini hanya merespon energi dari pancaran sinar inframerah pasif yang dimiliki oleh setiap benda yang terdeteksi olehnya, benda tersebut biasanya manusia

PIR sensor diatas memiliki 3 pin, VCC (5v), GND dan OUT serta 2 buah trimpot untuk mengatur sensitivitas sensor (Sx) dan jeda waktu sensor (Tx)


PERCOBAN 1

Alat dan Bahan yang dibutuhkan :

1x Arduino Uno

1x PIR Sensor

1x LED

1x Breadboard

Kabel jumper secukupnya



int pinLED = 13;

int pinPIR = 4;

int statusPin = 0;

void setup() {

 pinMode(pinLED,OUTPUT);

 pinMode(pinPIR, INPUT);

 Serial.begin(9600); 

}


void loop() {

  statusPin = digitalRead(pinPIR);

  if(statusPin == HIGH){

    digitalWrite(pinLED, HIGH);

    Serial.println(" awas ada yang bergerak");

  }else{

    digitalWrite(pinLED, LOW);

    Serial.println ("kondisi aman");

  }




Percoban 2

Alat dan Bahan yang dibutuhkan :

1x Arduino Uno

1x PIR Sensor

1x LED

1x Breadboard

1x Relay 5v

Kabel jumper secukupnya



#define RELAY_ON 0

#define RELAY_OFF 1

#define RELAY_1  3   // pin yang digunakan bisa diganti ganti bro

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


 // Set pin as output.

  pinMode(RELAY_1, OUTPUT); 

  // Initialize relay one as off so that on reset it would be off by default

  digitalWrite(RELAY_1, RELAY_OFF);


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

 digitalWrite(RELAY_1, RELAY_ON);

         delay(1000);

         digitalWrite(RELAY_1, RELAY_OFF);

         delay(500);


} else {

  if ((data == LOW) && (statusPIR == HIGH)){

   digitalWrite(indikator, LOW); // matikan led indikator

   Serial.println("Motion ended!"); //buat monitor ke laptop

   statusPIR = LOW;

   }

 }

}





 






0 comments:

Post a Comment