| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 | /* * megatec.h * *  Created on: 22.05.2017 *      Author: balbekova */#ifndef MEGATEC_H_#define MEGATEC_H_#include <stdbool.h>#include <stdint.h>#include <stdlib.h>#define PERIOD_AUTO_TEST	23.5*3600#define K_EFFICIENCY		0.9#define AKB_VOLTAGE			12#define AKB_NUM_CELL		6#define VOLTRONIC_OUTPUT_RATED_LENGTH		7#define VOLTRONIC_MODEL_LENGTH				15#define KSTAR_MODEL_LENGTH					10#define VOLTRONIC_VERSION_LENGTH			10#define VOLTRONIC_SN_LENGTH					14typedef enum{	ups_status_req,	ups_test_10sec,	ups_test_low_bat,	ups_test_time,	ups_beep,	ups_shutdown,	ups_shutdown_restore,	ups_cancel_shut_down,	ups_cancel_test,	ups_info,	ups_rating_info,	ups_remain_time_reg,	ups_general_status_req,	ups_akb_info,	ups_model_req,	ups_version_req,	ups_version2_req,	ups_serial_req,	ups_protocol_id_req,	ups_offline_status_req,	ups_passw_req,	ups_buzzer_cntrl,	ups_mode_req,	ups_remote_turn_on,	ups_warning_status,	ups_bypass_volt_range,	ups_bypass_hvolt_264_set,	ups_qflag_status,	ups_cmd_enable_flag_l,	MegaTec_cmd_max} cmdMegaTecEnums_t;typedef enum{	UPS_CONNECTED = 1,	UPS_FAIL_CONNECT,	UPS_WAIT_CONNECT} ups_state_connection_t;typedef struct{	float Freq_in;	float VAC_in;	float VAC_out;	float Temp;	float Vcell_curr;	float Vakb_curr;	uint32_t data_check_load;	bool data_check_load_flag;	uint8_t Load;	uint8_t Load_test_akb;	uint8_t SOC;	uint16_t work_time;	uint32_t akb_work_time;	uint32_t Alarm;	uint8_t Status;	uint8_t Mode;	uint8_t Test_Status;	uint32_t warn_status;	char model[16];	char vertion[22];	char serial[15];	uint8_t cnt_err_ups;	ups_state_connection_t Present;	bool Flag_Present;}UPS_value_t;extern UPS_value_t UPS;extern uint16_t TimeParam;extern uint16_t TimeParam2;extern float TimeParamFloat;int ups_metac_service_pdu(cmdMegaTecEnums_t command);void ups_megatec_init(void);void UPSReadTestStatus(void);float voltage_bat_average(void);float power_load_average(void);bool get_sync_data(void);#endif /* MEGATEC_H_ */
 |