Я работаю над проектом Raspberry Pi, который отображает другую видео-петлю, в зависимости от того, какой из 3 датчиков движения PIR «воспринимает движение». Когда никакие датчики ничего не чувствуют, я хочу отобразить дополнительное видео. Итак, у всех есть 4 видео: левый, средний, правый, неактивный.else-like clause, когда датчики движения PIR не воспринимают с помощью малины Pi
Использование Python 3.4.2, мне удалось получить видео, воспроизводящееся при активации датчиков, но у меня возникают трудности с воспроизведением видео, когда ни один из датчиков не активен. Я думал, что это будет простая «еще» статья, но, видимо, это не так. Я пробовал много разных методов, но у меня кончились идеи. Может ли кто-нибудь помочь мне интегрировать «не обнаруженное движение» в код? Код, как показано ниже:
''' Import required stuff '''
import RPi.GPIO as GPIO #GPIO
import time #for delay
import subprocess #for omxplayer
''' GPIO setup '''
GPIO.setmode(GPIO.BCM) #GPIO setmode
PIR_PIN_L = 23 #define left pin
PIR_PIN_R = 24 #define right pin
PIR_PIN_M = 25 #define middle pin
GPIO.setup(PIR_PIN_L, GPIO.IN) #set left pin
GPIO.setup(PIR_PIN_R, GPIO.IN) #set right pin
GPIO.setup(PIR_PIN_M, GPIO.IN) #set middle pin
'''Definitions '''
def MOTIONL(PIR_PIN_L): #define motion on left
print("Motion Detected on Left!") #output if motion detected
def MOTIONR(PIR_PIN_R): #define motion on right
print("Motion Detected on Right!") #output if motion detected
def MOTIONM(PIR_PIN_M): #define motion in middle
print("Motion Detected at Middle!") #output if motion detected
''' Initiation '''
print("PIR Module Test (CTRL+C to exit)")
time.sleep(4)
print("Ready")
''' Sensing '''
try:
GPIO.add_event_detect(PIR_PIN_L, GPIO.RISING, callback=MOTIONL)
GPIO.add_event_detect(PIR_PIN_M, GPIO.RISING, callback=MOTIONM)
GPIO.add_event_detect(PIR_PIN_R, GPIO.RISING, callback=MOTIONR)
while 1:
time.sleep(100)
except KeyboardInterrupt:
print("Quit")
GPIO.cleanup()
Я заменил части видео с print("Motion detected ...")
для простоты. Если вы можете добавить print("No motion detected")
, когда датчики не активированы, это будет очень полезно.