Browse Source

modify control logic of VRF

highing666 3 years ago
parent
commit
e5cd270bdd
1 changed files with 12 additions and 10 deletions
  1. 12 10
      app/controllers/equipment/vrf/basic.py

+ 12 - 10
app/controllers/equipment/vrf/basic.py

@@ -15,8 +15,8 @@ class VRFController(EquipmentController):
         self.target = target
         self.realtime = realtime
 
-    def get_switch_set(self) -> bool:
-        if np.isnan(self.target):
+    def get_switch_set(self, speed: str) -> bool:
+        if speed == 'off':
             switch_set = False
         else:
             switch_set = True
@@ -42,28 +42,30 @@ class VRFController(EquipmentController):
 
     def get_speed_set(self) -> str:
         diff = self.realtime - self.target
-        if diff <= 0:
+        if diff < 0:
+            speed = 'off'
+        elif diff < 0.5:
             speed = 'LL'
-        elif diff < 0.8:
+        elif diff < 1.0:
             speed = 'L'
         elif diff < 1.5:
             speed = 'M'
         elif diff < 2.0:
             speed = 'H'
-        elif diff >= 2.0:
+        elif diff > 2.0:
             speed = 'HH'
         else:
-            speed = 'LL'
+            speed = 'off'
 
         self.device.speed_set = speed
 
         return speed
 
     async def run(self):
-        if self.get_switch_set():
-            self.get_speed_set()
-            self.get_mode_set()
-            self.get_temperature_set()
+        speed = self.get_speed_set()
+        self.get_switch_set(speed)
+        self.get_mode_set()
+        self.get_temperature_set()
 
     def get_results(self):
         return self.device