LIBSUNSPEC  v0.1.6
A C++ library for the SunSpec protocol
MeterModel Class Reference

Class to manipulate Meter Model registers. More...

#include <MeterModel.h>

Inheritance diagram for MeterModel:
SunSpec FroniusMeter

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 &reg_addr, const uint16_t &size)
 
bool SetRegister (const uint16_t &value, const uint16_t &reg_addr)
 
- Protected Attributes inherited from SunSpec
std::string ErrorMessage
 

Detailed Description

Class to manipulate Meter Model registers.

Author
Alexander Pohl alex@.nosp@m.ahpo.nosp@m.hl.co.nosp@m.m

Member Function Documentation

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

bool MeterModel::ReadEventFlags ( uint32_t &  flag1,
uint32_t &  flag2 
)
private

Read meter event flags


The documentation for this class was generated from the following file: