bugfix> python > 投稿

ここで、タイマーとモーションセンサーをもう一度いじります。

ラズベリーパイに接続されたPIRモーションセンサーがあります。モーションセンサーが再びモーションをチェックする前に、1分間のクールダウンが必要です。私はいくつかのスレッドをいじっています...しかし、私はこれのためにそれを必要としないと思います、そしてそれを単純に保ちたいです。

GPIO.setmode(GPIO.BCM)
PIR_PIN = 11
GPIO.setup(PIR_PIN, GPIO.IN)
motion_cooldown = 60
start = 0
while True:
    if(time.time() < start + motion_cooldown):
        print("cooldown")
    else: 
        if PIR_PIN == 1:
            print("motion detected")
            #do some stuff
            start = time.time()
        elif PIR_PIN == 0:
            print("no motion")
            #do some stuff
            start = 0         #reset start to 0 so the loop continues

私が得ている現在のエラーは「 'builtin_function_or_methodとintのインスタンス間でサポートされていません」です。これは、intとtime.time()を比較できないことを意味すると思いますが、以前に同様のことを行ったことを誓います。大丈夫。どんな提案も歓迎します!