ems.h 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. #ifndef EMS_H
  2. #define EMS_H
  3. #include "plt.h"
  4. enum ems_mode_t{
  5. EMSMOD_NONE = 0,
  6. EMSMOD_PCURV,
  7. EMSMOD_PDEM,
  8. };
  9. struct pow_regulate_t{
  10. int enable;
  11. int high;
  12. int low;
  13. int intv;
  14. int timer;
  15. int aps_max;
  16. int aps_min;
  17. };
  18. struct ems_t{
  19. int mode;
  20. char szmode[32];
  21. //int pdmode; // sta power distribution mode
  22. //char szpdmode[32];
  23. struct pow_regulate_t pow_reg;
  24. int pcurv_aps;
  25. int last_pcurv_aps;
  26. int pcurv_idx;
  27. struct pcurv_t pcurv;
  28. char sztransf_conm_model[32];
  29. int transf_conm_model;
  30. int transf_conm_idx; // 0 means no con meter
  31. int transf_conm_com_ap;
  32. double transf_conm_com_ae;
  33. double transf_conm_pos_ae;
  34. double transf_conm_neg_ae;
  35. char sztransf_loadm_model[32];
  36. int transf_loadm_model;
  37. int transf_loadm_idx; // 0 means no load meter
  38. int transf_loadm_com_ap;
  39. double transf_loadm_com_ae;
  40. double transf_loadm_pos_ae;
  41. double transf_loadm_neg_ae;
  42. double transf_ts_last_m_integ;
  43. int transf_con_ap;
  44. int transf_load_ap;
  45. char szfactory_conm_model[32];
  46. int factory_conm_model;
  47. int factory_conm_idx; // 0 means no con meter
  48. int factory_conm_com_ap;
  49. double factory_conm_com_ae;
  50. double factory_conm_pos_ae;
  51. double factory_conm_neg_ae;
  52. char szfactory_loadm_model[32];
  53. int factory_loadm_model;
  54. int factory_loadm_idx; // 0 means no load meter
  55. int factory_loadm_com_ap;
  56. double factory_loadm_com_ae;
  57. double factory_loadm_pos_ae;
  58. double factory_loadm_neg_ae;
  59. double factory_ts_last_m_integ;
  60. int factory_con_ap;
  61. int factory_load_ap;
  62. struct statemachine_t sm;
  63. int cmd;
  64. int cur_timeseg_type;
  65. int last_timeseg_type;
  66. int timeseg_idx;
  67. struct timeseg_t timeseg;
  68. struct estats_t estats;
  69. int debug_mode;//0非debug 1debug
  70. };
  71. extern struct ems_t ems;
  72. int ems_init( void );
  73. void ems_exit();
  74. void ems_run();
  75. int ems_get_debug_mode();
  76. int ems_set_debug_mode(int mode);
  77. void ems_fire_warning();
  78. int ems_start_aux();
  79. int ems_sta_aps_regulate( void );
  80. int ems_sta_aps_dis( void );
  81. int ems_set_pdmode( int val );
  82. int ems_set_pcurv(int newidx);
  83. int ems_edit_pcurv(int starthh, int startnn, int endhh, int endnn, int aps );
  84. int ems_save_pcurv();
  85. int ems_set_powreg_highlow(int hi, int lo);
  86. int ems_get_pcurv_pts();
  87. int ems_get_mode(void);
  88. int ems_set_mode( int mod );
  89. double ems_get_con_ua();
  90. double ems_get_con_ub();
  91. double ems_get_con_uc();
  92. double ems_get_con_ia();
  93. double ems_get_con_ib();
  94. double ems_get_con_ic();
  95. int ems_send_sm_cmd(int val);
  96. int ems_get_cmd();
  97. void ems_reset_cmd();
  98. int ems_get_pcurv_aps();
  99. int ems_get_reglo();
  100. int ems_get_reghi();
  101. char* ems_get_modestr(void);
  102. void ems_exe_pdem();
  103. int ems_get_regulate_en();
  104. int ems_set_reg_en(int val);
  105. int ems_set_reg_intv(int val);
  106. int ems_set_timeseg(int idx);
  107. int ems_save_timeseg();
  108. int ems_reset_timeseg();
  109. char* ems_get_state_str(void);
  110. int ems_get_tick();
  111. int ems_get_tick_ave();
  112. int ems_get_tick_cur();
  113. int ems_get_tick_max();
  114. int ems_get_step();
  115. char* ems_get_err_str();
  116. int ems_get_pow_reg_timer();
  117. int ems_get_pow_reg_intv();
  118. int ems_get_pow_reg_aps_min();
  119. int ems_get_pow_reg_aps_max();
  120. int ems_get_timeseg_idx();
  121. char* ems_get_timeseg_status_str();
  122. char* ems_get_timeseg_type_str();
  123. int ems_get_estats_step();
  124. double ems_get_day_sharp_pos_ae();
  125. double ems_get_day_sharp_neg_ae();
  126. double ems_get_day_peak_pos_ae();
  127. double ems_get_day_peak_neg_ae();
  128. double ems_get_day_flat_pos_ae();
  129. double ems_get_day_flat_neg_ae();
  130. double ems_get_day_valley_pos_ae();
  131. double ems_get_day_valley_neg_ae();
  132. int ems_get_pcurv_idx();
  133. char* ems_get_pcurv_status_str();
  134. char* ems_get_pcurv_info_str();
  135. struct pcurv_t* ems_get_pcurv_t();
  136. int ems_get_tool_data(char* buf);
  137. int ems_get_tool_pcurv_data(char* buf);
  138. int ems_get_tool_timeseg_data(char* buf);
  139. char* ems_get_factory_conm_model_str();
  140. int ems_get_factory_conm_idx();
  141. int ems_get_factory_con_ap();
  142. double ems_get_factory_con_com_ae();
  143. double ems_get_factory_con_pos_ae();
  144. double ems_get_factory_con_neg_ae();
  145. int ems_get_factory_con_com_ap();
  146. char* ems_get_factory_load_model_str();
  147. int ems_get_factory_loadm_idx();
  148. int ems_get_factory_load_ap();
  149. double ems_get_factory_load_com_ae();
  150. double ems_get_factory_load_pos_ae();
  151. double ems_get_factory_load_neg_ae();
  152. int ems_get_factory_load_com_ap();
  153. char* ems_get_transf_conm_model_str();
  154. int ems_get_transf_conm_idx();
  155. int ems_get_transf_con_ap();
  156. double ems_get_transf_con_com_ae();
  157. double ems_get_transf_con_pos_ae();
  158. double ems_get_transf_con_neg_ae();
  159. int ems_get_transf_con_com_ap();
  160. char* ems_get_transf_load_model_str();
  161. int ems_get_transf_loadm_idx();
  162. int ems_get_transf_load_ap();
  163. double ems_get_transf_load_com_ae();
  164. double ems_get_transf_load_pos_ae();
  165. double ems_get_transf_load_neg_ae();
  166. int ems_get_transf_load_com_ap();
  167. #endif /* EMS_H */