#ifndef ADL200_H #define ADL200_H #include "misc.h" #include "chan.h" #include "plt.h" #define adl200_NBR_MAX 8 struct adl200_t{ int bEn; char szinfo[32]; char szaddr[16]; int idx; char szdev_id[SNOW_ID_BUF_SIZE]; int cmd; struct comm_t comm; struct statemachine_t sm; double com_ae; double com_ap; double pos_active_e; double pos_active_dem; double neg_active_e; double pwr_factor; double ap; double inactive_p; double apparent_p; double freq; double u; double i; }; extern struct adl200_t adl200[adl200_NBR_MAX + 1]; int adl200_init(); int adl200_get_cmd( int idx ); void adl200_reset_cmd(int idx); int adl200_get_state( int idx); char* adl200_get_state_string( int idx); int adl200_chk_state_all( int stat); int adl200_send_sm_cmd( int idx, int val ); int adl200_chk_state( int stat); int adl200_send_sm_cmd_all( int val ); int adl200_get_com_ap( int idx ); double adl200_get_com_ae( int idx ); double adl200_get_pos_ae( int idx ); double adl200_get_neg_ae( int idx ); double adl200_get_ua( int idx ); double adl200_get_ub( int idx ); double adl200_get_uc( int idx ); double adl200_get_ia( int idx ); double adl200_get_ib( int idx ); double adl200_get_ic( int idx ); double adl200_get_pf( int idx ); int adl200_get_comm_st(int idx); void adl200_set_dac_param_en(int idx, int val); double adl200_get_THDUa( int idx ); double adl200_get_THDUb( int idx ); double adl200_get_THDUc( int idx ); double adl200_get_THDIa( int idx ); double adl200_get_THDIb( int idx ); double adl200_get_THDIc( int idx ); double adl200_get_total_fund_ap( int idx ); double adl200_get_total_harm_ap( int idx ); double adl200_get_total_fund_rp( int idx ); double adl200_get_total_harm_rp( int idx ); char* adl200_get_info_str(int idx); int adl200_get_sm_step(int idx); char* adl200_get_sm_err_str(int idx); int adl200_get_chan_idx(int idx); int adl200_get_adr(int idx); int adl200_get_tick(int idx); char* adl200_get_comm_state_str(int idx); int adl200_get_PT(int idx); int adl200_get_CT(int idx); double adl200_get_gf( int idx ); int adl200_get_nbr(); int adl200_get_tool_data(int idx,char* buf); int adl200_get_tbmqtt_data(int idx,char* buf); int adl200_get_cloud_data(int ctn_idx,int idx,char* buf); int adl200_get_init_data(int ctn_idx,int idx,char* buf); int adl200_get_modbus_data(int idx,unsigned short* data); #endif /* ADL200_H */