Skulle nog ha skrivit det som nått i den här stilen:
def activateRelay(relay, duration):
#print("Set relay %d for %ds"%(relay,duration))
GPIO.output(relay, GPIO.LOW)
time.sleep(duration)
GPIO.output(relay, GPIO.HIGH)
GPIO.output(Relay_Ch1,GPIO.HIGH)
GPIO.output(Relay_Ch2,GPIO.HIGH)
GPIO.output(Relay_Ch3,GPIO.HIGH)
lastTemperatureRule = None
while True:
time.sleep(1)
humidity, temperature = Adafruit_DHT.read_retry(DHT_SENSOR, DHT_PIN)
if humidity is None or temperature is None:
print(" Ingen kontakt med Sensorn")
continue
print("Temp={0:0.1f}C Fuktighet={1:0.1f}%".format(temperature, humidity))
if temperature >= 26:
if lastTemperatureRule and lastTemperatureRule != 26:
activateRelay(Relay_Ch1, 20)
lastTemperatureRule = 26
elif temperature >= 20:
if lastTemperatureRule != 20:
activateRelay(Relay_Ch1, 10)
lastTemperatureRule = 20
elif temperature <= 17:
if lastTemperatureRule and lastTemperatureRule != 17:
activateRelay(Relay_Ch2, 30)
lastTemperatureRule = 17