ich bin ziemlich neu hier bei Python und würde mich über etwas Hilfe bei einem meiner kleinen Projekte freuen.

Mein Plan war eine simple, über den RasPi gesteuerte Bewässerungsanlage. Für eines der Ventile war ein Motor gedacht, der das Ventil zu bestimmten Uhrzeiten öffnet und anschließend wieder schließt. Den Motor bediene ich über einen L293D IC, über zwei Pins steuere ich damit die Drehrichtung des Motors.
Im unten befindlichen Code weise ich also dem Termin t die aktuelle Systemuhrzeit zu. Dann kommen die Unterprogramme für die Motorbewegung und anschließend die hauptsächliche while-True-Schleife. Wenn es nun 8 oder 20 Uhr spät ist sollte das Ventil thereotisch kurz geöffnet werden.
Allerdings wird immer die else-Schleife durchlaufen, auch wenn die Print-Anweisung 8 oder 20 ausgibt.

Ich kann keine Fehler finden, habe ich logisch vllt irgendetwas grundsätzlich falsch gemacht, z.B. bei der Variablenzuweisung?
Vielen Dank schonmal im Vorraus, M1K3Y
Code: Alles auswählen
import time
import RPi.GPIO as GPIO
motor = 20
motor2 = 21
t = time.strftime("%H%M")
GPIO.setmode(GPIO.BCM)
GPIO.setup(motor, GPIO.OUT)
GPIO.setup(motor2, GPIO.OUT)
def motor_vor():
GPIO.output(motor, True)
time.sleep(4)
GPIO.output(motor, False)
def motor_zurück():
GPIO.output(motor2, True)
time.sleep(4)
GPIO.output(motor2, False)
while True:
print(time.strftime("%H%M"))
if t == 800:
motor_vor()
time.sleep(8)
motor_zurück()
elif t == 2000:
motor_vor()
time.sleep(8)
motor_zurück()
else:
GPIO.output(motor, False)
GPIO.output(motor2, False)
time.sleep(4)