|
|
@@ -538,9 +538,10 @@ int g_switch_set_ac_single_threshold(void* manger,int saddr,char chn,GlobalOverM
|
|
|
//log_d("threshold_Addr:%d OffSet:%d Ret=%d",saddr,offset,ret);
|
|
|
return ret;
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+int g_switch_set_ac_reset(void *manger, int saddr)
|
|
|
+{
|
|
|
+ return 0;
|
|
|
+}
|
|
|
|
|
|
/// @brief 设置单相小电流通道KB
|
|
|
/// @param manger
|
|
|
@@ -1129,6 +1130,36 @@ int g_switch_get_all_out_info(void* manger,int ntype,int saddr,int nNumb,PowerIn
|
|
|
}
|
|
|
return 1;
|
|
|
}
|
|
|
+int g_switch_get_all_reset(void* manger,int ntype,int saddr)
|
|
|
+{
|
|
|
+ switch (ntype)
|
|
|
+ {
|
|
|
+ case AC_SINGLE_S_TYPE:
|
|
|
+ case AC_SINGLE_B_TYPE:
|
|
|
+ {
|
|
|
+ return g_switch_set_ac_reset(manger, saddr);
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case DCPDU_TYPE:
|
|
|
+ {
|
|
|
+ return g_switch_set_dcpdu_reset(manger, saddr);
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case TREE_AC_TYPE:
|
|
|
+ {
|
|
|
+ return g_switch_set_t_ac_reset(manger, saddr);
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case AC_MULTI_S_TYPE:
|
|
|
+ case AC_MULTI_B_TYPE:
|
|
|
+ case DC_IN_TYPE:
|
|
|
+ default:
|
|
|
+ return 1;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ return 1;
|
|
|
+
|
|
|
+}
|
|
|
int g_switch_get_dcpdu_out_info(void* manger,int saddr,unsigned char chn,PowerInfo* _power,PowerWarningInfo* _warning)
|
|
|
{
|
|
|
unsigned int offset = 0;
|
|
|
@@ -1546,7 +1577,10 @@ int g_switch_set_dcpdu_min_cur_threshold(void* manger,int saddr,char chn,GlobalO
|
|
|
|
|
|
return g_modbus_write_x_reg(manger,saddr,offset,2, data_temp);
|
|
|
}
|
|
|
-
|
|
|
+int g_switch_set_dcpdu_reset(void* manger,int saddr)
|
|
|
+{
|
|
|
+ return 0;
|
|
|
+}
|
|
|
|
|
|
int g_switch_get_t_ac_out_info(void* manger,int saddr,unsigned char chn,PowerInfo* _power,PowerWarningInfo* _warning)
|
|
|
{
|
|
|
@@ -1984,6 +2018,84 @@ int g_switch_set_t_ac_ctrl(void* manger,int saddr,unsigned short* sts)
|
|
|
}
|
|
|
return g_modbus_write_x_reg(manger,saddr,offset, 2, data_temp);
|
|
|
}
|
|
|
+//重设板子信息
|
|
|
+int g_switch_set_t_ac_reset(void* manger,int saddr)
|
|
|
+{
|
|
|
+ if (saddr <= 0 || saddr >= MAX_CHN_COUNT)
|
|
|
+ {
|
|
|
+ return -1;
|
|
|
+ }
|
|
|
+ unsigned int offset = 0;
|
|
|
+ unsigned short data_temp[2];
|
|
|
+ int ret=0;
|
|
|
+ //重置耗电量
|
|
|
+ offset = _SWITCH_T_AC_RESET_CONSUMPTION;
|
|
|
+ data_temp[0] = 1;
|
|
|
+ ret= g_modbus_write_x_reg(manger,saddr,offset,2,data_temp);
|
|
|
+ if (ret<0)
|
|
|
+ {
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+ //初始化报警阈值
|
|
|
+ unsigned short data_temp1[18];
|
|
|
+ memset(data_temp1,0,sizeof(data_temp1));
|
|
|
+ unsigned int value = 0;
|
|
|
+ offset = _SWITCH_T_AC_MAX_VOL_THRESHOLD;
|
|
|
+ ret = g_modbus_write_x_reg(manger,saddr,offset,18,data_temp1);
|
|
|
+ if (ret<0)
|
|
|
+ {
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+ offset = _SWITCH_T_AC_MIN_VOL_THRESHOLD;
|
|
|
+ ret = g_modbus_write_x_reg(manger,saddr,offset,18,data_temp1);
|
|
|
+ if (ret<0)
|
|
|
+ {
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+ offset = _SWITCH_T_AC_MAX_CUR_THRESHOLD;
|
|
|
+ ret = g_modbus_write_x_reg(manger,saddr,offset,18,data_temp1);
|
|
|
+ if (ret<0)
|
|
|
+ {
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+ offset = _SWITCH_T_AC_MAX_PWR_THRESHOLD;
|
|
|
+ ret = g_modbus_write_x_reg(manger,saddr,offset,18,data_temp1);
|
|
|
+ if (ret<0)
|
|
|
+ {
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+ offset = _SWITCH_T_AC_MAX_PWRCON_THRESHOLD;
|
|
|
+ ret = g_modbus_write_x_reg(manger,saddr,offset,18,data_temp1);
|
|
|
+ if (ret<0)
|
|
|
+ {
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+ if (__globalDeviceManage._all_ctrl_board[saddr].product_saddr<=0)
|
|
|
+ {
|
|
|
+ return -1;
|
|
|
+ }
|
|
|
+ PowerInfo* pPowerInfo= __globalDeviceManage._all_ctrl_board[saddr]._PowerInfo;
|
|
|
+ if (pPowerInfo!=NULL)
|
|
|
+ {
|
|
|
+ for (size_t i = 0; i < __globalDeviceManage._all_ctrl_board[saddr].product_number; i++)
|
|
|
+ {
|
|
|
+ memset(data_temp1, 0, sizeof(data_temp1));
|
|
|
+ offset = _SWITCH_T_AC_OUT_ENABLE + i;
|
|
|
+ data_temp1[0] = pPowerInfo[i].status;
|
|
|
+ ret = g_modbus_write_x_reg(manger, saddr, offset, 2, data_temp1);
|
|
|
+ if (ret < 0)
|
|
|
+ {
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (ret<0)
|
|
|
+ {
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
//输入状态及报警
|
|
|
int g_switch_get_t_ac_in_info(void* manger,int saddr,PowerInfo* _power,PowerWarningInfo *_warning)
|
|
|
{
|