ups_monitor.h 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  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 Мониторинг бита DI0 state
  31. */
  32. void UPS_DI0Monitor(void);
  33. #ifdef TYPE_CRITICAL_ALARM_MONITOR
  34. /**
  35. * @brief Мониторинг бита NonCriticalAlarm
  36. */
  37. void UPS_CriticalAlarmMonitor(void);
  38. /**
  39. * @brief Мониторинг бита NonCriticalAlarm
  40. */
  41. void UPS_NonCriticalAlarmMonitor(void);
  42. #endif
  43. /**
  44. * @brief Мониторинг LainFail бита
  45. */
  46. void UPS_LineFailMonitor(void);
  47. #ifdef VAC_OUT_MONITOR
  48. /**
  49. * @brief Мониторинг аварии выходного напряжения по нижней границе
  50. */
  51. void UPS_VACoutputLowRangeMonitor(void);
  52. /**
  53. * @brief Мониторинг аварии выходного напряжения по верхней границе
  54. */
  55. void UPS_VACoutputHighRangeMonitor(void);
  56. #endif
  57. /**
  58. * @brief Мониторинг бита LowBat
  59. */
  60. void UPS_LowBatMonitor(void);
  61. /**
  62. * @brief Задача мониторинга параметров UPS
  63. */
  64. void UPS_Monitor(void *params);
  65. /**
  66. * @brief Мониторинг нагрузки
  67. */
  68. void UPS_PowerMonitor(void);
  69. #ifdef TEMP_AKB_MONITOR
  70. /**
  71. * @brief Мониторинг температуры по верхней границе
  72. */
  73. void UPS_TemperatureHighRangeMonitor(void);
  74. /**
  75. * @brief Мониторинг температуры по нижней границе
  76. */
  77. void UPS_TemperatureLowRangeMonitor(void);
  78. #endif
  79. /**
  80. * @brief Мониторинг параметра upsParams.connect
  81. */
  82. void UPS_ConnectMonitor(void);
  83. /**
  84. * @brief Мониторинг параметра upsParams.connect
  85. */
  86. void UPS_BatteryConnectMonitor(void);
  87. #ifdef AKB_CHANGE_MONITOR
  88. /**
  89. * @brief Мониторинг параметра замены АКБ
  90. */
  91. void AKB_Change_Monitor(void);
  92. #endif
  93. #endif /* #ifndef UPS_MONITOR_H */
  94. /********************************* (C) РОТЕК **********************************/