mirror of
https://github.com/UtilitechAS/amsreader-firmware.git
synced 2026-03-03 10:23:23 +00:00
Restructuring to be able to include precompiled kmp lib
This commit is contained in:
21
lib/MeterCommunicators/src/ImpulseAmsData.cpp
Normal file
21
lib/MeterCommunicators/src/ImpulseAmsData.cpp
Normal file
@@ -0,0 +1,21 @@
|
||||
#include "ImpulseAmsData.h"
|
||||
#include "Uptime.h"
|
||||
|
||||
ImpulseAmsData::ImpulseAmsData(AmsData& state, uint16_t pulsePerKwh, uint8_t pulses) {
|
||||
listType = 1;
|
||||
if(pulses > 0) {
|
||||
lastUpdateMillis = millis64();
|
||||
uint64_t lastStateMillis = state.getLastUpdateMillis();
|
||||
if(lastStateMillis > 0) {
|
||||
uint64_t ms = (lastUpdateMillis - lastStateMillis) / pulses;
|
||||
activeImportPower = (1000.0 / pulsePerKwh) / (((float) ms) / 3600000.0);
|
||||
}
|
||||
} else {
|
||||
lastUpdateMillis = state.getLastUpdateMillis();
|
||||
}
|
||||
}
|
||||
|
||||
ImpulseAmsData::ImpulseAmsData(double activeImportCounter) {
|
||||
this->activeImportCounter = activeImportCounter;
|
||||
this->listType = 3;
|
||||
}
|
||||
Reference in New Issue
Block a user