瀏覽代碼

1:同步json 文件
2:修正获取数据的逻辑

wmy 5 天之前
父節點
當前提交
0c66308ab9
共有 2 個文件被更改,包括 18 次插入16 次删除
  1. 9 7
      device_states.json
  2. 9 9
      loop_main.py

+ 9 - 7
device_states.json

@@ -23,22 +23,24 @@
     },
     "UF3": {
         "model_prev_L_s": 4340.0,
-        "model_prev_t_bw_s": 82.0,
-        "last_cycle_end_time": "2025-11-07 22:19:07",
+        "model_prev_t_bw_s": 80.0,
+        "last_cycle_end_time": "2025-11-10 13:41:59",
         "recent_tmp_values": [
             0.0177,
             0.0204,
-            0.0242
+            0.0242,
+            0.0229
         ]
     },
     "UF4": {
-        "model_prev_L_s": 4340.0,
-        "model_prev_t_bw_s": 84.0,
-        "last_cycle_end_time": "2025-11-08 10:25:28",
+        "model_prev_L_s": 4400.0,
+        "model_prev_t_bw_s": 82.0,
+        "last_cycle_end_time": "2025-11-11 05:12:02",
         "recent_tmp_values": [
             0.0211,
             0.0221,
-            0.0235
+            0.0235,
+            0.0248
         ]
     }
 }

+ 9 - 9
loop_main.py

@@ -259,25 +259,25 @@ def get_tmp_extremes(item_name, start_time, end_time, word_control):
         max_val = None
         min_val = None
 
-        # 从第一次调用结果中提取'UF1跨膜压差'的值,并存储在字典中,以时间为键
-        uf1_diff_values = {}
+        # 从第一次调用结果中提取'跨膜压差'的值,并存储在字典中,以时间为键
+        item_values = {}
         if data1.get("code") == 200 and data1.get("data"):
             for item in data1["data"]:
-                if item.get("name") == "UF1跨膜压差" and item.get("val") is not None:
+                if item.get("name") == item_name and item.get("val") is not None:
                     time = item.get("htime_at")
-                    uf1_diff_values[time] = float(item.get("val"))
-            if uf1_diff_values:
-                logger.info(f"第一次API查询成功,提取到跨膜压差数据数量:{len(uf1_diff_values)}")
+                    item_values[time] = float(item.get("val"))
+            if item_values:
+                logger.info(f"第一次API查询成功,提取到跨膜压差数据数量:{len(item_values)}")
 
         # 从第二次调用结果中提取'UF1控制字'为26的数据点,并进行时间匹配
         if data2.get("code") == 200 and data2.get("data"):
             control_26_values = []
             for item in data2["data"]:
-                if item.get("name") == "UF1控制字" and item.get("val") == '26':
+                if item.get("name") == word_control and item.get("val") == '26':
                     time = item.get("htime_at")
                     # 如果在第一次数据中找到了对应的跨膜压差值
-                    if time in uf1_diff_values:
-                        control_26_values.append(uf1_diff_values[time])
+                    if time in item_values:
+                        control_26_values.append(item_values[time])
 
             if control_26_values:
                 logger.info(f"找到控制字为26的数据点,合并跨膜压差数据")