ups_monitor.h 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. /********************************* (C) РОТЕК ***********************************
  2. * @module ups_monitor
  3. * @file ups_monitor.h
  4. * @version 1.0.0
  5. * @date XX.XX.XXXX
  6. * $brief ups_monitor
  7. *******************************************************************************
  8. * @history Version Author Comment
  9. * XX.XX.XXXX 1.0.0 Telenkov D.A. First release.
  10. *******************************************************************************
  11. */
  12. /* Define to prevent recursive ----------------------------------------------*/
  13. #ifndef UPS_MONITOR_H
  14. #define UPS_MONITOR_H
  15. #include "common_config.h"
  16. /**
  17. * @brief Состояния для реализации алгоритма гистерезиса
  18. */
  19. typedef enum
  20. {
  21. HYST_IDLE = 0,
  22. HYST_UP,
  23. HYST_DOWN,
  24. } HYST_STATE_t;
  25. /**
  26. * @brief Мониторинг бита Test in progress
  27. */
  28. void UPS_TestFinishMonitor(void);
  29. /**
  30. * @brief Мониторинг SOC
  31. */
  32. void UPS_TestSOCMonitor(void);
  33. /**
  34. * @brief Мониторинг бита DI0 state
  35. */
  36. void UPS_DI0Monitor(void);
  37. #ifdef TYPE_CRITICAL_ALARM_MONITOR
  38. /**
  39. * @brief Мониторинг бита NonCriticalAlarm
  40. */
  41. void UPS_CriticalAlarmMonitor(void);
  42. /**
  43. * @brief Мониторинг бита NonCriticalAlarm
  44. */
  45. void UPS_NonCriticalAlarmMonitor(void);
  46. #endif
  47. /**
  48. * @brief Мониторинг LainFail бита
  49. */
  50. void UPS_LineFailMonitor(void);
  51. #ifdef VAC_OUT_MONITOR
  52. /**
  53. * @brief Мониторинг аварии выходного напряжения по нижней границе
  54. */
  55. void UPS_VACoutputLowRangeMonitor(void);
  56. /**
  57. * @brief Мониторинг аварии выходного напряжения по верхней границе
  58. */
  59. void UPS_VACoutputHighRangeMonitor(void);
  60. #endif
  61. /**
  62. * @brief Мониторинг бита LowBat
  63. */
  64. void UPS_LowBatMonitor(void);
  65. /**
  66. * @brief Задача мониторинга параметров UPS
  67. */
  68. void UPS_Monitor(void *params);
  69. /**
  70. * @brief Мониторинг нагрузки
  71. */
  72. void UPS_PowerMonitor(void);
  73. #ifdef SENSOR_TEMP_MONITOR
  74. /**
  75. * @brief Мониторинг аварии датчика температуры
  76. */
  77. void sensorTemperatureMonitor(void);
  78. #endif
  79. #ifdef TEMP_AKB_MONITOR
  80. /**
  81. * @brief Мониторинг температуры по верхней границе
  82. */
  83. void UPS_TemperatureHighRangeMonitor(void);
  84. /**
  85. * @brief Мониторинг температуры по нижней границе
  86. */
  87. void UPS_TemperatureLowRangeMonitor(void);
  88. #endif
  89. #ifdef TEMP_CABINET_MONITOR
  90. /**
  91. * @brief Мониторинг температуры шкафа по верхней границе
  92. */
  93. void Cabinet_TemperatureHighRangeMonitor(void);
  94. /**
  95. * @brief Мониторинг температуры шкафа по нижней границе
  96. */
  97. void Cabinet_TemperatureLowRangeMonitor(void);
  98. #endif
  99. /**
  100. * @brief Мониторинг параметра upsParams.connect
  101. */
  102. void UPS_ConnectMonitor(void);
  103. /**
  104. * @brief Мониторинг параметра upsParams.connect
  105. */
  106. void UPS_BatteryConnectMonitor(void);
  107. #ifdef AKB_CHANGE_MONITOR
  108. /**
  109. * @brief Мониторинг параметра замены АКБ
  110. */
  111. void AKB_Change_Monitor(void);
  112. #endif
  113. #ifdef UPS_FAILED_MONITOR
  114. void UPS_Failed_Monitor(void);
  115. #endif
  116. #endif /* #ifndef UPS_MONITOR_H */
  117. /********************************* (C) РОТЕК **********************************/