@RVM jeg vil gjerne prøve din løsning i stigvi's script, er dette rett? Ingen feilmeldinger enn så lenge.
from datetime import datetime
@state_trigger("sensor.forbruk_denne_timen")
def new_state():
global pid
global last_c
global turned_off_all
global turned_off_car
c = (0.9 * last_c) + (0.1 * pid(float(sensor.estimert_timeforbruk_filtrert)))
p, i, d = pid.components
state.set("sensor.regulator_p", round(p,1))
state.set("sensor.regulator_i", round(i,1))
state.set("sensor.regulator_d", round(d,1))
now = datetime.now()
if now.minute < 15:
pid.output_limits = (last_c, 1.0) # Only allow increase first 15 mins
else:
pid.output_limits = (0.0, 1.0)
if round(last_c, 0) != round(c, 0):
sensor.regulator_energy_usage = round(c, 0)
last_c = c
Nei her er det noe feil, tok ikke mange minutter før alt var av her.
Kanskje ikke så enkelt likevel ..