Parcourir la source

1、调整总阈值最小为0.05;2、完善级联功能

liyuezong il y a 1 an
Parent
commit
731e18c020
5 fichiers modifiés avec 1053 ajouts et 891 suppressions
  1. 7 6
      pro/src/app.c
  2. 12 10
      pro/src/appweb_handle.c
  3. 1025 859
      pro/src/cascade.c
  4. 3 3
      pro/src/cascade.h
  5. 6 13
      pro/src/sqlite_handle.c

+ 7 - 6
pro/src/app.c

@@ -1369,7 +1369,7 @@ static void* power_thread(void* arg)
                 uint8_t total_wanning = 0;
 #endif
             if (_globalTotalPowerInfo._power_info.voltage >= _globalDeviceManager->_globalPowerManger.global_over_manager.product_vol_upper_threshold &&
-                abs(_globalDeviceManager->_globalPowerManger.global_over_manager.product_vol_upper_threshold) >= 0.05)
+                (_globalDeviceManager->_globalPowerManger.global_over_manager.product_vol_upper_threshold) >= 0.05)
             {
                 _globalDeviceManager->_globalPowerManger._PowerWarninginfo.w_voltage_up = true;
 #ifdef NORTH_USER_SPECILS
@@ -1380,7 +1380,7 @@ static void* power_thread(void* arg)
                 _globalDeviceManager->_globalPowerManger._PowerWarninginfo.w_voltage_up = false;
 
             if (_globalTotalPowerInfo._power_info.voltage <= _globalDeviceManager->_globalPowerManger.global_over_manager.product_vol_lower_threshold &&
-                abs(_globalDeviceManager->_globalPowerManger.global_over_manager.product_vol_lower_threshold) >= 0.05)
+                (_globalDeviceManager->_globalPowerManger.global_over_manager.product_vol_lower_threshold) >= 0.05)
             {
                 _globalDeviceManager->_globalPowerManger._PowerWarninginfo.w_voltage_down = true;
 #ifdef NORTH_USER_SPECILS
@@ -1391,18 +1391,19 @@ static void* power_thread(void* arg)
                 _globalDeviceManager->_globalPowerManger._PowerWarninginfo.w_voltage_down = false;
 
             if (_globalTotalPowerInfo._power_info.current >= _globalDeviceManager->_globalPowerManger.global_over_manager.product_cur_upper_threshold &&
-                abs(_globalDeviceManager->_globalPowerManger.global_over_manager.product_cur_upper_threshold) >= 0.05)
+                (_globalDeviceManager->_globalPowerManger.global_over_manager.product_cur_upper_threshold) >= 0.05)
             {
+                log_i("current:%0.2f,upper:%0.2f,%d", _globalTotalPowerInfo._power_info.current, _globalDeviceManager->_globalPowerManger.global_over_manager.product_cur_upper_threshold, nTotalAup);
                 _globalDeviceManager->_globalPowerManger._PowerWarninginfo.w_current = true;
 #ifdef NORTH_USER_SPECILS
-                total_wanning ++;
+                total_wanning++;
 #endif
             }
             else
                 _globalDeviceManager->_globalPowerManger._PowerWarninginfo.w_current = false;
 
             if (_globalTotalPowerInfo._power_info.power >= _globalDeviceManager->_globalPowerManger.global_over_manager.product_pwr_upper_threshold &&
-                abs(_globalDeviceManager->_globalPowerManger.global_over_manager.product_pwr_upper_threshold) >= 0.05)
+                (_globalDeviceManager->_globalPowerManger.global_over_manager.product_pwr_upper_threshold) >= 0.05)
             {
                 _globalDeviceManager->_globalPowerManger._PowerWarninginfo.w_power = true;
 #ifdef NORTH_USER_SPECILS
@@ -1413,7 +1414,7 @@ static void* power_thread(void* arg)
                 _globalDeviceManager->_globalPowerManger._PowerWarninginfo.w_power = false;
 
             if (_globalTotalPowerInfo._power_info.consumption >= _globalDeviceManager->_globalPowerManger.global_over_manager.product_pwrcon_upper_threshold &&
-                abs(_globalDeviceManager->_globalPowerManger.global_over_manager.product_pwrcon_upper_threshold) >= 0.05)
+                (_globalDeviceManager->_globalPowerManger.global_over_manager.product_pwrcon_upper_threshold) >= 0.05)
             {
                 _globalDeviceManager->_globalPowerManger._PowerWarninginfo.w_consumption = true;
 #ifdef NORTH_USER_SPECILS

+ 12 - 10
pro/src/appweb_handle.c

@@ -1446,12 +1446,16 @@ static void channelStatusMonitoring(void* conn)
                 goto quit;
             }
 
-            cmd.cmd = CASCADE_CMD_QUERY_CH;
-            r = cascade_request(&cmd);
-            if(r) {
-                goto quit;
+            if (strcmp(_over_chn_pwr_request.type, "resetChannel") == 0)
+            {
+                cmd.cmd = CASCADE_CMD_QUERY_CH;
+                r = cascade_request(&cmd);
+                if (r)
+                {
+                    goto quit;
+                }
+                cascade_get_ch(&_over_chn_pwr_back_info);
             }
-            cascade_get_ch(&_over_chn_pwr_back_info);
         }
         else {
             if(product_chn_id==0)
@@ -5519,7 +5523,6 @@ static void equipmentMintenance(void *conn)
     {
         _OverBackBreakerInfo breaker_info;
 
-        printf("get listKgSbQuery infomation!!!\n");
         breaker_info.product_id = __globalDeviceManage._globalDevInfo.product.id;
         breaker_info.product_name = __globalDeviceManage._globalDevInfo.product.name;
         breaker_info.product_number = __globalDeviceManage._globalDevInfo.product.number;
@@ -5578,9 +5581,9 @@ static void equipmentMintenance(void *conn)
             cmd.obj = OBJ_OVERALL;
             cascade_request(&cmd);
 
-            // cmd.cmd = CASCADE_CMD_BREAKER_QUERY;
-            // cmd.obj = OBJ_OVERALL;
-            // cascade_request(&cmd);
+            cmd.cmd = CASCADE_CMD_BREAKER_QUERY;
+             cmd.obj = OBJ_OVERALL;
+             cascade_request(&cmd);
             ack_str=ctrl_sts_ack_to_json();
             // GlobalBreakerManager *temp = NULL;
             // GlobalDeviceManager *dm = &__globalDeviceManage2;
@@ -5659,7 +5662,6 @@ static void equipmentMintenance(void *conn)
             }
             lock_s_release(LOCK_ID_BREAKER);
 
-            printf("_glos_asdsd  addr=0x%x\n",(uint32_t)(&__globalDeviceManage));
             ack_str = over_all_breaker_switch_info_to_json(&_over_breaker_switch_info,0);
 
             //释放资源

Fichier diff supprimé car celui-ci est trop grand
+ 1025 - 859
pro/src/cascade.c


+ 3 - 3
pro/src/cascade.h

@@ -179,14 +179,14 @@ typedef struct{
     uint16_t breaker_addrs;
     int breaker_id;
     char breaker_gather_type[64];
-    char breaker_com[20];
+    char breaker_com[64];
     char breaker_switch_name[64];
-    char breaker_chns_name[64];    //
+    char breaker_chns_name[128];    //
 }breaker_channel_info_t;
 
 
 typedef struct {
-    int cnt;
+    uint8_t         cnt;
     breaker_channel_info_t breaker_chn[CH_MAX];
 }breaker_info_t;
 

+ 6 - 13
pro/src/sqlite_handle.c

@@ -749,14 +749,14 @@ int dev_search_latest_power_statistic_info(GlobalDeviceManager* globalDeviceMang
             fSaveVoltage=_globalPowerMangerTemp->_PowerInfo.voltage;
             fSaveFreq=_globalPowerMangerTemp->_PowerInfo.freq;
             fSaveFactor=_globalPowerMangerTemp->_PowerInfo.factor;
-            fDiffVoltage=abs(faverageVoltage-fSaveVoltage);
-            fDiffFreq=abs(faverageFreq-fSaveFreq);
-            fDiffFactor=abs(faverageFactor-fSaveFactor);            
+            fDiffVoltage=fabs(faverageVoltage-fSaveVoltage);
+            fDiffFreq=fabs(faverageFreq-fSaveFreq);
+            fDiffFactor=fabs(faverageFactor-fSaveFactor);            
         }else
         {   //其他位则计算偏差值
-            fNowVoltage=abs(faverageVoltage-_globalPowerMangerTemp->_PowerInfo.voltage);
-            fNowFreq=abs(faverageFreq-_globalPowerMangerTemp->_PowerInfo.freq);
-            fNowFactor=abs(faverageFactor-_globalPowerMangerTemp->_PowerInfo.factor);  
+            fNowVoltage=fabs(faverageVoltage-_globalPowerMangerTemp->_PowerInfo.voltage);
+            fNowFreq=fabs(faverageFreq-_globalPowerMangerTemp->_PowerInfo.freq);
+            fNowFactor=fabs(faverageFactor-_globalPowerMangerTemp->_PowerInfo.factor);  
             if (fNowVoltage<fDiffVoltage)
             {
                 fSaveVoltage=_globalPowerMangerTemp->_PowerInfo.voltage;
@@ -2283,17 +2283,10 @@ int dev_get_breaker_manage_info(sqlite3 *db,int product_id,GlobalBreakerManager*
         strcpy(_globalBreakerManagerTemp->breaker_com,pResult[i*ncolumn+3]);
         _globalBreakerManagerTemp->breaker_gather_addr = atoi(pResult[i*ncolumn+4]);
         _globalBreakerManagerTemp->breaker_chn = atoi(pResult[i*ncolumn+5]);
-        printf("%d  %d  %s %s %d %d\n",_globalBreakerManagerTemp->product_id,
-                        _globalBreakerManagerTemp->breaker_id,
-                        _globalBreakerManagerTemp->breaker_gather_type,
-                        _globalBreakerManagerTemp->breaker_com,
-                        _globalBreakerManagerTemp->breaker_gather_addr,
-                        _globalBreakerManagerTemp->breaker_chn);
         if(pResult[i*ncolumn+6])
             strcpy(_globalBreakerManagerTemp->breaker_switch_name,pResult[i*ncolumn+6]);
         if(pResult[i*ncolumn+7])
             strcpy(_globalBreakerManagerTemp->breaker_chns_name,pResult[i*ncolumn+7]);
-        printf("isnot failed!!!\n");
         list_add_tail(&_globalBreakerManagerTemp->list, &_globalBreakerManager->list);
     }
     sqlite3_free_table(pResult);