30 lines
1.4 KiB
C
Executable File
30 lines
1.4 KiB
C
Executable File
#ifndef METER_MANAGER_H
|
|
#define METER_MANAGER_H
|
|
|
|
#include "esp_err.h"
|
|
|
|
// Definindo tipos de medidores possíveis para EVSE e Grid
|
|
typedef enum {
|
|
METER_TYPE_NONE, // Nenhum medidor
|
|
METER_TYPE_EVSE_ADE7758, // EVSE com ADE7758
|
|
METER_TYPE_GRID_ORNO513, // Grid com ORNO 513
|
|
METER_TYPE_GRID_ORNO516, // Grid com ORNO 516
|
|
METER_TYPE_GRID_ZIGBEE // Grid com Zigbee
|
|
} meter_type_t;
|
|
|
|
// Funções para inicializar e gerenciar o medidor EVSE (pode ser ADE7758)
|
|
esp_err_t meter_manager_init_evse(meter_type_t evse_type); // Inicializa o medidor EVSE (ex: ADE7758)
|
|
esp_err_t meter_manager_start_evse(meter_type_t evse_type); // Inicia o EVSE com o tipo especificado
|
|
esp_err_t meter_manager_stop_evse(void); // Para o EVSE
|
|
|
|
// Funções para inicializar e gerenciar o medidor Grid (pode ser ORNO 513, ORNO 516 ou Zigbee)
|
|
esp_err_t meter_manager_init_grid(meter_type_t grid_type); // Inicializa o medidor Grid (ORNO 513, ORNO 516, Zigbee)
|
|
esp_err_t meter_manager_start_grid(meter_type_t grid_type); // Inicia o medidor Grid com o tipo especificado
|
|
esp_err_t meter_manager_stop_grid(void); // Para o medidor Grid
|
|
|
|
// Funções para ler dados dos medidores
|
|
esp_err_t meter_manager_read_current(meter_type_t meter_type, float *current); // Lê a corrente do medidor
|
|
esp_err_t meter_manager_read_voltage(meter_type_t meter_type, float *voltage); // Lê a tensão do medidor
|
|
|
|
#endif // METER_MANAGER_H
|