Add comments for model properties and units for easier understanding of each property

This commit is contained in:
Simon Stürz 2021-08-26 12:13:02 +02:00
parent b1022c9ca0
commit 116d41e448
63 changed files with 2218 additions and 0 deletions

View File

@ -92,15 +92,25 @@ public:
QString description() const override;
QString label() const override;
/* Aggregated model id */
quint16 aid() const;
/* Number of aggregated models */
quint16 n() const;
/* Update Number. Incrementing number each time the mapping is changed. If the number is not changed from the last reading the direct access to a specific offset will result in reading the same logical model as before. Otherwise the entire model must be read to refresh the changes */
quint16 un() const;
/* Enumerated status code */
St status() const;
/* Vendor specific status code */
quint16 vendorStatus() const;
/* Bitmask event code */
EvtFlags eventCode() const;
/* Vendor specific event code */
quint32 vendorEventCode() const;
/* Control register for all aggregated devices */
Ctl control() const;
/* Vendor control register for all aggregated devices */
quint32 vendorControl() const;
/* Numerical value used as a parameter to the control */
quint32 controlValue() const;
protected:

View File

@ -49,16 +49,27 @@ public:
QString description() const override;
QString label() const override;
/* Ambient Temperature [C] */
float ambientTemperature() const;
/* Relative Humidity [Pct] */
qint16 relativeHumidity() const;
/* Barometric Pressure [HPa] */
qint16 barometricPressure() const;
/* Wind Speed [mps] */
qint16 windSpeed() const;
/* Wind Direction [deg] */
qint16 windDirection() const;
/* Rainfall [mm] */
qint16 rainfall() const;
/* Snow Depth [mm] */
qint16 snowDepth() const;
/* Precipitation Type (WMO 4680 SYNOP code reference) */
qint16 precipitationType() const;
/* Electric Field [Vm] */
qint16 electricField() const;
/* Surface Wetness [kO] */
qint16 surfaceWetness() const;
/* Soil Wetness [Pct] */
qint16 soilWetness() const;
protected:

View File

@ -148,74 +148,130 @@ public:
QString description() const override;
QString label() const override;
/* Nameplate charge capacity in amp-hours. [Ah] */
float nameplateChargeCapacity() const;
/* Nameplate energy capacity in DC watt-hours. [Wh] */
float nameplateEnergyCapacity() const;
/* Maximum rate of energy transfer into the storage device in DC watts. [W] */
float nameplateMaxChargeRate() const;
/* Maximum rate of energy transfer out of the storage device in DC watts. [W] */
float nameplateMaxDischargeRate() const;
/* Self discharge rate. Percentage of capacity (WHRtg) discharged per day. [%WHRtg] */
float selfDischargeRate() const;
/* Manufacturer maximum state of charge, expressed as a percentage. [%WHRtg] */
float nameplateMaxSoC() const;
/* Manufacturer minimum state of charge, expressed as a percentage. [%WHRtg] */
float nameplateMinSoC() const;
/* Setpoint for maximum reserve for storage as a percentage of the nominal maximum storage. [%WHRtg] */
float maxReservePercent() const;
QModbusReply *setMaxReservePercent(float maxReservePercent);
/* Setpoint for minimum reserve for storage as a percentage of the nominal maximum storage. [%WHRtg] */
float minReservePercent() const;
QModbusReply *setMinReservePercent(float minReservePercent);
/* State of charge, expressed as a percentage. [%WHRtg] */
float stateOfCharge() const;
/* Depth of discharge, expressed as a percentage. [%] */
float depthOfDischarge() const;
/* Percentage of battery life remaining. [%] */
float stateOfHealth() const;
/* Number of cycles executed in the battery. */
quint32 cycleCount() const;
/* Charge status of storage device. Enumeration. */
Chast chargeStatus() const;
/* Battery control mode. Enumeration. */
Locremctl controlMode() const;
/* Value is incremented every second with periodic resets to zero. */
quint16 batteryHeartbeat() const;
/* Value is incremented every second with periodic resets to zero. */
quint16 controllerHeartbeat() const;
QModbusReply *setControllerHeartbeat(quint16 controllerHeartbeat);
/* Used to reset any latched alarms. 1 = Reset. */
quint16 alarmReset() const;
QModbusReply *setAlarmReset(quint16 alarmReset);
/* Type of battery. Enumeration. */
Typ batteryType() const;
/* State of the battery bank. Enumeration. */
State stateOfTheBatteryBank() const;
/* Vendor specific battery bank state. Enumeration. */
quint16 vendorBatteryBankState() const;
/* Date the device warranty expires. */
quint32 warrantyDate() const;
/* Alarms and warnings. Bit flags. */
Evt1Flags batteryEvent1Bitfield() const;
/* Alarms and warnings. Bit flags. */
quint32 batteryEvent2Bitfield() const;
/* Vendor defined events. */
quint32 vendorEventBitfield1() const;
/* Vendor defined events. */
quint32 vendorEventBitfield2() const;
/* DC Bus Voltage. [V] */
float externalBatteryVoltage() const;
/* Instantaneous maximum battery voltage. [V] */
float maxBatteryVoltage() const;
/* Instantaneous minimum battery voltage. [V] */
float minBatteryVoltage() const;
/* Maximum voltage for all cells in the bank. [V] */
float maxCellVoltage() const;
/* String containing the cell with maximum voltage. */
quint16 maxCellVoltageString() const;
/* Module containing the cell with maximum voltage. */
quint16 maxCellVoltageModule() const;
/* Minimum voltage for all cells in the bank. [V] */
float minCellVoltage() const;
/* String containing the cell with minimum voltage. */
quint16 minCellVoltageString() const;
/* Module containing the cell with minimum voltage. */
quint16 minCellVoltageModule() const;
/* Average cell voltage for all cells in the bank. [V] */
float averageCellVoltage() const;
/* Total DC current flowing to/from the battery bank. [A] */
float totalDcCurrent() const;
/* Instantaneous maximum DC charge current. [A] */
float maxChargeCurrent() const;
/* Instantaneous maximum DC discharge current. [A] */
float maxDischargeCurrent() const;
/* Total power flowing to/from the battery bank. [W] */
float totalPower() const;
/* Request from battery to start or stop the inverter. Enumeration. */
Reqinvstate inverterStateRequest() const;
/* AC Power requested by battery. [W] */
float batteryPowerRequest() const;
/* Instruct the battery bank to perform an operation such as connecting. Enumeration. */
Setop setOperation() const;
QModbusReply *setSetOperation(Setop setOperation);
/* Set the current state of the inverter. */
Setinvstate setInverterState() const;
QModbusReply *setSetInverterState(Setinvstate setInverterState);
/* Scale factor for charge capacity. */
qint16 aHRtg_SF() const;
/* Scale factor for energy capacity. */
qint16 wHRtg_SF() const;
/* Scale factor for maximum charge and discharge rate. */
qint16 wChaDisChaMax_SF() const;
/* Scale factor for self discharge rate. */
qint16 disChaRte_SF() const;
/* Scale factor for state of charge values. */
qint16 soC_SF() const;
/* Scale factor for depth of discharge. */
qint16 doD_SF() const;
/* Scale factor for state of health. */
qint16 soH_SF() const;
/* Scale factor for DC bus voltage. */
qint16 v_SF() const;
/* Scale factor for cell voltage. */
qint16 cellV_SF() const;
/* Scale factor for DC current. */
qint16 a_SF() const;
/* Scale factor for instantaneous DC charge/discharge current. */
qint16 aMax_SF() const;
/* Scale factor for AC power request. */
qint16 w_SF() const;
protected:

View File

@ -49,15 +49,22 @@ public:
QString description() const override;
QString label() const override;
/* Well known value registered with SunSpec for compliance */
QString manufacturer() const;
/* Manufacturer specific value (32 chars) */
QString model() const;
/* Manufacturer specific value (16 chars) */
QString options() const;
/* Manufacturer specific value (16 chars) */
QString version() const;
/* Manufacturer specific value (32 chars) */
QString serialNumber() const;
/* Modbus device address */
quint16 deviceAddress() const;
QModbusReply *setDeviceAddress(quint16 deviceAddress);
/* Force even alignment */
quint16 pad() const;
protected:

View File

@ -82,71 +82,95 @@ public:
QString label() const override;
/* Time window for connect/disconnect. [Secs] */
quint16 connWinTms() const;
QModbusReply *setConnWinTms(quint16 connWinTms);
/* Timeout period for connect/disconnect. [Secs] */
quint16 connRvrtTms() const;
QModbusReply *setConnRvrtTms(quint16 connRvrtTms);
/* Enumerated valued. Connection control. */
Conn conn() const;
QModbusReply *setConn(Conn conn);
/* Set power output to specified level. [% WMax] */
float wMaxLimPct() const;
QModbusReply *setWMaxLimPct(float wMaxLimPct);
/* Time window for power limit change. [Secs] */
quint16 wMaxLimPctWinTms() const;
QModbusReply *setWMaxLimPctWinTms(quint16 wMaxLimPctWinTms);
/* Timeout period for power limit. [Secs] */
quint16 wMaxLimPctRvrtTms() const;
QModbusReply *setWMaxLimPctRvrtTms(quint16 wMaxLimPctRvrtTms);
/* Ramp time for moving from current setpoint to new setpoint. [Secs] */
quint16 wMaxLimPctRmpTms() const;
QModbusReply *setWMaxLimPctRmpTms(quint16 wMaxLimPctRmpTms);
/* Enumerated valued. Throttle enable/disable control. */
Wmaxlim_ena wMaxLimEna() const;
QModbusReply *setWMaxLimEna(Wmaxlim_ena wMaxLimEna);
/* Set power factor to specific value - cosine of angle. [cos()] */
float outPfSet() const;
QModbusReply *setOutPfSet(float outPfSet);
/* Time window for power factor change. [Secs] */
quint16 outPfSetWinTms() const;
QModbusReply *setOutPfSetWinTms(quint16 outPfSetWinTms);
/* Timeout period for power factor. [Secs] */
quint16 outPfSetRvrtTms() const;
QModbusReply *setOutPfSetRvrtTms(quint16 outPfSetRvrtTms);
/* Ramp time for moving from current setpoint to new setpoint. [Secs] */
quint16 outPfSetRmpTms() const;
QModbusReply *setOutPfSetRmpTms(quint16 outPfSetRmpTms);
/* Enumerated valued. Fixed power factor enable/disable control. */
Outpfset_ena outPfSetEna() const;
QModbusReply *setOutPfSetEna(Outpfset_ena outPfSetEna);
/* Reactive power in percent of WMax. [% WMax] */
float vArWMaxPct() const;
QModbusReply *setVArWMaxPct(float vArWMaxPct);
/* Reactive power in percent of VArMax. [% VArMax] */
float vArMaxPct() const;
QModbusReply *setVArMaxPct(float vArMaxPct);
/* Reactive power in percent of VArAval. [% VArAval] */
float vArAvalPct() const;
QModbusReply *setVArAvalPct(float vArAvalPct);
/* Time window for VAR limit change. [Secs] */
quint16 vArPctWinTms() const;
QModbusReply *setVArPctWinTms(quint16 vArPctWinTms);
/* Timeout period for VAR limit. [Secs] */
quint16 vArPctRvrtTms() const;
QModbusReply *setVArPctRvrtTms(quint16 vArPctRvrtTms);
/* Ramp time for moving from current setpoint to new setpoint. [Secs] */
quint16 vArPctRmpTms() const;
QModbusReply *setVArPctRmpTms(quint16 vArPctRmpTms);
/* Enumerated value. VAR percent limit mode. */
Varpct_mod vArPctMod() const;
QModbusReply *setVArPctMod(Varpct_mod vArPctMod);
/* Enumerated valued. Percent limit VAr enable/disable control. */
Varpct_ena vArPctEna() const;
QModbusReply *setVArPctEna(Varpct_ena vArPctEna);
/* Scale factor for power output percent. */
qint16 wMaxLimPctSf() const;
/* Scale factor for power factor. */
qint16 outPfSetSf() const;
/* Scale factor for reactive power percent. */
qint16 vArPctSf() const;
protected:

View File

@ -83,67 +83,129 @@ public:
QString description() const override;
QString label() const override;
/* Total AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
/* Line to Neutral AC Voltage (average of active phases) [V] */
float voltageLn() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
/* Line to Line AC Voltage (average of active phases) [V] */
float voltageLl() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Frequency [Hz] */
float hz() const;
/* Total Real Power [W] */
float watts() const;
/* Watts phase A [W] */
float wattsPhaseA() const;
/* Watts phase B [W] */
float wattsPhaseB() const;
/* Watts phase C [W] */
float wattsPhaseC() const;
/* AC Apparent Power [VA] */
float va() const;
/* VA phase A [VA] */
float vaPhaseA() const;
/* VA phase B [VA] */
float vaPhaseB() const;
/* VA phase C [VA] */
float vaPhaseC() const;
/* Reactive Power [var] */
float var() const;
/* VAR phase A [var] */
float varPhaseA() const;
/* VAR phase B [var] */
float varPhaseB() const;
/* VAR phase C [var] */
float varPhaseC() const;
/* Power Factor [PF] */
float pf() const;
/* PF phase A [PF] */
float pfPhaseA() const;
/* PF phase B [PF] */
float pfPhaseB() const;
/* PF phase C [PF] */
float pfPhaseC() const;
/* Total Real Energy Exported [Wh] */
float totalWattHoursExported() const;
/* Total Watt-hours Exported phase A [Wh] */
float totalWattHoursExportedPhaseA() const;
/* Total Watt-hours Exported phase B [Wh] */
float totalWattHoursExportedPhaseB() const;
/* Total Watt-hours Exported phase C [Wh] */
float totalWattHoursExportedPhaseC() const;
/* Total Real Energy Imported [Wh] */
float totalWattHoursImported() const;
/* Total Watt-hours Imported phase A [Wh] */
float totalWattHoursImportedPhaseA() const;
/* Total Watt-hours Imported phase B [Wh] */
float totalWattHoursImportedPhaseB() const;
/* Total Watt-hours Imported phase C [Wh] */
float totalWattHoursImportedPhaseC() const;
/* Total Apparent Energy Exported [VAh] */
float totalVaHoursExported() const;
/* Total VA-hours Exported phase A [VAh] */
float totalVaHoursExportedPhaseA() const;
/* Total VA-hours Exported phase B [VAh] */
float totalVaHoursExportedPhaseB() const;
/* Total VA-hours Exported phase C [VAh] */
float totalVaHoursExportedPhaseC() const;
/* Total Apparent Energy Imported [VAh] */
float totalVaHoursImported() const;
/* Total VA-hours Imported phase A [VAh] */
float totalVaHoursImportedPhaseA() const;
/* Total VA-hours Imported phase B [VAh] */
float totalVaHoursImportedPhaseB() const;
/* Total VA-hours Imported phase C [VAh] */
float totalVaHoursImportedPhaseC() const;
/* Total Reactive Energy Imported Quadrant 1 [varh] */
float totalVarHoursImportedQ1() const;
/* Total VAr-hours Imported Q1 phase A [varh] */
float totalVArHoursImportedQ1PhaseA() const;
/* Total VAr-hours Imported Q1 phase B [varh] */
float totalVArHoursImportedQ1PhaseB() const;
/* Total VAr-hours Imported Q1 phase C [varh] */
float totalVArHoursImportedQ1PhaseC() const;
/* Total Reactive Power Imported Quadrant 2 [varh] */
float totalVArHoursImportedQ2() const;
/* Total VAr-hours Imported Q2 phase A [varh] */
float totalVArHoursImportedQ2PhaseA() const;
/* Total VAr-hours Imported Q2 phase B [varh] */
float totalVArHoursImportedQ2PhaseB() const;
/* Total VAr-hours Imported Q2 phase C [varh] */
float totalVArHoursImportedQ2PhaseC() const;
/* Total Reactive Power Exported Quadrant 3 [varh] */
float totalVArHoursExportedQ3() const;
/* Total VAr-hours Exported Q3 phase A [varh] */
float totalVArHoursExportedQ3PhaseA() const;
/* Total VAr-hours Exported Q3 phase B [varh] */
float totalVArHoursExportedQ3PhaseB() const;
/* Total VAr-hours Exported Q3 phase C [varh] */
float totalVArHoursExportedQ3PhaseC() const;
/* Total Reactive Power Exported Quadrant 4 [varh] */
float totalVArHoursExportedQ4() const;
/* Total VAr-hours Exported Q4 Imported phase A [varh] */
float totalVArHoursExportedQ4ImportedPhaseA() const;
/* Total VAr-hours Exported Q4 Imported phase B [varh] */
float totalVArHoursExportedQ4ImportedPhaseB() const;
/* Total VAr-hours Exported Q4 Imported phase C [varh] */
float totalVArHoursExportedQ4ImportedPhaseC() const;
/* Meter Event Flags */
EvtFlags events() const;
protected:

View File

@ -49,6 +49,7 @@ public:
QString description() const override;
QString label() const override;
/* This model has been deprecated. */
quint16 deprecatedModel() const;
protected:

View File

@ -50,27 +50,35 @@ public:
QString label() const override;
/* Ramp up rate as a percentage of max current. [Pct] */
float rampUpRate() const;
QModbusReply *setRampUpRate(float rampUpRate);
/* Ramp down rate as a percentage of max current. [Pct] */
float nomRmpDnRte() const;
QModbusReply *setNomRmpDnRte(float nomRmpDnRte);
/* Emergency ramp up rate as a percentage of max current. [Pct] */
float emergencyRampUpRate() const;
QModbusReply *setEmergencyRampUpRate(float emergencyRampUpRate);
/* Emergency ramp down rate as a percentage of max current. [Pct] */
float emergencyRampDownRate() const;
QModbusReply *setEmergencyRampDownRate(float emergencyRampDownRate);
/* Connect ramp up rate as a percentage of max current. [Pct] */
float connectRampUpRate() const;
QModbusReply *setConnectRampUpRate(float connectRampUpRate);
/* Connect ramp down rate as a percentage of max current. [Pct] */
float connectRampDownRate() const;
QModbusReply *setConnectRampDownRate(float connectRampDownRate);
/* Ramp rate specified in percent of max current. [Pct] */
float defaultRampRate() const;
QModbusReply *setDefaultRampRate(float defaultRampRate);
/* Ramp Rate Scale Factor */
qint16 rampRateScaleFactor() const;
protected:

View File

@ -50,6 +50,7 @@ public:
SunSpecFlowBatteryModel *parentModel() const;
QString name() const override;
/* Battery String Points To Be Determined */
quint16 batteryStringPointsToBeDetermined() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -78,6 +79,7 @@ public:
QString description() const override;
QString label() const override;
/* Battery Points To Be Determined */
quint16 batteryPointsToBeDetermined() const;
protected:

View File

@ -50,6 +50,7 @@ public:
SunSpecFlowBatteryModuleModel *parentModel() const;
QString name() const override;
/* Stack Points To Be Determined */
quint16 stackPointsToBeDetermined() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -78,6 +79,7 @@ public:
QString description() const override;
QString label() const override;
/* Module Points To Be Determined */
quint16 modulePointsToBeDetermined() const;
protected:

View File

@ -50,6 +50,7 @@ public:
SunSpecFlowBatteryStackModel *parentModel() const;
QString name() const override;
/* Cell Points To Be Determined */
quint16 cellPointsToBeDetermined() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -78,6 +79,7 @@ public:
QString description() const override;
QString label() const override;
/* Stack Points To Be Determined */
quint16 stackPointsToBeDetermined() const;
protected:

View File

@ -173,30 +173,50 @@ public:
SunSpecFlowBatteryStringModel *parentModel() const;
QString name() const override;
/* Index of the module within the string. */
quint16 moduleIndex() const;
/* Number of stacks in this module. */
quint16 stackCount() const;
/* Current status of the module. */
ModstFlags moduleStatus() const;
/* State of charge for this module. [%] */
float moduleStateOfCharge() const;
/* Open circuit voltage for this module. [V] */
float openCircuitVoltage() const;
/* External voltage fo this module. [V] */
float externalVoltage() const;
/* Maximum voltage for all cells in this module. [V] */
float maximumCellVoltage() const;
/* Cell with the maximum cell voltage. */
quint16 maxCellVoltageCell() const;
/* Minimum voltage for all cells in this module. [V] */
float minimumCellVoltage() const;
/* Cell with the minimum cell voltage. */
quint16 minCellVoltageCell() const;
/* Average voltage for all cells in this module. [V] */
float averageCellVoltage() const;
/* Anolyte Temperature [C] */
float anolyteTemperature() const;
/* Catholyte Temperature [C] */
float catholyteTemperature() const;
/* Contactor Status */
ModconstFlags contactorStatus() const;
/* Alarms, warnings and status values. Bit flags. */
Modevt1Flags moduleEvent1() const;
/* Alarms, warnings and status values. Bit flags. */
Modevt2Flags moduleEvent2() const;
/* Connection Failure Reason */
Modconfail connectionFailureReason() const;
/* Enables and disables the module. */
Modsetena enableDisableModule() const;
QModbusReply *setEnableDisableModule(Modsetena enableDisableModule);
/* Connects and disconnects the module. */
Modsetcon connectDisconnectModule() const;
QModbusReply *setConnectDisconnectModule(Modsetcon connectDisconnectModule);
/* Reason why the module is currently disabled. */
Moddisrsn disabledReason() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -290,35 +310,64 @@ public:
QString description() const override;
QString label() const override;
/* Index of the string within the bank. */
quint16 stringIndex() const;
/* Number of modules in this string. */
quint16 moduleCount() const;
/* Number of electrically connected modules in this string. */
quint16 connectedModuleCount() const;
/* Maximum voltage for all modules in the string. [V] */
float maxModuleVoltage() const;
/* Module with the maximum voltage. */
quint16 maxModuleVoltageModule() const;
/* Minimum voltage for all modules in the string. [V] */
float minModuleVoltage() const;
/* Module with the minimum voltage. */
quint16 minModuleVoltageModule() const;
/* Average voltage for all modules in the string. [V] */
float averageModuleVoltage() const;
/* Maximum voltage for all cells in the string. [V] */
float maxCellVoltage() const;
/* Module containing the cell with the maximum voltage. */
quint16 maxCellVoltageModule() const;
/* Stack containing the cell with the maximum voltage. */
quint16 maxCellVoltageStack() const;
/* Minimum voltage for all cells in the string. [V] */
float minCellVoltage() const;
/* Module containing the cell with the minimum voltage. */
quint16 minCellVoltageModule() const;
/* Stack containing the cell with the minimum voltage. */
quint16 minCellVoltageStack() const;
/* Average voltage for all cells in the string. [V] */
float averageCellVoltage() const;
/* Maximum electrolyte temperature for all modules in the string. [C] */
float maxTemperature() const;
/* Module with the maximum temperature. */
quint16 maxTemperatureModule() const;
/* Minimum electrolyte temperature for all modules in the string. [C] */
float minTemperature() const;
/* Module with the minimum temperature. */
quint16 minTemperatureModule() const;
/* Average electrolyte temperature for all modules in the string. [C] */
float averageTemperature() const;
/* Alarms, warnings and status values. Bit flags. */
Evt1Flags stringEvent1() const;
/* Alarms, warnings and status values. Bit flags. */
Evt2Flags stringEvent2() const;
/* Vendor defined events. */
quint32 vendorEventBitfield1() const;
/* Vendor defined events. */
quint32 vendorEventBitfield2() const;
qint16 modV_SF() const;
/* Scale factor for voltage. */
qint16 cellV_SF() const;
/* Scale factor for temperature. */
qint16 tmp_SF() const;
/* Scale factor for state of charge. */
qint16 soC_SF() const;
/* Scale factor for open circuit voltage. */
qint16 oCV_SF() const;
/* Pad register. */
quint16 pad1() const;
protected:

View File

@ -57,156 +57,207 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 Hertz. [Hz] */
float hz1() const;
QModbusReply *setHz1(float hz1);
/* Point 1 Watts. [% WRef] */
float w1() const;
QModbusReply *setW1(float w1);
/* Point 2 Hertz. [Hz] */
float hz2() const;
QModbusReply *setHz2(float hz2);
/* Point 2 Watts. [% WRef] */
float w2() const;
QModbusReply *setW2(float w2);
/* Point 3 Hertz. [Hz] */
float hz3() const;
QModbusReply *setHz3(float hz3);
/* Point 3 Watts. [% WRef] */
float w3() const;
QModbusReply *setW3(float w3);
/* Point 4 Hertz. [Hz] */
float hz4() const;
QModbusReply *setHz4(float hz4);
/* Point 4 Watts. [% WRef] */
float w4() const;
QModbusReply *setW4(float w4);
/* Point 5 Hertz. [Hz] */
float hz5() const;
QModbusReply *setHz5(float hz5);
/* Point 5 Watts. [% WRef] */
float w5() const;
QModbusReply *setW5(float w5);
/* Point 6 Hertz. [Hz] */
float hz6() const;
QModbusReply *setHz6(float hz6);
/* Point 6 Watts. [% WRef] */
float w6() const;
QModbusReply *setW6(float w6);
/* Point 7 Hertz. [Hz] */
float hz7() const;
QModbusReply *setHz7(float hz7);
/* Point 7 Watts. [% WRef] */
float w7() const;
QModbusReply *setW7(float w7);
/* Point 8 Hertz. [Hz] */
float hz8() const;
QModbusReply *setHz8(float hz8);
/* Point 8 Watts. [% WRef] */
float w8() const;
QModbusReply *setW8(float w8);
/* Point 9 Hertz. [Hz] */
float hz9() const;
QModbusReply *setHz9(float hz9);
/* Point 9 Watts. [% WRef] */
float w9() const;
QModbusReply *setW9(float w9);
/* Point 10 Hertz. [Hz] */
float hz10() const;
QModbusReply *setHz10(float hz10);
/* Point 10 Watts. [% WRef] */
float w10() const;
QModbusReply *setW10(float w10);
/* Point 11 Hertz. [Hz] */
float hz11() const;
QModbusReply *setHz11(float hz11);
/* Point 11 Watts. [% WRef] */
float w11() const;
QModbusReply *setW11(float w11);
/* Point 12 Hertz. [Hz] */
float hz12() const;
QModbusReply *setHz12(float hz12);
/* Point 12 Watts. [% WRef] */
float w12() const;
QModbusReply *setW12(float w12);
/* Point 13 Hertz. [Hz] */
float hz13() const;
QModbusReply *setHz13(float hz13);
/* Point 13 Watts. [% WRef] */
float w13() const;
QModbusReply *setW13(float w13);
/* Point 14 Hertz. [Hz] */
float hz14() const;
QModbusReply *setHz14(float hz14);
/* Point 14 Watts. [% WRef] */
float w14() const;
QModbusReply *setW14(float w14);
/* Point 15 Hertz. [Hz] */
float hz15() const;
QModbusReply *setHz15(float hz15);
/* Point 15 Watts. [% WRef] */
float w15() const;
QModbusReply *setW15(float w15);
/* Point 16 Hertz. [Hz] */
float hz16() const;
QModbusReply *setHz16(float hz16);
/* Point 16 Watts. [% WRef] */
float w16() const;
QModbusReply *setW16(float w16);
/* Point 17 Hertz. [Hz] */
float hz17() const;
QModbusReply *setHz17(float hz17);
/* Point 17 Watts. [% WRef] */
float w17() const;
QModbusReply *setW17(float w17);
/* Point 18 Hertz. [Hz] */
float hz18() const;
QModbusReply *setHz18(float hz18);
/* Point 18 Watts. [% WRef] */
float w18() const;
QModbusReply *setW18(float w18);
/* Point 19 Hertz. [Hz] */
float hz19() const;
QModbusReply *setHz19(float hz19);
/* Point 19 Watts. [% WRef] */
float w19() const;
QModbusReply *setW19(float w19);
/* Point 20 Hertz. [Hz] */
float hz20() const;
QModbusReply *setHz20(float hz20);
/* Point 20 Watts. [% WRef] */
float w20() const;
QModbusReply *setW20(float w20);
/* Optional description for curve. (Max 16 chars) */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* The time of the PT1 in seconds (time to accomplish a change of 95%). [Secs] */
quint16 rmpPt1Tms() const;
QModbusReply *setRmpPt1Tms(quint16 rmpPt1Tms);
/* The maximum rate at which the power value may be reduced in response to changes in the frequency value. [% WMax/min] */
float rmpDecTmm() const;
QModbusReply *setRmpDecTmm(float rmpDecTmm);
/* The maximum rate at which the power value may be increased in response to changes in the frequency value. [% WMax/min] */
float rmpIncTmm() const;
QModbusReply *setRmpIncTmm(float rmpIncTmm);
/* The maximum rate at which the power may be increased after releasing the frozen value of snap shot function. [% WMax/min] */
float rmpRsUp() const;
QModbusReply *setRmpRsUp(float rmpRsUp);
/* 1=enable snapshot/capture mode */
quint16 snptW() const;
QModbusReply *setSnptW(quint16 snptW);
/* Reference active power (default = WMax). [W] */
float wRef() const;
QModbusReply *setWRef(float wRef);
/* Frequency deviation from nominal frequency at the time of the snapshot to start constraining power output. [Hz] */
float wRefStrHz() const;
QModbusReply *setWRefStrHz(float wRefStrHz);
/* Frequency deviation from nominal frequency at which to release the power output. [Hz] */
float wRefStopHz() const;
QModbusReply *setWRefStopHz(float wRefStopHz);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -292,25 +343,35 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* Is curve-based Frequency-Watt control active. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for freq-watt change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for freq-watt curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend min. 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 10). */
quint16 nPt() const;
/* Scale factor for frequency. [SF] */
qint16 hzSf() const;
/* Scale factor for percent WRef. [SF] */
qint16 wSf() const;
/* Scale factor for increment and decrement ramps. [SF] */
qint16 rmpIncDecSf() const;
protected:

View File

@ -62,26 +62,35 @@ public:
QString label() const override;
/* The slope of the reduction in the maximum allowed watts output as a function of frequency. [% PM/Hz] */
float wGra() const;
QModbusReply *setWGra(float wGra);
/* The frequency deviation from nominal frequency (ECPNomHz) at which a snapshot of the instantaneous power output is taken to act as the CAPPED power level (PM) and above which reduction in power output occurs. [Hz] */
float hzStr() const;
QModbusReply *setHzStr(float hzStr);
/* The frequency deviation from nominal frequency (ECPNomHz) at which curtailed power output may return to normal and the cap on the power level value is removed. [Hz] */
float hzStop() const;
QModbusReply *setHzStop(float hzStop);
/* Enable hysteresis */
HysenaFlags hysEna() const;
QModbusReply *setHysEna(HysenaFlags hysEna);
/* Is Parameterized Frequency-Watt control active. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* The maximum time-based rate of change at which power output returns to normal after having been capped by an over frequency event. [% WMax/min] */
float hzStopWGra() const;
QModbusReply *setHzStopWGra(float hzStopWGra);
/* Scale factor for output gradient. */
qint16 wGraSf() const;
/* Scale factor for frequency deviations. */
qint16 hzStrStopSf() const;
/* Scale factor for increment and decrement ramps. */
qint16 rmpIncDecSf() const;
quint16 pad() const;

View File

@ -57,132 +57,175 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 must remain connected duration. [Secs] */
float tms1() const;
QModbusReply *setTms1(float tms1);
/* Point 1 must remain connected frequency. [Hz] */
float hz1() const;
QModbusReply *setHz1(float hz1);
/* Point 2 must remain connected duration. [Secs] */
float tms2() const;
QModbusReply *setTms2(float tms2);
/* Point 2 must remain connected frequency. [Hz] */
float hz2() const;
QModbusReply *setHz2(float hz2);
/* Point 3 must remain connected duration. [Secs] */
float tms3() const;
QModbusReply *setTms3(float tms3);
/* Point 3 must remain connected frequency. [Hz] */
float hz3() const;
QModbusReply *setHz3(float hz3);
/* Point 4 must remain connected duration. [Secs] */
float tms4() const;
QModbusReply *setTms4(float tms4);
/* Point 4 must remain connected frequency. [Hz] */
float hz4() const;
QModbusReply *setHz4(float hz4);
/* Point 5 must remain connected duration. [Secs] */
float tms5() const;
QModbusReply *setTms5(float tms5);
/* Point 5 must remain connected frequency. [Hz] */
float hz5() const;
QModbusReply *setHz5(float hz5);
/* Point 6 must remain connected duration. [Secs] */
float tms6() const;
QModbusReply *setTms6(float tms6);
/* Point 6 must remain connected frequency. [Hz] */
float hz6() const;
QModbusReply *setHz6(float hz6);
/* Point 7 must remain connected duration. [Secs] */
float tms7() const;
QModbusReply *setTms7(float tms7);
/* Point 7 must remain connected frequency. [Hz] */
float hz7() const;
QModbusReply *setHz7(float hz7);
/* Point 8 must remain connected duration. [Secs] */
float tms8() const;
QModbusReply *setTms8(float tms8);
/* Point 8 must remain connected frequency. [Hz] */
float hz8() const;
QModbusReply *setHz8(float hz8);
/* Point 9 must remain connected duration. [Secs] */
float tms9() const;
QModbusReply *setTms9(float tms9);
/* Point 9 must remain connected frequency. [Hz] */
float hz9() const;
QModbusReply *setHz9(float hz9);
/* Point 10 must remain connected duration. [Secs] */
float tms10() const;
QModbusReply *setTms10(float tms10);
/* Point 10 must remain connected frequency. [Hz] */
float hz10() const;
QModbusReply *setHz10(float hz10);
/* Point 11 must remain connected duration. [Secs] */
float tms11() const;
QModbusReply *setTms11(float tms11);
/* Point 11 must remain connected frequency. [Hz] */
float hz11() const;
QModbusReply *setHz11(float hz11);
/* Point 12 must remain connected duration. [Secs] */
float tms12() const;
QModbusReply *setTms12(float tms12);
/* Point 12 must remain connected frequency. [Hz] */
float hz12() const;
QModbusReply *setHz12(float hz12);
/* Point 13 must remain connected duration. [Secs] */
float tms13() const;
QModbusReply *setTms13(float tms13);
/* Point 13 must remain connected frequency. [Hz] */
float hz13() const;
QModbusReply *setHz13(float hz13);
/* Point 14 must remain connected duration. [Secs] */
float tms14() const;
QModbusReply *setTms14(float tms14);
/* Point 14 must remain connected frequency. [Hz] */
float hz14() const;
QModbusReply *setHz14(float hz14);
/* Point 15 must remain connected duration. [Secs] */
float tms15() const;
QModbusReply *setTms15(float tms15);
/* Point 15 must remain connected frequency. [Hz] */
float hz15() const;
QModbusReply *setHz15(float hz15);
/* Point 16 must remain connected duration. [Secs] */
float tms16() const;
QModbusReply *setTms16(float tms16);
/* Point 16 must remain connected frequency. [Hz] */
float hz16() const;
QModbusReply *setHz16(float hz16);
/* Point 17 must remain connected duration. [Secs] */
float tms17() const;
QModbusReply *setTms17(float tms17);
/* Point 17 must remain connected frequency. [Hz] */
float hz17() const;
QModbusReply *setHz17(float hz17);
/* Point 18 must remain connected duration. [Secs] */
float tms18() const;
QModbusReply *setTms18(float tms18);
/* Point 18 must remain connected frequency. [Hz] */
float hz18() const;
QModbusReply *setHz18(float hz18);
/* Point 19 must remain connected duration. [Secs] */
float tms19() const;
QModbusReply *setTms19(float tms19);
/* Point 19 must remain connected frequency. [Hz] */
float hz19() const;
QModbusReply *setHz19(float hz19);
/* Point 20 must remain connected duration. [Secs] */
float tms20() const;
QModbusReply *setTms20(float tms20);
/* Point 20 must remain connected frequency. [Hz] */
float hz20() const;
QModbusReply *setHz20(float hz20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -260,24 +303,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* LHzRT control mode. Enable active curve. Bitfield value. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for LFRT change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for LFRT curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for duration. */
qint16 tmsSf() const;
/* Scale factor for frequency. */
qint16 hzSf() const;
quint16 pad() const;

View File

@ -57,132 +57,175 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 must disconnect duration. [Secs] */
float tms1() const;
QModbusReply *setTms1(float tms1);
/* Point 1 must disconnect frequency. [Hz] */
float hz1() const;
QModbusReply *setHz1(float hz1);
/* Point 2 must disconnect duration. [Secs] */
float tms2() const;
QModbusReply *setTms2(float tms2);
/* Point 2 must disconnect frequency. [Hz] */
float hz2() const;
QModbusReply *setHz2(float hz2);
/* Point 3 must disconnect duration. [Secs] */
float tms3() const;
QModbusReply *setTms3(float tms3);
/* Point 3 must disconnect frequency. [Hz] */
float hz3() const;
QModbusReply *setHz3(float hz3);
/* Point 4 must disconnect duration. [Secs] */
float tms4() const;
QModbusReply *setTms4(float tms4);
/* Point 4 must disconnect frequency. [Hz] */
float hz4() const;
QModbusReply *setHz4(float hz4);
/* Point 5 must disconnect duration. [Secs] */
float tms5() const;
QModbusReply *setTms5(float tms5);
/* Point 5 must disconnect frequency. [Hz] */
float hz5() const;
QModbusReply *setHz5(float hz5);
/* Point 6 must disconnect duration. [Secs] */
float tms6() const;
QModbusReply *setTms6(float tms6);
/* Point 6 must disconnect frequency. [Hz] */
float hz6() const;
QModbusReply *setHz6(float hz6);
/* Point 7 must disconnect duration. [Secs] */
float tms7() const;
QModbusReply *setTms7(float tms7);
/* Point 7 must disconnect frequency. [Hz] */
float hz7() const;
QModbusReply *setHz7(float hz7);
/* Point 8 must disconnect duration. [Secs] */
float tms8() const;
QModbusReply *setTms8(float tms8);
/* Point 8 must disconnect frequency. [Hz] */
float hz8() const;
QModbusReply *setHz8(float hz8);
/* Point 9 must disconnect duration. [Secs] */
float tms9() const;
QModbusReply *setTms9(float tms9);
/* Point 9 must disconnect frequency. [Hz] */
float hz9() const;
QModbusReply *setHz9(float hz9);
/* Point 10 must disconnect duration. [Secs] */
float tms10() const;
QModbusReply *setTms10(float tms10);
/* Point 10 must disconnect frequency. [Hz] */
float hz10() const;
QModbusReply *setHz10(float hz10);
/* Point 11 must disconnect duration. [Secs] */
float tms11() const;
QModbusReply *setTms11(float tms11);
/* Point 11 must disconnect frequency. [Hz] */
float hz11() const;
QModbusReply *setHz11(float hz11);
/* Point 12 must disconnect duration. [Secs] */
float tms12() const;
QModbusReply *setTms12(float tms12);
/* Point 12 must disconnect frequency. [Hz] */
float hz12() const;
QModbusReply *setHz12(float hz12);
/* Point 13 must disconnect duration. [Secs] */
float tms13() const;
QModbusReply *setTms13(float tms13);
/* Point 13 must disconnect frequency. [Hz] */
float hz13() const;
QModbusReply *setHz13(float hz13);
/* Point 14 must disconnect duration. [Secs] */
float tms14() const;
QModbusReply *setTms14(float tms14);
/* Point 14 must disconnect frequency. [Hz] */
float hz14() const;
QModbusReply *setHz14(float hz14);
/* Point 15 must disconnect duration. [Secs] */
float tms15() const;
QModbusReply *setTms15(float tms15);
/* Point 15 must disconnect frequency. [Hz] */
float hz15() const;
QModbusReply *setHz15(float hz15);
/* Point 16 must disconnect duration. [Secs] */
float tms16() const;
QModbusReply *setTms16(float tms16);
/* Point 16 must disconnect frequency. [Hz] */
float hz16() const;
QModbusReply *setHz16(float hz16);
/* Point 17 must disconnect duration. [Secs] */
float tms17() const;
QModbusReply *setTms17(float tms17);
/* Point 17 must disconnect frequency. [Hz] */
float hz17() const;
QModbusReply *setHz17(float hz17);
/* Point 18 must disconnect duration. [Secs] */
float tms18() const;
QModbusReply *setTms18(float tms18);
/* Point 18 must disconnect frequency. [Hz] */
float hz18() const;
QModbusReply *setHz18(float hz18);
/* Point 19 must disconnect duration. [Secs] */
float tms19() const;
QModbusReply *setTms19(float tms19);
/* Point 19 must disconnect frequency. [Hz] */
float hz19() const;
QModbusReply *setHz19(float hz19);
/* Point 20 must disconnect duration. [Secs] */
float tms20() const;
QModbusReply *setTms20(float tms20);
/* Point 20 must disconnect frequency. [Hz] */
float hz20() const;
QModbusReply *setHz20(float hz20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -260,24 +303,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* HFRT control mode. Enable active curve. Bitfield value. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for HFRT change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for HFRT curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for duration. */
qint16 tmsSf() const;
/* Scale factor for frequency. */
qint16 hzSf() const;
quint16 pad() const;

View File

@ -57,132 +57,175 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 duration. [Secs] */
float tms1() const;
QModbusReply *setTms1(float tms1);
/* Point 1 frequency. [Hz] */
float hz1() const;
QModbusReply *setHz1(float hz1);
/* Point 2 duration. [Secs] */
float tms2() const;
QModbusReply *setTms2(float tms2);
/* Point 2 frequency. [Hz] */
float hz2() const;
QModbusReply *setHz2(float hz2);
/* Point 3 duration. [Secs] */
float tms3() const;
QModbusReply *setTms3(float tms3);
/* Point 3 frequency. [Hz] */
float hz3() const;
QModbusReply *setHz3(float hz3);
/* Point 4 duration. [Secs] */
float tms4() const;
QModbusReply *setTms4(float tms4);
/* Point 4 frequency. [Hz] */
float hz4() const;
QModbusReply *setHz4(float hz4);
/* Point 5 duration. [Secs] */
float tms5() const;
QModbusReply *setTms5(float tms5);
/* Point 5 frequency. [Hz] */
float hz5() const;
QModbusReply *setHz5(float hz5);
/* Point 6 duration. [Secs] */
float tms6() const;
QModbusReply *setTms6(float tms6);
/* Point 6 frequency. [Hz] */
float hz6() const;
QModbusReply *setHz6(float hz6);
/* Point 7 duration. [Secs] */
float tms7() const;
QModbusReply *setTms7(float tms7);
/* Point 7 frequency. [Hz] */
float hz7() const;
QModbusReply *setHz7(float hz7);
/* Point 8 duration. [Secs] */
float tms8() const;
QModbusReply *setTms8(float tms8);
/* Point 8 frequency. [Hz] */
float hz8() const;
QModbusReply *setHz8(float hz8);
/* Point 9 duration. [Secs] */
float tms9() const;
QModbusReply *setTms9(float tms9);
/* Point 9 frequency. [Hz] */
float hz9() const;
QModbusReply *setHz9(float hz9);
/* Point 10 duration. [Secs] */
float tms10() const;
QModbusReply *setTms10(float tms10);
/* Point 10 frequency. [Hz] */
float hz10() const;
QModbusReply *setHz10(float hz10);
/* Point 11 duration. [Secs] */
float tms11() const;
QModbusReply *setTms11(float tms11);
/* Point 11 frequency. [Hz] */
float hz11() const;
QModbusReply *setHz11(float hz11);
/* Point 12 duration. [Secs] */
float tms12() const;
QModbusReply *setTms12(float tms12);
/* Point 12 frequency. [Hz] */
float hz12() const;
QModbusReply *setHz12(float hz12);
/* Point 13 duration. [Secs] */
float tms13() const;
QModbusReply *setTms13(float tms13);
/* Point 13 frequency. [Hz] */
float hz13() const;
QModbusReply *setHz13(float hz13);
/* Point 14 duration. [Secs] */
float tms14() const;
QModbusReply *setTms14(float tms14);
/* Point 14 frequency. [Hz] */
float hz14() const;
QModbusReply *setHz14(float hz14);
/* Point 15 duration. [Secs] */
float tms15() const;
QModbusReply *setTms15(float tms15);
/* Point 15 frequency. [Hz] */
float hz15() const;
QModbusReply *setHz15(float hz15);
/* Point 16 duration. [Secs] */
float tms16() const;
QModbusReply *setTms16(float tms16);
/* Point 16 frequency. [Hz] */
float hz16() const;
QModbusReply *setHz16(float hz16);
/* Point 17 duration. [Secs] */
float tms17() const;
QModbusReply *setTms17(float tms17);
/* Point 17 frequency. [Hz] */
float hz17() const;
QModbusReply *setHz17(float hz17);
/* Point 18 duration. [Secs] */
float tms18() const;
QModbusReply *setTms18(float tms18);
/* Point 18 frequency. [Hz] */
float hz18() const;
QModbusReply *setHz18(float hz18);
/* Point 19 duration. [Secs] */
float tms19() const;
QModbusReply *setTms19(float tms19);
/* Point 19 frequency. [Hz] */
float hz19() const;
QModbusReply *setHz19(float hz19);
/* Point 20 duration. [Secs] */
float tms20() const;
QModbusReply *setTms20(float tms20);
/* Point 20 frequency. [Hz] */
float hz20() const;
QModbusReply *setHz20(float hz20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -265,24 +308,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* LHzRT control mode. Enable active curve. Bitfield value. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for LFRT change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for LFRT curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for duration. */
qint16 tmsSf() const;
/* Scale factor for frequency. */
qint16 hzSf() const;
Crvtype crvType() const;

View File

@ -57,132 +57,175 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 must remain connected duration. [Secs] */
float tms1() const;
QModbusReply *setTms1(float tms1);
/* Point 1 must remain connected voltage. [% VRef] */
float v1() const;
QModbusReply *setV1(float v1);
/* Point 2 must remain connected duration. [Secs] */
float tms2() const;
QModbusReply *setTms2(float tms2);
/* Point 2 must remain connected voltage. [% VRef] */
float v2() const;
QModbusReply *setV2(float v2);
/* Point 3 must remain connected duration. [Secs] */
float tms3() const;
QModbusReply *setTms3(float tms3);
/* Point 3 must remain connected voltage. [% VRef] */
float v3() const;
QModbusReply *setV3(float v3);
/* Point 4 must remain connected duration. [Secs] */
float tms4() const;
QModbusReply *setTms4(float tms4);
/* Point 4 must remain connected voltage. [% VRef] */
float v4() const;
QModbusReply *setV4(float v4);
/* Point 5 must remain connected duration. [Secs] */
float tms5() const;
QModbusReply *setTms5(float tms5);
/* Point 5 must remain connected voltage. [% VRef] */
float v5() const;
QModbusReply *setV5(float v5);
/* Point 6 must remain connected duration. [Secs] */
float tms6() const;
QModbusReply *setTms6(float tms6);
/* Point 6 must remain connected voltage. [% VRef] */
float v6() const;
QModbusReply *setV6(float v6);
/* Point 7 must remain connected duration. [Secs] */
float tms7() const;
QModbusReply *setTms7(float tms7);
/* Point 7 must remain connected voltage. [% VRef] */
float v7() const;
QModbusReply *setV7(float v7);
/* Point 8 must remain connected duration. [Secs] */
float tms8() const;
QModbusReply *setTms8(float tms8);
/* Point 8 must remain connected voltage. [% VRef] */
float v8() const;
QModbusReply *setV8(float v8);
/* Point 9 must remain connected duration. [Secs] */
float tms9() const;
QModbusReply *setTms9(float tms9);
/* Point 9 must remain connected voltage. [% VRef] */
float v9() const;
QModbusReply *setV9(float v9);
/* Point 10 must remain connected duration. [Secs] */
float tms10() const;
QModbusReply *setTms10(float tms10);
/* Point 10 must remain connected voltage. [% VRef] */
float v10() const;
QModbusReply *setV10(float v10);
/* Point 11 must remain connected duration. [Secs] */
float tms11() const;
QModbusReply *setTms11(float tms11);
/* Point 11 must remain connected voltage. [% VRef] */
float v11() const;
QModbusReply *setV11(float v11);
/* Point 12 must remain connected duration. [Secs] */
float tms12() const;
QModbusReply *setTms12(float tms12);
/* Point 12 must remain connected voltage. [% VRef] */
float v12() const;
QModbusReply *setV12(float v12);
/* Point 13 must remain connected duration. [Secs] */
float tms13() const;
QModbusReply *setTms13(float tms13);
/* Point 13 must remain connected voltage. [% VRef] */
float v13() const;
QModbusReply *setV13(float v13);
/* Point 14 must remain connected duration. [Secs] */
float tms14() const;
QModbusReply *setTms14(float tms14);
/* Point 14 must remain connected voltage. [% VRef] */
float v14() const;
QModbusReply *setV14(float v14);
/* Point 15 must remain connected duration. [Secs] */
float tms15() const;
QModbusReply *setTms15(float tms15);
/* Point 15 must remain connected voltage. [% VRef] */
float v15() const;
QModbusReply *setV15(float v15);
/* Point 16 must remain connected duration. [Secs] */
float tms16() const;
QModbusReply *setTms16(float tms16);
/* Point 16 must remain connected voltage. [% VRef] */
float v16() const;
QModbusReply *setV16(float v16);
/* Point 17 must remain connected duration. [Secs] */
float tms17() const;
QModbusReply *setTms17(float tms17);
/* Point 17 must remain connected voltage. [% VRef] */
float v17() const;
QModbusReply *setV17(float v17);
/* Point 18 must remain connected duration. [Secs] */
float tms18() const;
QModbusReply *setTms18(float tms18);
/* Point 18 must remain connected voltage. [% VRef] */
float v18() const;
QModbusReply *setV18(float v18);
/* Point 19 must remain connected duration. [Secs] */
float tms19() const;
QModbusReply *setTms19(float tms19);
/* Point 19 must remain connected voltage. [% VRef] */
float v19() const;
QModbusReply *setV19(float v19);
/* Point 20 must remain connected duration. [Secs] */
float tms20() const;
QModbusReply *setTms20(float tms20);
/* Point 20 must remain connected voltage. [% VRef] */
float v20() const;
QModbusReply *setV20(float v20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -260,24 +303,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* HVRT control mode. Enable active curve. Bitfield value. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for HVRT change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for HVRT curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for duration. */
qint16 tmsSf() const;
/* Scale factor for percent VRef. */
qint16 vSf() const;
quint16 pad() const;

View File

@ -57,132 +57,175 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 must disconnect duration. [Secs] */
float tms1() const;
QModbusReply *setTms1(float tms1);
/* Point 1 must disconnect voltage. [% VRef] */
float v1() const;
QModbusReply *setV1(float v1);
/* Point 2 must disconnect duration. [Secs] */
float tms2() const;
QModbusReply *setTms2(float tms2);
/* Point 2 must disconnect voltage. [% VRef] */
float v2() const;
QModbusReply *setV2(float v2);
/* Point 3 must disconnect duration. [Secs] */
float tms3() const;
QModbusReply *setTms3(float tms3);
/* Point 3 must disconnect voltage. [% VRef] */
float v3() const;
QModbusReply *setV3(float v3);
/* Point 4 must disconnect duration. [Secs] */
float tms4() const;
QModbusReply *setTms4(float tms4);
/* Point 4 must disconnect voltage. [% VRef] */
float v4() const;
QModbusReply *setV4(float v4);
/* Point 5 must disconnect duration. [Secs] */
float tms5() const;
QModbusReply *setTms5(float tms5);
/* Point 5 must disconnect voltage. [% VRef] */
float v5() const;
QModbusReply *setV5(float v5);
/* Point 6 must disconnect duration. [Secs] */
float tms6() const;
QModbusReply *setTms6(float tms6);
/* Point 6 must disconnect voltage. [% VRef] */
float v6() const;
QModbusReply *setV6(float v6);
/* Point 7 must disconnect duration. [Secs] */
float tms7() const;
QModbusReply *setTms7(float tms7);
/* Point 7 must disconnect voltage. [% VRef] */
float v7() const;
QModbusReply *setV7(float v7);
/* Point 8 must disconnect duration. [Secs] */
float tms8() const;
QModbusReply *setTms8(float tms8);
/* Point 8 must disconnect voltage. [% VRef] */
float v8() const;
QModbusReply *setV8(float v8);
/* Point 9 must disconnect duration. [Secs] */
float tms9() const;
QModbusReply *setTms9(float tms9);
/* Point 9 must disconnect voltage. [% VRef] */
float v9() const;
QModbusReply *setV9(float v9);
/* Point 10 must disconnect duration. [Secs] */
float tms10() const;
QModbusReply *setTms10(float tms10);
/* Point 10 must disconnect voltage. [% VRef] */
float v10() const;
QModbusReply *setV10(float v10);
/* Point 11 must disconnect duration. [Secs] */
float tms11() const;
QModbusReply *setTms11(float tms11);
/* Point 11 must disconnect voltage. [% VRef] */
float v11() const;
QModbusReply *setV11(float v11);
/* Point 12 must disconnect duration. [Secs] */
float tms12() const;
QModbusReply *setTms12(float tms12);
/* Point 12 must disconnect voltage. [% VRef] */
float v12() const;
QModbusReply *setV12(float v12);
/* Point 13 must disconnect duration. [Secs] */
float tms13() const;
QModbusReply *setTms13(float tms13);
/* Point 13 must disconnect voltage. [% VRef] */
float v13() const;
QModbusReply *setV13(float v13);
/* Point 14 must disconnect duration. [Secs] */
float tms14() const;
QModbusReply *setTms14(float tms14);
/* Point 14 must disconnect voltage. [% VRef] */
float v14() const;
QModbusReply *setV14(float v14);
/* Point 15 must disconnect duration. [Secs] */
float tms15() const;
QModbusReply *setTms15(float tms15);
/* Point 15 must disconnect voltage. [% VRef] */
float v15() const;
QModbusReply *setV15(float v15);
/* Point 16 must disconnect duration. [Secs] */
float tms16() const;
QModbusReply *setTms16(float tms16);
/* Point 16 must disconnect voltage. [% VRef] */
float v16() const;
QModbusReply *setV16(float v16);
/* Point 17 must disconnect duration. [Secs] */
float tms17() const;
QModbusReply *setTms17(float tms17);
/* Point 17 must disconnect voltage. [% VRef] */
float v17() const;
QModbusReply *setV17(float v17);
/* Point 18 must disconnect duration. [Secs] */
float tms18() const;
QModbusReply *setTms18(float tms18);
/* Point 18 must disconnect voltage. [% VRef] */
float v18() const;
QModbusReply *setV18(float v18);
/* Point 19 must disconnect duration. [Secs] */
float tms19() const;
QModbusReply *setTms19(float tms19);
/* Point 19 must disconnect voltage. [% VRef] */
float v19() const;
QModbusReply *setV19(float v19);
/* Point 20 must disconnect duration. [Secs] */
float tms20() const;
QModbusReply *setTms20(float tms20);
/* Point 20 must disconnect voltage. [% VRef] */
float v20() const;
QModbusReply *setV20(float v20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -260,24 +303,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* HVRT control mode. Enable active curve. Bitfield value. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for HVRT change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for HVRT curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for duration. */
qint16 tmsSf() const;
/* Scale factor for percent VRef. */
qint16 vSf() const;
quint16 pad() const;

View File

@ -57,132 +57,175 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 duration. [Secs] */
float tms1() const;
QModbusReply *setTms1(float tms1);
/* Point 1 voltage. [% VRef] */
float v1() const;
QModbusReply *setV1(float v1);
/* Point 2 duration. [Secs] */
float tms2() const;
QModbusReply *setTms2(float tms2);
/* Point 2 voltage. [% VRef] */
float v2() const;
QModbusReply *setV2(float v2);
/* Point 3 duration. [Secs] */
float tms3() const;
QModbusReply *setTms3(float tms3);
/* Point 3 voltage. [% VRef] */
float v3() const;
QModbusReply *setV3(float v3);
/* Point 4 duration. [Secs] */
float tms4() const;
QModbusReply *setTms4(float tms4);
/* Point 4 voltage. [% VRef] */
float v4() const;
QModbusReply *setV4(float v4);
/* Point 5 duration. [Secs] */
float tms5() const;
QModbusReply *setTms5(float tms5);
/* Point 5 voltage. [% VRef] */
float v5() const;
QModbusReply *setV5(float v5);
/* Point 6 duration. [Secs] */
float tms6() const;
QModbusReply *setTms6(float tms6);
/* Point 6 voltage. [% VRef] */
float v6() const;
QModbusReply *setV6(float v6);
/* Point 7 duration. [Secs] */
float tms7() const;
QModbusReply *setTms7(float tms7);
/* Point 7 voltage. [% VRef] */
float v7() const;
QModbusReply *setV7(float v7);
/* Point 8 duration. [Secs] */
float tms8() const;
QModbusReply *setTms8(float tms8);
/* Point 8 voltage. [% VRef] */
float v8() const;
QModbusReply *setV8(float v8);
/* Point 9 duration. [Secs] */
float tms9() const;
QModbusReply *setTms9(float tms9);
/* Point 9 voltage. [% VRef] */
float v9() const;
QModbusReply *setV9(float v9);
/* Point 10 duration. [Secs] */
float tms10() const;
QModbusReply *setTms10(float tms10);
/* Point 10 voltage. [% VRef] */
float v10() const;
QModbusReply *setV10(float v10);
/* Point 11 duration. [Secs] */
float tms11() const;
QModbusReply *setTms11(float tms11);
/* Point 11 voltage. [% VRef] */
float v11() const;
QModbusReply *setV11(float v11);
/* Point 12 duration. [Secs] */
float tms12() const;
QModbusReply *setTms12(float tms12);
/* Point 12 voltage. [% VRef] */
float v12() const;
QModbusReply *setV12(float v12);
/* Point 13 duration. [Secs] */
float tms13() const;
QModbusReply *setTms13(float tms13);
/* Point 13 voltage. [% VRef] */
float v13() const;
QModbusReply *setV13(float v13);
/* Point 14 duration. [Secs] */
float tms14() const;
QModbusReply *setTms14(float tms14);
/* Point 14 voltage. [% VRef] */
float v14() const;
QModbusReply *setV14(float v14);
/* Point 15 duration. [Secs] */
float tms15() const;
QModbusReply *setTms15(float tms15);
/* Point 15 voltage. [% VRef] */
float v15() const;
QModbusReply *setV15(float v15);
/* Point 16 duration. [Secs] */
float tms16() const;
QModbusReply *setTms16(float tms16);
/* Point 16 voltage. [% VRef] */
float v16() const;
QModbusReply *setV16(float v16);
/* Point 17 duration. [Secs] */
float tms17() const;
QModbusReply *setTms17(float tms17);
/* Point 17 voltage. [% VRef] */
float v17() const;
QModbusReply *setV17(float v17);
/* Point 18 duration. [Secs] */
float tms18() const;
QModbusReply *setTms18(float tms18);
/* Point 18 voltage. [% VRef] */
float v18() const;
QModbusReply *setV18(float v18);
/* Point 19 duration. [Secs] */
float tms19() const;
QModbusReply *setTms19(float tms19);
/* Point 19 voltage. [% VRef] */
float v19() const;
QModbusReply *setV19(float v19);
/* Point 20 duration. [Secs] */
float tms20() const;
QModbusReply *setTms20(float tms20);
/* Point 20 voltage. [% VRef] */
float v20() const;
QModbusReply *setV20(float v20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -265,24 +308,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* LVRT control mode. Enable active curve. Bitfield value. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for LVRT change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for LVRT curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for duration. */
qint16 tmsSf() const;
/* Scale factor for percent VRef. */
qint16 vSf() const;
Crvtype crvType() const;

View File

@ -82,36 +82,67 @@ public:
QString description() const override;
QString label() const override;
/* AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
/* AC Power [W] */
float watts() const;
/* Line Frequency [Hz] */
float hz() const;
/* AC Apparent Power [VA] */
float va() const;
/* AC Reactive Power [var] */
float vAr() const;
/* AC Power Factor [Pct] */
float pf() const;
/* AC Energy [Wh] */
float wattHours() const;
/* DC Current [A] */
float dcAmps() const;
/* DC Voltage [V] */
float dcVoltage() const;
/* DC Power [W] */
float dcWatts() const;
/* Cabinet Temperature [C] */
float cabinetTemperature() const;
/* Heat Sink Temperature [C] */
float heatSinkTemperature() const;
/* Transformer Temperature [C] */
float transformerTemperature() const;
/* Other Temperature [C] */
float otherTemperature() const;
/* Enumerated value. Operating state */
St operatingState() const;
/* Vendor specific operating state code */
quint16 vendorOperatingState() const;
/* Bitmask value. Event fields */
Evt1Flags event1() const;
/* Reserved for future use */
quint32 eventBitfield2() const;
/* Vendor defined events */
quint32 vendorEventBitfield1() const;
/* Vendor defined events */
quint32 vendorEventBitfield2() const;
/* Vendor defined events */
quint32 vendorEventBitfield3() const;
/* Vendor defined events */
quint32 vendorEventBitfield4() const;
protected:

View File

@ -82,48 +82,79 @@ public:
QString description() const override;
QString label() const override;
/* AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
qint16 a_SF() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
qint16 v_SF() const;
/* AC Power [W] */
float watts() const;
qint16 w_SF() const;
/* Line Frequency [Hz] */
float hz() const;
qint16 hz_SF() const;
/* AC Apparent Power [VA] */
float va() const;
qint16 vA_SF() const;
/* AC Reactive Power [var] */
float vAr() const;
qint16 vAr_SF() const;
/* AC Power Factor [Pct] */
float pf() const;
qint16 pF_SF() const;
/* AC Energy [Wh] */
quint32 wattHours() const;
qint16 wH_SF() const;
/* DC Current [A] */
float dcAmps() const;
qint16 dCA_SF() const;
/* DC Voltage [V] */
float dcVoltage() const;
qint16 dCV_SF() const;
/* DC Power [W] */
float dcWatts() const;
qint16 dCW_SF() const;
/* Cabinet Temperature [C] */
float cabinetTemperature() const;
/* Heat Sink Temperature [C] */
float heatSinkTemperature() const;
/* Transformer Temperature [C] */
float transformerTemperature() const;
/* Other Temperature [C] */
float otherTemperature() const;
qint16 tmp_SF() const;
/* Enumerated value. Operating state */
St operatingState() const;
/* Vendor specific operating state code */
quint16 vendorOperatingState() const;
/* Bitmask value. Event fields */
Evt1Flags event1() const;
/* Reserved for future use */
quint32 eventBitfield2() const;
/* Vendor defined events */
quint32 vendorEventBitfield1() const;
/* Vendor defined events */
quint32 vendorEventBitfield2() const;
/* Vendor defined events */
quint32 vendorEventBitfield3() const;
/* Vendor defined events */
quint32 vendorEventBitfield4() const;
protected:

View File

@ -82,36 +82,67 @@ public:
QString description() const override;
QString label() const override;
/* AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
/* AC Power [W] */
float watts() const;
/* Line Frequency [Hz] */
float hz() const;
/* AC Apparent Power [VA] */
float va() const;
/* AC Reactive Power [var] */
float vAr() const;
/* AC Power Factor [Pct] */
float pf() const;
/* AC Energy [Wh] */
float wattHours() const;
/* DC Current [A] */
float dcAmps() const;
/* DC Voltage [V] */
float dcVoltage() const;
/* DC Power [W] */
float dcWatts() const;
/* Cabinet Temperature [C] */
float cabinetTemperature() const;
/* Heat Sink Temperature [C] */
float heatSinkTemperature() const;
/* Transformer Temperature [C] */
float transformerTemperature() const;
/* Other Temperature [C] */
float otherTemperature() const;
/* Enumerated value. Operating state */
St operatingState() const;
/* Vendor specific operating state code */
quint16 vendorOperatingState() const;
/* Bitmask value. Event fields */
Evt1Flags event1() const;
/* Reserved for future use */
quint32 eventBitfield2() const;
/* Vendor defined events */
quint32 vendorEventBitfield1() const;
/* Vendor defined events */
quint32 vendorEventBitfield2() const;
/* Vendor defined events */
quint32 vendorEventBitfield3() const;
/* Vendor defined events */
quint32 vendorEventBitfield4() const;
protected:

View File

@ -82,48 +82,79 @@ public:
QString description() const override;
QString label() const override;
/* AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
qint16 a_SF() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
qint16 v_SF() const;
/* AC Power [W] */
float watts() const;
qint16 w_SF() const;
/* Line Frequency [Hz] */
float hz() const;
qint16 hz_SF() const;
/* AC Apparent Power [VA] */
float va() const;
qint16 vA_SF() const;
/* AC Reactive Power [var] */
float vAr() const;
qint16 vAr_SF() const;
/* AC Power Factor [Pct] */
float pf() const;
qint16 pF_SF() const;
/* AC Energy [Wh] */
quint32 wattHours() const;
qint16 wH_SF() const;
/* DC Current [A] */
float dcAmps() const;
qint16 dCA_SF() const;
/* DC Voltage [V] */
float dcVoltage() const;
qint16 dCV_SF() const;
/* DC Power [W] */
float dcWatts() const;
qint16 dCW_SF() const;
/* Cabinet Temperature [C] */
float cabinetTemperature() const;
/* Heat Sink Temperature [C] */
float heatSinkTemperature() const;
/* Transformer Temperature [C] */
float transformerTemperature() const;
/* Other Temperature [C] */
float otherTemperature() const;
qint16 tmp_SF() const;
/* Enumerated value. Operating state */
St operatingState() const;
/* Vendor specific operating state code */
quint16 vendorOperatingState() const;
/* Bitmask value. Event fields */
Evt1Flags event1() const;
/* Reserved for future use */
quint32 eventBitfield2() const;
/* Vendor defined events */
quint32 vendorEventBitfield1() const;
/* Vendor defined events */
quint32 vendorEventBitfield2() const;
/* Vendor defined events */
quint32 vendorEventBitfield3() const;
/* Vendor defined events */
quint32 vendorEventBitfield4() const;
protected:

View File

@ -82,36 +82,67 @@ public:
QString description() const override;
QString label() const override;
/* AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
/* AC Power [W] */
float watts() const;
/* Line Frequency [Hz] */
float hz() const;
/* AC Apparent Power [VA] */
float va() const;
/* AC Reactive Power [var] */
float vAr() const;
/* AC Power Factor [Pct] */
float pf() const;
/* AC Energy [Wh] */
float wattHours() const;
/* DC Current [A] */
float dcAmps() const;
/* DC Voltage [V] */
float dcVoltage() const;
/* DC Power [W] */
float dcWatts() const;
/* Cabinet Temperature [C] */
float cabinetTemperature() const;
/* Heat Sink Temperature [C] */
float heatSinkTemperature() const;
/* Transformer Temperature [C] */
float transformerTemperature() const;
/* Other Temperature [C] */
float otherTemperature() const;
/* Enumerated value. Operating state */
St operatingState() const;
/* Vendor specific operating state code */
quint16 vendorOperatingState() const;
/* Bitmask value. Event fields */
Evt1Flags event1() const;
/* Reserved for future use */
quint32 eventBitfield2() const;
/* Vendor defined events */
quint32 vendorEventBitfield1() const;
/* Vendor defined events */
quint32 vendorEventBitfield2() const;
/* Vendor defined events */
quint32 vendorEventBitfield3() const;
/* Vendor defined events */
quint32 vendorEventBitfield4() const;
protected:

View File

@ -82,48 +82,79 @@ public:
QString description() const override;
QString label() const override;
/* AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
qint16 a_SF() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
qint16 v_SF() const;
/* AC Power [W] */
float watts() const;
qint16 w_SF() const;
/* Line Frequency [Hz] */
float hz() const;
qint16 hz_SF() const;
/* AC Apparent Power [VA] */
float va() const;
qint16 vA_SF() const;
/* AC Reactive Power [var] */
float vAr() const;
qint16 vAr_SF() const;
/* AC Power Factor [Pct] */
float pf() const;
qint16 pF_SF() const;
/* AC Energy [Wh] */
quint32 wattHours() const;
qint16 wH_SF() const;
/* DC Current [A] */
float dcAmps() const;
qint16 dCA_SF() const;
/* DC Voltage [V] */
float dcVoltage() const;
qint16 dCV_SF() const;
/* DC Power [W] */
float dcWatts() const;
qint16 dCW_SF() const;
/* Cabinet Temperature [C] */
float cabinetTemperature() const;
/* Heat Sink Temperature [C] */
float heatSinkTemperature() const;
/* Transformer Temperature [C] */
float transformerTemperature() const;
/* Other Temperature [C] */
float otherTemperature() const;
qint16 tmp_SF() const;
/* Enumerated value. Operating state */
St operatingState() const;
/* Vendor specific operating state code */
quint16 vendorOperatingState() const;
/* Bitmask value. Event fields */
Evt1Flags event1() const;
/* Reserved for future use */
quint32 eventBitfield2() const;
/* Vendor defined events */
quint32 vendorEventBitfield1() const;
/* Vendor defined events */
quint32 vendorEventBitfield2() const;
/* Vendor defined events */
quint32 vendorEventBitfield3() const;
/* Vendor defined events */
quint32 vendorEventBitfield4() const;
protected:

View File

@ -50,10 +50,15 @@ public:
SunSpecIrradianceModel *parentModel() const;
QString name() const override;
/* Global Horizontal Irradiance [W/m2] */
quint16 ghi() const;
/* Plane-of-Array Irradiance [W/m2] */
quint16 poai() const;
/* Diffuse Irradiance [W/m2] */
quint16 dfi() const;
/* Direct Normal Irradiance [W/m2] */
quint16 dni() const;
/* Other Irradiance [W/m2] */
quint16 oti() const;
void processBlockData(const QVector<quint16> blockData) override;

View File

@ -57,132 +57,175 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 must remain connected duration. [Secs] */
float tms1() const;
QModbusReply *setTms1(float tms1);
/* Point 1 must remain connected frequency. [Hz] */
float hz1() const;
QModbusReply *setHz1(float hz1);
/* Point 2 must remain connected duration. [Secs] */
float tms2() const;
QModbusReply *setTms2(float tms2);
/* Point 2 must remain connected frequency. [Hz] */
float hz2() const;
QModbusReply *setHz2(float hz2);
/* Point 3 must remain connected duration. [Secs] */
float tms3() const;
QModbusReply *setTms3(float tms3);
/* Point 3 must remain connected frequency. [Hz] */
float hz3() const;
QModbusReply *setHz3(float hz3);
/* Point 4 must remain connected duration. [Secs] */
float tms4() const;
QModbusReply *setTms4(float tms4);
/* Point 4 must remain connected frequency. [Hz] */
float hz4() const;
QModbusReply *setHz4(float hz4);
/* Point 5 must remain connected duration. [Secs] */
float tms5() const;
QModbusReply *setTms5(float tms5);
/* Point 5 must remain connected frequency. [Hz] */
float hz5() const;
QModbusReply *setHz5(float hz5);
/* Point 6 must remain connected duration. [Secs] */
float tms6() const;
QModbusReply *setTms6(float tms6);
/* Point 6 must remain connected frequency. [Hz] */
float hz6() const;
QModbusReply *setHz6(float hz6);
/* Point 7 must remain connected duration. [Secs] */
float tms7() const;
QModbusReply *setTms7(float tms7);
/* Point 7 must remain connected frequency. [Hz] */
float hz7() const;
QModbusReply *setHz7(float hz7);
/* Point 8 must remain connected duration. [Secs] */
float tms8() const;
QModbusReply *setTms8(float tms8);
/* Point 8 must remain connected frequency. [Hz] */
float hz8() const;
QModbusReply *setHz8(float hz8);
/* Point 9 must remain connected duration. [Secs] */
float tms9() const;
QModbusReply *setTms9(float tms9);
/* Point 9 must remain connected frequency. [Hz] */
float hz9() const;
QModbusReply *setHz9(float hz9);
/* Point 10 must remain connected duration. [Secs] */
float tms10() const;
QModbusReply *setTms10(float tms10);
/* Point 10 must remain connected frequency. [Hz] */
float hz10() const;
QModbusReply *setHz10(float hz10);
/* Point 11 must remain connected duration. [Secs] */
float tms11() const;
QModbusReply *setTms11(float tms11);
/* Point 11 must remain connected frequency. [Hz] */
float hz11() const;
QModbusReply *setHz11(float hz11);
/* Point 12 must remain connected duration. [Secs] */
float tms12() const;
QModbusReply *setTms12(float tms12);
/* Point 12 must remain connected frequency. [Hz] */
float hz12() const;
QModbusReply *setHz12(float hz12);
/* Point 13 must remain connected duration. [Secs] */
float tms13() const;
QModbusReply *setTms13(float tms13);
/* Point 13 must remain connected frequency. [Hz] */
float hz13() const;
QModbusReply *setHz13(float hz13);
/* Point 14 must remain connected duration. [Secs] */
float tms14() const;
QModbusReply *setTms14(float tms14);
/* Point 14 must remain connected frequency. [Hz] */
float hz14() const;
QModbusReply *setHz14(float hz14);
/* Point 15 must remain connected duration. [Secs] */
float tms15() const;
QModbusReply *setTms15(float tms15);
/* Point 15 must remain connected frequency. [Hz] */
float hz15() const;
QModbusReply *setHz15(float hz15);
/* Point 16 must remain connected duration. [Secs] */
float tms16() const;
QModbusReply *setTms16(float tms16);
/* Point 16 must remain connected frequency. [Hz] */
float hz16() const;
QModbusReply *setHz16(float hz16);
/* Point 17 must remain connected duration. [Secs] */
float tms17() const;
QModbusReply *setTms17(float tms17);
/* Point 17 must remain connected frequency. [Hz] */
float hz17() const;
QModbusReply *setHz17(float hz17);
/* Point 18 must remain connected duration. [Secs] */
float tms18() const;
QModbusReply *setTms18(float tms18);
/* Point 18 must remain connected frequency. [Hz] */
float hz18() const;
QModbusReply *setHz18(float hz18);
/* Point 19 must remain connected duration. [Secs] */
float tms19() const;
QModbusReply *setTms19(float tms19);
/* Point 19 must remain connected frequency. [Hz] */
float hz19() const;
QModbusReply *setHz19(float hz19);
/* Point 20 must remain connected duration. [Secs] */
float tms20() const;
QModbusReply *setTms20(float tms20);
/* Point 20 must remain connected frequency. [Hz] */
float hz20() const;
QModbusReply *setHz20(float hz20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -260,24 +303,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* LHzRT control mode. Enable active curve. Bitfield value. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for LFRT change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for LFRT curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for duration. */
qint16 tmsSf() const;
/* Scale factor for frequency. */
qint16 hzSf() const;
quint16 pad() const;

View File

@ -57,132 +57,175 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 must disconnect duration. [Secs] */
float tms1() const;
QModbusReply *setTms1(float tms1);
/* Point 1 must disconnect frequency. [Hz] */
float hz1() const;
QModbusReply *setHz1(float hz1);
/* Point 2 must disconnect duration. [Secs] */
float tms2() const;
QModbusReply *setTms2(float tms2);
/* Point 2 must disconnect frequency. [Hz] */
float hz2() const;
QModbusReply *setHz2(float hz2);
/* Point 3 must disconnect duration. [Secs] */
float tms3() const;
QModbusReply *setTms3(float tms3);
/* Point 3 must disconnect frequency. [Hz] */
float hz3() const;
QModbusReply *setHz3(float hz3);
/* Point 4 must disconnect duration. [Secs] */
float tms4() const;
QModbusReply *setTms4(float tms4);
/* Point 4 must disconnect frequency. [Hz] */
float hz4() const;
QModbusReply *setHz4(float hz4);
/* Point 5 must disconnect duration. [Secs] */
float tms5() const;
QModbusReply *setTms5(float tms5);
/* Point 5 must disconnect frequency. [Hz] */
float hz5() const;
QModbusReply *setHz5(float hz5);
/* Point 6 must disconnect duration. [Secs] */
float tms6() const;
QModbusReply *setTms6(float tms6);
/* Point 6 must disconnect frequency. [Hz] */
float hz6() const;
QModbusReply *setHz6(float hz6);
/* Point 7 must disconnect duration. [Secs] */
float tms7() const;
QModbusReply *setTms7(float tms7);
/* Point 7 must disconnect frequency. [Hz] */
float hz7() const;
QModbusReply *setHz7(float hz7);
/* Point 8 must disconnect duration. [Secs] */
float tms8() const;
QModbusReply *setTms8(float tms8);
/* Point 8 must disconnect frequency. [Hz] */
float hz8() const;
QModbusReply *setHz8(float hz8);
/* Point 9 must disconnect duration. [Secs] */
float tms9() const;
QModbusReply *setTms9(float tms9);
/* Point 9 must disconnect frequency. [Hz] */
float hz9() const;
QModbusReply *setHz9(float hz9);
/* Point 10 must disconnect duration. [Secs] */
float tms10() const;
QModbusReply *setTms10(float tms10);
/* Point 10 must disconnect frequency. [Hz] */
float hz10() const;
QModbusReply *setHz10(float hz10);
/* Point 11 must disconnect duration. [Secs] */
float tms11() const;
QModbusReply *setTms11(float tms11);
/* Point 11 must disconnect frequency. [Hz] */
float hz11() const;
QModbusReply *setHz11(float hz11);
/* Point 12 must disconnect duration. [Secs] */
float tms12() const;
QModbusReply *setTms12(float tms12);
/* Point 12 must disconnect frequency. [Hz] */
float hz12() const;
QModbusReply *setHz12(float hz12);
/* Point 13 must disconnect duration. [Secs] */
float tms13() const;
QModbusReply *setTms13(float tms13);
/* Point 13 must disconnect frequency. [Hz] */
float hz13() const;
QModbusReply *setHz13(float hz13);
/* Point 14 must disconnect duration. [Secs] */
float tms14() const;
QModbusReply *setTms14(float tms14);
/* Point 14 must disconnect frequency. [Hz] */
float hz14() const;
QModbusReply *setHz14(float hz14);
/* Point 15 must disconnect duration. [Secs] */
float tms15() const;
QModbusReply *setTms15(float tms15);
/* Point 15 must disconnect frequency. [Hz] */
float hz15() const;
QModbusReply *setHz15(float hz15);
/* Point 16 must disconnect duration. [Secs] */
float tms16() const;
QModbusReply *setTms16(float tms16);
/* Point 16 must disconnect frequency. [Hz] */
float hz16() const;
QModbusReply *setHz16(float hz16);
/* Point 17 must disconnect duration. [Secs] */
float tms17() const;
QModbusReply *setTms17(float tms17);
/* Point 17 must disconnect frequency. [Hz] */
float hz17() const;
QModbusReply *setHz17(float hz17);
/* Point 18 must disconnect duration. [Secs] */
float tms18() const;
QModbusReply *setTms18(float tms18);
/* Point 18 must disconnect frequency. [Hz] */
float hz18() const;
QModbusReply *setHz18(float hz18);
/* Point 19 must disconnect duration. [Secs] */
float tms19() const;
QModbusReply *setTms19(float tms19);
/* Point 19 must disconnect frequency. [Hz] */
float hz19() const;
QModbusReply *setHz19(float hz19);
/* Point 20 must disconnect duration. [Secs] */
float tms20() const;
QModbusReply *setTms20(float tms20);
/* Point 20 must disconnect frequency. [Hz] */
float hz20() const;
QModbusReply *setHz20(float hz20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -260,24 +303,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* LHzRT control mode. Enable active curve. Bitfield value. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for LFRT change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for LFRT curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for duration. */
qint16 tmsSf() const;
/* Scale factor for frequency. */
qint16 hzSf() const;
quint16 pad() const;

View File

@ -57,132 +57,175 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 duration. [Secs] */
float tms1() const;
QModbusReply *setTms1(float tms1);
/* Point 1 frequency. [Hz] */
float hz1() const;
QModbusReply *setHz1(float hz1);
/* Point 2 duration. [Secs] */
float tms2() const;
QModbusReply *setTms2(float tms2);
/* Point 2 frequency. [Hz] */
float hz2() const;
QModbusReply *setHz2(float hz2);
/* Point 3 duration. [Secs] */
float tms3() const;
QModbusReply *setTms3(float tms3);
/* Point 3 frequency. [Hz] */
float hz3() const;
QModbusReply *setHz3(float hz3);
/* Point 4 duration. [Secs] */
float tms4() const;
QModbusReply *setTms4(float tms4);
/* Point 4 frequency. [Hz] */
float hz4() const;
QModbusReply *setHz4(float hz4);
/* Point 5 duration. [Secs] */
float tms5() const;
QModbusReply *setTms5(float tms5);
/* Point 5 frequency. [Hz] */
float hz5() const;
QModbusReply *setHz5(float hz5);
/* Point 6 duration. [Secs] */
float tms6() const;
QModbusReply *setTms6(float tms6);
/* Point 6 frequency. [Hz] */
float hz6() const;
QModbusReply *setHz6(float hz6);
/* Point 7 duration. [Secs] */
float tms7() const;
QModbusReply *setTms7(float tms7);
/* Point 7 frequency. [Hz] */
float hz7() const;
QModbusReply *setHz7(float hz7);
/* Point 8 duration. [Secs] */
float tms8() const;
QModbusReply *setTms8(float tms8);
/* Point 8 frequency. [Hz] */
float hz8() const;
QModbusReply *setHz8(float hz8);
/* Point 9 duration. [Secs] */
float tms9() const;
QModbusReply *setTms9(float tms9);
/* Point 9 frequency. [Hz] */
float hz9() const;
QModbusReply *setHz9(float hz9);
/* Point 10 duration. [Secs] */
float tms10() const;
QModbusReply *setTms10(float tms10);
/* Point 10 frequency. [Hz] */
float hz10() const;
QModbusReply *setHz10(float hz10);
/* Point 11 duration. [Secs] */
float tms11() const;
QModbusReply *setTms11(float tms11);
/* Point 11 frequency. [Hz] */
float hz11() const;
QModbusReply *setHz11(float hz11);
/* Point 12 duration. [Secs] */
float tms12() const;
QModbusReply *setTms12(float tms12);
/* Point 12 frequency. [Hz] */
float hz12() const;
QModbusReply *setHz12(float hz12);
/* Point 13 duration. [Secs] */
float tms13() const;
QModbusReply *setTms13(float tms13);
/* Point 13 frequency. [Hz] */
float hz13() const;
QModbusReply *setHz13(float hz13);
/* Point 14 duration. [Secs] */
float tms14() const;
QModbusReply *setTms14(float tms14);
/* Point 14 frequency. [Hz] */
float hz14() const;
QModbusReply *setHz14(float hz14);
/* Point 15 duration. [Secs] */
float tms15() const;
QModbusReply *setTms15(float tms15);
/* Point 15 frequency. [Hz] */
float hz15() const;
QModbusReply *setHz15(float hz15);
/* Point 16 duration. [Secs] */
float tms16() const;
QModbusReply *setTms16(float tms16);
/* Point 16 frequency. [Hz] */
float hz16() const;
QModbusReply *setHz16(float hz16);
/* Point 17 duration. [Secs] */
float tms17() const;
QModbusReply *setTms17(float tms17);
/* Point 17 frequency. [Hz] */
float hz17() const;
QModbusReply *setHz17(float hz17);
/* Point 18 duration. [Secs] */
float tms18() const;
QModbusReply *setTms18(float tms18);
/* Point 18 frequency. [Hz] */
float hz18() const;
QModbusReply *setHz18(float hz18);
/* Point 19 duration. [Secs] */
float tms19() const;
QModbusReply *setTms19(float tms19);
/* Point 19 frequency. [Hz] */
float hz19() const;
QModbusReply *setHz19(float hz19);
/* Point 20 duration. [Secs] */
float tms20() const;
QModbusReply *setTms20(float tms20);
/* Point 20 frequency. [Hz] */
float hz20() const;
QModbusReply *setHz20(float hz20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -265,24 +308,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* LHzRT control mode. Enable active curve. Bitfield value. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for LFRT change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for LFRT curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for duration. */
qint16 tmsSf() const;
/* Scale factor for frequency. */
qint16 hzSf() const;
Crvtype crvType() const;

View File

@ -162,36 +162,62 @@ public:
SunSpecLithiumIonBankModel *parentModel() const;
QString name() const override;
/* Count of modules in the string. */
quint16 moduleCount() const;
/* Current status of the string. */
StrstFlags stringStatus() const;
/* Connection Failure Reason */
Strconfail connectionFailureReason() const;
/* Battery string state of charge, expressed as a percentage. [%] */
float stringStateOfCharge() const;
/* Battery string state of health, expressed as a percentage. [%] */
float stringStateOfHealth() const;
/* String current measurement. [A] */
float stringCurrent() const;
/* Maximum voltage for all cells in the string. [V] */
float maxCellVoltage() const;
/* Module containing the maximum cell voltage. */
quint16 maxCellVoltageModule() const;
/* Minimum voltage for all cells in the string. [V] */
float minCellVoltage() const;
/* Module containing the minimum cell voltage. */
quint16 minCellVoltageModule() const;
/* Average voltage for all cells in the string. [V] */
float averageCellVoltage() const;
/* Maximum temperature for all modules in the bank. [C] */
float maxModuleTemperature() const;
/* Module with the maximum temperature. */
quint16 maxModuleTemperatureModule() const;
/* Minimum temperature for all modules in the bank. [C] */
float minModuleTemperature() const;
/* Module with the minimum temperature. */
quint16 minModuleTemperatureModule() const;
/* Average temperature for all modules in the bank. [C] */
float averageModuleTemperature() const;
/* Reason why the string is currently disabled. */
Strdisrsn disabledReason() const;
/* Status of the contactor(s) for the string. */
StrconstFlags contactorStatus() const;
/* Alarms, warnings and status values. Bit flags. */
Strevt1Flags stringEvent1() const;
/* Alarms, warnings and status values. Bit flags. */
quint32 stringEvent2() const;
/* Vendor defined events. */
quint32 vendorStringEventBitfield1() const;
/* Vendor defined events. */
quint32 vendorStringEventBitfield2() const;
/* Enables and disables the string. */
Strsetena enableDisableString() const;
QModbusReply *setEnableDisableString(Strsetena enableDisableString);
/* Connects and disconnects the string. */
Strsetcon connectDisconnectString() const;
QModbusReply *setConnectDisconnectString(Strsetcon connectDisconnectString);
/* Pad register. */
quint16 pad1() const;
/* Pad register. */
quint16 pad2() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -245,31 +271,57 @@ public:
QString description() const override;
QString label() const override;
/* Number of strings in the bank. */
quint16 stringCount() const;
/* Number of strings with contactor closed. */
quint16 connectedStringCount() const;
/* Maximum temperature for all modules in the bank. */
float maxModuleTemperature() const;
/* String containing the module with maximum temperature. */
quint16 maxModuleTemperatureString() const;
/* Module with maximum temperature. */
quint16 maxModuleTemperatureModule() const;
/* Minimum temperature for all modules in the bank. [C] */
float minModuleTemperature() const;
/* String containing the module with minimum temperature. */
quint16 minModuleTemperatureString() const;
/* Module with minimum temperature. */
quint16 minModuleTemperatureModule() const;
/* Average temperature for all modules in the bank. */
qint16 averageModuleTemperature() const;
/* Maximum string voltage for all strings in the bank. [V] */
float maxStringVoltage() const;
/* String with maximum voltage. */
quint16 maxStringVoltageString() const;
/* Minimum string voltage for all strings in the bank. [V] */
float minStringVoltage() const;
/* String with minimum voltage. */
quint16 minStringVoltageString() const;
/* Average string voltage for all strings in the bank. [V] */
float averageStringVoltage() const;
/* Maximum current of any string in the bank. [A] */
float maxStringCurrent() const;
/* String with the maximum current. */
quint16 maxStringCurrentString() const;
/* Minimum current of any string in the bank. [A] */
float minStringCurrent() const;
/* String with the minimum current. */
quint16 minStringCurrentString() const;
/* Average string current for all strings in the bank. [A] */
float averageStringCurrent() const;
/* Total number of cells that are currently being balanced. */
quint16 batteryCellBalancingCount() const;
/* Scale factor for cell voltage. */
qint16 cellV_SF() const;
/* Scale factor for module temperatures. */
qint16 modTmp_SF() const;
/* Scale factor for string currents. */
qint16 a_SF() const;
/* Scale factor for string state of health. */
qint16 soH_SF() const;
/* Scale factor for string state of charge. */
qint16 soC_SF() const;
/* Scale factor for string voltage. */
qint16 v_SF() const;
protected:

View File

@ -56,8 +56,11 @@ public:
SunSpecLithiumIonModuleModel *parentModel() const;
QString name() const override;
/* Cell terminal voltage. [V] */
float cellVoltage() const;
/* Cell temperature. [C] */
float cellTemperature() const;
/* Status of the cell. */
CellstFlags cellStatus() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -88,31 +91,57 @@ public:
QString description() const override;
QString label() const override;
/* Index of the string containing the module. */
quint16 stringIndex() const;
/* Index of the module within the string. */
quint16 moduleIndex() const;
/* Count of all cells in the module. */
quint16 moduleCellCount() const;
/* Module state of charge, expressed as a percentage. [%] */
float moduleSoC() const;
/* Depth of discharge for the module. [%] */
float depthOfDischarge() const;
/* Module state of health, expressed as a percentage. [%] */
float moduleSoH() const;
/* Count of cycles executed. */
quint32 cycleCount() const;
/* Voltage of the module. [V] */
float moduleVoltage() const;
/* Maximum voltage for all cells in the module. [V] */
float maxCellVoltage() const;
/* Cell with the maximum voltage. */
quint16 maxCellVoltageCell() const;
/* Minimum voltage for all cells in the module. [V] */
float minCellVoltage() const;
/* Cell with the minimum voltage. */
quint16 minCellVoltageCell() const;
/* Average voltage for all cells in the module. [V] */
float averageCellVoltage() const;
/* Maximum temperature for all cells in the module. [C] */
float maxCellTemperature() const;
/* Cell with the maximum cell temperature. */
quint16 maxCellTemperatureCell() const;
/* Minimum temperature for all cells in the module. [C] */
float minCellTemperature() const;
/* Cell with the minimum cell temperature. */
quint16 minCellTemperatureCell() const;
/* Average temperature for all cells in the module. [C] */
float averageCellTemperature() const;
/* Number of cells currently being balanced in the module. */
quint16 balancedCellCount() const;
/* Serial number for the module. */
QString serialNumber() const;
/* Scale factor for module state of charge. */
qint16 soC_SF() const;
/* Scale factor for module state of health. */
qint16 soH_SF() const;
/* Scale factor for module depth of discharge. */
qint16 doD_SF() const;
/* Scale factor for module voltage. */
qint16 v_SF() const;
/* Scale factor for cell voltage. */
qint16 cellV_SF() const;
/* Scale factor for module temperature. */
qint16 tmp_SF() const;
protected:

View File

@ -50,21 +50,37 @@ public:
SunSpecLithiumIonStringModel *parentModel() const;
QString name() const override;
/* Count of all cells in the module. */
quint16 moduleCellCount() const;
/* Module state of charge, expressed as a percentage. [%] */
float moduleSoC() const;
/* Module state of health, expressed as a percentage. [%] */
float moduleSoH() const;
/* Maximum voltage for all cells in the module. [V] */
float maxCellVoltage() const;
/* Cell with maximum voltage. */
quint16 maxCellVoltageCell() const;
/* Minimum voltage for all cells in the module. [V] */
float minCellVoltage() const;
/* Cell with minimum voltage. [V] */
float minCellVoltageCell() const;
/* Average voltage for all cells in the module. [V] */
float averageCellVoltage() const;
/* Maximum temperature for all cells in the module. [C] */
float maxCellTemperature() const;
/* Cell with maximum temperature. */
quint16 maxCellTemperatureCell() const;
/* Minimum temperature for all cells in the module. [C] */
float minCellTemperature() const;
/* Cell with minimum temperature. */
quint16 minCellTemperatureCell() const;
/* Average temperature for all cells in the module. [C] */
float averageCellTemperature() const;
/* Pad register. */
quint16 pad5() const;
/* Pad register. */
quint16 pad6() const;
/* Pad register. */
quint16 pad7() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -205,49 +221,88 @@ public:
QString description() const override;
QString label() const override;
/* Index of the string within the bank. */
quint16 stringIndex() const;
/* Count of modules in the string. */
quint16 moduleCount() const;
/* Current status of the string. */
StFlags stringStatus() const;
/* Connection Failure Reason */
Confail connectionFailureReason() const;
/* Number of cells currently being balanced in the string. */
quint16 stringCellBalancingCount() const;
/* Battery string state of charge, expressed as a percentage. [%] */
float stringStateOfCharge() const;
/* Depth of discharge for the string, expressed as a percentage. [%] */
float stringDepthOfDischarge() const;
/* Number of discharge cycles executed upon the string. */
quint32 stringCycleCount() const;
/* Battery string state of health, expressed as a percentage. [%] */
float stringStateOfHealth() const;
/* String current measurement. [A] */
float stringCurrent() const;
/* String voltage measurement. [V] */
float stringVoltage() const;
/* Maximum voltage for all cells in the string. [V] */
float maxCellVoltage() const;
/* Module containing the cell with maximum cell voltage. */
quint16 maxCellVoltageModule() const;
/* Minimum voltage for all cells in the string. [V] */
float minCellVoltage() const;
/* Module containing the cell with minimum cell voltage. */
quint16 minCellVoltageModule() const;
/* Average voltage for all cells in the string. [V] */
float averageCellVoltage() const;
/* Maximum temperature for all modules in the string. [C] */
float maxModuleTemperature() const;
/* Module with the maximum temperature. */
quint16 maxModuleTemperatureModule() const;
/* Minimum temperature for all modules in the string. [C] */
float minModuleTemperature() const;
/* Module with the minimum temperature. */
quint16 minModuleTemperatureModule() const;
/* Average temperature for all modules in the string. [C] */
float averageModuleTemperature() const;
/* Pad register. */
quint16 pad1() const;
/* Status of the contactor(s) for the string. */
ConstFlags contactorStatus() const;
/* Alarms, warnings and status values. Bit flags. */
Evt1Flags stringEvent1() const;
/* Alarms, warnings and status values. Bit flags. */
quint32 stringEvent2() const;
/* Vendor defined events. */
quint32 vendorEventBitfield1() const;
/* Vendor defined events. */
quint32 vendorEventBitfield2() const;
/* Enables and disables the string. Should reset to 0 upon completion. */
quint16 enableDisableString() const;
QModbusReply *setEnableDisableString(quint16 enableDisableString);
/* Connects and disconnects the string. */
Setcon connectDisconnectString() const;
QModbusReply *setConnectDisconnectString(Setcon connectDisconnectString);
/* Scale factor for string state of charge. */
qint16 soC_SF() const;
/* Scale factor for string state of health. */
qint16 soH_SF() const;
/* Scale factor for string depth of discharge. */
qint16 doD_SF() const;
/* Scale factor for string current. */
qint16 a_SF() const;
/* Scale factor for string voltage. */
qint16 v_SF() const;
/* Scale factor for cell voltage. */
qint16 cellV_SF() const;
/* Scale factor for module temperature. */
qint16 modTmp_SF() const;
/* Pad register. */
quint16 pad2() const;
/* Pad register. */
quint16 pad3() const;
/* Pad register. */
quint16 pad4() const;
protected:

View File

@ -49,11 +49,17 @@ public:
QString description() const override;
QString label() const override;
/* UTC 24 hour time stamp to millisecond hhmmss.sssZ format [hhmmss.sssZ] */
QString tm() const;
/* UTC Date string YYYYMMDD format [YYYYMMDD] */
QString date() const;
/* Location string (40 chars max) [text] */
QString location() const;
/* Latitude with seven degrees of precision [Degrees] */
float lat() const;
/* Longitude with seven degrees of precision [Degrees] */
float longitude() const;
/* Altitude measurement in meters [meters] */
qint32 altitude() const;
protected:

View File

@ -57,132 +57,175 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 must remain connected duration. [Secs] */
float tms1() const;
QModbusReply *setTms1(float tms1);
/* Point 1 must remain connected voltage. [% VRef] */
float v1() const;
QModbusReply *setV1(float v1);
/* Point 2 must remain connected duration. [Secs] */
float tms2() const;
QModbusReply *setTms2(float tms2);
/* Point 2 must remain connected voltage. [% VRef] */
float v2() const;
QModbusReply *setV2(float v2);
/* Point 3 must remain connected duration. [Secs] */
float tms3() const;
QModbusReply *setTms3(float tms3);
/* Point 3 must remain connected voltage. [% VRef] */
float v3() const;
QModbusReply *setV3(float v3);
/* Point 4 must remain connected duration. [Secs] */
float tms4() const;
QModbusReply *setTms4(float tms4);
/* Point 4 must remain connected voltage. [% VRef] */
float v4() const;
QModbusReply *setV4(float v4);
/* Point 5 must remain connected duration. [Secs] */
float tms5() const;
QModbusReply *setTms5(float tms5);
/* Point 5 must remain connected voltage. [% VRef] */
float v5() const;
QModbusReply *setV5(float v5);
/* Point 6 must remain connected duration. [Secs] */
float tms6() const;
QModbusReply *setTms6(float tms6);
/* Point 6 must remain connected voltage. [% VRef] */
float v6() const;
QModbusReply *setV6(float v6);
/* Point 7 must remain connected duration. [Secs] */
float tms7() const;
QModbusReply *setTms7(float tms7);
/* Point 7 must remain connected voltage. [% VRef] */
float v7() const;
QModbusReply *setV7(float v7);
/* Point 8 must remain connected duration. [Secs] */
float tms8() const;
QModbusReply *setTms8(float tms8);
/* Point 8 must remain connected voltage. [% VRef] */
float v8() const;
QModbusReply *setV8(float v8);
/* Point 9 must remain connected duration. [Secs] */
float tms9() const;
QModbusReply *setTms9(float tms9);
/* Point 9 must remain connected voltage. [% VRef] */
float v9() const;
QModbusReply *setV9(float v9);
/* Point 10 must remain connected duration. [Secs] */
float tms10() const;
QModbusReply *setTms10(float tms10);
/* Point 10 must remain connected voltage. [% VRef] */
float v10() const;
QModbusReply *setV10(float v10);
/* Point 11 must remain connected duration. [Secs] */
float tms11() const;
QModbusReply *setTms11(float tms11);
/* Point 11 must remain connected voltage. [% VRef] */
float v11() const;
QModbusReply *setV11(float v11);
/* Point 12 must remain connected duration. [Secs] */
float tms12() const;
QModbusReply *setTms12(float tms12);
/* Point 12 must remain connected voltage. [% VRef] */
float v12() const;
QModbusReply *setV12(float v12);
/* Point 13 must remain connected duration. [Secs] */
float tms13() const;
QModbusReply *setTms13(float tms13);
/* Point 13 must remain connected voltage. [% VRef] */
float v13() const;
QModbusReply *setV13(float v13);
/* Point 14 must remain connected duration. [Secs] */
float tms14() const;
QModbusReply *setTms14(float tms14);
/* Point 14 must remain connected voltage. [% VRef] */
float v14() const;
QModbusReply *setV14(float v14);
/* Point 15 must remain connected duration. [Secs] */
float tms15() const;
QModbusReply *setTms15(float tms15);
/* Point 15 must remain connected voltage. [% VRef] */
float v15() const;
QModbusReply *setV15(float v15);
/* Point 16 must remain connected duration. [Secs] */
float tms16() const;
QModbusReply *setTms16(float tms16);
/* Point 16 must remain connected voltage. [% VRef] */
float v16() const;
QModbusReply *setV16(float v16);
/* Point 17 must remain connected duration. [Secs] */
float tms17() const;
QModbusReply *setTms17(float tms17);
/* Point 17 must remain connected voltage. [% VRef] */
float v17() const;
QModbusReply *setV17(float v17);
/* Point 18 must remain connected duration. [Secs] */
float tms18() const;
QModbusReply *setTms18(float tms18);
/* Point 18 must remain connected voltage. [% VRef] */
float v18() const;
QModbusReply *setV18(float v18);
/* Point 19 must remain connected duration. [Secs] */
float tms19() const;
QModbusReply *setTms19(float tms19);
/* Point 19 must remain connected voltage. [% VRef] */
float v19() const;
QModbusReply *setV19(float v19);
/* Point 20 must remain connected duration. [Secs] */
float tms20() const;
QModbusReply *setTms20(float tms20);
/* Point 20 must remain connected voltage. [% VRef] */
float v20() const;
QModbusReply *setV20(float v20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -260,24 +303,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* LVRT control mode. Enable active curve. Bitfield value. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for LVRT change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for LVRT curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for duration. */
qint16 tmsSf() const;
/* Scale factor for percent VRef. */
qint16 vSf() const;
quint16 pad() const;

View File

@ -57,132 +57,175 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 must disconnect duration. [Secs] */
float tms1() const;
QModbusReply *setTms1(float tms1);
/* Point 1 must disconnect voltage. [% VRef] */
float v1() const;
QModbusReply *setV1(float v1);
/* Point 2 must disconnect duration. [Secs] */
float tms2() const;
QModbusReply *setTms2(float tms2);
/* Point 2 must disconnect voltage. [% VRef] */
float v2() const;
QModbusReply *setV2(float v2);
/* Point 3 must disconnect duration. [Secs] */
float tms3() const;
QModbusReply *setTms3(float tms3);
/* Point 3 must disconnect voltage. [% VRef] */
float v3() const;
QModbusReply *setV3(float v3);
/* Point 4 must disconnect duration. [Secs] */
float tms4() const;
QModbusReply *setTms4(float tms4);
/* Point 4 must disconnect voltage. [% VRef] */
float v4() const;
QModbusReply *setV4(float v4);
/* Point 5 must disconnect duration. [Secs] */
float tms5() const;
QModbusReply *setTms5(float tms5);
/* Point 5 must disconnect voltage. [% VRef] */
float v5() const;
QModbusReply *setV5(float v5);
/* Point 6 must disconnect duration. [Secs] */
float tms6() const;
QModbusReply *setTms6(float tms6);
/* Point 6 must disconnect voltage. [% VRef] */
float v6() const;
QModbusReply *setV6(float v6);
/* Point 7 must disconnect duration. [Secs] */
float tms7() const;
QModbusReply *setTms7(float tms7);
/* Point 7 must disconnect voltage. [% VRef] */
float v7() const;
QModbusReply *setV7(float v7);
/* Point 8 must disconnect duration. [Secs] */
float tms8() const;
QModbusReply *setTms8(float tms8);
/* Point 8 must disconnect voltage. [% VRef] */
float v8() const;
QModbusReply *setV8(float v8);
/* Point 9 must disconnect duration. [Secs] */
float tms9() const;
QModbusReply *setTms9(float tms9);
/* Point 9 must disconnect voltage. [% VRef] */
float v9() const;
QModbusReply *setV9(float v9);
/* Point 10 must disconnect duration. [Secs] */
float tms10() const;
QModbusReply *setTms10(float tms10);
/* Point 10 must disconnect voltage. [% VRef] */
float v10() const;
QModbusReply *setV10(float v10);
/* Point 11 must disconnect duration. [Secs] */
float tms11() const;
QModbusReply *setTms11(float tms11);
/* Point 11 must disconnect voltage. [% VRef] */
float v11() const;
QModbusReply *setV11(float v11);
/* Point 12 must disconnect duration. [Secs] */
float tms12() const;
QModbusReply *setTms12(float tms12);
/* Point 12 must disconnect voltage. [% VRef] */
float v12() const;
QModbusReply *setV12(float v12);
/* Point 13 must disconnect duration. [Secs] */
float tms13() const;
QModbusReply *setTms13(float tms13);
/* Point 13 must disconnect voltage. [% VRef] */
float v13() const;
QModbusReply *setV13(float v13);
/* Point 14 must disconnect duration. [Secs] */
float tms14() const;
QModbusReply *setTms14(float tms14);
/* Point 14 must disconnect voltage. [% VRef] */
float v14() const;
QModbusReply *setV14(float v14);
/* Point 15 must disconnect duration. [Secs] */
float tms15() const;
QModbusReply *setTms15(float tms15);
/* Point 15 must disconnect voltage. [% VRef] */
float v15() const;
QModbusReply *setV15(float v15);
/* Point 16 must disconnect duration. [Secs] */
float tms16() const;
QModbusReply *setTms16(float tms16);
/* Point 16 must disconnect voltage. [% VRef] */
float v16() const;
QModbusReply *setV16(float v16);
/* Point 17 must disconnect duration. [Secs] */
float tms17() const;
QModbusReply *setTms17(float tms17);
/* Point 17 must disconnect voltage. [% VRef] */
float v17() const;
QModbusReply *setV17(float v17);
/* Point 18 must disconnect duration. [Secs] */
float tms18() const;
QModbusReply *setTms18(float tms18);
/* Point 18 must disconnect voltage. [% VRef] */
float v18() const;
QModbusReply *setV18(float v18);
/* Point 19 must disconnect duration. [Secs] */
float tms19() const;
QModbusReply *setTms19(float tms19);
/* Point 19 must disconnect voltage. [% VRef] */
float v19() const;
QModbusReply *setV19(float v19);
/* Point 20 must disconnect duration. [Secs] */
float tms20() const;
QModbusReply *setTms20(float tms20);
/* Point 20 must disconnect voltage. [% VRef] */
float v20() const;
QModbusReply *setV20(float v20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -260,24 +303,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* LVRT control mode. Enable active curve. Bitfield value. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for LVRT change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for LVRT curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for duration. */
qint16 tmsSf() const;
/* Scale factor for percent VRef. */
qint16 vSf() const;
quint16 pad() const;

View File

@ -57,132 +57,175 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 duration. [Secs] */
float tms1() const;
QModbusReply *setTms1(float tms1);
/* Point 1 voltage. [% VRef] */
float v1() const;
QModbusReply *setV1(float v1);
/* Point 2 duration. [Secs] */
float tms2() const;
QModbusReply *setTms2(float tms2);
/* Point 2 voltage. [% VRef] */
float v2() const;
QModbusReply *setV2(float v2);
/* Point 3 duration. [Secs] */
float tms3() const;
QModbusReply *setTms3(float tms3);
/* Point 3 voltage. [% VRef] */
float v3() const;
QModbusReply *setV3(float v3);
/* Point 4 duration. [Secs] */
float tms4() const;
QModbusReply *setTms4(float tms4);
/* Point 4 voltage. [% VRef] */
float v4() const;
QModbusReply *setV4(float v4);
/* Point 5 duration. [Secs] */
float tms5() const;
QModbusReply *setTms5(float tms5);
/* Point 5 voltage. [% VRef] */
float v5() const;
QModbusReply *setV5(float v5);
/* Point 6 duration. [Secs] */
float tms6() const;
QModbusReply *setTms6(float tms6);
/* Point 6 voltage. [% VRef] */
float v6() const;
QModbusReply *setV6(float v6);
/* Point 7 duration. [Secs] */
float tms7() const;
QModbusReply *setTms7(float tms7);
/* Point 7 voltage. [% VRef] */
float v7() const;
QModbusReply *setV7(float v7);
/* Point 8 duration. [Secs] */
float tms8() const;
QModbusReply *setTms8(float tms8);
/* Point 8 voltage. [% VRef] */
float v8() const;
QModbusReply *setV8(float v8);
/* Point 9 duration. [Secs] */
float tms9() const;
QModbusReply *setTms9(float tms9);
/* Point 9 voltage. [% VRef] */
float v9() const;
QModbusReply *setV9(float v9);
/* Point 10 duration. [Secs] */
float tms10() const;
QModbusReply *setTms10(float tms10);
/* Point 10 voltage. [% VRef] */
float v10() const;
QModbusReply *setV10(float v10);
/* Point 11 duration. [Secs] */
float tms11() const;
QModbusReply *setTms11(float tms11);
/* Point 11 voltage. [% VRef] */
float v11() const;
QModbusReply *setV11(float v11);
/* Point 12 duration. [Secs] */
float tms12() const;
QModbusReply *setTms12(float tms12);
/* Point 12 voltage. [% VRef] */
float v12() const;
QModbusReply *setV12(float v12);
/* Point 13 duration. [Secs] */
float tms13() const;
QModbusReply *setTms13(float tms13);
/* Point 13 voltage. [% VRef] */
float v13() const;
QModbusReply *setV13(float v13);
/* Point 14 duration. [Secs] */
float tms14() const;
QModbusReply *setTms14(float tms14);
/* Point 14 voltage. [% VRef] */
float v14() const;
QModbusReply *setV14(float v14);
/* Point 15 duration. [Secs] */
float tms15() const;
QModbusReply *setTms15(float tms15);
/* Point 15 voltage. [% VRef] */
float v15() const;
QModbusReply *setV15(float v15);
/* Point 16 duration. [Secs] */
float tms16() const;
QModbusReply *setTms16(float tms16);
/* Point 16 voltage. [% VRef] */
float v16() const;
QModbusReply *setV16(float v16);
/* Point 17 duration. [Secs] */
float tms17() const;
QModbusReply *setTms17(float tms17);
/* Point 17 voltage. [% VRef] */
float v17() const;
QModbusReply *setV17(float v17);
/* Point 18 duration. [Secs] */
float tms18() const;
QModbusReply *setTms18(float tms18);
/* Point 18 voltage. [% VRef] */
float v18() const;
QModbusReply *setV18(float v18);
/* Point 19 duration. [Secs] */
float tms19() const;
QModbusReply *setTms19(float tms19);
/* Point 19 voltage. [% VRef] */
float v19() const;
QModbusReply *setV19(float v19);
/* Point 20 duration. [Secs] */
float tms20() const;
QModbusReply *setTms20(float tms20);
/* Point 20 voltage. [% VRef] */
float v20() const;
QModbusReply *setV20(float v20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -265,24 +308,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* LVRT control mode. Enable active curve. Bitfield value. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for LVRT change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for LVRT curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for duration. */
qint16 tmsSf() const;
/* Scale factor for percent VRef. */
qint16 vSf() const;
Crvtype crvType() const;

View File

@ -83,67 +83,129 @@ public:
QString description() const override;
QString label() const override;
/* Total AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
/* Line to Neutral AC Voltage (average of active phases) [V] */
float voltageLn() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
/* Line to Line AC Voltage (average of active phases) [V] */
float voltageLl() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Frequency [Hz] */
float hz() const;
/* Total Real Power [W] */
float watts() const;
/* Watts phase A [W] */
float wattsPhaseA() const;
/* Watts phase B [W] */
float wattsPhaseB() const;
/* Watts phase C [W] */
float wattsPhaseC() const;
/* AC Apparent Power [VA] */
float va() const;
/* VA phase A [VA] */
float vaPhaseA() const;
/* VA phase B [VA] */
float vaPhaseB() const;
/* VA phase C [VA] */
float vaPhaseC() const;
/* Reactive Power [var] */
float var() const;
/* VAR phase A [var] */
float varPhaseA() const;
/* VAR phase B [var] */
float varPhaseB() const;
/* VAR phase C [var] */
float varPhaseC() const;
/* Power Factor [PF] */
float pf() const;
/* PF phase A [PF] */
float pfPhaseA() const;
/* PF phase B [PF] */
float pfPhaseB() const;
/* PF phase C [PF] */
float pfPhaseC() const;
/* Total Real Energy Exported [Wh] */
float totalWattHoursExported() const;
/* Total Watt-hours Exported phase A [Wh] */
float totalWattHoursExportedPhaseA() const;
/* Total Watt-hours Exported phase B [Wh] */
float totalWattHoursExportedPhaseB() const;
/* Total Watt-hours Exported phase C [Wh] */
float totalWattHoursExportedPhaseC() const;
/* Total Real Energy Imported [Wh] */
float totalWattHoursImported() const;
/* Total Watt-hours Imported phase A [Wh] */
float totalWattHoursImportedPhaseA() const;
/* Total Watt-hours Imported phase B [Wh] */
float totalWattHoursImportedPhaseB() const;
/* Total Watt-hours Imported phase C [Wh] */
float totalWattHoursImportedPhaseC() const;
/* Total Apparent Energy Exported [VAh] */
float totalVaHoursExported() const;
/* Total VA-hours Exported phase A [VAh] */
float totalVaHoursExportedPhaseA() const;
/* Total VA-hours Exported phase B [VAh] */
float totalVaHoursExportedPhaseB() const;
/* Total VA-hours Exported phase C [VAh] */
float totalVaHoursExportedPhaseC() const;
/* Total Apparent Energy Imported [VAh] */
float totalVaHoursImported() const;
/* Total VA-hours Imported phase A [VAh] */
float totalVaHoursImportedPhaseA() const;
/* Total VA-hours Imported phase B [VAh] */
float totalVaHoursImportedPhaseB() const;
/* Total VA-hours Imported phase C [VAh] */
float totalVaHoursImportedPhaseC() const;
/* Total Reactive Energy Imported Quadrant 1 [varh] */
float totalVarHoursImportedQ1() const;
/* Total VAr-hours Imported Q1 phase A [varh] */
float totalVArHoursImportedQ1PhaseA() const;
/* Total VAr-hours Imported Q1 phase B [varh] */
float totalVArHoursImportedQ1PhaseB() const;
/* Total VAr-hours Imported Q1 phase C [varh] */
float totalVArHoursImportedQ1PhaseC() const;
/* Total Reactive Power Imported Quadrant 2 [varh] */
float totalVArHoursImportedQ2() const;
/* Total VAr-hours Imported Q2 phase A [varh] */
float totalVArHoursImportedQ2PhaseA() const;
/* Total VAr-hours Imported Q2 phase B [varh] */
float totalVArHoursImportedQ2PhaseB() const;
/* Total VAr-hours Imported Q2 phase C [varh] */
float totalVArHoursImportedQ2PhaseC() const;
/* Total Reactive Power Exported Quadrant 3 [varh] */
float totalVArHoursExportedQ3() const;
/* Total VAr-hours Exported Q3 phase A [varh] */
float totalVArHoursExportedQ3PhaseA() const;
/* Total VAr-hours Exported Q3 phase B [varh] */
float totalVArHoursExportedQ3PhaseB() const;
/* Total VAr-hours Exported Q3 phase C [varh] */
float totalVArHoursExportedQ3PhaseC() const;
/* Total Reactive Power Exported Quadrant 4 [varh] */
float totalVArHoursExportedQ4() const;
/* Total VAr-hours Exported Q4 Imported phase A [varh] */
float totalVArHoursExportedQ4ImportedPhaseA() const;
/* Total VAr-hours Exported Q4 Imported phase B [varh] */
float totalVArHoursExportedQ4ImportedPhaseB() const;
/* Total VAr-hours Exported Q4 Imported phase C [varh] */
float totalVArHoursExportedQ4ImportedPhaseC() const;
/* Meter Event Flags */
EvtFlags events() const;
protected:

View File

@ -75,77 +75,149 @@ public:
QString description() const override;
QString label() const override;
/* Total AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
/* Current scale factor */
qint16 a_SF() const;
/* Line to Neutral AC Voltage (average of active phases) [V] */
float voltageLn() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
/* Line to Line AC Voltage (average of active phases) [V] */
float voltageLl() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Voltage scale factor */
qint16 v_SF() const;
/* Frequency [Hz] */
float hz() const;
/* Frequency scale factor */
qint16 hz_SF() const;
/* Total Real Power [W] */
float watts() const;
/* Watts phase A [W] */
float wattsPhaseA() const;
/* Watts phase B [W] */
float wattsPhaseB() const;
/* Watts phase C [W] */
float wattsPhaseC() const;
/* Real Power scale factor */
qint16 w_SF() const;
/* AC Apparent Power [VA] */
float va() const;
/* VA phase A [VA] */
float vaPhaseA() const;
/* VA phase B [VA] */
float vaPhaseB() const;
/* VA phase C [VA] */
float vaPhaseC() const;
/* Apparent Power scale factor */
qint16 vA_SF() const;
/* Reactive Power [var] */
float var() const;
/* VAR phase A [var] */
float varPhaseA() const;
/* VAR phase B [var] */
float varPhaseB() const;
/* VAR phase C [var] */
float varPhaseC() const;
/* Reactive Power scale factor */
qint16 vAR_SF() const;
/* Power Factor [Pct] */
float pf() const;
/* PF phase A [Pct] */
float pfPhaseA() const;
/* PF phase B [Pct] */
float pfPhaseB() const;
/* PF phase C [Pct] */
float pfPhaseC() const;
/* Power Factor scale factor */
qint16 pF_SF() const;
/* Total Real Energy Exported [Wh] */
quint32 totalWattHoursExported() const;
/* Total Watt-hours Exported phase A [Wh] */
quint32 totalWattHoursExportedPhaseA() const;
/* Total Watt-hours Exported phase B [Wh] */
quint32 totalWattHoursExportedPhaseB() const;
/* Total Watt-hours Exported phase C [Wh] */
quint32 totalWattHoursExportedPhaseC() const;
/* Total Real Energy Imported [Wh] */
quint32 totalWattHoursImported() const;
/* Total Watt-hours Imported phase A [Wh] */
quint32 totalWattHoursImportedPhaseA() const;
/* Total Watt-hours Imported phase B [Wh] */
quint32 totalWattHoursImportedPhaseB() const;
/* Total Watt-hours Imported phase C [Wh] */
quint32 totalWattHoursImportedPhaseC() const;
/* Real Energy scale factor */
qint16 totWh_SF() const;
/* Total Apparent Energy Exported [VAh] */
quint32 totalVaHoursExported() const;
/* Total VA-hours Exported phase A [VAh] */
quint32 totalVaHoursExportedPhaseA() const;
/* Total VA-hours Exported phase B [VAh] */
quint32 totalVaHoursExportedPhaseB() const;
/* Total VA-hours Exported phase C [VAh] */
quint32 totalVaHoursExportedPhaseC() const;
/* Total Apparent Energy Imported [VAh] */
quint32 totalVaHoursImported() const;
/* Total VA-hours Imported phase A [VAh] */
quint32 totalVaHoursImportedPhaseA() const;
/* Total VA-hours Imported phase B [VAh] */
quint32 totalVaHoursImportedPhaseB() const;
/* Total VA-hours Imported phase C [VAh] */
quint32 totalVaHoursImportedPhaseC() const;
/* Apparent Energy scale factor */
qint16 totVAh_SF() const;
/* Total Reactive Energy Imported Quadrant 1 [varh] */
quint32 totalVarHoursImportedQ1() const;
/* Total VAr-hours Imported Q1 phase A [varh] */
quint32 totalVArHoursImportedQ1PhaseA() const;
/* Total VAr-hours Imported Q1 phase B [varh] */
quint32 totalVArHoursImportedQ1PhaseB() const;
/* Total VAr-hours Imported Q1 phase C [varh] */
quint32 totalVArHoursImportedQ1PhaseC() const;
/* Total Reactive Power Imported Quadrant 2 [varh] */
quint32 totalVArHoursImportedQ2() const;
/* Total VAr-hours Imported Q2 phase A [varh] */
quint32 totalVArHoursImportedQ2PhaseA() const;
/* Total VAr-hours Imported Q2 phase B [varh] */
quint32 totalVArHoursImportedQ2PhaseB() const;
/* Total VAr-hours Imported Q2 phase C [varh] */
quint32 totalVArHoursImportedQ2PhaseC() const;
/* Total Reactive Power Exported Quadrant 3 [varh] */
quint32 totalVArHoursExportedQ3() const;
/* Total VAr-hours Exported Q3 phase A [varh] */
quint32 totalVArHoursExportedQ3PhaseA() const;
/* Total VAr-hours Exported Q3 phase B [varh] */
quint32 totalVArHoursExportedQ3PhaseB() const;
/* Total VAr-hours Exported Q3 phase C [varh] */
quint32 totalVArHoursExportedQ3PhaseC() const;
/* Total Reactive Power Exported Quadrant 4 [varh] */
quint32 totalVArHoursExportedQ4() const;
/* Total VAr-hours Exported Q4 Imported phase A [varh] */
quint32 totalVArHoursExportedQ4ImportedPhaseA() const;
/* Total VAr-hours Exported Q4 Imported phase B [varh] */
quint32 totalVArHoursExportedQ4ImportedPhaseB() const;
/* Total VAr-hours Exported Q4 Imported phase C [varh] */
quint32 totalVArHoursExportedQ4ImportedPhaseC() const;
/* Reactive Energy scale factor */
qint16 totVArh_SF() const;
/* Meter Event Flags */
EvtFlags events() const;
protected:

View File

@ -83,77 +83,149 @@ public:
QString description() const override;
QString label() const override;
/* Total AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
/* Current scale factor */
qint16 a_SF() const;
/* Line to Neutral AC Voltage (average of active phases) [V] */
float voltageLn() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
/* Line to Line AC Voltage (average of active phases) [V] */
float voltageLl() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Voltage scale factor */
qint16 v_SF() const;
/* Frequency [Hz] */
float hz() const;
/* Frequency scale factor */
qint16 hz_SF() const;
/* Total Real Power [W] */
float watts() const;
/* Watts phase A [W] */
float wattsPhaseA() const;
/* Watts phase B [W] */
float wattsPhaseB() const;
/* Watts phase C [W] */
float wattsPhaseC() const;
/* Real Power scale factor */
qint16 w_SF() const;
/* AC Apparent Power [VA] */
float va() const;
/* VA phase A [VA] */
float vaPhaseA() const;
/* VA phase B [VA] */
float vaPhaseB() const;
/* VA phase C [VA] */
float vaPhaseC() const;
/* Apparent Power scale factor */
qint16 vA_SF() const;
/* Reactive Power [var] */
float var() const;
/* VAR phase A [var] */
float varPhaseA() const;
/* VAR phase B [var] */
float varPhaseB() const;
/* VAR phase C [var] */
float varPhaseC() const;
/* Reactive Power scale factor */
qint16 vAR_SF() const;
/* Power Factor [Pct] */
float pf() const;
/* PF phase A [Pct] */
float pfPhaseA() const;
/* PF phase B [Pct] */
float pfPhaseB() const;
/* PF phase C [Pct] */
float pfPhaseC() const;
/* Power Factor scale factor */
qint16 pF_SF() const;
/* Total Real Energy Exported [Wh] */
quint32 totalWattHoursExported() const;
/* Total Watt-hours Exported phase A [Wh] */
quint32 totalWattHoursExportedPhaseA() const;
/* Total Watt-hours Exported phase B [Wh] */
quint32 totalWattHoursExportedPhaseB() const;
/* Total Watt-hours Exported phase C [Wh] */
quint32 totalWattHoursExportedPhaseC() const;
/* Total Real Energy Imported [Wh] */
quint32 totalWattHoursImported() const;
/* Total Watt-hours Imported phase A [Wh] */
quint32 totalWattHoursImportedPhaseA() const;
/* Total Watt-hours Imported phase B [Wh] */
quint32 totalWattHoursImportedPhaseB() const;
/* Total Watt-hours Imported phase C [Wh] */
quint32 totalWattHoursImportedPhaseC() const;
/* Real Energy scale factor */
qint16 totWh_SF() const;
/* Total Apparent Energy Exported [VAh] */
quint32 totalVaHoursExported() const;
/* Total VA-hours Exported phase A [VAh] */
quint32 totalVaHoursExportedPhaseA() const;
/* Total VA-hours Exported phase B [VAh] */
quint32 totalVaHoursExportedPhaseB() const;
/* Total VA-hours Exported phase C [VAh] */
quint32 totalVaHoursExportedPhaseC() const;
/* Total Apparent Energy Imported [VAh] */
quint32 totalVaHoursImported() const;
/* Total VA-hours Imported phase A [VAh] */
quint32 totalVaHoursImportedPhaseA() const;
/* Total VA-hours Imported phase B [VAh] */
quint32 totalVaHoursImportedPhaseB() const;
/* Total VA-hours Imported phase C [VAh] */
quint32 totalVaHoursImportedPhaseC() const;
/* Apparent Energy scale factor */
qint16 totVAh_SF() const;
/* Total Reactive Energy Imported Quadrant 1 [varh] */
quint32 totalVarHoursImportedQ1() const;
/* Total VAr-hours Imported Q1 phase A [varh] */
quint32 totalVArHoursImportedQ1PhaseA() const;
/* Total VAr-hours Imported Q1 phase B [varh] */
quint32 totalVArHoursImportedQ1PhaseB() const;
/* Total VAr-hours Imported Q1 phase C [varh] */
quint32 totalVArHoursImportedQ1PhaseC() const;
/* Total Reactive Power Imported Quadrant 2 [varh] */
quint32 totalVArHoursImportedQ2() const;
/* Total VAr-hours Imported Q2 phase A [varh] */
quint32 totalVArHoursImportedQ2PhaseA() const;
/* Total VAr-hours Imported Q2 phase B [varh] */
quint32 totalVArHoursImportedQ2PhaseB() const;
/* Total VAr-hours Imported Q2 phase C [varh] */
quint32 totalVArHoursImportedQ2PhaseC() const;
/* Total Reactive Power Exported Quadrant 3 [varh] */
quint32 totalVArHoursExportedQ3() const;
/* Total VAr-hours Exported Q3 phase A [varh] */
quint32 totalVArHoursExportedQ3PhaseA() const;
/* Total VAr-hours Exported Q3 phase B [varh] */
quint32 totalVArHoursExportedQ3PhaseB() const;
/* Total VAr-hours Exported Q3 phase C [varh] */
quint32 totalVArHoursExportedQ3PhaseC() const;
/* Total Reactive Power Exported Quadrant 4 [varh] */
quint32 totalVArHoursExportedQ4() const;
/* Total VAr-hours Exported Q4 Imported phase A [varh] */
quint32 totalVArHoursExportedQ4ImportedPhaseA() const;
/* Total VAr-hours Exported Q4 Imported phase B [varh] */
quint32 totalVArHoursExportedQ4ImportedPhaseB() const;
/* Total VAr-hours Exported Q4 Imported phase C [varh] */
quint32 totalVArHoursExportedQ4ImportedPhaseC() const;
/* Reactive Energy scale factor */
qint16 totVArh_SF() const;
/* Meter Event Flags */
EvtFlags events() const;
protected:

View File

@ -83,67 +83,129 @@ public:
QString description() const override;
QString label() const override;
/* Total AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
/* Line to Neutral AC Voltage (average of active phases) [V] */
float voltageLn() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
/* Line to Line AC Voltage (average of active phases) [V] */
float voltageLl() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Frequency [Hz] */
float hz() const;
/* Total Real Power [W] */
float watts() const;
/* Watts phase A [W] */
float wattsPhaseA() const;
/* Watts phase B [W] */
float wattsPhaseB() const;
/* Watts phase C [W] */
float wattsPhaseC() const;
/* AC Apparent Power [VA] */
float va() const;
/* VA phase A [VA] */
float vaPhaseA() const;
/* VA phase B [VA] */
float vaPhaseB() const;
/* VA phase C [VA] */
float vaPhaseC() const;
/* Reactive Power [var] */
float var() const;
/* VAR phase A [var] */
float varPhaseA() const;
/* VAR phase B [var] */
float varPhaseB() const;
/* VAR phase C [var] */
float varPhaseC() const;
/* Power Factor [PF] */
float pf() const;
/* PF phase A [PF] */
float pfPhaseA() const;
/* PF phase B [PF] */
float pfPhaseB() const;
/* PF phase C [PF] */
float pfPhaseC() const;
/* Total Real Energy Exported [Wh] */
float totalWattHoursExported() const;
/* Total Watt-hours Exported phase A [Wh] */
float totalWattHoursExportedPhaseA() const;
/* Total Watt-hours Exported phase B [Wh] */
float totalWattHoursExportedPhaseB() const;
/* Total Watt-hours Exported phase C [Wh] */
float totalWattHoursExportedPhaseC() const;
/* Total Real Energy Imported [Wh] */
float totalWattHoursImported() const;
/* Total Watt-hours Imported phase A [Wh] */
float totalWattHoursImportedPhaseA() const;
/* Total Watt-hours Imported phase B [Wh] */
float totalWattHoursImportedPhaseB() const;
/* Total Watt-hours Imported phase C [Wh] */
float totalWattHoursImportedPhaseC() const;
/* Total Apparent Energy Exported [VAh] */
float totalVaHoursExported() const;
/* Total VA-hours Exported phase A [VAh] */
float totalVaHoursExportedPhaseA() const;
/* Total VA-hours Exported phase B [VAh] */
float totalVaHoursExportedPhaseB() const;
/* Total VA-hours Exported phase C [VAh] */
float totalVaHoursExportedPhaseC() const;
/* Total Apparent Energy Imported [VAh] */
float totalVaHoursImported() const;
/* Total VA-hours Imported phase A [VAh] */
float totalVaHoursImportedPhaseA() const;
/* Total VA-hours Imported phase B [VAh] */
float totalVaHoursImportedPhaseB() const;
/* Total VA-hours Imported phase C [VAh] */
float totalVaHoursImportedPhaseC() const;
/* Total Reactive Energy Imported Quadrant 1 [varh] */
float totalVarHoursImportedQ1() const;
/* Total VAr-hours Imported Q1 phase A [varh] */
float totalVArHoursImportedQ1PhaseA() const;
/* Total VAr-hours Imported Q1 phase B [varh] */
float totalVArHoursImportedQ1PhaseB() const;
/* Total VAr-hours Imported Q1 phase C [varh] */
float totalVArHoursImportedQ1PhaseC() const;
/* Total Reactive Power Imported Quadrant 2 [varh] */
float totalVArHoursImportedQ2() const;
/* Total VAr-hours Imported Q2 phase A [varh] */
float totalVArHoursImportedQ2PhaseA() const;
/* Total VAr-hours Imported Q2 phase B [varh] */
float totalVArHoursImportedQ2PhaseB() const;
/* Total VAr-hours Imported Q2 phase C [varh] */
float totalVArHoursImportedQ2PhaseC() const;
/* Total Reactive Power Exported Quadrant 3 [varh] */
float totalVArHoursExportedQ3() const;
/* Total VAr-hours Exported Q3 phase A [varh] */
float totalVArHoursExportedQ3PhaseA() const;
/* Total VAr-hours Exported Q3 phase B [varh] */
float totalVArHoursExportedQ3PhaseB() const;
/* Total VAr-hours Exported Q3 phase C [varh] */
float totalVArHoursExportedQ3PhaseC() const;
/* Total Reactive Power Exported Quadrant 4 [varh] */
float totalVArHoursExportedQ4() const;
/* Total VAr-hours Exported Q4 Imported phase A [varh] */
float totalVArHoursExportedQ4ImportedPhaseA() const;
/* Total VAr-hours Exported Q4 Imported phase B [varh] */
float totalVArHoursExportedQ4ImportedPhaseB() const;
/* Total VAr-hours Exported Q4 Imported phase C [varh] */
float totalVArHoursExportedQ4ImportedPhaseC() const;
/* Meter Event Flags */
EvtFlags events() const;
protected:

View File

@ -83,77 +83,149 @@ public:
QString description() const override;
QString label() const override;
/* Total AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
/* Current scale factor */
qint16 a_SF() const;
/* Line to Neutral AC Voltage (average of active phases) [V] */
float voltageLn() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
/* Line to Line AC Voltage (average of active phases) [V] */
float voltageLl() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Voltage scale factor */
qint16 v_SF() const;
/* Frequency [Hz] */
float hz() const;
/* Frequency scale factor */
qint16 hz_SF() const;
/* Total Real Power [W] */
float watts() const;
/* Watts phase A [W] */
float wattsPhaseA() const;
/* Watts phase B [W] */
float wattsPhaseB() const;
/* Watts phase C [W] */
float wattsPhaseC() const;
/* Real Power scale factor */
qint16 w_SF() const;
/* AC Apparent Power [VA] */
float va() const;
/* VA phase A [VA] */
float vaPhaseA() const;
/* VA phase B [VA] */
float vaPhaseB() const;
/* VA phase C [VA] */
float vaPhaseC() const;
/* Apparent Power scale factor */
qint16 vA_SF() const;
/* Reactive Power [var] */
float var() const;
/* VAR phase A [var] */
float varPhaseA() const;
/* VAR phase B [var] */
float varPhaseB() const;
/* VAR phase C [var] */
float varPhaseC() const;
/* Reactive Power scale factor */
qint16 vAR_SF() const;
/* Power Factor [Pct] */
float pf() const;
/* PF phase A [Pct] */
float pfPhaseA() const;
/* PF phase B [Pct] */
float pfPhaseB() const;
/* PF phase C [Pct] */
float pfPhaseC() const;
/* Power Factor scale factor */
qint16 pF_SF() const;
/* Total Real Energy Exported [Wh] */
quint32 totalWattHoursExported() const;
/* Total Watt-hours Exported phase A [Wh] */
quint32 totalWattHoursExportedPhaseA() const;
/* Total Watt-hours Exported phase B [Wh] */
quint32 totalWattHoursExportedPhaseB() const;
/* Total Watt-hours Exported phase C [Wh] */
quint32 totalWattHoursExportedPhaseC() const;
/* Total Real Energy Imported [Wh] */
quint32 totalWattHoursImported() const;
/* Total Watt-hours Imported phase A [Wh] */
quint32 totalWattHoursImportedPhaseA() const;
/* Total Watt-hours Imported phase B [Wh] */
quint32 totalWattHoursImportedPhaseB() const;
/* Total Watt-hours Imported phase C [Wh] */
quint32 totalWattHoursImportedPhaseC() const;
/* Real Energy scale factor */
qint16 totWh_SF() const;
/* Total Apparent Energy Exported [VAh] */
quint32 totalVaHoursExported() const;
/* Total VA-hours Exported phase A [VAh] */
quint32 totalVaHoursExportedPhaseA() const;
/* Total VA-hours Exported phase B [VAh] */
quint32 totalVaHoursExportedPhaseB() const;
/* Total VA-hours Exported phase C [VAh] */
quint32 totalVaHoursExportedPhaseC() const;
/* Total Apparent Energy Imported [VAh] */
quint32 totalVaHoursImported() const;
/* Total VA-hours Imported phase A [VAh] */
quint32 totalVaHoursImportedPhaseA() const;
/* Total VA-hours Imported phase B [VAh] */
quint32 totalVaHoursImportedPhaseB() const;
/* Total VA-hours Imported phase C [VAh] */
quint32 totalVaHoursImportedPhaseC() const;
/* Apparent Energy scale factor */
qint16 totVAh_SF() const;
/* Total Reactive Energy Imported Quadrant 1 [varh] */
quint32 totalVarHoursImportedQ1() const;
/* Total VAr-hours Imported Q1 phase A [varh] */
quint32 totalVArHoursImportedQ1PhaseA() const;
/* Total VAr-hours Imported Q1 phase B [varh] */
quint32 totalVArHoursImportedQ1PhaseB() const;
/* Total VAr-hours Imported Q1 phase C [varh] */
quint32 totalVArHoursImportedQ1PhaseC() const;
/* Total Reactive Power Imported Quadrant 2 [varh] */
quint32 totalVArHoursImportedQ2() const;
/* Total VAr-hours Imported Q2 phase A [varh] */
quint32 totalVArHoursImportedQ2PhaseA() const;
/* Total VAr-hours Imported Q2 phase B [varh] */
quint32 totalVArHoursImportedQ2PhaseB() const;
/* Total VAr-hours Imported Q2 phase C [varh] */
quint32 totalVArHoursImportedQ2PhaseC() const;
/* Total Reactive Power Exported Quadrant 3 [varh] */
quint32 totalVArHoursExportedQ3() const;
/* Total VAr-hours Exported Q3 phase A [varh] */
quint32 totalVArHoursExportedQ3PhaseA() const;
/* Total VAr-hours Exported Q3 phase B [varh] */
quint32 totalVArHoursExportedQ3PhaseB() const;
/* Total VAr-hours Exported Q3 phase C [varh] */
quint32 totalVArHoursExportedQ3PhaseC() const;
/* Total Reactive Power Exported Quadrant 4 [varh] */
quint32 totalVArHoursExportedQ4() const;
/* Total VAr-hours Exported Q4 Imported phase A [varh] */
quint32 totalVArHoursExportedQ4ImportedPhaseA() const;
/* Total VAr-hours Exported Q4 Imported phase B [varh] */
quint32 totalVArHoursExportedQ4ImportedPhaseB() const;
/* Total VAr-hours Exported Q4 Imported phase C [varh] */
quint32 totalVArHoursExportedQ4ImportedPhaseC() const;
/* Reactive Energy scale factor */
qint16 totVArh_SF() const;
/* Meter Event Flags */
EvtFlags events() const;
protected:

View File

@ -83,77 +83,149 @@ public:
QString description() const override;
QString label() const override;
/* Total AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
/* Current scale factor */
qint16 a_SF() const;
/* Line to Neutral AC Voltage (average of active phases) [V] */
float voltageLn() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
/* Line to Line AC Voltage (average of active phases) [V] */
float voltageLl() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Voltage scale factor */
qint16 v_SF() const;
/* Frequency [Hz] */
float hz() const;
/* Frequency scale factor */
qint16 hz_SF() const;
/* Total Real Power [W] */
float watts() const;
/* Watts phase A [W] */
float wattsPhaseA() const;
/* Watts phase B [W] */
float wattsPhaseB() const;
/* Watts phase C [W] */
float wattsPhaseC() const;
/* Real Power scale factor */
qint16 w_SF() const;
/* AC Apparent Power [VA] */
float va() const;
/* VA phase A [VA] */
float vaPhaseA() const;
/* VA phase B [VA] */
float vaPhaseB() const;
/* VA phase C [VA] */
float vaPhaseC() const;
/* Apparent Power scale factor */
qint16 vA_SF() const;
/* Reactive Power [var] */
float var() const;
/* VAR phase A [var] */
float varPhaseA() const;
/* VAR phase B [var] */
float varPhaseB() const;
/* VAR phase C [var] */
float varPhaseC() const;
/* Reactive Power scale factor */
qint16 vAR_SF() const;
/* Power Factor [Pct] */
float pf() const;
/* PF phase A [Pct] */
float pfPhaseA() const;
/* PF phase B [Pct] */
float pfPhaseB() const;
/* PF phase C [Pct] */
float pfPhaseC() const;
/* Power Factor scale factor */
qint16 pF_SF() const;
/* Total Real Energy Exported [Wh] */
quint32 totalWattHoursExported() const;
/* Total Watt-hours Exported phase A [Wh] */
quint32 totalWattHoursExportedPhaseA() const;
/* Total Watt-hours Exported phase B [Wh] */
quint32 totalWattHoursExportedPhaseB() const;
/* Total Watt-hours Exported phase C [Wh] */
quint32 totalWattHoursExportedPhaseC() const;
/* Total Real Energy Imported [Wh] */
quint32 totalWattHoursImported() const;
/* Total Watt-hours Imported phase A [Wh] */
quint32 totalWattHoursImportedPhaseA() const;
/* Total Watt-hours Imported phase B [Wh] */
quint32 totalWattHoursImportedPhaseB() const;
/* Total Watt-hours Imported phase C [Wh] */
quint32 totalWattHoursImportedPhaseC() const;
/* Real Energy scale factor */
qint16 totWh_SF() const;
/* Total Apparent Energy Exported [VAh] */
quint32 totalVaHoursExported() const;
/* Total VA-hours Exported phase A [VAh] */
quint32 totalVaHoursExportedPhaseA() const;
/* Total VA-hours Exported phase B [VAh] */
quint32 totalVaHoursExportedPhaseB() const;
/* Total VA-hours Exported phase C [VAh] */
quint32 totalVaHoursExportedPhaseC() const;
/* Total Apparent Energy Imported [VAh] */
quint32 totalVaHoursImported() const;
/* Total VA-hours Imported phase A [VAh] */
quint32 totalVaHoursImportedPhaseA() const;
/* Total VA-hours Imported phase B [VAh] */
quint32 totalVaHoursImportedPhaseB() const;
/* Total VA-hours Imported phase C [VAh] */
quint32 totalVaHoursImportedPhaseC() const;
/* Apparent Energy scale factor */
qint16 totVAh_SF() const;
/* Total Reactive Energy Imported Quadrant 1 [varh] */
quint32 totalVarHoursImportedQ1() const;
/* Total VAr-hours Imported Q1 phase A [varh] */
quint32 totalVArHoursImportedQ1PhaseA() const;
/* Total VAr-hours Imported Q1 phase B [varh] */
quint32 totalVArHoursImportedQ1PhaseB() const;
/* Total VAr-hours Imported Q1 phase C [varh] */
quint32 totalVArHoursImportedQ1PhaseC() const;
/* Total Reactive Power Imported Quadrant 2 [varh] */
quint32 totalVArHoursImportedQ2() const;
/* Total VAr-hours Imported Q2 phase A [varh] */
quint32 totalVArHoursImportedQ2PhaseA() const;
/* Total VAr-hours Imported Q2 phase B [varh] */
quint32 totalVArHoursImportedQ2PhaseB() const;
/* Total VAr-hours Imported Q2 phase C [varh] */
quint32 totalVArHoursImportedQ2PhaseC() const;
/* Total Reactive Power Exported Quadrant 3 [varh] */
quint32 totalVArHoursExportedQ3() const;
/* Total VAr-hours Exported Q3 phase A [varh] */
quint32 totalVArHoursExportedQ3PhaseA() const;
/* Total VAr-hours Exported Q3 phase B [varh] */
quint32 totalVArHoursExportedQ3PhaseB() const;
/* Total VAr-hours Exported Q3 phase C [varh] */
quint32 totalVArHoursExportedQ3PhaseC() const;
/* Total Reactive Power Exported Quadrant 4 [varh] */
quint32 totalVArHoursExportedQ4() const;
/* Total VAr-hours Exported Q4 Imported phase A [varh] */
quint32 totalVArHoursExportedQ4ImportedPhaseA() const;
/* Total VAr-hours Exported Q4 Imported phase B [varh] */
quint32 totalVArHoursExportedQ4ImportedPhaseB() const;
/* Total VAr-hours Exported Q4 Imported phase C [varh] */
quint32 totalVArHoursExportedQ4ImportedPhaseC() const;
/* Reactive Energy scale factor */
qint16 totVArh_SF() const;
/* Meter Event Flags */
EvtFlags events() const;
protected:

View File

@ -83,67 +83,129 @@ public:
QString description() const override;
QString label() const override;
/* Total AC Current [A] */
float amps() const;
/* Phase A Current [A] */
float ampsPhaseA() const;
/* Phase B Current [A] */
float ampsPhaseB() const;
/* Phase C Current [A] */
float ampsPhaseC() const;
/* Line to Neutral AC Voltage (average of active phases) [V] */
float voltageLn() const;
/* Phase Voltage AN [V] */
float phaseVoltageAn() const;
/* Phase Voltage BN [V] */
float phaseVoltageBn() const;
/* Phase Voltage CN [V] */
float phaseVoltageCn() const;
/* Line to Line AC Voltage (average of active phases) [V] */
float voltageLl() const;
/* Phase Voltage AB [V] */
float phaseVoltageAb() const;
/* Phase Voltage BC [V] */
float phaseVoltageBc() const;
/* Phase Voltage CA [V] */
float phaseVoltageCa() const;
/* Frequency [Hz] */
float hz() const;
/* Total Real Power [W] */
float watts() const;
/* Watts phase A [W] */
float wattsPhaseA() const;
/* Watts phase B [W] */
float wattsPhaseB() const;
/* Watts phase C [W] */
float wattsPhaseC() const;
/* AC Apparent Power [VA] */
float va() const;
/* VA phase A [VA] */
float vaPhaseA() const;
/* VA phase B [VA] */
float vaPhaseB() const;
/* VA phase C [VA] */
float vaPhaseC() const;
/* Reactive Power [var] */
float var() const;
/* VAR phase A [var] */
float varPhaseA() const;
/* VAR phase B [var] */
float varPhaseB() const;
/* VAR phase C [var] */
float varPhaseC() const;
/* Power Factor [PF] */
float pf() const;
/* PF phase A [PF] */
float pfPhaseA() const;
/* PF phase B [PF] */
float pfPhaseB() const;
/* PF phase C [PF] */
float pfPhaseC() const;
/* Total Real Energy Exported [Wh] */
float totalWattHoursExported() const;
/* Total Watt-hours Exported phase A [Wh] */
float totalWattHoursExportedPhaseA() const;
/* Total Watt-hours Exported phase B [Wh] */
float totalWattHoursExportedPhaseB() const;
/* Total Watt-hours Exported phase C [Wh] */
float totalWattHoursExportedPhaseC() const;
/* Total Real Energy Imported [Wh] */
float totalWattHoursImported() const;
/* Total Watt-hours Imported phase A [Wh] */
float totalWattHoursImportedPhaseA() const;
/* Total Watt-hours Imported phase B [Wh] */
float totalWattHoursImportedPhaseB() const;
/* Total Watt-hours Imported phase C [Wh] */
float totalWattHoursImportedPhaseC() const;
/* Total Apparent Energy Exported [VAh] */
float totalVaHoursExported() const;
/* Total VA-hours Exported phase A [VAh] */
float totalVaHoursExportedPhaseA() const;
/* Total VA-hours Exported phase B [VAh] */
float totalVaHoursExportedPhaseB() const;
/* Total VA-hours Exported phase C [VAh] */
float totalVaHoursExportedPhaseC() const;
/* Total Apparent Energy Imported [VAh] */
float totalVaHoursImported() const;
/* Total VA-hours Imported phase A [VAh] */
float totalVaHoursImportedPhaseA() const;
/* Total VA-hours Imported phase B [VAh] */
float totalVaHoursImportedPhaseB() const;
/* Total VA-hours Imported phase C [VAh] */
float totalVaHoursImportedPhaseC() const;
/* Total Reactive Energy Imported Quadrant 1 [varh] */
float totalVarHoursImportedQ1() const;
/* Total VAr-hours Imported Q1 phase A [varh] */
float totalVArHoursImportedQ1PhaseA() const;
/* Total VAr-hours Imported Q1 phase B [varh] */
float totalVArHoursImportedQ1PhaseB() const;
/* Total VAr-hours Imported Q1 phase C [varh] */
float totalVArHoursImportedQ1PhaseC() const;
/* Total Reactive Power Imported Quadrant 2 [varh] */
float totalVArHoursImportedQ2() const;
/* Total VAr-hours Imported Q2 phase A [varh] */
float totalVArHoursImportedQ2PhaseA() const;
/* Total VAr-hours Imported Q2 phase B [varh] */
float totalVArHoursImportedQ2PhaseB() const;
/* Total VAr-hours Imported Q2 phase C [varh] */
float totalVArHoursImportedQ2PhaseC() const;
/* Total Reactive Power Exported Quadrant 3 [varh] */
float totalVArHoursExportedQ3() const;
/* Total VAr-hours Exported Q3 phase A [varh] */
float totalVArHoursExportedQ3PhaseA() const;
/* Total VAr-hours Exported Q3 phase B [varh] */
float totalVArHoursExportedQ3PhaseB() const;
/* Total VAr-hours Exported Q3 phase C [varh] */
float totalVArHoursExportedQ3PhaseC() const;
/* Total Reactive Power Exported Quadrant 4 [varh] */
float totalVArHoursExportedQ4() const;
/* Total VAr-hours Exported Q4 Imported phase A [varh] */
float totalVArHoursExportedQ4ImportedPhaseA() const;
/* Total VAr-hours Exported Q4 Imported phase B [varh] */
float totalVArHoursExportedQ4ImportedPhaseB() const;
/* Total VAr-hours Exported Q4 Imported phase C [varh] */
float totalVArHoursExportedQ4ImportedPhaseC() const;
/* Meter Event Flags */
EvtFlags events() const;
protected:

View File

@ -49,9 +49,13 @@ public:
QString description() const override;
QString label() const override;
/* Global Horizontal Irradiance [W/m2] */
quint16 ghi() const;
/* Back of module temperature measurement [C] */
float temp() const;
/* Ambient Temperature [C] */
float ambientTemperature() const;
/* Wind Speed [m/s] */
quint16 windSpeed() const;
protected:

View File

@ -92,15 +92,25 @@ public:
SunSpecMpptModel *parentModel() const;
QString name() const override;
/* Input ID */
quint16 inputId() const;
/* Input ID Sting */
QString inputIdSting() const;
/* DC Current [A] */
float dcCurrent() const;
/* DC Voltage [V] */
float dcVoltage() const;
/* DC Power [W] */
float dcPower() const;
/* Lifetime Energy [Wh] */
quint32 lifetimeEnergy() const;
/* Timestamp [Secs] */
quint32 timestamp() const;
/* Temperature [C] */
qint16 temperature() const;
/* Operating State */
Dcst operatingState() const;
/* Module Events */
DcevtFlags moduleEvents() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -166,12 +176,19 @@ public:
QString description() const override;
QString label() const override;
/* Current Scale Factor */
qint16 currentScaleFactor() const;
/* Voltage Scale Factor */
qint16 voltageScaleFactor() const;
/* Power Scale Factor */
qint16 powerScaleFactor() const;
/* Energy Scale Factor */
qint16 energyScaleFactor() const;
/* Global Events */
EvtFlags globalEvents() const;
/* Number of Modules */
int numberOfModules() const;
/* Timestamp Period */
quint16 timestampPeriod() const;
protected:

View File

@ -55,31 +55,57 @@ public:
QString description() const override;
QString label() const override;
/* Type of DER device. Default value is 4 to indicate PV device. */
Dertyp derTyp() const;
/* Continuous power output capability of the inverter. [W] */
float wRtg() const;
/* Scale factor */
qint16 wRtgSf() const;
/* Continuous Volt-Ampere capability of the inverter. [VA] */
float vaRtg() const;
/* Scale factor */
qint16 vaRtgSf() const;
/* Continuous VAR capability of the inverter in quadrant 1. [var] */
float vArRtgQ1() const;
/* Continuous VAR capability of the inverter in quadrant 2. [var] */
float vArRtgQ2() const;
/* Continuous VAR capability of the inverter in quadrant 3. [var] */
float vArRtgQ3() const;
/* Continuous VAR capability of the inverter in quadrant 4. [var] */
float vArRtgQ4() const;
/* Scale factor */
qint16 vArRtgSf() const;
/* Maximum RMS AC current level capability of the inverter. [A] */
float aRtg() const;
/* Scale factor */
qint16 aRtgSf() const;
/* Minimum power factor capability of the inverter in quadrant 1. [cos()] */
float pfRtgQ1() const;
/* Minimum power factor capability of the inverter in quadrant 2. [cos()] */
float pfRtgQ2() const;
/* Minimum power factor capability of the inverter in quadrant 3. [cos()] */
float pfRtgQ3() const;
/* Minimum power factor capability of the inverter in quadrant 4. [cos()] */
float pfRtgQ4() const;
/* Scale factor */
qint16 pfRtgSf() const;
/* Nominal energy rating of storage device. [Wh] */
float whRtg() const;
/* Scale factor */
qint16 whRtgSf() const;
/* The usable capacity of the battery. Maximum charge minus minimum charge from a technology capability perspective (Amp-hour capacity rating). [AH] */
float ahrRtg() const;
/* Scale factor for amp-hour rating. */
qint16 ahrRtgSf() const;
/* Maximum rate of energy transfer into the storage device. [W] */
float maxChaRte() const;
/* Scale factor */
qint16 maxChaRteSf() const;
/* Maximum rate of energy transfer out of the storage device. [W] */
float maxDisChaRte() const;
/* Scale factor */
qint16 maxDisChaRteSf() const;
/* Pad register. */
quint16 pad() const;
protected:

View File

@ -65,24 +65,31 @@ public:
QString label() const override;
/* Is price-based charge/discharge mode active? */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Meaning of the pricing signal. When a Price schedule is used, type must match the schedule range variable description. */
Sigtype sigType() const;
QModbusReply *setSigType(Sigtype sigType);
/* Utility/ESP specific pricing signal. Content depends on pricing signal type. When H/M/L type is specified. Low=0; Med=1; High=2. */
float sig() const;
QModbusReply *setSig(float sig);
/* Time window for charge/discharge pricing change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for charge/discharge pricing change. [Secs] */
quint16 rvtTms() const;
QModbusReply *setRvtTms(quint16 rvtTms);
/* Ramp time for moving from current charge or discharge level to new level. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Pricing signal scale factor. */
qint16 sigSf() const;
quint16 pad() const;

View File

@ -62,40 +62,53 @@ public:
QString label() const override;
/* Indicates if gradients trend toward zero at the edges of the deadband or trend toward zero at the center of the deadband. */
Argramod arGraMod() const;
QModbusReply *setArGraMod(Argramod arGraMod);
/* The gradient used to increase capacitive dynamic current. A value of 0 indicates no additional reactive current support. [%ARtg/%dV] */
float arGraSag() const;
QModbusReply *setArGraSag(float arGraSag);
/* The gradient used to increase inductive dynamic current. A value of 0 indicates no additional reactive current support. [%ARtg/%dV] */
float arGraSwell() const;
QModbusReply *setArGraSwell(float arGraSwell);
/* Activate dynamic reactive current model */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* The time window used to calculate the moving average voltage. [Secs] */
quint16 filTms() const;
QModbusReply *setFilTms(quint16 filTms);
/* The lower delta voltage limit for which negative voltage deviations less than this value no dynamic vars are produced. [% VRef] */
float dbVMin() const;
QModbusReply *setDbVMin(float dbVMin);
/* The upper delta voltage limit for which positive voltage deviations less than this value no dynamic current produced. [% VRef] */
float dbVMax() const;
QModbusReply *setDbVMax(float dbVMax);
/* Block zone voltage which defines a lower voltage boundary below which no dynamic current is produced. [% VRef] */
float blkZnV() const;
QModbusReply *setBlkZnV(float blkZnV);
/* Hysteresis voltage used with BlkZnV. [% VRef] */
float hysBlkZnV() const;
QModbusReply *setHysBlkZnV(float hysBlkZnV);
/* Block zone time the time before which reactive current support remains active regardless of how low the voltage drops. [mSecs] */
quint16 blkZnTmms() const;
QModbusReply *setBlkZnTmms(quint16 blkZnTmms);
/* Hold time during which reactive current support continues after the average voltage has entered the dead zone. [mSecs] */
quint16 holdTmms() const;
QModbusReply *setHoldTmms(quint16 holdTmms);
/* Scale factor for the gradients. */
qint16 arGraSf() const;
/* Scale factor for the voltage zone and limit settings. */
qint16 vRefPctSf() const;
quint16 pad() const;

View File

@ -49,9 +49,13 @@ public:
QString description() const override;
QString label() const override;
/* Global Horizontal Irradiance [W/m2] */
quint16 ghi() const;
/* Current measurement at reference point [W/m2] */
quint16 amps() const;
/* Voltage measurement at reference point [W/m2] */
quint16 voltage() const;
/* Temperature measurement at reference point [W/m2] */
quint16 temperature() const;
protected:

View File

@ -90,99 +90,131 @@ public:
QString name() const override;
/* Number of active entries in schedule. */
quint16 actPts() const;
QModbusReply *setActPts(quint16 actPts);
/* Schedule start in seconds since 2000 JAN 01 00:00:00 UTC. [Secs] */
quint32 strTms() const;
QModbusReply *setStrTms(quint32 strTms);
/* The repetition count for time-based schedules (0=repeat forever) */
quint16 repPer() const;
QModbusReply *setRepPer(quint16 repPer);
/* The repetition frequency for time-based schedules: no repeat=0 */
Intvtyp schdTyp() const;
QModbusReply *setSchdTyp(Intvtyp schdTyp);
/* The meaning of the X-values in the array. */
Xtyp xTyp() const;
QModbusReply *setXTyp(Xtyp xTyp);
/* Scale factor for schedule range values. */
qint16 xSf() const;
QModbusReply *setXSf(qint16 xSf);
/* The meaning of the Y-values in the array. */
Ytyp yTyp() const;
QModbusReply *setYTyp(Ytyp yTyp);
/* Scale factor for schedule target values. */
qint16 ySf() const;
QModbusReply *setYSf(qint16 ySf);
/* Entry 1 range. */
float x1() const;
QModbusReply *setX1(float x1);
/* Entry 1 target. */
float y1() const;
QModbusReply *setY1(float y1);
/* Entry 2 range. */
float x2() const;
QModbusReply *setX2(float x2);
/* Entry 2 target. */
float y2() const;
QModbusReply *setY2(float y2);
/* Entry 3 range. */
float x3() const;
QModbusReply *setX3(float x3);
/* Entry 3 target. */
float y3() const;
QModbusReply *setY3(float y3);
/* Entry 4 range. */
float x4() const;
QModbusReply *setX4(float x4);
/* Entry 4 target. */
float y4() const;
QModbusReply *setY4(float y4);
/* Entry 15range. */
float x5() const;
QModbusReply *setX5(float x5);
/* Entry 5 target. */
float y5() const;
QModbusReply *setY5(float y5);
/* Entry 6 range. */
float x6() const;
QModbusReply *setX6(float x6);
/* Entry 6 target. */
float y6() const;
QModbusReply *setY6(float y6);
/* Entry 7 range. */
float x7() const;
QModbusReply *setX7(float x7);
/* Entry 7 target. */
float y7() const;
QModbusReply *setY7(float y7);
/* Entry 8 range. */
float x8() const;
QModbusReply *setX8(float x8);
/* Entry 8 target. */
float y8() const;
QModbusReply *setY8(float y8);
/* Entry 9 range. */
float x9() const;
QModbusReply *setX9(float x9);
/* Entry 9 target. */
float y9() const;
QModbusReply *setY9(float y9);
/* Entry 10 range. */
float x10() const;
QModbusReply *setX10(float x10);
/* Entry 10 target. */
float y10() const;
QModbusReply *setY10(float y10);
/* Optional description for schedule. */
QString nam() const;
QModbusReply *setNam(const QString &nam);
/* Time window for schedule entry change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Ramp time for moving from current target to new target. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Index of active entry in the active schedule. */
quint16 actIndx() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -285,14 +317,19 @@ public:
QString label() const override;
/* Bitfield of active schedules */
ActschdFlags actSchd() const;
QModbusReply *setActSchd(ActschdFlags actSchd);
/* Is basic scheduling active. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Number of schedules supported (recommend min. 4, max 32) */
quint16 nSchd() const;
/* Number of schedule entries supported (maximum of 10). */
quint16 nPts() const;
/* Pad register. */
quint16 pad() const;
protected:

View File

@ -111,37 +111,68 @@ public:
QString description() const override;
QString label() const override;
/* Total AC Current [A] */
float amps() const;
/* Current scale factor */
qint16 a_SF() const;
/* Average phase or line voltage [V] */
float voltage() const;
/* Voltage scale factor */
qint16 v_SF() const;
/* Frequency [Hz] */
float hz() const;
/* Frequency scale factor */
qint16 hz_SF() const;
/* Total Real Power [W] */
float watts() const;
/* Real Power scale factor */
qint16 w_SF() const;
/* AC Apparent Power [VA] */
float va() const;
/* Apparent Power scale factor */
qint16 vA_SF() const;
/* Reactive Power [var] */
float var() const;
/* Reactive Power scale factor */
qint16 vAR_SF() const;
/* Power Factor [Pct] */
float pf() const;
/* Power Factor scale factor */
qint16 pF_SF() const;
/* Total Real Energy Exported [Wh] */
quint32 totalWattHoursExported() const;
/* Total Real Energy Imported [Wh] */
quint32 totalWattHoursImported() const;
/* Real Energy scale factor */
qint16 totWh_SF() const;
/* Total Apparent Energy Exported [VAh] */
quint32 totalVaHoursExported() const;
/* Total Apparent Energy Imported [VAh] */
quint32 totalVaHoursImported() const;
/* Apparent Energy scale factor */
qint16 totVAh_SF() const;
/* Total Reactive Energy Imported Quadrant 1 [varh] */
quint32 totalVarHoursImportedQ1() const;
/* Total Reactive Power Imported Quadrant 2 [varh] */
quint32 totalVArHoursImportedQ2() const;
/* Total Reactive Power Exported Quadrant 3 [varh] */
quint32 totalVArHoursExportedQ3() const;
/* Total Reactive Power Exported Quadrant 4 [varh] */
quint32 totalVArHoursExportedQ4() const;
/* Reactive Energy scale factor */
qint16 totVArh_SF() const;
/* Meter Event Flags */
EvtFlags events() const;
quint16 rsrvd() const;
/* Timestamp value is the number of seconds since January 1, 2000 */
quint32 timestamp() const;
/* Millisecond counter 0-999 */
quint16 milliseconds() const;
/* Sequence number of request */
quint16 sequence() const;
/* Algorithm used to compute the digital signature */
Alg algorithm() const;
/* Number of registers comprising the digital signature. */
quint16 n() const;
protected:

View File

@ -69,75 +69,105 @@ public:
QString label() const override;
/* Setting for maximum power output. Default to WRtg. [W] */
float wMax() const;
QModbusReply *setWMax(float wMax);
/* Voltage at the PCC. [V] */
float vRef() const;
QModbusReply *setVRef(float vRef);
/* Offset from PCC to inverter. [V] */
float vRefOfs() const;
QModbusReply *setVRefOfs(float vRefOfs);
/* Setpoint for maximum voltage. [V] */
float vMax() const;
QModbusReply *setVMax(float vMax);
/* Setpoint for minimum voltage. [V] */
float vMin() const;
QModbusReply *setVMin(float vMin);
/* Setpoint for maximum apparent power. Default to VARtg. [VA] */
float vaMax() const;
QModbusReply *setVaMax(float vaMax);
/* Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1. [var] */
float vArMaxQ1() const;
QModbusReply *setVArMaxQ1(float vArMaxQ1);
/* Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2. [var] */
float vArMaxQ2() const;
QModbusReply *setVArMaxQ2(float vArMaxQ2);
/* Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3. [var] */
float vArMaxQ3() const;
QModbusReply *setVArMaxQ3(float vArMaxQ3);
/* Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4. [var] */
float vArMaxQ4() const;
QModbusReply *setVArMaxQ4(float vArMaxQ4);
/* Default ramp rate of change of active power due to command or internal action. [% WMax/sec] */
float wGra() const;
QModbusReply *setWGra(float wGra);
/* Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1. [cos()] */
float pfMinQ1() const;
QModbusReply *setPfMinQ1(float pfMinQ1);
/* Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2. [cos()] */
float pfMinQ2() const;
QModbusReply *setPfMinQ2(float pfMinQ2);
/* Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3. [cos()] */
float pfMinQ3() const;
QModbusReply *setPfMinQ3(float pfMinQ3);
/* Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4. [cos()] */
float pfMinQ4() const;
QModbusReply *setPfMinQ4(float pfMinQ4);
/* VAR action on change between charging and discharging: 1=switch 2=maintain VAR characterization. */
Varact vArAct() const;
QModbusReply *setVArAct(Varact vArAct);
/* Calculation method for total apparent power. 1=vector 2=arithmetic. */
Clctotva clcTotVa() const;
QModbusReply *setClcTotVa(Clctotva clcTotVa);
/* Setpoint for maximum ramp rate as percentage of nominal maximum ramp rate. This setting will limit the rate that watts delivery to the grid can increase or decrease in response to intermittent PV generation. [% WGra] */
float maxRmpRte() const;
QModbusReply *setMaxRmpRte(float maxRmpRte);
/* Setpoint for nominal frequency at the ECP. [Hz] */
float ecpNomHz() const;
QModbusReply *setEcpNomHz(float ecpNomHz);
/* Identity of connected phase for single phase inverters. A=1 B=2 C=3. */
Connph connPh() const;
QModbusReply *setConnPh(Connph connPh);
/* Scale factor for real power. */
qint16 wMaxSf() const;
/* Scale factor for voltage at the PCC. */
qint16 vRefSf() const;
/* Scale factor for offset voltage. */
qint16 vRefOfsSf() const;
/* Scale factor for min/max voltages. */
qint16 vMinMaxSf() const;
/* Scale factor for apparent power. */
qint16 vaMaxSf() const;
/* Scale factor for reactive power. */
qint16 vArMaxSf() const;
/* Scale factor for default ramp rate. */
qint16 wGraSf() const;
/* Scale factor for minimum power factor. */
qint16 pfMinSf() const;
/* Scale factor for maximum ramp percentage. */
qint16 maxRmpRteSf() const;
/* Scale factor for nominal frequency. */
qint16 ecpNomHzSf() const;
protected:

View File

@ -89,33 +89,54 @@ public:
QString description() const override;
QString label() const override;
/* Current scale factor */
qint16 a_SF() const;
/* Voltage scale factor */
qint16 v_SF() const;
/* Power scale factor */
qint16 w_SF() const;
/* Energy scale factor */
qint16 wh_SF() const;
/* Enumerated value. Module Status Code */
Stat status() const;
/* Module Vendor Status Code */
quint16 vendorStatus() const;
/* Bitmask value. Module Event Flags */
EvtFlags events() const;
/* Vendor specific flags */
quint32 vendorModuleEventFlags() const;
/* Module Control */
quint16 control() const;
QModbusReply *setControl(quint16 control);
/* Vendor Module Control */
quint32 vendorControl() const;
QModbusReply *setVendorControl(quint32 vendorControl);
/* Module Control Value */
qint32 controlValue() const;
QModbusReply *setControlValue(qint32 controlValue);
/* Time in seconds since 2000 epoch [Secs] */
quint32 timestamp() const;
/* Output Current [A] */
float outputCurrent() const;
/* Output Voltage [V] */
float outputVoltage() const;
/* Output Energy [Wh] */
quint32 outputEnergy() const;
/* Output Power [W] */
float outputPower() const;
/* Module Temperature [C] */
qint16 temp() const;
/* Input Current [A] */
float inputCurrent() const;
/* Input Voltage [V] */
float inputVoltage() const;
/* Input Energy [Wh] */
quint32 inputEnergy() const;
/* Input Power [W] */
float inputPower() const;
protected:

View File

@ -117,25 +117,45 @@ public:
QString description() const override;
QString label() const override;
/* PV inverter present/available status. Enumerated value. */
PvconnFlags pvConn() const;
/* Storage inverter present/available status. Enumerated value. */
StorconnFlags storConn() const;
/* ECP connection status: disconnected=0 connected=1. */
EcpconnFlags ecpConn() const;
/* AC lifetime active (real) energy output. [Wh] */
quint64 actWh() const;
/* AC lifetime apparent energy output. [VAh] */
quint64 actVAh() const;
/* AC lifetime reactive energy output in quadrant 1. [varh] */
quint64 actVArhQ1() const;
/* AC lifetime reactive energy output in quadrant 2. [varh] */
quint64 actVArhQ2() const;
/* AC lifetime negative energy output in quadrant 3. [varh] */
quint64 actVArhQ3() const;
/* AC lifetime reactive energy output in quadrant 4. [varh] */
quint64 actVArhQ4() const;
/* Amount of VARs available without impacting watts output. [var] */
float vArAval() const;
/* Scale factor for available VARs. */
qint16 vArAvalSf() const;
/* Amount of Watts available. [var] */
float wAval() const;
/* Scale factor for available Watts. */
qint16 wAvalSf() const;
/* Bit Mask indicating setpoint limit(s) reached. */
StsetlimmskFlags stSetLimMsk() const;
/* Bit Mask indicating which inverter controls are currently active. */
StactctlFlags stActCtl() const;
/* Source of time synchronization. */
QString tmSrc() const;
/* Seconds since 01-01-2000 00:00 UTC [Secs] */
quint32 tms() const;
/* Bit Mask indicating active ride-through status. */
RtstFlags rtSt() const;
/* Isolation resistance. [ohms] */
float ris() const;
/* Scale factor for isolation resistance. */
qint16 risSf() const;
protected:

View File

@ -74,53 +74,76 @@ public:
QString label() const override;
/* Setpoint for maximum charge. [W] */
float wChaMax() const;
QModbusReply *setWChaMax(float wChaMax);
/* Setpoint for maximum charging rate. Default is MaxChaRte. [% WChaMax/sec] */
float wChaGra() const;
QModbusReply *setWChaGra(float wChaGra);
/* Setpoint for maximum discharge rate. Default is MaxDisChaRte. [% WChaMax/sec] */
float wDisChaGra() const;
QModbusReply *setWDisChaGra(float wDisChaGra);
/* Activate hold/discharge/charge storage control mode. Bitfield value. */
Storctl_modFlags storCtlMod() const;
QModbusReply *setStorCtlMod(Storctl_modFlags storCtlMod);
/* Setpoint for maximum charging VA. [VA] */
float vaChaMax() const;
QModbusReply *setVaChaMax(float vaChaMax);
/* Setpoint for minimum reserve for storage as a percentage of the nominal maximum storage. [% WChaMax] */
float minRsvPct() const;
QModbusReply *setMinRsvPct(float minRsvPct);
/* Currently available energy as a percent of the capacity rating. [% AhrRtg] */
float chaState() const;
/* State of charge (ChaState) minus storage reserve (MinRsvPct) times capacity rating (AhrRtg). [AH] */
float storAval() const;
/* Internal battery voltage. [V] */
float inBatV() const;
/* Charge status of storage device. Enumerated value. */
Chast chaSt() const;
/* Percent of max discharge rate. [% WDisChaMax] */
float outWRte() const;
QModbusReply *setOutWRte(float outWRte);
/* Percent of max charging rate. [ % WChaMax] */
float inWRte() const;
QModbusReply *setInWRte(float inWRte);
/* Time window for charge/discharge rate change. [Secs] */
quint16 inOutWRteWinTms() const;
QModbusReply *setInOutWRteWinTms(quint16 inOutWRteWinTms);
/* Timeout period for charge/discharge rate. [Secs] */
quint16 inOutWRteRvrtTms() const;
QModbusReply *setInOutWRteRvrtTms(quint16 inOutWRteRvrtTms);
/* Ramp time for moving from current setpoint to new setpoint. [Secs] */
quint16 inOutWRteRmpTms() const;
QModbusReply *setInOutWRteRmpTms(quint16 inOutWRteRmpTms);
Chagriset chaGriSet() const;
QModbusReply *setChaGriSet(Chagriset chaGriSet);
/* Scale factor for maximum charge. */
qint16 wChaMaxSf() const;
/* Scale factor for maximum charge and discharge rate. */
qint16 wChaDisChaGraSf() const;
/* Scale factor for maximum charging VA. */
qint16 vaChaMaxSf() const;
/* Scale factor for minimum reserve percentage. */
qint16 minRsvPctSf() const;
/* Scale factor for available energy percent. */
qint16 chaStateSf() const;
/* Scale factor for state of charge. */
qint16 storAvalSf() const;
/* Scale factor for battery voltage. */
qint16 inBatVSf() const;
/* Scale factor for percent charge/discharge rate. */
qint16 inOutWRteSf() const;
protected:

View File

@ -74,15 +74,25 @@ public:
SunSpecStringCombinerAdvancedModel *parentModel() const;
QString name() const override;
/* Uniquely identifies this input set */
quint16 id() const;
/* String Input Event Flags */
InevtFlags inputEvent() const;
/* String Input Vendor Event Flags */
quint32 inputEventVendor() const;
/* String Input Current [A] */
float amps() const;
/* String Input Amp-Hours [Ah] */
quint32 ampHours() const;
/* String Input Voltage [V] */
float voltage() const;
/* String Input Power [W] */
float watts() const;
/* String Input Energy [Wh] */
quint32 wattHours() const;
/* String Performance Ratio [Pct] */
quint16 pr() const;
/* Number of modules in this input string */
quint16 n() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -144,26 +154,47 @@ public:
QString description() const override;
QString label() const override;
/* Current scale factor */
qint16 dCA_SF() const;
/* Amp-hour scale factor */
qint16 dCAhr_SF() const;
/* Voltage scale factor */
qint16 dCV_SF() const;
/* Power scale factor */
qint16 dCW_SF() const;
/* Energy scale factor */
qint16 dCWh_SF() const;
/* Maximum DC Current Rating [A] */
float rating() const;
/* Number of Inputs */
int n() const;
/* Bitmask value. Events */
EvtFlags eventFlags() const;
/* Bitmask value. Vendor defined events */
quint32 vendorEvent() const;
/* Total measured current [A] */
float amps() const;
/* Total metered Amp-hours [Ah] */
quint32 ampHours() const;
/* Output Voltage [V] */
float voltage() const;
/* Internal operating temperature [C] */
qint16 temp() const;
/* Output power [W] */
float watts() const;
/* DC Performance ratio value [Pct] */
qint16 pr() const;
/* Output energy [Wh] */
quint32 wattHours() const;
/* Current scale factor for inputs */
qint16 inDCA_SF() const;
/* Amp-hour scale factor for inputs */
qint16 inDCAhr_SF() const;
/* Voltage scale factor for inputs */
qint16 inDCV_SF() const;
/* Power scale factor for inputs */
qint16 inDCW_SF() const;
/* Energy scale factor for inputs */
qint16 inDCWh_SF() const;
protected:

View File

@ -74,10 +74,15 @@ public:
SunSpecStringCombinerCurrentModel *parentModel() const;
QString name() const override;
/* Uniquely identifies this input set */
quint16 id() const;
/* String Input Event Flags */
InevtFlags inputEvent() const;
/* String Input Vendor Event Flags */
quint32 inputEventVendor() const;
/* String Input Current [A] */
float amps() const;
/* String Input Amp-Hours [Ah] */
quint32 ampHours() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -134,18 +139,31 @@ public:
QString description() const override;
QString label() const override;
/* Current scale factor */
qint16 dCA_SF() const;
/* Amp-hour scale factor */
qint16 dCAhr_SF() const;
/* Voltage scale factor */
qint16 dCV_SF() const;
/* Maximum DC Current Rating [A] */
float rating() const;
/* Number of Inputs */
int n() const;
/* Bitmask value. Events */
EvtFlags eventFlags() const;
/* Bitmask value. Vendor defined events */
quint32 vendorEvent() const;
/* Total measured current [A] */
float amps() const;
/* Total metered Amp-hours [Ah] */
quint32 ampHours() const;
/* Output Voltage [V] */
float voltage() const;
/* Internal operating temperature [C] */
qint16 temp() const;
/* Current scale factor for inputs */
qint16 inDCA_SF() const;
/* Amp-hour scale factor for inputs */
qint16 inDCAhr_SF() const;
protected:

View File

@ -65,21 +65,30 @@ public:
SunSpecTrackerControllerModel *parentModel() const;
QString name() const override;
/* Descriptive name for this tracker unit */
QString tracker() const;
/* Auto target elevation in degrees from horizontal. Unimplemented for single axis azimuth tracker type [Degrees] */
float targetElevation() const;
/* Auto target azimuth in degrees from true north towards east. Unimplemented for single axis horizontal tracker type [Degrees] */
float targetAzimuth() const;
/* Actual elevation position in degrees from horizontal. Unimplemented for single axis azimuth tracker type [Degrees] */
float elevation() const;
/* Actual azimuth position in degrees from true north towards east. Unimplemented for single axis horizontal tracker type [Degrees] */
float azimuth() const;
/* Manual override target position of elevation in degrees from horizontal. Unimplemented for single axis azimuth tracker type [Degrees] */
float manualElevation() const;
QModbusReply *setManualElevation(float manualElevation);
/* Manual override target position of azimuth in degrees from true north towards east. Unimplemented for single axis azimuth tracker type [Degrees] */
float manualAzimuth() const;
QModbusReply *setManualAzimuth(float manualAzimuth);
/* Control register. Normal operation is automatic. Operator can override the position by setting the ElCtl, AzCtl and enabling Manual operation. Entering calibration mode will revert to automatic operation after calibration is complete. */
Ctl mode() const;
QModbusReply *setMode(Ctl mode);
/* Tracker alarm conditions */
AlmFlags alarm() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -142,23 +151,34 @@ public:
QString description() const override;
QString label() const override;
/* Descriptive name for this control unit */
QString controller() const;
/* Type of tracker */
Typ type() const;
/* Local date in YYYYMMDD format [YYYYMMDD] */
QString date() const;
/* 24 hour local time stamp to second [hhmmss] */
QString time() const;
/* Number of the day in the year (1-366) */
quint16 day() const;
/* Global manual override target position of elevation in degrees from horizontal. Unimplemented for single axis azimuth tracker type [Degrees] */
float manualElevation() const;
QModbusReply *setManualElevation(float manualElevation);
/* Global manual override target position of azimuth in degrees from true north towards east. Unimplemented for single axis azimuth tracker type [Degrees] */
float manualAzimuth() const;
QModbusReply *setManualAzimuth(float manualAzimuth);
/* Global Control register operates on all trackers. Normal operation is automatic. Operator can override the position by setting the ElCtl, AzCtl and enabling Manual operation. Entering calibration mode will revert to automatic operation after calibration is complete. */
Glblctl globalMode() const;
QModbusReply *setGlobalMode(Glblctl globalMode);
/* Global tracker alarm conditions */
GlblalmFlags globalAlarm() const;
/* Scale Factor for targets and position measurements in degrees */
qint16 sf() const;
/* Number of trackers being controlled. Size of repeating block. */
quint16 trackers() const;
protected:

View File

@ -64,144 +64,191 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Meaning of dependent variable: 1=%WMax 2=%VArMax 3=%VArAval. */
Deptref deptRef() const;
QModbusReply *setDeptRef(Deptref deptRef);
/* Point 1 Volts. [% VRef] */
float v1() const;
QModbusReply *setV1(float v1);
/* Point 1 VARs. */
float vAr1() const;
QModbusReply *setVAr1(float vAr1);
/* Point 2 Volts. [% VRef] */
float v2() const;
QModbusReply *setV2(float v2);
/* Point 2 VARs. */
float vAr2() const;
QModbusReply *setVAr2(float vAr2);
/* Point 2 Volts. [% VRef] */
float v3() const;
QModbusReply *setV3(float v3);
/* Point 3 VARs. */
float vAr3() const;
QModbusReply *setVAr3(float vAr3);
/* Point 4 Volts. [% VRef] */
float v4() const;
QModbusReply *setV4(float v4);
/* Point 4 VARs. */
float vAr4() const;
QModbusReply *setVAr4(float vAr4);
/* Point 5 Volts. [% VRef] */
float v5() const;
QModbusReply *setV5(float v5);
/* Point 5 VARs. */
float vAr5() const;
QModbusReply *setVAr5(float vAr5);
/* Point 6 Volts. [% VRef] */
float v6() const;
QModbusReply *setV6(float v6);
/* Point 6 VARs. */
float vAr6() const;
QModbusReply *setVAr6(float vAr6);
/* Point 7 Volts. [% VRef] */
float v7() const;
QModbusReply *setV7(float v7);
/* Point 7 VARs. */
float vAr7() const;
QModbusReply *setVAr7(float vAr7);
/* Point 8 Volts. [% VRef] */
float v8() const;
QModbusReply *setV8(float v8);
/* Point 8 VARs. */
float vAr8() const;
QModbusReply *setVAr8(float vAr8);
/* Point 9 Volts. [% VRef] */
float v9() const;
QModbusReply *setV9(float v9);
/* Point 9 VARs. */
float vAr9() const;
QModbusReply *setVAr9(float vAr9);
/* Point 10 Volts. [% VRef] */
float v10() const;
QModbusReply *setV10(float v10);
/* Point 10 VARs. */
float vAr10() const;
QModbusReply *setVAr10(float vAr10);
/* Point 11 Volts. [% VRef] */
float v11() const;
QModbusReply *setV11(float v11);
/* Point 11 VARs. */
float vAr11() const;
QModbusReply *setVAr11(float vAr11);
/* Point 12 Volts. [% VRef] */
float v12() const;
QModbusReply *setV12(float v12);
/* Point 12 VARs. */
float vAr12() const;
QModbusReply *setVAr12(float vAr12);
/* Point 13 Volts. [% VRef] */
float v13() const;
QModbusReply *setV13(float v13);
/* Point 13 VARs. */
float vAr13() const;
QModbusReply *setVAr13(float vAr13);
/* Point 14 Volts. [% VRef] */
float v14() const;
QModbusReply *setV14(float v14);
/* Point 14 VARs. */
float vAr14() const;
QModbusReply *setVAr14(float vAr14);
/* Point 15 Volts. [% VRef] */
float v15() const;
QModbusReply *setV15(float v15);
/* Point 15 VARs. */
float vAr15() const;
QModbusReply *setVAr15(float vAr15);
/* Point 16 Volts. [% VRef] */
float v16() const;
QModbusReply *setV16(float v16);
/* Point 16 VARs. */
float vAr16() const;
QModbusReply *setVAr16(float vAr16);
/* Point 17 Volts. [% VRef] */
float v17() const;
QModbusReply *setV17(float v17);
/* Point 17 VARs. */
float vAr17() const;
QModbusReply *setVAr17(float vAr17);
/* Point 18 Volts. [% VRef] */
float v18() const;
QModbusReply *setV18(float v18);
/* Point 18 VARs. */
float vAr18() const;
QModbusReply *setVAr18(float vAr18);
/* Point 19 Volts. [% VRef] */
float v19() const;
QModbusReply *setV19(float v19);
/* Point 19 VARs. */
float vAr19() const;
QModbusReply *setVAr19(float vAr19);
/* Point 20 Volts. [% VRef] */
float v20() const;
QModbusReply *setV20(float v20);
/* Point 20 VARs. */
float vAr20() const;
QModbusReply *setVAr20(float vAr20);
/* Optional description for curve. (Max 16 chars) */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* The time of the PT1 in seconds (time to accomplish a change of 95%). [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* The maximum rate at which the VAR value may be reduced in response to changes in the voltage value. %refVal is %WMax %VArMax or %VArAval depending on value of DeptRef. [% ref_value/min] */
float rmpDecTmm() const;
QModbusReply *setRmpDecTmm(float rmpDecTmm);
/* The maximum rate at which the VAR value may be increased in response to changes in the voltage value. %refVal is %WMax %VArMax or %VArAval depending on value of DeptRef. [% ref_value/min] */
float rmpIncTmm() const;
QModbusReply *setRmpIncTmm(float rmpIncTmm);
/* Boolean flag indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -283,24 +330,33 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* Is Volt-VAR control active. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for volt-VAR change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for volt-VAR curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* The time of the PT1 in seconds (time to accomplish a change of 95%). [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Number of curve points supported (maximum of 20). */
quint16 nPt() const;
/* Scale factor for percent VRef. */
qint16 vSf() const;
/* scale factor for dependent variable. */
qint16 deptRefSf() const;
qint16 rmpIncDec_SF() const;

View File

@ -63,144 +63,191 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Defines the meaning of the Watts DeptRef. 1=% WMax 2=% WAvail */
Deptref deptRef() const;
QModbusReply *setDeptRef(Deptref deptRef);
/* Point 1 Volts. [% VRef] */
float v1() const;
QModbusReply *setV1(float v1);
/* Point 1 Watts. [% VRef] */
float w1() const;
QModbusReply *setW1(float w1);
/* Point 2 Volts. [% VRef] */
float v2() const;
QModbusReply *setV2(float v2);
/* Point 2 Watts. [% VRef] */
float w2() const;
QModbusReply *setW2(float w2);
/* Point 3 Volts. [% VRef] */
float v3() const;
QModbusReply *setV3(float v3);
/* Point 3 Watts. [% VRef] */
float w3() const;
QModbusReply *setW3(float w3);
/* Point 4 Volts. [% VRef] */
float v4() const;
QModbusReply *setV4(float v4);
/* Point 4 Watts. [% VRef] */
float w4() const;
QModbusReply *setW4(float w4);
/* Point 5 Volts. [% VRef] */
float v5() const;
QModbusReply *setV5(float v5);
/* Point 5 Watts. [% VRef] */
float w5() const;
QModbusReply *setW5(float w5);
/* Point 6 Volts. [% VRef] */
float v6() const;
QModbusReply *setV6(float v6);
/* Point 6 Watts. [% VRef] */
float w6() const;
QModbusReply *setW6(float w6);
/* Point 7 Volts. [% VRef] */
float v7() const;
QModbusReply *setV7(float v7);
/* Point 7 Watts. [% VRef] */
float w7() const;
QModbusReply *setW7(float w7);
/* Point 8 Volts. [% VRef] */
float v8() const;
QModbusReply *setV8(float v8);
/* Point 8 Watts. [% VRef] */
float w8() const;
QModbusReply *setW8(float w8);
/* Point 9 Volts. [% VRef] */
float v9() const;
QModbusReply *setV9(float v9);
/* Point 9 Watts. [% VRef] */
float w9() const;
QModbusReply *setW9(float w9);
/* Point 10 Volts. [% VRef] */
float v10() const;
QModbusReply *setV10(float v10);
/* Point 10 Watts. [% VRef] */
float w10() const;
QModbusReply *setW10(float w10);
/* Point 11 Volts. [% VRef] */
float v11() const;
QModbusReply *setV11(float v11);
/* Point 11 Watts. [% VRef] */
float w11() const;
QModbusReply *setW11(float w11);
/* Point 12 Volts. [% VRef] */
float v12() const;
QModbusReply *setV12(float v12);
/* Point 12 Watts. [% VRef] */
float w12() const;
QModbusReply *setW12(float w12);
/* Point 13 Volts. [% VRef] */
float v13() const;
QModbusReply *setV13(float v13);
/* Point 13 Watts. [% VRef] */
float w13() const;
QModbusReply *setW13(float w13);
/* Point 14 Volts. [% VRef] */
float v14() const;
QModbusReply *setV14(float v14);
/* Point 14 Watts. [% VRef] */
float w14() const;
QModbusReply *setW14(float w14);
/* Point 15 Volts. [% VRef] */
float v15() const;
QModbusReply *setV15(float v15);
/* Point 15 Watts. [% VRef] */
float w15() const;
QModbusReply *setW15(float w15);
/* Point 16 Volts. [% VRef] */
float v16() const;
QModbusReply *setV16(float v16);
/* Point 16 Watts. [% VRef] */
float w16() const;
QModbusReply *setW16(float w16);
/* Point 17 Volts. [% VRef] */
float v17() const;
QModbusReply *setV17(float v17);
/* Point 17 Watts. [% VRef] */
float w17() const;
QModbusReply *setW17(float w17);
/* Point 18 Volts. [% VRef] */
float v18() const;
QModbusReply *setV18(float v18);
/* Point 18 Watts. [% VRef] */
float w18() const;
QModbusReply *setW18(float w18);
/* Point 19 Volts. [% VRef] */
float v19() const;
QModbusReply *setV19(float v19);
/* Point 19 Watts. [% VRef] */
float w19() const;
QModbusReply *setW19(float w19);
/* Point 20 Volts. [% VRef] */
float v20() const;
QModbusReply *setV20(float v20);
/* Point 20 Watts. [% VRef] */
float w20() const;
QModbusReply *setW20(float w20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* The time of the PT1 in seconds (time to accomplish a change of 95%). [Secs] */
quint16 rmpPt1Tms() const;
QModbusReply *setRmpPt1Tms(quint16 rmpPt1Tms);
/* The maximum rate at which the watt value may be reduced in response to changes in the voltage value. [% WMax/min] */
float rmpDecTmm() const;
QModbusReply *setRmpDecTmm(float rmpDecTmm);
/* The maximum rate at which the watt value may be increased in response to changes in the voltage value. [% WMax/min] */
float rmpIncTmm() const;
QModbusReply *setRmpIncTmm(float rmpIncTmm);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
void processBlockData(const QVector<quint16> blockData) override;
@ -282,25 +329,35 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* Is Volt-Watt control active. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for volt-watt change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for volt-watt curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend min. 4). */
quint16 nCrv() const;
/* Number of points in array (maximum 20). */
quint16 nPt() const;
/* Scale factor for percent VRef. */
qint16 vSf() const;
/* Scale Factor for % DeptRef */
qint16 deptRefSf() const;
/* Scale factor for increment and decrement ramps. */
qint16 rmpIncDecSf() const;
protected:

View File

@ -57,141 +57,187 @@ public:
QString name() const override;
/* Number of active points in array. */
quint16 actPt() const;
QModbusReply *setActPt(quint16 actPt);
/* Point 1 Watts. [% WMax] */
float w1() const;
QModbusReply *setW1(float w1);
/* Point 1 PF in EEI notation. [cos()] */
float pf1() const;
QModbusReply *setPf1(float pf1);
/* Point 2 Watts. [% WMax] */
float w2() const;
QModbusReply *setW2(float w2);
/* Point 2 PF in EEI notation. [cos()] */
float pf2() const;
QModbusReply *setPf2(float pf2);
/* Point 3 Watts. [% WMax] */
float w3() const;
QModbusReply *setW3(float w3);
/* Point 3 PF in EEI notation. [cos()] */
float pf3() const;
QModbusReply *setPf3(float pf3);
/* Point 4 Watts. [% WMax] */
float w4() const;
QModbusReply *setW4(float w4);
/* Point 4 PF in EEI notation. [cos()] */
float pf4() const;
QModbusReply *setPf4(float pf4);
/* Point 5 Watts. [% WMax] */
float w5() const;
QModbusReply *setW5(float w5);
/* Point 5 PF in EEI notation. [cos()] */
float pf5() const;
QModbusReply *setPf5(float pf5);
/* Point 6 Watts. [% WMax] */
float w6() const;
QModbusReply *setW6(float w6);
/* Point 6 PF in EEI notation. [cos()] */
float pf6() const;
QModbusReply *setPf6(float pf6);
/* Point 7 Watts. [% WMax] */
float w7() const;
QModbusReply *setW7(float w7);
/* Point 7 PF in EEI notation. [cos()] */
float pf7() const;
QModbusReply *setPf7(float pf7);
/* Point 8 Watts. [% WMax] */
float w8() const;
QModbusReply *setW8(float w8);
/* Point 8 PF in EEI notation. [cos()] */
float pf8() const;
QModbusReply *setPf8(float pf8);
/* Point 9 Watts. [% WMax] */
float w9() const;
QModbusReply *setW9(float w9);
/* Point 9 PF in EEI notation. [cos()] */
float pf9() const;
QModbusReply *setPf9(float pf9);
/* Point 10 Watts. [% WMax] */
float w10() const;
QModbusReply *setW10(float w10);
/* Point 10 PF in EEI notation. [cos()] */
float pf10() const;
QModbusReply *setPf10(float pf10);
/* Point 11 Watts. [% WMax] */
float w11() const;
QModbusReply *setW11(float w11);
/* Point 11 PF in EEI notation. [cos()] */
float pf11() const;
QModbusReply *setPf11(float pf11);
/* Point 12 Watts. [% WMax] */
float w12() const;
QModbusReply *setW12(float w12);
/* Point 12 PF in EEI notation. [cos()] */
float pf12() const;
QModbusReply *setPf12(float pf12);
/* Point 13 Watts. [% WMax] */
float w13() const;
QModbusReply *setW13(float w13);
/* Point 13 PF in EEI notation. [cos()] */
float pf13() const;
QModbusReply *setPf13(float pf13);
/* Point 14 Watts. [% WMax] */
float w14() const;
QModbusReply *setW14(float w14);
/* Point 14 PF in EEI notation. [cos()] */
float pf14() const;
QModbusReply *setPf14(float pf14);
/* Point 15 Watts. [% WMax] */
float w15() const;
QModbusReply *setW15(float w15);
/* Point 15 PF in EEI notation. [cos()] */
float pf15() const;
QModbusReply *setPf15(float pf15);
/* Point 16 Watts. [% WMax] */
float w16() const;
QModbusReply *setW16(float w16);
/* Point 16 PF in EEI notation. [cos()] */
float pf16() const;
QModbusReply *setPf16(float pf16);
/* Point 17 Watts. [% WMax] */
float w17() const;
QModbusReply *setW17(float w17);
/* Point 17 PF in EEI notation. [cos()] */
float pf17() const;
QModbusReply *setPf17(float pf17);
/* Point 18 Watts. [% WMax] */
float w18() const;
QModbusReply *setW18(float w18);
/* Point 18 PF in EEI notation. [cos()] */
float pf18() const;
QModbusReply *setPf18(float pf18);
/* Point 19 Watts. [% WMax] */
float w19() const;
QModbusReply *setW19(float w19);
/* Point 19 PF in EEI notation. [cos()] */
float pf19() const;
QModbusReply *setPf19(float pf19);
/* Point 20 Watts. [% WMax] */
float w20() const;
QModbusReply *setW20(float w20);
/* Point 20 PF in EEI notation. [cos()] */
float pf20() const;
QModbusReply *setPf20(float pf20);
/* Optional description for curve. */
QString crvNam() const;
QModbusReply *setCrvNam(const QString &crvNam);
/* The time of the PT1 in seconds (time to accomplish a change of 95%). [Secs] */
quint16 rmpPt1Tms() const;
QModbusReply *setRmpPt1Tms(quint16 rmpPt1Tms);
/* The maximum rate at which the power factor may be reduced in response to changes in the power value. [% PF/min] */
float rmpDecTmm() const;
QModbusReply *setRmpDecTmm(float rmpDecTmm);
/* The maximum rate at which the power factor may be increased in response to changes in the power value. [% PF/min] */
float rmpIncTmm() const;
QModbusReply *setRmpIncTmm(float rmpIncTmm);
/* Enumerated value indicates if curve is read-only or can be modified. */
Readonly readOnly() const;
quint16 pad() const;
@ -274,25 +320,35 @@ public:
QString label() const override;
/* Index of active curve. 0=no active curve. */
quint16 actCrv() const;
QModbusReply *setActCrv(quint16 actCrv);
/* Is watt-PF mode active. */
ModenaFlags modEna() const;
QModbusReply *setModEna(ModenaFlags modEna);
/* Time window for watt-PF change. [Secs] */
quint16 winTms() const;
QModbusReply *setWinTms(quint16 winTms);
/* Timeout period for watt-PF curve selection. [Secs] */
quint16 rvrtTms() const;
QModbusReply *setRvrtTms(quint16 rvrtTms);
/* Ramp time for moving from current mode to new mode. [Secs] */
quint16 rmpTms() const;
QModbusReply *setRmpTms(quint16 rmpTms);
/* Number of curves supported (recommend 4). */
quint16 nCrv() const;
/* Max number of points in array. */
quint16 nPt() const;
/* Scale factor for percent WMax. */
qint16 wSf() const;
/* Scale factor for PF. */
qint16 pfSf() const;
/* Scale factor for increment and decrement ramps. */
qint16 rmpIncDecSf() const;
protected:

View File

@ -594,6 +594,18 @@ def addPropertiesMethodDeclaration(fileDescriptor, dataPoints):
continue
typeName = dataPoint['type']
# Write comment for better understanding in the code
commentLine = ''
if 'desc' in dataPoint:
commentLine += dataPoint['desc']
elif 'label' in dataPoint:
commentLine += dataPoint['label']
if 'units' in dataPoint:
commentLine += ' [' + dataPoint['units'] + ']'
if commentLine != '':
writeLine(fileDescriptor, ' /* %s */' % commentLine)
writeLine(fileDescriptor, ' %s %s() const;' %(getCppType(dataPoint), propertyName))
if defineWriteMethod: