SAFETY-136: a gentler loop on a slow meter until the last move shows
On a meter whose readings come 4 s or more apart, the loop runs at half its gain after a move of 150 W or more, until the meter has fallen by half of the move or 2 cycles have passed. With readings 10 s late on a 5 s meter the export falls 44 % over oven, kettle and hob, owner shape, steps; 1-2 s meters are untouched. Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -63,6 +63,7 @@ from .clamp import (
|
||||
)
|
||||
from . import freshness
|
||||
from . import lateness
|
||||
from .settle import Settle
|
||||
from . import dayview, homeview
|
||||
from .daycurve import SolarToday
|
||||
from . import handback
|
||||
@@ -741,6 +742,7 @@ class Controller(InputsMixin, WritesMixin, TradeMixin, CycleMixin, AlarmsMixin,
|
||||
self._arb_action = None
|
||||
self.inputs_bad_since = None
|
||||
self.answer = lateness.Answer() # SAFETY-128
|
||||
self.settle = Settle() # SAFETY-136
|
||||
self._late_logged = self._late_zero = False
|
||||
# SAFETY-03: what the loop's OWN bounds did last cycle, `(engaged,
|
||||
# note, over_rating)` (SAFETY-40 splits the last out). Site-level: the
|
||||
|
||||
Reference in New Issue
Block a user