TOP

Grove - PIR Motion Sensor

From Wiki 来自痴汉的爱
(Redirected from Twig - PIR Motion Sensor)
Jump to: navigation, search

[中文]

PIR Motion.jpg

Contents

Introduction

This is a simple to use PIR motion sensor with Grove compatible interface. This sensor allows you to sense motion, usually human movement in its range. Simply connect it to Grove - Base shield and program it, when anyone moves in its detecting range, the sensor will output HIGH on its SIG pin. The detecting range and response speed can be adjusted by 2 potentiometers soldered on its circuit board. The response speed is from 0.3s - 25s, and max 6 meters of detecting range.
Model:SEN32357P

Specification

Operating Voltage: 5V
Operating Current(VCC = 3V): 100uA
Operating Current(VCC = 5V): 150uA
Measuring Range: 0.1 - 6m
Holding Time: 1 - 25s
Working Wave Length: 7 - 14um
Detecting Angle: 120 degree

Usage

The following sketch demonstrates a simple application of sensing montion. When someone moves in its detecting range, it will output High through its SIG pin and the LED will light. Otherwise, it will output LOW. Then you can use it to detect the motion of people.

PIR Motion Sensor.jpg

 
/*******************************************************************************/
/*macro definitions of PIR motion sensor pin and LED pin*/
#define PIR_MOTION_SENSOR 2//Use pin 2 to receive the signal from the module 
#define LED	4//the Grove - LED is connected to D4 of Arduino

void setup()
{
	pinsInit();
}

void loop() 
{
	if(isPeopleDetected())//if it detects the moving people?
		turnOnLED();
	else
		turnOffLED();
}
void pinsInit()
{
	pinMode(PIR_MOTION_SENSOR, INPUT);
	pinMode(LED,OUTPUT);
}
void turnOnLED()
{
	digitalWrite(LED,HIGH);
}
void turnOffLED()
{
	digitalWrite(LED,LOW);
}
/***************************************************************/
/*Function: Detect whether anyone moves in it's detecting range*/
/*Return:-boolean, ture is someone detected.*/
boolean isPeopleDetected()
{
	int sensorValue = digitalRead(PIR_MOTION_SENSOR);
	if(sensorValue == HIGH)//if the sensor value is HIGH?
	{
		return true;//yes,return ture
	}
	else
	{
		return false;//no,return false
	}
}

Note: The detecting distance can be adjusted by rotate the distance potentiometer. When you rotate the distance potentiometer clockwise, the detecting distance will decrease from 6 meters to only several centimeters. And when you rotate it counter-clockwise to the end, the module will be too sensitive to be triggered by the atmosphere even there is no people moving before it. The holding time can also be adjusted by the Delay_time potentiometer, the value is about from  25s to 1s when you rotate it clockwise. The module can also be set as retriggerable or un- retriggerable. When the switch is in the H position, the module is retriggerable and is unretrigerred when the switch is in L position.

Resources

Personal tools
Namespaces

Variants
Actions
Navigation
Support
Start here|开始探索
Learn|学习
Product|产品线
Category|分类
Toolbox