|
|
@@ -146,8 +146,8 @@ int g_switch_get_ac_single_s_all_cur_info(void* manger,int saddr,int nNumb,Power
|
|
|
int Index = i * 12;
|
|
|
|
|
|
val = (data_temp[1 + Index] << 16) | data_temp[0 + Index];
|
|
|
- _power[i].voltage = val / 1000.0;
|
|
|
- if(_power[i].voltage>0 && _power[i].voltage<=1.0f) {
|
|
|
+ _power[i].voltage = val / 1000.0f;
|
|
|
+ if(_power[i].voltage>=0.0f && _power[i].voltage<1.0f) {
|
|
|
_power[i].voltage = 0.0f;
|
|
|
_power[i].power = 0.0f;
|
|
|
_power[i].current = 0.0f;
|
|
|
@@ -156,16 +156,16 @@ int g_switch_get_ac_single_s_all_cur_info(void* manger,int saddr,int nNumb,Power
|
|
|
else {
|
|
|
val = (data_temp[11 + Index] << 16) | data_temp[10 + Index];
|
|
|
_power[i].factor = val / 1000.0;
|
|
|
- if(_power[i].factor>0 && _power[i].factor<0.1f) {
|
|
|
+ if(_power[i].factor>0.0f && _power[i].factor<0.1f) {
|
|
|
_power[i].power = 0.0f;
|
|
|
_power[i].current = 0.0f;
|
|
|
}
|
|
|
else {
|
|
|
val = (data_temp[3 + Index] << 16) | data_temp[2 + Index];
|
|
|
- _power[i].current = val / 1000.0;
|
|
|
+ _power[i].current = val / 1000.0f;
|
|
|
|
|
|
val = (data_temp[5 + Index] << 16) | data_temp[4 + Index];
|
|
|
- _power[i].power = val / 1000.0;
|
|
|
+ _power[i].power = val / 1000.0f;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -1807,7 +1807,7 @@ int g_switch_get_t_ac_all_out_info(void* manger,int saddr,int nNumb,PowerInfo* _
|
|
|
|
|
|
val = (data_temp[1 + Index] << 16) | data_temp[0 + Index];
|
|
|
_power[i].voltage = val / 1000.0;
|
|
|
- if(_power[i].voltage>0.0f && _power[i].voltage<1.0f) {
|
|
|
+ if(_power[i].voltage>=0.0f && _power[i].voltage<1.0f) {
|
|
|
_power[i].voltage = 0.0f;
|
|
|
_power[i].power = 0.0f;
|
|
|
_power[i].current = 0.0f;
|
|
|
@@ -1816,7 +1816,7 @@ int g_switch_get_t_ac_all_out_info(void* manger,int saddr,int nNumb,PowerInfo* _
|
|
|
else {
|
|
|
val = (data_temp[15 + Index] << 16) | data_temp[14 + Index];
|
|
|
_power[i].factor = val / 1023.0;
|
|
|
- if(_power[i].factor>0.0f && _power[i].factor<0.1f) {
|
|
|
+ if(_power[i].factor>=0.0f && _power[i].factor<0.1f) {
|
|
|
_power[i].power = 0.0f;
|
|
|
_power[i].current = 0.0f;
|
|
|
}
|
|
|
@@ -2362,15 +2362,29 @@ int g_switch_get_t_ac_in_info(void* manger,int saddr,PowerInfo* _power,PowerWarn
|
|
|
{
|
|
|
int Index=i*2;
|
|
|
value = (data_temp[1+Index] << 16) + data_temp[0+Index];
|
|
|
- _power[i].voltage = value / 1000.0;
|
|
|
+ _power[i].voltage = value / 1000.0f;
|
|
|
+ if(_power[i].voltage>=0.0f && _power[i].voltage<1.0f) {
|
|
|
+ _power[i].voltage = 0.0f;
|
|
|
+ }
|
|
|
+
|
|
|
//解电流数据
|
|
|
value = (data_temp[7+Index] << 16) + data_temp[6+Index];
|
|
|
- _power[i].current = value / 1000.0;
|
|
|
+ _power[i].current = value / 1000.0f;
|
|
|
+ if(_power[i].current>=0.0f && _power[i].current<0.01f) {
|
|
|
+ _power[i].current = 0.0f;
|
|
|
+ }
|
|
|
+
|
|
|
//解功率数据
|
|
|
- value = (data_temp[13+Index] << 16) + data_temp[12+Index];
|
|
|
- _power[i].power = value / 1000.0;
|
|
|
+ if(_power[i].voltage==0.0f || _power[i].current==0.0f) {
|
|
|
+ _power[i].power = 0.0f;
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ value = (data_temp[13+Index] << 16) + data_temp[12+Index];
|
|
|
+ _power[i].power = value / 1000.0f;
|
|
|
+ }
|
|
|
+
|
|
|
value = (data_temp[19+Index] << 16) + data_temp[18+Index];
|
|
|
- _power[i].consumption = value / 1000.0;
|
|
|
+ _power[i].consumption = value / 1000.0f;
|
|
|
_power[i].freq=0;
|
|
|
}
|
|
|
|