Przeglądaj źródła

新网页功率因素推送与计算存在bug

liyi 11 miesięcy temu
rodzic
commit
eb2f60dded
1 zmienionych plików z 9 dodań i 1 usunięć
  1. 9 1
      pro/src/sqlite_handle.c

+ 9 - 1
pro/src/sqlite_handle.c

@@ -705,6 +705,7 @@ int dev_search_latest_power_statistic_info(GlobalDeviceManager* globalDeviceMang
     float faverageVoltage =0.0f,faverageFreq =0.0f,faverageFactor =0.0f;
     float fDiffVoltage =0.0f,fDiffFreq =0.0f,fDiffFactor =0.0f;
     float fNowVoltage =0.0f,fNowFreq =0.0f,fNowFactor =0.0f;
+    float f_power = 0.0f,f_n_power = 0.0f,f_app_power = 0.0f;
 
     memset(all,0,sizeof(_OverAllPwrAckInfo));
     all->product_name = globalDeviceManger->_globalDevInfo.product.name;
@@ -733,6 +734,9 @@ int dev_search_latest_power_statistic_info(GlobalDeviceManager* globalDeviceMang
         faverageFreq /= nTempSum;
         faverageFactor /= nTempSum;
     }
+
+
+
     nTempSum=0;
     list_for_each_entry(_globalPowerMangerTemp, &globalDeviceManger->_globalPowerManger.list, list)
     {
@@ -776,11 +780,15 @@ int dev_search_latest_power_statistic_info(GlobalDeviceManager* globalDeviceMang
         // 填数据     
         all->current += _globalPowerMangerTemp->_PowerInfo.current ;
         all->power +=  _globalPowerMangerTemp->_PowerInfo.power ;
+        f_power += _globalPowerMangerTemp->_PowerInfo.power;
+        f_n_power += _globalPowerMangerTemp->_PowerInfo.n_power;
+        f_app_power += _globalPowerMangerTemp->_PowerInfo.app_power;
         nTempSum++;
     }
+
     all->voltage = fSaveVoltage ; 
     all->freq =  fSaveFreq ;
-    all->factor = fSaveFactor;      
+    all->factor = (f_app_power > 0.0) ? (f_power / f_app_power): 0.0;      
     all->power = all->power;
     
     return 0;