123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- #ifndef __STA_H__
- #define __STA_H__
- #include "plt.h"
- enum sta_pow_dis_mode_t{
- PDMOD_SOC = 0,
- PDMOD_AVG,
- };
- enum sta_err_t{
- STAERR_NONE = 0,
- STAERR_NA,
- STAERR_NACK,
- /* launch */
- STAERR_LAUNCH_WAIT_ALL_CTN_STDBY_TIMEOUT,
- STAERR_LAUNCH_WAIT_ALL_METER_READY_TIMEOUT,
- /* stdby */
- STAERR_STDBY_OFFLINE_CTN_DETECTED,
- STAERR_STDBY_NOSTANDBY_CTN_DETECTED,
- STAERR_STDBY_NOT_READY_METER_DETECTED,
- STAERR_STDBY_WAIT_ALL_CTN_STOP_TIMEOUT,
- /* stop */
- STAERR_STOP_OFFLINE_CTN_DETECTED,
- STAERR_STOP_NOT_READY_METER_DETECTED,
- STAERR_STOP_WAIT_ALL_CTN_STDBY_TIMEOUT,
- STAERR_STOP_WAIT_ALL_CTN_READY_TIMEOUT,
- /* ready */
- STAERR_READY_NOT_READY_CTN_DETECTED,
- STAERR_READY_NOT_READY_METER_DETECTED,
- STAERR_READY_DISPOW_FAIL,
- STAERR_READY_WAIT_DHG_TIMEOUT,
- STAERR_READY_WAIT_CHG_TIMEOUT,
- STAERR_READY_WAIT_ALL_CTN_STOP_TIMEOUT,
- /* dhg */
- STAERR_DHG_DISPOW_FAIL,
- STAERR_DHG_WAIT_ALL_CTN_READY_TIMEOUT,
- STAERR_DHG_NOT_READY_METER_DETECTED,
- STAERR_DHG_ERR_CTN_DETECTED,
- STAERR_DHG_OFFLINE_CTN_DETECTED,
- /* chg */
- STAERR_CHG_DISPOW_FAIL,
- STAERR_CHG_WAIT_ALL_CTN_READY_TIMEOUT,
- STAERR_CHG_NOT_READY_METER_DETECTED,
- STAERR_CHG_ERR_CTN_DETECTED,
- STAERR_CHG_OFFLINE_CTN_DETECTED,
- };
- struct station_t{
- bool brunning;
- int chan_idx;
- char szinfo[64];
- char szprj_id[128];
- int time_zone;
- char sztime[32];
- int version[3];
- sqlite3* cfg_db;
- pthread_mutex_t cfg_db_mutex;
- int con_ap;
- int load_ap;
- int PloadMode;
- char szPloadMode[16];
- int PconMode;
- char szPconMode[16];
- struct power_t pow;
- struct statemachine_t sm;
- int cmd;
- int pdmode; // sta power distribution mode
- char szpdmode[32];
- };
- extern struct station_t sta;
- int sta_init( void );
- int sta_send_cmd( int cmd );
- int sta_set_aps(int val);
- int sta_get_ap( );
- int sta_get_aps( );
- double sta_get_soc( );
- int sta_chk_chg_stat( void );
- int sta_set_mode( int mod );
- int sta_chk_all_ctn_stat(int stat);
- int sta_chk_all_meter_stat(int stat);
- int sta_chk_any_meter_stat(int stat);
- int sta_send_all_ctn_cmd( int cmd );
- int sta_send_all_meter_cmd( int cmd );
- int sta_dis_pow( void );
- int sta_chk_dhg_stat(void);
- int sta_chk_chg_stat( void );
- char* sta_get_prjid( void );
- char* sta_get_stat_str();
- char* sta_get_err_str();
- void sta_set_dhgable( void );
- void sta_reset_dhgable( void );
- void sta_set_chgable( void );
- void sta_reset_chgable( void );
- int sta_get_dhgable( void );
- int sta_get_chgable( void );
- int sta_get_timezone();
- char* sta_get_state_str();
- char* sta_get_err_str();
- int sta_get_norm_cap();
- int sta_get_norm_pow();
- int sta_reset_aps();
- int sta_reset_cmd();
- int sta_is_aps_changed();
- int sta_aps_dis( void );
- int sta_get_tool_data(char* buf);
- void sta_set_state(int state, int err);
- int sta_set_pdmode( int val );
- #endif
|