Model

 Raspberry PI B+

 OS

 RASPBIAN 3.12

라즈베리파이 모션센서 사용하기



PIR Sensor를 라즈베리파이와 연결하고 간단한 테스트를 한다.

준비물
라즈베리파이, 점퍼선 3개, PIR 센서

PIR 센서, 라즈베리파이와 연결하기

아래 사진과 같이 PIR 센서의 핀과 라즈베리파이의 GPIO(핀 확인)와 연결한다. 센서는 아래를 확인하거나, 커버(?)를 떼어보면 확인할 수 있다.

출처 링크

코딩

1. 파이썬 파일 생성.

$ vi pir.py

2. 코드 작성

2-1. 예제 1.

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
PIR_PIN = 7

GPIO.setup(PIR_PIN, GPIO.IN)

try:
	print “PIR Module Test (CTRL+C to exit)”
	time.sleep(2)
	print “Ready”
	
	while True:
		if GPIO.input(PIR_PIN):
			t = time.localtime()
			print “%d:%d:%d Motion Detected!" % (t.tm_hour, t.tm_min, t.tm_sec)
		time.sleep(0.05)

except KeyboardInterrupt:
	print “ Quit”
	GPIO.cleanup()

2-2. 예제 2.

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
PIR_PIN = 7
GPIO.setup(PIR_PIN, GPIO.IN)

def MOTION(PIR_PIN):
	print "Motion Detected!"

print "PIR Module Test(CTRL+C to exit)"
time.sleep(2)
print "Ready"

try:
	GPIO.add_event_detect(PIR_PIN, GPIO.RISING, callback=MOTION)
 	while 1:
 		time.sleep(100)

except KeyboardInterrupt:
	print "Quit"
 	GPIO.cleanup()

3. 실행

sudo python pir.py


 반응속도는 0.5초가량 늦게 나타는 것 같으며, 감지하는 능력은 손가락 하나 움직이는 것도 인식할만큼 적은 움직임에도 반응한다. 또한 바로 정면에 있는 것만 인식하지 않고 넓은 부분을 모두 감지하는 것 같다.


참고사이트 Link, Link, Link, Link



+ Recent posts