PIR Sensor Tutorial - With Or Out Arduino

PIR Sensor Tutorial - With Or Out Arduino

Just before creating my next tutorial, which will be using a PIR sensor, I thought I might create a separate tutorial for PIR Sensor.

  • 6,227 views
  • 3 comments
  • 26 respects

Components and supplies

12002 04
Breadboard (generic)
×1
Ard nano
Arduino Nano R3
×1
13285 01
PIR Motion Sensor (generic)
×1
LED and a 220 ohm current limiting resistor to test the connectivity
×1
Few connecting cables
×1
Adafruit industries ada62 image 75px
USB-A to B Cable
×1
General Soldering Equipments
×1

Apps and online services

About this project

Just before creating my next projects tutorial, which will be using a PIR sensor, I thought I might create a separate tutorial explaining the working of a PIR sensor. By doing that I will be able to keep my other tutorial short and to the point. So, without wasting time let’s discuss what is a PIR sensor and how we can use it in our project.

Step 1: Basic

What is a PIR sensor?PIR or "Passive Infra-Red" sensor is a "Pyroelectric IR Sensor" which generates energy when exposed to heat. Everything emits some low level of radiation, the hotter the object is, the more radiation is emitted. When a human or an animal (with IR radiation wavelength of 9.4µMeter) approaches the sensors range the sensor detects the heat in the form of infrared radiation. The sensor only detects the energy emitted by other objects and don't produce any, that's why the sensor is called a PIR or "Passive Infra-Red" sensor. These sensors are small, cheap, rugged, low-power and very easy to use.

Step 2: Hardware

For this tutorial we need:

  • 1 x Breadboard
  • 1 x Arduino Nano/UNO (Whatever is handy)
  • 1 x PIR Sensor
  • 1 x LED and a 220 ohm current limiting resistor to test the connectivity
  • Few connecting cables
  • A USB cable to upload the code to the Arduino
  • General Soldering Equipment

Step 3: Architecture

As we can see the sensor has two sides:

  • Top or the Sensor Side
  • Bottom or the Components Side

The Top consist of a specially designed 'High-Density Polythene' cover called "Fresnel Lens". This lens focuses the infrared rays to the underlying 'Pyroelectric Sensor'. 9.4 µMeter infrared rays can easily pass through the polyethylene cover. The sensors sensitivity range between 6 to 7 meters (20 feet) and the detection angle is 110 degrees x 70 degrees. The actual sensor is inside a sealed metal can. The can basically protects the sensor from noise, temperature and humidity.

There is a tiny window made of IR-transmissive material to allow the IR signals to reach the sensor. Behind this window are 'two' balanced PIR sensors. In idle state, both sensors detect the same amount of IR radiation. When a warm body passes by, it first intercepts one of the two sensors, causing a positive differential change between the two halves. And then, when it leaves the sensing area, the reverse happens, and the sensor generates a negative differential change. When the pulse changes or in other words the PIR sensor detects motion, the output pin changes to "digital high" or 3.3V.The bottom bit consists of a bunch of circuitry. Few of them are of our interest

Most PIR sensors have 3-pins: VCC, GND and OUT. VCC and GND are to power the module (Operating voltage: DC 5V to 20V). The OUTPUT pin is the one which communicates with the micro-controller by sending digital pulse high (3.3v) when a motion is detected and digital low (0v) when no motion is detected. The pin-outs may vary between modules so always triple-check the pin-outs.- The BISS0001 or the "Micro Power PIR Motion Detector IC" gets the output from the sensor and after doing some minor processing it produces the digital output.- The module has two potentiometers one to adjust the sensitivity (which is up to 7m) and the other to adjust the time for which the output signal should stay high when an object is detected (it ranges from 0.3s to 5 mins).- There are 3 more pins on this module with a jumper between them to select the trigger modes.> 1st one is called "non-repeatable trigger" - this one goes low as soon as the delay time is over.> 2nd one is called "repeatable trigger" - it stays high as long as the object is in the proximity and will turn off once the object is gone and the delay is over. I will be using this mode for this project.If you want to do a quick test before going ahead with this tutorial please follow the steps below.A testing is also a good idea to test the range and duration of sensing.

Step 4: Connecting Without Arduino

  • Connect the VCC to the +5v rail of the breadboard
  • Connect the GND to the -ve rail
  • Connect the LED along with a 220 ohm resistor to the OUT pin of the sensorNow, when the sensor detects a motion, the output pin will go "high" and the LED will light up.

Move back and forward to find out the sensing the range. Then to test the duration walk in front of the sensor and then walk away and use a stopwatch to find out how long the LED stayed on. You can adjust the time or sensitivity by adjusting the POTs on the board.

Step 5: Connecting With Arduino

Now, to do the same with Arduino connect the VCC of the PIR sensor to the 5v pin of Arduino.Then connect the OUTput pin to D13 and GND to the Ground pin of the Arduino. Now, connect the LED along with a 220 ohm resistor to the D2 pin of the Arduino. Thats it, now you just need to upload the code and test if everything works the way it should. You can replace the LED with a Buzzer (to raise an alarm when an object is detected) or a Relay to drive a high voltage circuit.To learn more about relays please have a look at my tutorial Number 4 - "Driving a Relay with an Arduino".https://www.instructables.com/id/Driving-a-Relay-W...

Step 6: Code

The code is very simple* Start by defining the pin number 2 and 13 as LED pin and PIR pin respectively* Then we need to define the pin modes. LED pin to be the OUTPUT pin and PIR pin to be the INPUT pin* Next we need to read the value of the PIR pin and see if it is HIGH* If the value is HIGH, then turn ON the LED otherwise turn it OFF

Step 7: Areas of Application of PIR Sensors

PIR sensors can be used to:

  • Automate Opening and Closing of Doors
  • Automate All Outdoor Lights
  • Automate Lights of Basement, Garden or Covered Parking Areas
  • Automate Lift Lobby or Common Staircases Lights
  • Detect Presence of Human and Raise an Alarm
  • Create a Smart Home Automation & Security System, and many more....

Step 8: Demo

So, this is my setup for the testing of the PIR sensor. The sensor is hooked up to the breadboard and is sitting on the table. As I am in front of the sensor the LED is on.Now, lets do a quick test. Currently, the sensor is in its idle state. I am going to walk in front of the it to activate the sensor. Tada, the LED just turned on after detecting my presence. The light stays on as long as I am in the sensors proximity. OK, lets walk away and start my stop watch to see if it turns off after 5 seconds. Success, everything worked the way I wanted.Thanks again for watching this video! I hope it helps you. If you want to support me, you can subscribe to my channel and watch my other videos. Thanks, ca again in my next video.

Code

Code.inoArduino
int LED = 13;             // the pin that the LED is atteched to
int PIR = 2;              // the pin that the sensor is atteched to

void setup() {
  pinMode(LED, OUTPUT);   // initalize LED as an output
  pinMode(PIR, INPUT);    // initialize sensor as an input
  Serial.begin(9600);     // initialize serial
}

void loop(){
  if (digitalRead(PIR) == HIGH) { // check if the sensor is HIGH
    digitalWrite(LED, HIGH);      // turn LED ON 
    Serial.println("Motion detected!"); 
    delay(100);                   // delay 100 milliseconds 
  } 
  else {
    digitalWrite(LED, LOW);       // turn LED OFF
    Serial.println("Motion stopped!");
    delay(100);                   // delay 100 milliseconds
  }
}

Schematics

pir_schema_-_no_arduino_(00_00_28_300)_LRUakuqPMx.png
Pir schema   no arduino (00 00 28 300) lruakuqpmx
pir_schema_-_arduino_(00_00_32_500)_nwG9NMO2At.png
Pir schema   arduino (00 00 32 500) nwg9nmo2at

Comments

Similar projects you might like

HOW PIR SENSOR WORK

Project tutorial by DIY Partners

  • 9,013 views
  • 6 comments
  • 36 respects

Easy Motion and Gesture Detection by PIR Sensor & Arduino

Project tutorial by ElectroPeak

  • 26,582 views
  • 9 comments
  • 215 respects

Arduino Fingerprint Sensor Tutorial

Project tutorial by Nick Koumaris

  • 56,607 views
  • 3 comments
  • 76 respects

RobotGeek PIR Motion Sensor Night Light

Project tutorial by Team RobotGeek Projects Team

  • 1,502 views
  • 1 comment
  • 6 respects

Touch Sensor and Sound Sensor Controlling AC/DC Lights

Project showcase by Anbumachi

  • 1,161 views
  • 2 comments
  • 5 respects

Complete Digital Clock Including Alarm and Motion Sensor

Project tutorial by LAGSILVA

  • 13,590 views
  • 12 comments
  • 51 respects
Add projectSign up / Login