Arduino and PIR detector

When you are looking for low cost sensors to begin experimenting with then a PIR is a nice low cost option. In the following example we will demonstrate the HC-SR501 PIR sensor, this sensor has many nice features including the ability to be driven by 5v, low cost (£2 to £3), decent range (7 metres) and a fairly small size.

These sensors can take anything between 10-60 seconds to warm up, so you should either avoid motion at this point or in your code you would factor this in.

Connecting these to an Arduino is really simple, connect the VCC and GND up and then connect the output to a digital pin, in our example we connect to pin 8.

Practical examples are obviously alarm systems that may activate a camera, sounder or other device, pest alarm to detect and scare animals in your garden, maybe even activate a light on detection

Layout

arduino and PIR layout

Schematic

arduino and PIR schematic

Code example

This basic example will display a different output depending on whether motion is detected.

int pirPin = 8;
int val;

void setup()
{
Serial.begin(9600);
}

void loop()
{
val = digitalRead(pirPin);
//low = no motion, high = motion
if (val == LOW)
{
Serial.println(“No motion”);
}
else
{
Serial.println(“Motion detected – ALARM”);
}

delay(1000);
}

 

Links

HC-SR501 Human Sensor Module Pyroelectric on Amazon UK

 

HC-SR501 Human Sensor Module Pyroelectric on Amazon US

Related posts

VEML6070 ultraviolet light sensor on an Arduino

Programming an Attiny44 using an Arduino

Programming an Attiny85 using an Arduino