Arduino PIR sensor

Arduino PIR Sensor 




PIR sensors allow you to sense motion. They are used to detect whether a human has moved in or out of the sensor’s range. They are commonly found in appliances and gadgets used at home or for businesses. They are often referred to as PIR, "Passive Infrared", "Pyroelectric", or "IR motion" sensors.

Following are the advantages of PIR Sensors −

  • Small in size
  • Wide lens range
  • Easy to interface
  • Inexpensive
  • Low-power
  • Easy to use
  • Do not wear out


PIRs à·ƒෑදී ඇත්තේ පයිරෝ ඉලෙක්ට්‍රික් à·ƒංà·€ේදක වලින් වන අතර වටකුරු ලෝහයකට à·ƒෘජුකෝණාà·ƒ්රාකාර à·ƒ් stal ටිකයක් මධ්‍යයේ ඇති අතර එමඟින් අධෝරක්ත කිරණ මට්ටම හඳුනාගත à·„ැකිය. à·ƒෑම දෙයක්ම පහත් මට්ටමේ à·€ිකිරණ à·€ිමෝචනය කරන අතර වඩාත් උණුà·ƒුම් දෙය නම් à·€ැඩි à·€ිකිරණ à·€ිමෝචනය à·€ේ. චලන අනාවරකයක à·ƒංà·€ේදකය කොටස් දෙකකට බෙදා ඇත. මෙය à·ƒාමාන්‍ය IR මට්ටම් නොà·€ චලිතය (à·€ෙනස් කිරීම) හඳුනා ගැනීමයි. මෙම කොටස් දෙක එකිනෙකට අවලංගු වන පරිදි සම්බන්ධ කර ඇත. අඩක් අනෙක් à·€ිකිරණයට වඩා à·€ැඩි à·„ෝ අඩු IR à·€ිකිරණ දුටුවහොත්, ප්‍රතිදානය ඉහළ à·„ෝ පහළ à·€ේගයෙන් à·€ෙනස් à·€ේ.




Arduino Code









#define pirPin 2
int calibrationTime = 30;
long unsigned int lowIn;
long unsigned int pause = 5000;
boolean lockLow = true;
boolean takeLowTime;
int PIRValue = 0;

void setup() {
   Serial.begin(9600);
   pinMode(pirPin, INPUT);
}

void loop() {
   PIRSensor();
}

void PIRSensor() {
   if(digitalRead(pirPin) == HIGH) {
      if(lockLow) {
         PIRValue = 1;
         lockLow = false;
         Serial.println("Motion detected.");
         delay(50);
      }
      takeLowTime = true;
   }
   if(digitalRead(pirPin) == LOW) {
      if(takeLowTime){
         lowIn = millis();takeLowTime = false;
      }
      if(!lockLow && millis() - lowIn > pause) {
         PIRValue = 0;
         lockLow = true;
         Serial.println("Motion ended.");
         delay(50);
      }
   }
}










0 Comments