Control Light Room With Arduino and PIR Motion Sensor



Introduction: Control Light Room With Arduino and PIR Motion Sensor

Today, we will see together how you can create an Arduino PIR motion sensor for your room in order to turn ON/OFF the light by detecting human movements.
PIR sensor:
The PIR sensor stands for Passive Infrared sensor. It is a low cost sensor which can detect the presence of Human beings or animals. There are two important materials present in the sensor one is the pyroelectric crystal which can detect the heat signatures from a living organism (humans/animals) and the other is a Fresnel lenses which can widen the range of the sensor. Also the PIR sensor modules provide us some options to adjust the working of the sensor as shown in above image.

Step 1: Supplies

Pick up the supplies required :
1. Arduino Uno
2. PIR motion sensor
3. Relay module
4. Some Wires
5. Lamp

Step 2: Connecting the Sensor and the Components

The PIR sensor has three pins :
1. VCC
2. GND
3. OUT
We have powered the PIR sensor using he 5V Rail of the Arduino. The output pin of the PIR Sensor is connected to the 4thdigital pin.Then, you have to wire the ''GND'' to the Arduino's ''GND''.
In this project, we use relay for controlling AC light because the Arduino cannot control high volt , but a relay can do this job, which is the sole design of it. so we are using relay as switch to control high power devices.
There are two ways to assembly the relay connection :
1. NC = Normally Closed Connection ( which I'm going to use ).
2. NO = Normally Open Connection.
so you have to wire the relay's ''OUT'' to the 8th digital pin of the arduino uno.Then the relay's ''GND'' to the arduino's ''GND'' and ''VCC'' to the ''VCC''.
NOTE: The wires are assembled as you see in the pictures above.

Step 3: Watch

Step 4: Programming

About the code :

int lamp = 8; // choose the pin for the RELAY
int inputPin = 4; // choose the input pin (for PIR sensor)
int val = 0; // variable for reading the pin status
void setup() {
pinMode(lamp, OUTPUT); // declare lamp as output
pinMode(inputPin, INPUT); // declare sensor as input
Serial.begin(9600);
}
void loop(){
val = digitalRead(inputPin); // read input value
Serial.println(val);
if( val== 1) {
digitalWrite(lamp,HIGH); // turn ON the lamp
} else {
digitalWrite(lamp,LOW); // turn OFF the lamp
}
}

Comments