| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 | /* * 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 UPS_BUZZER_OFF#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,	MegaTec_cmd_max} cmdMegaTecEnums_t;typedef struct{	float Freq_in;	float VAC_in;	float VAC_out;	float Temp;	float Vcell_curr;	float Vakb_curr;	uint8_t Load;	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;	char model[16];	char vertion[22];	char serial[15];	uint8_t cnt_err_ups;	bool 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);#endif /* MEGATEC_H_ */
 |