http://2.bp.blogspot.com/-DlpGa_yyJ0Y/U ... iagram.pngに似た単純なレーザー ビーム アラーム回路を使用してい ます。
ブザーの代わりに 4k7 抵抗器を使用してこの回路から Pi に入力し、ビームが遮られたときに画像をキャプチャしました。pigpio ライブラリのコールバック関数を使用して、画像を次のようにキャプチャしました。
import pigpio
import os
pi=pigpio.pi()
pi.set_mode(4,pigpio.INPUT)
pi.set_pull_up_down(4,pigpio.PUD_DOWN)
i=0
def capture(gpio,level,ticks):
global i
i=i+1
os.system(("raspistill -o img%s.png -md 6 -t 500")%i)
callf=pi.callback(4, pigpio.RISING_EDGE, capture)
while True:
pass
しかし、問題は、単一の障害物に対して複数の画像をキャプチャすることがあるということでした。デバウンスがこの種の状況の解決策であることがわかりました。pigpio ライブラリでデバウンスを使用する方法。