Loading... Please wait...

HC-SR501 PIR Sensor

HC-SR501 PIR Sensor

This example shows how to use an HC-SR501 PIR sensor (movement sensor). You will connect it up to pin 8 of your Arduino board and the input will be used to trigger the onboard LED.

Hardware Required

  • Arduino Board
  • onboard LED on pin 13
  • HC-SR501 PIR sensor

Circuit

Connect power and ground as illustrated. Then connect the sensor pin to digital pin 8 on your Arduino.

 pirsensor-bb.png

 

Code

// Uses a PIR sensor to detect movement and turn on a LED

int ledPin = 13; // choose the pin for the LED
int inputPin = 8; // choose the input pin (for PIR sensor)
int pirState = LOW; // we start, assuming no motion detected
int val = 0; // variable for reading the pin status

void setup() {
  pinMode(ledPin, OUTPUT); // declare LED as output
  pinMode(inputPin, INPUT); // declare sensor as input
  Serial.begin(9600);
}

void loop(){
  val = digitalRead(inputPin); // read input value
  if (val == HIGH) { // check if the input is HIGH
    digitalWrite(ledPin, HIGH); // turn LED ON
    delay(150);


    if (pirState == LOW) {
      // we have just turned on
      Serial.println("Motion detected!");
      // We only want to print on the output change, not state
      pirState = HIGH;
    }
  } else {
    digitalWrite(ledPin, LOW); // turn LED OFF
    delay(300);
    if (pirState == HIGH){
      // we have just turned off
      Serial.println("Motion ended!");
      // We only want to print on the output change, not state
      pirState = LOW;
    }
  }
}

 

 

What's News

newsletter

Copyright 2019 oddWires. All Rights Reserved.
 Sitemap | oddWires