From 78aee3cbb6a9c6d0d9625995def282cae7bdf50f Mon Sep 17 00:00:00 2001 From: Boernsman Date: Wed, 21 Apr 2021 22:03:49 +0200 Subject: [PATCH] fixed bug in update cycle process --- energymeters/inepromodbusregister.h | 14 +++++++------- energymeters/integrationpluginenergymeters.cpp | 8 +++++++- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/energymeters/inepromodbusregister.h b/energymeters/inepromodbusregister.h index b4e23eb..a1471b1 100644 --- a/energymeters/inepromodbusregister.h +++ b/energymeters/inepromodbusregister.h @@ -33,13 +33,13 @@ #include "registerdescriptor.h" static const QHash pro380RegisterMap { - {ModbusRegisterType::Voltage, ModbusRegisterDescriptor(20482, 3, 2, "V", "float")}, //L1 Voltage - {ModbusRegisterType::Current, ModbusRegisterDescriptor(20492, 3, 2, "A", "float")}, //L1 Current - {ModbusRegisterType::ActivePower, ModbusRegisterDescriptor(20498, 3, 2, "kW", "float")}, //Total active power - {ModbusRegisterType::Frequency, ModbusRegisterDescriptor(20488, 3, 2, "Hz", "float")}, - {ModbusRegisterType::PowerFactor, ModbusRegisterDescriptor(20522, 3, 2, "Degree", "float")}, - {ModbusRegisterType::EnergyConsumed, ModbusRegisterDescriptor(24588, 3, 2, "kWh", "float")}, //Forward active energy - {ModbusRegisterType::EnergyProduced, ModbusRegisterDescriptor(24600, 3, 2, "kWh", "float")} //Reverse active energy + {ModbusRegisterType::Voltage, ModbusRegisterDescriptor(0x5002, 3, 2, "V", "float")}, //L1 Voltage + {ModbusRegisterType::Current, ModbusRegisterDescriptor(0x500C, 3, 2, "A", "float")}, //L1 Current + {ModbusRegisterType::ActivePower, ModbusRegisterDescriptor(0x5012, 3, 2, "kW", "float")}, //Total active power + {ModbusRegisterType::Frequency, ModbusRegisterDescriptor(0x5008, 3, 2, "Hz", "float")}, + {ModbusRegisterType::PowerFactor, ModbusRegisterDescriptor(0x502A, 3, 2, "Degree", "float")}, + {ModbusRegisterType::EnergyConsumed, ModbusRegisterDescriptor(0x600C, 3, 2, "kWh", "float")}, //Forward active energy + {ModbusRegisterType::EnergyProduced, ModbusRegisterDescriptor(0x6018, 3, 2, "kWh", "float")} //Reverse active energy }; #endif //INEPROMODBUSREGISTER_H diff --git a/energymeters/integrationpluginenergymeters.cpp b/energymeters/integrationpluginenergymeters.cpp index ceb545c..88480a3 100644 --- a/energymeters/integrationpluginenergymeters.cpp +++ b/energymeters/integrationpluginenergymeters.cpp @@ -65,6 +65,12 @@ IntegrationPluginEnergyMeters::IntegrationPluginEnergyMeters() m_powerFactorStateTypeIds.insert(pro380ThingClassId, pro380PowerFactorStateTypeId); m_powerFactorStateTypeIds.insert(sdm630ThingClassId, sdm630PowerFactorStateTypeId); + m_totalEnergyConsumedStateTypeIds.insert(pro380ThingClassId, pro380TotalEnergyConsumedEventTypeId); + m_totalEnergyConsumedStateTypeIds.insert(sdm630ThingClassId, sdm630TotalEnergyConsumedEventTypeId); + + m_totalEnergyProducedStateTypeIds.insert(pro380ThingClassId, pro380TotalEnergyProducedStateTypeId); + m_totalEnergyProducedStateTypeIds.insert(sdm630ThingClassId, sdm630TotalEnergyProducedStateTypeId); + m_discoverySlaveAddressParamTypeIds.insert(pro380ThingClassId, pro380DiscoverySlaveAddressParamTypeId); m_discoverySlaveAddressParamTypeIds.insert(sdm630ThingClassId, sdm630DiscoverySlaveAddressParamTypeId); @@ -157,7 +163,7 @@ void IntegrationPluginEnergyMeters::setupThing(ThingSetupInfo *info) connect(meter, &EnergyMeter::currentReceived, this, &IntegrationPluginEnergyMeters::onCurrentReceived); connect(meter, &EnergyMeter::activePowerReceived, this, &IntegrationPluginEnergyMeters::onActivePowerReceived); connect(meter, &EnergyMeter::powerFactorReceived, this, &IntegrationPluginEnergyMeters::onPowerFactorReceived); - connect(meter, &EnergyMeter::frequencyReceived, this, &IntegrationPluginEnergyMeters::onActivePowerReceived); + connect(meter, &EnergyMeter::frequencyReceived, this, &IntegrationPluginEnergyMeters::onFrequencyReceived); connect(meter, &EnergyMeter::producedEnergyReceived, this, &IntegrationPluginEnergyMeters::onProducedEnergyReceived); connect(meter, &EnergyMeter::consumedEnergyReceived, this, &IntegrationPluginEnergyMeters::onConsumedEnergyReceived);