Class to manipulate Meter Model registers. More...
#include <MeterModel.h>
Public Member Functions | |
| bool | IsMeterRegisterMap (void) |
| bool | GetAcCurrent (double &res) |
| bool | GetAcCurrentPhase (double &res, const char &ph= 'A') |
| bool | GetAcVoltage (double &res, const char &ph= 'A') |
| bool | GetAcVoltagePhaseToPhase (double &res, const std::string &ph_pair) |
| bool | GetAcPower (double &res) |
| bool | GetAcFrequency (double &res) |
| bool | GetAcPowerApparent (double &res) |
| bool | GetAcPowerReactive (double &res) |
| bool | GetAcPowerFactor (double &res) |
| bool | GetAcEnergyExport (double &res) |
| bool | GetAcEnergyImport (double &res) |
Public Member Functions inherited from SunSpec | |
| SunSpec (void) | |
| virtual | ~SunSpec (void) |
| std::string | GetErrorMessage (void) const |
| bool | ConnectModbusTcp (const std::string &node, const std::string &service="502") |
| bool | ConnectModbusRtu (const std::string &device, const int &baud_rate=9600) |
| void | SetModbusDebug (const bool &debug) |
| bool | SetModbusAddress (const int &slave_id=1) |
| bool | GetModbusAddress (int &slave_id) |
| bool | SetResponseTimeout (const int &millis=500) |
| bool | GetResponseTimeout (int &millis) |
| bool | SetByteTimeout (const int &millis=500) |
| bool | GetByteTimeout (int &millis) |
| bool | SetIndicationTimeout (const int &millis=0) |
| bool | GetIndicationTimeout (int &millis) |
| bool | SetErrorRecovery (const bool recovery) |
| template<> | |
| std::string | ConvertRegister (const uint16_t *tab_reg, const uint16_t &size) |
| template<> | |
| float | ConvertRegister (const uint16_t *tab_reg, const uint16_t &size) |
Private Member Functions | |
| bool | ReadEventFlags (uint32_t &flag1, uint32_t &flag2) |
Additional Inherited Members | |
Protected Member Functions inherited from SunSpec | |
| template<typename T > | |
| bool | GetRegister (T &res, const uint16_t ®_addr, const uint16_t &size) |
| bool | SetRegister (const uint16_t &value, const uint16_t ®_addr) |
Protected Attributes inherited from SunSpec | |
| std::string | ErrorMessage |
Class to manipulate Meter Model registers.
| bool MeterModel::GetAcCurrent | ( | double & | res | ) |
AC total current [A]
| bool MeterModel::GetAcCurrentPhase | ( | double & | res, |
| const char & | ph = 'A' |
||
| ) |
AC phase current
param res current [A] param ph phase A, B or C (default A)
| bool MeterModel::GetAcEnergyExport | ( | double & | res | ) |
AC energy total exported [kWh]
| bool MeterModel::GetAcEnergyImport | ( | double & | res | ) |
AC energy total imported [kWh]
| bool MeterModel::GetAcFrequency | ( | double & | res | ) |
AC frequency value [Hz]
| bool MeterModel::GetAcPower | ( | double & | res | ) |
AC power value [W]
| bool MeterModel::GetAcPowerApparent | ( | double & | res | ) |
Apparent power [VA]
| bool MeterModel::GetAcPowerFactor | ( | double & | res | ) |
Power factor [%]
| bool MeterModel::GetAcPowerReactive | ( | double & | res | ) |
Reactive power [VAr]
| bool MeterModel::GetAcVoltage | ( | double & | res, |
| const char & | ph = 'A' |
||
| ) |
AC voltage phase-to-neutral
param res voltage [V] param ph phase A, B or C (default A)
| bool MeterModel::GetAcVoltagePhaseToPhase | ( | double & | res, |
| const std::string & | ph_pair | ||
| ) |
AC phase-to-phase voltage
param res voltage [V] param ph_pair phase AB, BC or CA
| bool MeterModel::IsMeterRegisterMap | ( | void | ) |
Checks if device has a SunSpec inverter register map
|
private |
Read meter event flags