포토 인터럽터(Photo Interrupter)는 포토 트랜지스터와 적외선 LED를 통해 물건을 감지하는 방식으로 작동한다.
해당 부품들은 위 사진의 검은 ㄷ자형 플라스틱에 달려있으며, 사이에 물체가 들어오면 이를 감지할 수 있다.
Photo Interrupter | Raspberry Pi |
---|---|
VCC | 1 |
GND | 6 |
SIG | 11 |
위의 회로도와 표를 참고해서 선을 연결한 후 아래의 코드를 작성해서 실행한다
#!/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
라는 문장이 출력되게 된다.