|
@@ -55,7 +55,7 @@ void UPS_Monitor(void *params)
|
|
|
vTaskDelay(5000);
|
|
|
for (;;)
|
|
|
{
|
|
|
- flCriticalAlarm = false;
|
|
|
+ flCriticalAlarm = false;
|
|
|
flNonCriticalAlarm = false;
|
|
|
// Проверяем флаг подключения UPS
|
|
|
if (UPS.Present)
|
|
@@ -101,6 +101,11 @@ void UPS_DI0Monitor(void)
|
|
|
SNMP_SendUserTrap(DI0_ALARM);
|
|
|
flUpdateLog = true;
|
|
|
}
|
|
|
+ else{
|
|
|
+ log_event_data(LOG_ALARM_DIO, "Норма");
|
|
|
+ SNMP_SendUserTrap(DI0_NORM);
|
|
|
+ flUpdateLog = true;
|
|
|
+ }
|
|
|
return;
|
|
|
}
|
|
|
|
|
@@ -161,27 +166,34 @@ void relay_setup_log_change(uint8_t *curr_source, uint8_t *prev_source, ro_type_
|
|
|
|
|
|
flUpdateLog = true;
|
|
|
for(i = 0; i < OUTPUTS_TOTAL_COUNT; i ++){
|
|
|
- if(get_state_din_outs(DOUT1 + i)){
|
|
|
+ // if(get_state_din_outs(DOUT1 + i)){
|
|
|
if(curr_source[i] != prev_source[i] && (prev_source[i] == src_act_ro || curr_source[i] == src_act_ro)){
|
|
|
- SetROInt(state_relay, i);
|
|
|
- SNMP_SendUserTrap((DO0_TOGGLED+i));
|
|
|
if(state_relay){
|
|
|
#ifdef HARDWARE_BT6706
|
|
|
log_event_data((LOG_DO0_STATE + i), "Разомкнуто");
|
|
|
#elif HARDWARE_BT6702
|
|
|
- log_event_data((LOG_DO0_STATE + i), "Замкнуто");
|
|
|
+ if(curr_source[i] != src_act_ro){
|
|
|
+ SetROInt(0, i);
|
|
|
+ SNMP_SendUserTrap((DO0_TOGGLED+i));
|
|
|
+ log_event_data((LOG_DO0_STATE + i), "Разомкнуто");
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ SetROInt(1, i);
|
|
|
+ SNMP_SendUserTrap((DO0_TOGGLED+i));
|
|
|
+ log_event_data((LOG_DO0_STATE + i), "Замкнуто");
|
|
|
+ }
|
|
|
#endif
|
|
|
|
|
|
}
|
|
|
- else{
|
|
|
+/* else{
|
|
|
#ifdef HARDWARE_BT6706
|
|
|
log_event_data((LOG_DO0_STATE + i), "Замкнуто");
|
|
|
#elif HARDWARE_BT6702
|
|
|
log_event_data((LOG_DO0_STATE + i), "Разомкнуто");
|
|
|
#endif
|
|
|
- }
|
|
|
+ }*/
|
|
|
}
|
|
|
- }
|
|
|
+// }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -211,6 +223,9 @@ void UPS_CriticalAlarmMonitor(void)
|
|
|
if(CriticalAlarmCurrent){
|
|
|
relay_setup_log(CurrROtype_Sourse, CRITICAL, 1);
|
|
|
}
|
|
|
+ else{
|
|
|
+ relay_setup_log(CurrROtype_Sourse, CRITICAL, 0);
|
|
|
+ }
|
|
|
return;
|
|
|
}
|
|
|
|
|
@@ -238,8 +253,8 @@ void UPS_CriticalAlarmMonitor(void)
|
|
|
{
|
|
|
if(CriticalAlarmCurrent)
|
|
|
relay_setup_log_change(CurrROtype_Sourse, OldROtype_Sourse, CRITICAL, 1);
|
|
|
- else
|
|
|
- relay_setup_log_change(CurrROtype_Sourse, OldROtype_Sourse, CRITICAL, 0);
|
|
|
+ /* else
|
|
|
+ relay_setup_log_change(CurrROtype_Sourse, OldROtype_Sourse, CRITICAL, 0);*/
|
|
|
|
|
|
}
|
|
|
|
|
@@ -273,6 +288,8 @@ void UPS_NonCriticalAlarmMonitor(void)
|
|
|
OldROtype_Sourse[i] = CurrROtype_Sourse[i];
|
|
|
if(NonCriticalAlarmCurrent)
|
|
|
relay_setup_log(CurrROtype_Sourse, NON_CRITICAL, 1);
|
|
|
+ else
|
|
|
+ relay_setup_log(CurrROtype_Sourse, NON_CRITICAL, 0);
|
|
|
|
|
|
return;
|
|
|
}
|
|
@@ -290,9 +307,9 @@ void UPS_NonCriticalAlarmMonitor(void)
|
|
|
else
|
|
|
{
|
|
|
if(NonCriticalAlarmCurrent)
|
|
|
- relay_setup_log_change(CurrROtype_Sourse, OldROtype_Sourse, CRITICAL, 1);
|
|
|
- else
|
|
|
- relay_setup_log_change(CurrROtype_Sourse, OldROtype_Sourse, CRITICAL, 0);
|
|
|
+ relay_setup_log_change(CurrROtype_Sourse, OldROtype_Sourse, NON_CRITICAL, 1);
|
|
|
+ /* else
|
|
|
+ relay_setup_log_change(CurrROtype_Sourse, OldROtype_Sourse, NON_CRITICAL, 0);*/
|
|
|
}
|
|
|
|
|
|
for(i = 0; i < OUTPUTS_TOTAL_COUNT; i ++){
|
|
@@ -335,6 +352,14 @@ void UPS_LineFailMonitor(void)
|
|
|
relay_setup_log(CurrROtype_Sourse, AC_PRESENT, 1);
|
|
|
#endif
|
|
|
}
|
|
|
+ else{
|
|
|
+#ifdef HARDWARE_BT6706
|
|
|
+ relay_setup_log(CurrROtype_Sourse, AC_PRESENT, 0);
|
|
|
+#endif
|
|
|
+ log_event_data(LOG_ALARM_LINE, "Норма");
|
|
|
+ SNMP_SendUserTrap(LINE_NORM);
|
|
|
+ flUpdateLog = true;
|
|
|
+ }
|
|
|
|
|
|
return;
|
|
|
}
|
|
@@ -487,6 +512,14 @@ void UPS_LowBatMonitor(void)
|
|
|
relay_setup_log(CurrROtype_Sourse, CHARGE_AKB, 1);
|
|
|
#endif
|
|
|
}
|
|
|
+ else{
|
|
|
+ SNMP_SendUserTrap(LOW_BAT_NORM);
|
|
|
+ log_event_data(LOG_ALARM_LOW_BAT, "Норма");
|
|
|
+ flUpdateLog = true;
|
|
|
+#ifdef HARDWARE_BT6706
|
|
|
+ relay_setup_log(CurrROtype_Sourse, CHARGE_AKB, 0);
|
|
|
+#endif
|
|
|
+ }
|
|
|
return;
|
|
|
}
|
|
|
if (lowBatCurrent)
|
|
@@ -635,6 +668,11 @@ void UPS_ConnectMonitor(void)
|
|
|
SNMP_SendUserTrap(CONNECT_MONITOR_ALARM);
|
|
|
flUpdateLog = true;
|
|
|
}
|
|
|
+ else{
|
|
|
+ log_event_data(LOG_ALARM_UPS, "Норма");
|
|
|
+ SNMP_SendUserTrap(CONNECT_MONITOR_NORM);
|
|
|
+ flUpdateLog = true;
|
|
|
+ }
|
|
|
return;
|
|
|
}
|
|
|
if (!connectCurrent)
|
|
@@ -692,6 +730,14 @@ void UPS_BatteryConnectMonitor(void)
|
|
|
flUpdateLog = true;
|
|
|
#ifdef HARDWARE_BT6706
|
|
|
relay_setup_log(CurrROtype_Sourse, OFF_AKB, 1);
|
|
|
+#endif
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ log_event_data(LOG_ALARM_AKB, "Норма");
|
|
|
+ SNMP_SendUserTrap(BATTERY_CONNECT_NORM);
|
|
|
+ flUpdateLog = true;
|
|
|
+#ifdef HARDWARE_BT6706
|
|
|
+ relay_setup_log(CurrROtype_Sourse, OFF_AKB, 0);
|
|
|
#endif
|
|
|
}
|
|
|
return;
|