Browse Source

fix a bug that adjust target base on current target instead of realtime data

chenhaiyang 4 years ago
parent
commit
96bd0fe0aa
1 changed files with 2 additions and 4 deletions
  1. 2 4
      app/controllers/targets.py

+ 2 - 4
app/controllers/targets.py

@@ -160,9 +160,7 @@ class TemperatureTargetController(TargetController):
     async def readjust_current(self, current: float, diff: float) -> float:
     async def readjust_current(self, current: float, diff: float) -> float:
         _RANGE = 2
         _RANGE = 2
         new_target = current
         new_target = current
-        if np.isnan(self._realtime_data):
-            new_target += diff
-        else:
+        if not np.isnan(self._realtime_data):
             if self._season == Season.cooling:
             if self._season == Season.cooling:
                 standard = current + 1.0
                 standard = current + 1.0
             elif self._season == Season.heating:
             elif self._season == Season.heating:
@@ -172,7 +170,7 @@ class TemperatureTargetController(TargetController):
 
 
             if (diff > 0 and self._realtime_data + _RANGE > standard
             if (diff > 0 and self._realtime_data + _RANGE > standard
                     or diff < 0 and self._realtime_data - _RANGE < standard):
                     or diff < 0 and self._realtime_data - _RANGE < standard):
-                new_target += diff
+                self._realtime_data += diff
 
 
         return new_target
         return new_target