Selaa lähdekoodia

1、暂时还原三相总报警处理;2、屏蔽南网智能项目断路器控制继电器功能(可能导致逻辑bug)

liyuezong 1 vuosi sitten
vanhempi
commit
b1a39c6052
7 muutettua tiedostoa jossa 20 lisäystä ja 321 poistoa
  1. 1 1
      pro/config/cfg.h
  2. 3 154
      pro/src/app.c
  3. 2 20
      pro/src/appweb_handle.c
  4. 0 8
      pro/src/breaker_detection.c
  5. 0 3
      pro/src/common.h
  6. 0 71
      pro/src/json_handle.c
  7. 14 64
      pro/src/sqlite_handle.c

+ 1 - 1
pro/config/cfg.h

@@ -422,7 +422,7 @@
     #define SCREEN_RGB
     #define USE_WATCHDOG
     #define BRD_MAX                             10
-    #define USE_SMART_DETECTION_CTRL    1
+    //#define USE_SMART_DETECTION_CTRL    1
 
     #define NEW_GPIO
 

+ 3 - 154
pro/src/app.c

@@ -1229,12 +1229,6 @@ static void* power_thread(void* arg)
 
                 if (_globalDeviceManager->triphasic_mmap)
                 {
-                    _globalDeviceManager->_globalPowerManger_Ph[nTreeACType]._PowerInfo.consumption =  _pTreeACPowerMangerTemp->_PowerInfo.consumption;
-                    _globalDeviceManager->_globalPowerManger_Ph[nTreeACType]._PowerInfo.power       =  _pTreeACPowerMangerTemp->_PowerInfo.power;
-                    _globalDeviceManager->_globalPowerManger_Ph[nTreeACType]._PowerInfo.current     =  _pTreeACPowerMangerTemp->_PowerInfo.current;
-                    _globalDeviceManager->_globalPowerManger_Ph[nTreeACType]._PowerInfo.voltage     = _pTreeACPowerMangerTemp->_PowerInfo.voltage;
-                    _globalDeviceManager->_globalPowerManger_Ph[nTreeACType]._PowerInfo.freq = _pTreeACPowerMangerTemp->_PowerInfo.freq;
-
                     _globalDeviceManager->triphasic_mmap->i_total.pw_i_total[nTreeACType].i_total_consumption = _pTreeACPowerMangerTemp->_PowerInfo.consumption * 1000;
                     _globalDeviceManager->triphasic_mmap->i_total.pw_i_total[nTreeACType].i_total_power = _pTreeACPowerMangerTemp->_PowerInfo.power * 1000;
                     _globalDeviceManager->triphasic_mmap->i_total.pw_i_total[nTreeACType].i_total_voltage = _pTreeACPowerMangerTemp->_PowerInfo.voltage * 1000;
@@ -1312,12 +1306,6 @@ static void* power_thread(void* arg)
                 }
                 if (_globalDeviceManager->triphasic_mmap)
                 {
-                    _globalDeviceManager->_globalPowerManger_Ph[nTreeACType]._PowerInfo.consumption =  _pTreeACPowerMangerTemp->_PowerInfo.consumption;
-                    _globalDeviceManager->_globalPowerManger_Ph[nTreeACType]._PowerInfo.power       =  _pTreeACPowerMangerTemp->_PowerInfo.power;
-                    _globalDeviceManager->_globalPowerManger_Ph[nTreeACType]._PowerInfo.current     =  _pTreeACPowerMangerTemp->_PowerInfo.current;
-                    _globalDeviceManager->_globalPowerManger_Ph[nTreeACType]._PowerInfo.voltage     = _pTreeACPowerMangerTemp->_PowerInfo.voltage;
-                    _globalDeviceManager->_globalPowerManger_Ph[nTreeACType]._PowerInfo.freq = _pTreeACPowerMangerTemp->_PowerInfo.freq;
-
                     _globalDeviceManager->triphasic_mmap->i_total.pw_i_total[nTreeACType].i_total_consumption = _pTreeACPowerMangerTemp->_PowerInfo.consumption * 1000;
                     _globalDeviceManager->triphasic_mmap->i_total.pw_i_total[nTreeACType].i_total_power = _pTreeACPowerMangerTemp->_PowerInfo.power * 1000;
                     _globalDeviceManager->triphasic_mmap->i_total.pw_i_total[nTreeACType].i_total_voltage = _pTreeACPowerMangerTemp->_PowerInfo.voltage * 1000;
@@ -1375,94 +1363,6 @@ static void* power_thread(void* arg)
                 log_d("ch%d insert data error.\n", _globalTotalPowerInfo.product_ch_id);
             }
         }
-        //相电源超限动作以及防护
-        if (_globalDeviceManager->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_Tree
-            ||_globalDeviceManager->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_One
-            ||_globalDeviceManager->_globalDevInfo.product.pwr_type== SmartPDU_Tree_AC_Two 
-            ||_globalDeviceManager->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_One_B
-            )
-        {
-            bool ph_Vup = false;
-            bool ph_Vdown = false;
-            bool ph_Aup = false;
-            bool ph_Power = false;
-            bool ph_Consumption = false;
-            for(int i = 0; i < 3;i++)
-            {
-                ph_Vup                  = _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_voltage_up;
-                ph_Vdown                = _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_voltage_down;
-                ph_Aup                  = _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_current;
-                ph_Power                = _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_power;
-                ph_Consumption          = _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_consumption;
-
-                if (_globalDeviceManager->_globalPowerManger_Ph[i]._PowerInfo.voltage >= _globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_vol_upper_threshold &&
-                    (_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_vol_upper_threshold) >= 0.05)
-                {
-                    _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_voltage_up = true;
-                }
-                else
-                    _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_voltage_up = false;               
-
-                if (_globalDeviceManager->_globalPowerManger_Ph[i]._PowerInfo.voltage <= _globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_vol_lower_threshold &&
-                    (_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_vol_lower_threshold) >= 0.05)
-                {
-                    _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_voltage_down = true;
-                }
-                else
-                    _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_voltage_down = false;       
-
-                if (_globalDeviceManager->_globalPowerManger_Ph[i]._PowerInfo.current >= _globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_cur_upper_threshold &&
-                    (_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_cur_upper_threshold) >= 0.05)
-                {
-                    _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_current = true;
-                }
-                else
-                    _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_current = false;
-
-
-                if (_globalDeviceManager->_globalPowerManger_Ph[i]._PowerInfo.power >= _globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_pwr_upper_threshold &&
-                    (_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_pwr_upper_threshold) >= 0.05)
-                {
-                    _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_power = true;
-                }
-                else
-                    _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_power = false;
-                if (_globalDeviceManager->_globalPowerManger_Ph[i]._PowerInfo.consumption >= _globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_pwrcon_upper_threshold &&
-                    (_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_pwrcon_upper_threshold) >= 0.05)
-                {
-                    _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_consumption = true;
-
-                }
-                else
-                    _globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_consumption = false;
-
-                if (_globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_voltage_up && !ph_Vup)
-                {
-                    dev_Alarm_send_message(_globalDeviceManager,  &_globalDeviceManager->_globalPowerManger_Ph[i], WARNING_V_UP);
-                }
-                if (_globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_voltage_down && !ph_Vdown)
-                {
-                    dev_Alarm_send_message(_globalDeviceManager,  &_globalDeviceManager->_globalPowerManger_Ph[i], WARNING_V_DOWN);
-                }
-                if (_globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_current && !ph_Aup)
-                {
-                    dev_Alarm_send_message(_globalDeviceManager, &_globalDeviceManager->_globalPowerManger_Ph[i], WARNING_A_UP);
-                }
-                if (_globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_power && !ph_Power)
-                {
-                    dev_Alarm_send_message(_globalDeviceManager,  &_globalDeviceManager->_globalPowerManger_Ph[i], WARNING_W_UP);
-                }
-                if (_globalDeviceManager->_globalPowerManger_Ph[i]._PowerWarninginfo.w_consumption && !ph_Consumption)
-                {
-                    dev_Alarm_send_message(_globalDeviceManager,  &_globalDeviceManager->_globalPowerManger_Ph[i], WARNING_P_UP);
-                }
-                
-            }
-
-        }
-
-
-
         //判断总电源超限状态及动作防护
         {
             bool nTotalVup = _globalDeviceManager->_globalPowerManger._PowerWarninginfo.w_voltage_up;
@@ -3386,58 +3286,9 @@ int app_init(void)
         else
         {
             log_i("all chn data inserted ok.\n");
-        }     
-        
-        
-    }
-#if 1
-    if (_globalDeviceManager->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_Tree
-        ||_globalDeviceManager->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_One
-        ||_globalDeviceManager->_globalDevInfo.product.pwr_type== SmartPDU_Tree_AC_Two 
-        ||_globalDeviceManager->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_One_B
-        )
-    {
-        for(int i=1;i <= 3;i++)
-        {
-            ret = dev_get_power_manage_info(_globalDeviceManager->db,_globalDeviceManager->_globalDevInfo.product.id,
-                    0,
-                    i,
-                    &_globalDeviceManager->_globalPowerManger_Ph[i-1]);
-
-            if(ret==-1)
-            {
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].product_ch_id = _globalDeviceManager->_globalDevInfo.product.id;
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].product_saddr = 0;
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].product_ch_id = 0;
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].product_ch_addr = i;
-                sprintf(_globalDeviceManager->_globalPowerManger_Ph[i-1].product_ch_name,"ALL_L%d",(i));
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].product_ch_type = type;
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].product_ch_status = 0;
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].product_ch_NF_status = 0;
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].product_ch_start_delay = 1000;
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].product_ch_stop_delay = 1000;
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].global_over_manager.product_cur_over_upper_threshold_ctrl =ALARM_CTRL_ALARM_ONLY;//默认超限只报警
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].global_over_manager.product_pwr_over_upper_threshold_ctrl = ALARM_CTRL_ALARM_ONLY;
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].global_over_manager.product_pwrcon_over_upper_threshold_ctrl = ALARM_CTRL_ALARM_ONLY;
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].global_over_manager.product_vol_over_lower_threshold_ctrl= ALARM_CTRL_ALARM_ONLY;
-                _globalDeviceManager->_globalPowerManger_Ph[i-1].global_over_manager.product_vol_over_upper_threshold_ctrl = ALARM_CTRL_ALARM_ONLY;
-                if(dev_insert_power_manage_info(_globalDeviceManager->db,
-                                _globalDeviceManager->_globalDevInfo.product.id,
-                                0,&_globalDeviceManager->_globalPowerManger_Ph[i-1])!=0)
-                {
-                    log_e("all chn data inserted error.\n");
-                    return 0;
-                }else
-                {
-                    log_i("all chn data inserted ok.\n");
-                } 
-            }
-            INIT_LIST_HEAD(&_globalDeviceManager->_globalPowerManger_Ph[i-1].list);
-            INIT_LIST_HEAD(&_globalDeviceManager->_globalPowerManger_Ph[i-1].list_DS);
-            INIT_LIST_HEAD(&_globalDeviceManager->_globalPowerManger_Ph[i-1].list_Tree_AC);
-        }
-    }
-#endif
+        }        
+    } 
+    
     if (_globalDeviceManager->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_Tree
     ||_globalDeviceManager->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_One
     ||_globalDeviceManager->_globalDevInfo.product.pwr_type== SmartPDU_Tree_AC_Two 
@@ -3594,9 +3445,7 @@ int app_init(void)
     thread_start(THREAD_ID_RECV_MESSAGE_QUEUE, recv_handler, _globalDeviceManager);
 #endif
 
-
     thread_start(THREAD_ID_BREAKER_SCANNER, breaker_scanner_thread, _globalDeviceManager);
-
     thread_start(THREAD_ID_BREAKER, breaker_thread, _globalDeviceManager);
     
 #if (CHIP_TYPE != CHIP_T113s)

+ 2 - 20
pro/src/appweb_handle.c

@@ -3030,17 +3030,7 @@ char* setThresholdToCh(_AlarmRequestInfo* _alarm_request_info,int nChID)
     int g_pwr_ch_id = nChID;
     if (g_pwr_ch_id == 0)
     {
-    //    _globalPowerMangerSaveTemp = &__globalDeviceManage._globalPowerManger;
-#if 1
-        if(strncmp(_alarm_request_info->_pwr_info.productChName,"ALL_CH",6)== 0)
-            _globalPowerMangerSaveTemp = &__globalDeviceManage._globalPowerManger;
-        else if(strncmp(_alarm_request_info->_pwr_info.productChName,"ALL_L1",6)== 0)
-            _globalPowerMangerSaveTemp = &__globalDeviceManage._globalPowerManger_Ph[0];
-        else if(strncmp(_alarm_request_info->_pwr_info.productChName,"ALL_L2",6)== 0)
-            _globalPowerMangerSaveTemp = &__globalDeviceManage._globalPowerManger_Ph[1];
-        else if(strncmp(_alarm_request_info->_pwr_info.productChName,"ALL_L3",6)== 0)
-            _globalPowerMangerSaveTemp = &__globalDeviceManage._globalPowerManger_Ph[2];
-#endif
+        _globalPowerMangerSaveTemp = &__globalDeviceManage._globalPowerManger;
     }
     else
     {
@@ -3394,15 +3384,7 @@ static void alarmProtect(void *conn)
         char log_buff[256];
         if (0==g_pwr_ch_id)
         {
-            if(strncmp(_alarm_request_info._pwr_info.productChName,"ALL_CH",6)== 0)
-                sprintf(log_buff, "Update power threshold ALL_CH!");
-            else if(strncmp(_alarm_request_info._pwr_info.productChName,"ALL_L1",6)== 0)
-                sprintf(log_buff, "Update power threshold ALL_L1!");
-            else if(strncmp(_alarm_request_info._pwr_info.productChName,"ALL_L2",6)== 0)
-                sprintf(log_buff, "Update power threshold ALL_L2!");
-            else if(strncmp(_alarm_request_info._pwr_info.productChName,"ALL_L3",6)== 0)
-                sprintf(log_buff, "Update power threshold ALL_L3!");
-
+            sprintf(log_buff, "Update power threshold ALL_CH!");
         }
         else sprintf(log_buff, "Update power threshold CH%d!",g_pwr_ch_id);
         dev_insert_alarm_ctrl(__globalDeviceManage.db, __globalDeviceManage._globalDevInfo.product.id, ALARM_TYPE_OPRATION, log_buff);

+ 0 - 8
pro/src/breaker_detection.c

@@ -162,14 +162,6 @@ int breaker_485_get_chns(void* manger,int saddr,unsigned short* cnt)
 }
 
 
-
-
-
-
-
-
-
-
 void* breaker_scanner_thread(void* arg)
 {
     //GlobalDeviceManager* gm= (GlobalDeviceManager*)(argv);

+ 0 - 3
pro/src/common.h

@@ -1329,9 +1329,6 @@ typedef struct
     bool                dev_samp_flag ; //电源采集线程标志
     GlobalDeviceInfo    _globalDevInfo;    //设备管理信息
     GlobalPowerManger   _globalPowerManger;      //电源管理表
-#if 1
-    GlobalPowerManger   _globalPowerManger_Ph[3]; 
-#endif
     GlobalSensorManger  _globalSensorManger;     //传感器管理表  
     Modbus_Manger       sensor_modbus_manager;  //通信接口管理
     unsigned int        useSlaveCount ;         //有效地址

+ 0 - 71
pro/src/json_handle.c

@@ -3834,77 +3834,6 @@ char* alarm_power_threshold_to_json(GlobalPowerManger* _globalPowerManger)
 
         cJSON_AddItemToObject(data_root_array, "data", data_filed);       
     }
-#if 1
-    GlobalDeviceManager* _globalDeviceManager=&__globalDeviceManage;
-    if (_globalDeviceManager->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_Tree
-        ||_globalDeviceManager->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_One
-        ||_globalDeviceManager->_globalDevInfo.product.pwr_type== SmartPDU_Tree_AC_Two 
-        ||_globalDeviceManager->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_One_B
-        )
-    {
-        
-
-        for(int i = 0; i < 3;i++)
-        {
-            cJSON* data_filed = cJSON_CreateObject();
-            cJSON_AddStringToObject(data_filed,"productChName",_globalDeviceManager->_globalPowerManger_Ph[i].product_ch_name);
-            sprintf(temp,"%d",_globalDeviceManager->_globalPowerManger_Ph[i].product_ch_id);
-            cJSON_AddStringToObject(data_filed,"productChId",temp);  
-
-            sprintf(temp,"L%d",_globalDeviceManager->_globalPowerManger_Ph[i].product_ch_addr);
-            cJSON_AddStringToObject(data_filed,"productPhOrder",temp);  
-            
-            cJSON_AddNumberToObject(data_filed,"dyType",_globalDeviceManager->_globalPowerManger_Ph[i].product_ch_id);
-            //sprintf(temp,"%d",_globalPowerMangerTemp->_PowerInfo.status);
-            cJSON_AddStringToObject(data_filed,"productChStatus","-1");//总通道状态不显示
-            sprintf(temp,"%0.2f",_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_cur_upper_threshold);
-            cJSON_AddStringToObject(data_filed,"currentUpperValue",temp);
-            sprintf(temp,"%0.2f",_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_vol_upper_threshold);
-            cJSON_AddStringToObject(data_filed,"voltageUpperValue",temp);
-            sprintf(temp,"%0.2f",_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_vol_lower_threshold);
-            cJSON_AddStringToObject(data_filed,"voltageDownValue",temp);
-            sprintf(temp,"%0.2f",_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_pwr_upper_threshold);
-            cJSON_AddStringToObject(data_filed,"powerUpperValue",temp);
-            sprintf(temp,"%0.2f",_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_pwrcon_upper_threshold);
-            cJSON_AddStringToObject(data_filed,"alarmContentUpperValue",temp); 
-            if (_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_cur_over_upper_threshold_ctrl == ALARM_CTRL_CLOSE_CH)
-            {
-                cJSON_AddStringToObject(data_filed, "currentUpperAction",Closetemp);
-            }
-            else
-                cJSON_AddStringToObject(data_filed, "currentUpperAction",Alarmtemp);
-
-            if (_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_vol_over_upper_threshold_ctrl == ALARM_CTRL_CLOSE_CH)
-            {
-                cJSON_AddStringToObject(data_filed, "voltageUpperAction", Closetemp);
-            }
-            else
-                cJSON_AddStringToObject(data_filed, "voltageUpperAction", Alarmtemp);
-
-            if (_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_vol_over_lower_threshold_ctrl == ALARM_CTRL_CLOSE_CH)
-            {
-                cJSON_AddStringToObject(data_filed, "voltageDownAction", Closetemp);
-            }
-            else
-                cJSON_AddStringToObject(data_filed, "voltageDownAction", Alarmtemp);
-
-            if (_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_pwr_over_upper_threshold_ctrl == ALARM_CTRL_CLOSE_CH)
-            {
-                cJSON_AddStringToObject(data_filed, "powerUpperAction", Closetemp);
-            }
-            else
-                cJSON_AddStringToObject(data_filed, "powerUpperAction", Alarmtemp);
-
-            if (_globalDeviceManager->_globalPowerManger_Ph[i].global_over_manager.product_pwrcon_over_upper_threshold_ctrl == ALARM_CTRL_CLOSE_CH)
-            {
-                cJSON_AddStringToObject(data_filed, "alarmContentUpperAction",Closetemp);
-            }
-            else
-                cJSON_AddStringToObject(data_filed, "alarmContentUpperAction", Alarmtemp);      
-            cJSON_AddItemToObject(data_root_array, "data", data_filed); 
-        }
-    }
-#endif
 
         cJSON* data_filed = cJSON_CreateObject();
         cJSON_AddStringToObject(data_filed,"productChName",_globalPowerManger->product_ch_name);

+ 14 - 64
pro/src/sqlite_handle.c

@@ -4100,72 +4100,22 @@ int dev_Alarm_send_message(GlobalDeviceManager* globalDeviceManger,GlobalPowerMa
         || (_AlarmType==WARNING_W_UP && __globalPowerTemp->global_over_manager.product_pwr_over_upper_threshold_ctrl == ALARM_CTRL_CLOSE_CH)
         || (_AlarmType==WARNING_P_UP && __globalPowerTemp->global_over_manager.product_pwrcon_over_upper_threshold_ctrl == ALARM_CTRL_CLOSE_CH) )
         {
-            GlobalPowerManger* _globalPowerMangerTemp = NULL ;
-            list_for_each_entry(_globalPowerMangerTemp, &globalDeviceManger->_globalPowerManger.list, list)
-            {
-                GlobalTreeACManager* pTreeAPowerInfo = NULL;
-                if (globalDeviceManger->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_Tree
-                    ||globalDeviceManger->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_One
-                    ||globalDeviceManger->_globalDevInfo.product.pwr_type== SmartPDU_Tree_AC_Two 
-                    ||globalDeviceManger->_globalDevInfo.product.pwr_type==SmartPDU_Tree_AC_One_B
-                    )
+                // 总关
+                int nSendAddr = 0;
+                char buff[256];
+                GlobalPowerManger *_globalPowerMangerTemp = NULL;
+                list_for_each_entry(_globalPowerMangerTemp, &globalDeviceManger->_globalPowerManger.list, list)
                 {
-                    list_for_each_entry(pTreeAPowerInfo, &_globalPowerMangerTemp->list_Tree_AC, list_Tree_AC)
-                    {
-                        if(strncmp(pwr->product_ch_name,"ALL_L1",6) == 0)
-                        {
-                            if(pTreeAPowerInfo->product_ph_type == 0)
-                            {
-                                g_switch_set_all_chn_ctrl(&globalDeviceManger->_globalRelaySampManger,_globalPowerMangerTemp, _globalPowerMangerTemp->product_saddr,
-                                    _globalPowerMangerTemp->product_ch_addr,0,0);
-                                break;
-                            }
-                        }else if(strncmp(pwr->product_ch_name,"ALL_L2",6) == 0)
-                        {
-                            if(pTreeAPowerInfo->product_ph_type == 1)
-                            {
-                                g_switch_set_all_chn_ctrl(&globalDeviceManger->_globalRelaySampManger,_globalPowerMangerTemp, _globalPowerMangerTemp->product_saddr,
-                                    _globalPowerMangerTemp->product_ch_addr,0,0);
-                                break;
-                            }       
-                        }else if(strncmp(pwr->product_ch_name,"ALL_L3",6) == 0)
-                        {
-                            if(pTreeAPowerInfo->product_ph_type == 2)
-                            {
-                                g_switch_set_all_chn_ctrl(&globalDeviceManger->_globalRelaySampManger,_globalPowerMangerTemp ,_globalPowerMangerTemp->product_saddr,
-                                    _globalPowerMangerTemp->product_ch_addr,0,0);
-                                break;
-                            }          
-                        }
-                    }
-                    if(strncmp(pwr->product_ch_name,"ALL_CH",6) == 0)
-                    {
-                        g_switch_set_all_ctrl(&globalDeviceManger->_globalRelaySampManger, _globalPowerMangerTemp->product_ch_type, 
-                            _globalPowerMangerTemp->product_saddr, 0);
-                    }
-                }else
-                {
-                    // 总关
-                    int nSendAddr = 0;
-                    char buff[256];
-                    GlobalPowerManger *_globalPowerMangerTemp = NULL;
-                    list_for_each_entry(_globalPowerMangerTemp, &globalDeviceManger->_globalPowerManger.list, list)
-                    {
-                        if (_globalPowerMangerTemp == NULL)
-                            break;
-                        if (_globalPowerMangerTemp->product_saddr == nSendAddr)
-                            continue;
-                        nSendAddr = _globalPowerMangerTemp->product_saddr;
-                        log_i("Close All address Start");
-                        int rec = g_switch_set_all_ctrl(&globalDeviceManger->_globalRelaySampManger, _globalPowerMangerTemp->product_ch_type, _globalPowerMangerTemp->product_saddr, 0);
-                        if (rec < 0)
-                            log_i("Close All address:%d rec:%d:%s", nSendAddr, rec, modbus_strerror(errno));
-                    }
+                    if (_globalPowerMangerTemp == NULL)
+                        break;
+                    if (_globalPowerMangerTemp->product_saddr == nSendAddr)
+                        continue;
+                    nSendAddr = _globalPowerMangerTemp->product_saddr;
+                    log_i("Close All address Start");
+                    int rec = g_switch_set_all_ctrl(&globalDeviceManger->_globalRelaySampManger, _globalPowerMangerTemp->product_ch_type, _globalPowerMangerTemp->product_saddr, 0);
+                    if (rec < 0)
+                        log_i("Close All address:%d rec:%d:%s", nSendAddr, rec, modbus_strerror(errno));
                 }
-
-            }
-
-
         }
     }