Cirkit Designer LogoCirkit DesignerYour all-in-one circuit design IDE Launch Cirkit Designer App

Arduino PIR Motion Sensor LED Indicator

View and Edit Project In Cirkit DesignerImage of Arduino PIR Motion Sensor LED Indicator

Circuit Documentation

Summary

This circuit is designed to detect motion using a PIR (Passive Infrared) motion sensor. When motion is detected, the sensor sends a signal to an Arduino UNO microcontroller, which activates a red LED to indicate the presence of motion. The circuit includes a resistor to limit the current to the LED, ensuring safe operation.


Component List

Arduino UNO


PIR Motion Sensor


LED Two Pin (Red)


Resistor


Wiring Details

Arduino UNO


PIR Motion Sensor


LED Two Pin (Red)


Resistor


Documented Code

/*
   PIR sensor tester
*/

int ledPin = 13;                // choose the pin for the LED
int inputPin = 2;               // 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(12, OUTPUT);
  digitalWrite(12, LOW);
  
  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
    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
    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;
    }
  }
}

This documentation provides a comprehensive overview of the circuit, detailing each component, its purpose, and the wiring connections, along with the code that drives the functionality of the system.