라즈베리파이로 포토 인터럽터 사용하기

상현·2022년 11월 25일
1


포토 인터럽터(Photo Interrupter)는 포토 트랜지스터와 적외선 LED를 통해 물건을 감지하는 방식으로 작동한다.

해당 부품들은 위 사진의 검은 ㄷ자형 플라스틱에 달려있으며, 사이에 물체가 들어오면 이를 감지할 수 있다.

Photo InterrupterRaspberry Pi
VCC1
GND6
SIG11

위의 회로도와 표를 참고해서 선을 연결한 후 아래의 코드를 작성해서 실행한다

#!/usr/bin/env python3
import RPi.GPIO as GPIO

PIPin  = 11

def setup():
    GPIO.setmode(GPIO.BOARD)       
    GPIO.setup(PIPin, GPIO.IN, pull_up_down=GPIO.PUD_UP)    
    GPIO.add_event_detect(PIPin, GPIO.BOTH, callback=detect, bouncetime=200)

def Led(x):
    if x == 1:
        print ('Light was blocked')

def detect(chn):
    Led(GPIO.input(PIPin))

def loop():
    while True:
        pass

def destroy():
    GPIO.cleanup()

if __name__ == '__main__':
    setup()
    try:
        loop()
    except KeyboardInterrupt: 
        destroy()

만일 사이에 물건이 들어와 적외선이 가려져 포토 트랜지스터에 도달하지 않게 되면
Light was blocked
라는 문장이 출력되게 된다.

0개의 댓글