From d8e37dce483ada69cb25e0eac3dae0dc2ced951d Mon Sep 17 00:00:00 2001 From: michael Date: Fri, 30 Aug 2024 19:29:57 +0200 Subject: [PATCH] Add rate threshold parameter (#3195) * still needs to be tested https://github.com/jomjol/AI-on-the-edge-device/issues/3143 * Update ClassFlowPostProcessing.cpp code formatting * Update ClassFlowDefineTypes.h code formatting * Update ClassFlowPostProcessing.h code formatting * Update edit_config_template.html * fix * Update config.ini * Update edit_config_template.html * Updated param doc * Rename parameters * Update edit_config_template.html * Update NUMBER.ChangeRateThreshold.md * Update NUMBER.ChangeRateThreshold.md --------- Co-authored-by: CaCO3 --- .../ClassFlowDefineTypes.h | 1 + .../ClassFlowPostProcessing.cpp | 134 +++++++++++------- .../ClassFlowPostProcessing.h | 7 +- .../NUMBER.ChangeRateThreshold.md | 25 ++++ .../img/ChangeRateThreshold.png | Bin 0 -> 39338 bytes sd-card/config/config.ini | 1 + sd-card/html/edit_config_template.html | 15 ++ sd-card/html/img/ChangeRateThreshold.png | Bin 0 -> 39338 bytes sd-card/html/readconfigparam.js | 5 +- 9 files changed, 129 insertions(+), 59 deletions(-) create mode 100644 param-docs/parameter-pages/PostProcessing/NUMBER.ChangeRateThreshold.md create mode 100644 param-docs/parameter-pages/img/ChangeRateThreshold.png create mode 100644 sd-card/html/img/ChangeRateThreshold.png diff --git a/code/components/jomjol_flowcontroll/ClassFlowDefineTypes.h b/code/components/jomjol_flowcontroll/ClassFlowDefineTypes.h index 48c77d84..cb7f3e2f 100644 --- a/code/components/jomjol_flowcontroll/ClassFlowDefineTypes.h +++ b/code/components/jomjol_flowcontroll/ClassFlowDefineTypes.h @@ -42,6 +42,7 @@ struct NumberPost { bool useMaxRateValue; // consistencyChecksEnabled; enables consistency checks; uses maxRate and maxRateType t_RateType RateType; // maxRateType; affects how the value of maxRate is used for comparing the current and previous value bool ErrorMessage; // FIXME: not used; can be removed + int ChangeRateThreshold; // threshold parameter for negative rate detection bool PreValueOkay; // previousValueValid; indicates that the reading of the previous round has no errors bool AllowNegativeRates; // allowNegativeRate; defines if the consistency checks allow negative rates between consecutive meter readings. bool checkDigitIncreaseConsistency; // extendedConsistencyCheck; performs an additional consistency check to avoid wrong readings diff --git a/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.cpp b/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.cpp index 3a0b1f75..03ae787a 100644 --- a/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.cpp +++ b/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.cpp @@ -484,6 +484,32 @@ void ClassFlowPostProcessing::handleMaxRateValue(string _decsep, string _value) } } +void ClassFlowPostProcessing::handleChangeRateThreshold(string _decsep, string _value) { + string _digit, _decpos; + int _pospunkt = _decsep.find_first_of("."); + // ESP_LOGD(TAG, "Name: %s, Pospunkt: %d", _decsep.c_str(), _pospunkt); + + if (_pospunkt > -1) { + _digit = _decsep.substr(0, _pospunkt); + } + else { + _digit = "default"; + } + + for (int j = 0; j < NUMBERS.size(); ++j) { + int _zwdc = 2; + + if (isStringNumeric(_value)) { + _zwdc = std::stof(_value); + } + + // Set to default first (if nothing else is set) + if ((_digit == "default") || (NUMBERS[j]->name == _digit)) { + NUMBERS[j]->ChangeRateThreshold = _zwdc; + } + } +} + bool ClassFlowPostProcessing::ReadParameter(FILE* pfile, string& aktparamgraph) { std::vector splitted; int _n; @@ -530,6 +556,10 @@ bool ClassFlowPostProcessing::ReadParameter(FILE* pfile, string& aktparamgraph) if ((toUpper(_param) == "PREVALUEUSE") && (splitted.size() > 1)) { PreValueUse = alphanumericToBoolean(splitted[1]); } + + if ((toUpper(_param) == "CHANGERATETHRESHOLD") && (splitted.size() > 1)) { + handleChangeRateThreshold(splitted[0], splitted[1]); + } if ((toUpper(_param) == "CHECKDIGITINCREASECONSISTENCY") && (splitted.size() > 1)) { if (alphanumericToBoolean(splitted[1])) { @@ -627,6 +657,7 @@ void ClassFlowPostProcessing::InitNUMBERS() { _number->DecimalShiftInitial = 0; _number->isExtendedResolution = false; _number->AnalogDigitalTransitionStart=9.2; + _number->ChangeRateThreshold = 2; _number->FlowRateAct = 0; // m3 / min _number->PreValue = 0; // last value read out well @@ -833,25 +864,28 @@ bool ClassFlowPostProcessing::doFlow(string zwtime) { ESP_LOGD(TAG, "After checkDigitIncreaseConsistency: Value %f", NUMBERS[j]->Value); #endif - if (!NUMBERS[j]->AllowNegativeRates) { - LogFile.WriteToFile(ESP_LOG_DEBUG, TAG, "handleAllowNegativeRate for device: " + NUMBERS[j]->name); + if (PreValueUse && NUMBERS[j]->PreValueOkay) { + if (NUMBERS[j]->Nachkomma > 0) { + double _difference1 = (NUMBERS[j]->PreValue - (NUMBERS[j]->ChangeRateThreshold / pow(10, NUMBERS[j]->Nachkomma))); + double _difference2 = (NUMBERS[j]->PreValue + (NUMBERS[j]->ChangeRateThreshold / pow(10, NUMBERS[j]->Nachkomma))); + + if ((NUMBERS[j]->Value >= _difference1) && (NUMBERS[j]->Value <= _difference2)) { + NUMBERS[j]->Value = NUMBERS[j]->PreValue; + NUMBERS[j]->ReturnValue = std::to_string(NUMBERS[j]->PreValue); + } + } + + if ((!NUMBERS[j]->AllowNegativeRates) && (NUMBERS[j]->Value < NUMBERS[j]->PreValue)) { + LogFile.WriteToFile(ESP_LOG_DEBUG, TAG, "handleAllowNegativeRate for device: " + NUMBERS[j]->name); - if ((NUMBERS[j]->Value < NUMBERS[j]->PreValue)) { - // more debug if extended resolution is on, see #2447 - if (NUMBERS[j]->isExtendedResolution) { - LogFile.WriteToFile(ESP_LOG_DEBUG, TAG, "Neg: value=" + std::to_string(NUMBERS[j]->Value) + if ((NUMBERS[j]->Value < NUMBERS[j]->PreValue)) { + // more debug if extended resolution is on, see #2447 + if (NUMBERS[j]->isExtendedResolution) { + LogFile.WriteToFile(ESP_LOG_DEBUG, TAG, "Neg: value=" + std::to_string(NUMBERS[j]->Value) + ", preValue=" + std::to_string(NUMBERS[j]->PreValue) + ", preToll=" + std::to_string(NUMBERS[j]->PreValue-(2/pow(10, NUMBERS[j]->Nachkomma)))); - } + } - // Include inaccuracy of 0.2 for isExtendedResolution. - if ((NUMBERS[j]->Value >= (NUMBERS[j]->PreValue-(2/pow(10, NUMBERS[j]->Nachkomma))) && NUMBERS[j]->isExtendedResolution) - // not extended resolution allows -1 on the lowest digit - || (NUMBERS[j]->Value >= (NUMBERS[j]->PreValue-(1/pow(10, NUMBERS[j]->Nachkomma))) && !NUMBERS[j]->isExtendedResolution)) { - NUMBERS[j]->Value = NUMBERS[j]->PreValue; - NUMBERS[j]->ReturnValue = to_string(NUMBERS[j]->PreValue); - } - else { NUMBERS[j]->ErrorMessageText = NUMBERS[j]->ErrorMessageText + "Neg. Rate - Read: " + zwvalue + " - Raw: " + NUMBERS[j]->ReturnRawValue + " - Pre: " + RundeOutput(NUMBERS[j]->PreValue, NUMBERS[j]->Nachkomma) + " "; NUMBERS[j]->Value = NUMBERS[j]->PreValue; NUMBERS[j]->ReturnValue = ""; @@ -863,48 +897,48 @@ bool ClassFlowPostProcessing::doFlow(string zwtime) { continue; } } - } - #ifdef SERIAL_DEBUG - ESP_LOGD(TAG, "After AllowNegativeRates: Value %f", NUMBERS[j]->Value); - #endif + #ifdef SERIAL_DEBUG + ESP_LOGD(TAG, "After AllowNegativeRates: Value %f", NUMBERS[j]->Value); + #endif - // LastValueTimeDifference = LastValueTimeDifference / 60; // in minutes - LastPreValueTimeDifference = LastPreValueTimeDifference / 60; // in minutes - NUMBERS[j]->FlowRateAct = (NUMBERS[j]->Value - NUMBERS[j]->PreValue) / LastPreValueTimeDifference; - NUMBERS[j]->ReturnRateValue = to_string(NUMBERS[j]->FlowRateAct); + // LastValueTimeDifference = LastValueTimeDifference / 60; // in minutes + LastPreValueTimeDifference = LastPreValueTimeDifference / 60; // in minutes + NUMBERS[j]->FlowRateAct = (NUMBERS[j]->Value - NUMBERS[j]->PreValue) / LastPreValueTimeDifference; + NUMBERS[j]->ReturnRateValue = to_string(NUMBERS[j]->FlowRateAct); - if (NUMBERS[j]->useMaxRateValue && PreValueUse && NUMBERS[j]->PreValueOkay) { - double _ratedifference; + if ((NUMBERS[j]->useMaxRateValue) && (NUMBERS[j]->Value != NUMBERS[j]->PreValue)) { + double _ratedifference; - if (NUMBERS[j]->RateType == RateChange) { - _ratedifference = NUMBERS[j]->FlowRateAct; - } - else { - // TODO: - // Since I don't know if this is desired, I'll comment it out first. - // int roundDifference = (int)(round(LastPreValueTimeDifference / LastValueTimeDifference)); // calculate how many rounds have passed since NUMBERS[j]->timeLastPreValue was set - // _ratedifference = ((NUMBERS[j]->Value - NUMBERS[j]->PreValue) / ((int)(round(LastPreValueTimeDifference / LastValueTimeDifference)))); // Difference per round, as a safeguard in case a reading error(Neg. Rate - Read: or Rate too high - Read:) occurs in the meantime - _ratedifference = (NUMBERS[j]->Value - NUMBERS[j]->PreValue); - } + if (NUMBERS[j]->RateType == RateChange) { + _ratedifference = NUMBERS[j]->FlowRateAct; + } + else { + // TODO: + // Since I don't know if this is desired, I'll comment it out first. + // int roundDifference = (int)(round(LastPreValueTimeDifference / LastValueTimeDifference)); // calculate how many rounds have passed since NUMBERS[j]->timeLastPreValue was set + // _ratedifference = ((NUMBERS[j]->Value - NUMBERS[j]->PreValue) / ((int)(round(LastPreValueTimeDifference / LastValueTimeDifference)))); // Difference per round, as a safeguard in case a reading error(Neg. Rate - Read: or Rate too high - Read:) occurs in the meantime + _ratedifference = (NUMBERS[j]->Value - NUMBERS[j]->PreValue); + } - if (abs(_ratedifference) > abs(NUMBERS[j]->MaxRateValue)) { - NUMBERS[j]->ErrorMessageText = NUMBERS[j]->ErrorMessageText + "Rate too high - Read: " + RundeOutput(NUMBERS[j]->Value, NUMBERS[j]->Nachkomma) + " - Pre: " + RundeOutput(NUMBERS[j]->PreValue, NUMBERS[j]->Nachkomma) + " - Rate: " + RundeOutput(_ratedifference, NUMBERS[j]->Nachkomma); - NUMBERS[j]->Value = NUMBERS[j]->PreValue; - NUMBERS[j]->ReturnValue = ""; - NUMBERS[j]->ReturnRateValue = ""; - NUMBERS[j]->timeStampLastValue = imagetime; + if (abs(_ratedifference) > abs(NUMBERS[j]->MaxRateValue)) { + NUMBERS[j]->ErrorMessageText = NUMBERS[j]->ErrorMessageText + "Rate too high - Read: " + RundeOutput(NUMBERS[j]->Value, NUMBERS[j]->Nachkomma) + " - Pre: " + RundeOutput(NUMBERS[j]->PreValue, NUMBERS[j]->Nachkomma) + " - Rate: " + RundeOutput(_ratedifference, NUMBERS[j]->Nachkomma); + NUMBERS[j]->Value = NUMBERS[j]->PreValue; + NUMBERS[j]->ReturnValue = ""; + NUMBERS[j]->ReturnRateValue = ""; + NUMBERS[j]->timeStampLastValue = imagetime; - string _zw = NUMBERS[j]->name + ": Raw: " + NUMBERS[j]->ReturnRawValue + ", Value: " + NUMBERS[j]->ReturnValue + ", Status: " + NUMBERS[j]->ErrorMessageText; - LogFile.WriteToFile(ESP_LOG_ERROR, TAG, _zw); - WriteDataLog(j); - continue; + string _zw = NUMBERS[j]->name + ": Raw: " + NUMBERS[j]->ReturnRawValue + ", Value: " + NUMBERS[j]->ReturnValue + ", Status: " + NUMBERS[j]->ErrorMessageText; + LogFile.WriteToFile(ESP_LOG_ERROR, TAG, _zw); + WriteDataLog(j); + continue; + } } - } #ifdef SERIAL_DEBUG ESP_LOGD(TAG, "After MaxRateCheck: Value %f", NUMBERS[j]->Value); #endif + } NUMBERS[j]->ReturnChangeAbsolute = RundeOutput(NUMBERS[j]->Value - NUMBERS[j]->PreValue, NUMBERS[j]->Nachkomma); NUMBERS[j]->PreValue = NUMBERS[j]->Value; @@ -949,11 +983,9 @@ void ClassFlowPostProcessing::WriteDataLog(int _index) { digital = flowDigit->getReadoutRawString(_index); } - LogFile.WriteToData(timezw, NUMBERS[_index]->name, - NUMBERS[_index]->ReturnRawValue, NUMBERS[_index]->ReturnValue, NUMBERS[_index]->ReturnPreValue, - NUMBERS[_index]->ReturnRateValue, NUMBERS[_index]->ReturnChangeAbsolute, - NUMBERS[_index]->ErrorMessageText, - digital, analog); + LogFile.WriteToData(timezw, NUMBERS[_index]->name, NUMBERS[_index]->ReturnRawValue, NUMBERS[_index]->ReturnValue, NUMBERS[_index]->ReturnPreValue, + NUMBERS[_index]->ReturnRateValue, NUMBERS[_index]->ReturnChangeAbsolute, NUMBERS[_index]->ErrorMessageText, digital, analog); + ESP_LOGD(TAG, "WriteDataLog: %s, %s, %s, %s, %s", NUMBERS[_index]->ReturnRawValue.c_str(), NUMBERS[_index]->ReturnValue.c_str(), NUMBERS[_index]->ErrorMessageText.c_str(), digital.c_str(), analog.c_str()); } diff --git a/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.h b/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.h index aae28e6a..8782a317 100644 --- a/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.h +++ b/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.h @@ -21,11 +21,9 @@ protected: bool ErrorMessage; bool IgnoreLeadingNaN; // SPECIAL CASE for User Gustl ??? - ClassFlowCNNGeneral* flowAnalog; ClassFlowCNNGeneral* flowDigit; - string FilePreValue; ClassFlowTakeImage *flowTakeImage; @@ -43,19 +41,16 @@ protected: void handleMaxRateType(string _decsep, string _value); void handleAnalogDigitalTransitionStart(string _decsep, string _value); void handleAllowNegativeRate(string _decsep, string _value); + void handleChangeRateThreshold(string _decsep, string _value); std::string GetStringReadouts(general); void WriteDataLog(int _index); - - - public: bool PreValueUse; std::vector NUMBERS; - ClassFlowPostProcessing(std::vector* lfc, ClassFlowCNNGeneral *_analog, ClassFlowCNNGeneral *_digit); virtual ~ClassFlowPostProcessing(){}; bool ReadParameter(FILE* pfile, string& aktparamgraph); diff --git a/param-docs/parameter-pages/PostProcessing/NUMBER.ChangeRateThreshold.md b/param-docs/parameter-pages/PostProcessing/NUMBER.ChangeRateThreshold.md new file mode 100644 index 00000000..9a4d0e14 --- /dev/null +++ b/param-docs/parameter-pages/PostProcessing/NUMBER.ChangeRateThreshold.md @@ -0,0 +1,25 @@ +# Parameter `.ChangeRateThreshold` +Default Value: `2` + +Range: `1` .. `9`. + +Threshold parameter for change rate detection.
+This parameter is intended to compensate for small reading fluctuations that occur when the meter does not change its value for a long time (e.g. at night) or slightly turns backwards. This can eg. happen on watermeters. + +It is only applied to the last digit of the read value (See example below). +If the read value is within PreValue +/- Threshold, no further calculation is carried out and the Value/Prevalue remains at the old value. + +Example: + + Smallest ROI provides value for 0.000x + ChangeRateThreshold = 2 + + Extended Resolution disabled: + PreValue: 123.456'7 >>> Threshold = +/- 0.000'2 + Comparative value >>> max = 123.456'9 and min = 123.456'5 + + Extended Resolution enabled: + PreValue: 123.456'78 >>> Threshold = +/- 0.000'02 + Comparative value >>> max = 123.456'80 and min = 123.456'76 + +![](img/ChangeRateThreshold.png) diff --git a/param-docs/parameter-pages/img/ChangeRateThreshold.png b/param-docs/parameter-pages/img/ChangeRateThreshold.png new file mode 100644 index 0000000000000000000000000000000000000000..f05640e9a0199f7f2662bb70fbc2ca89e91ae8f7 GIT binary patch literal 39338 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

2eRE$2HG0wWZCBUwfes3l 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 QJVX8&+%~>drE3%NAC3(P8~^|S literal 0 HcmV?d00001 diff --git a/sd-card/config/config.ini b/sd-card/config/config.ini index 70e4e46d..eb8a3316 100644 --- a/sd-card/config/config.ini +++ b/sd-card/config/config.ini @@ -66,6 +66,7 @@ main.ana4 155 328 92 92 false [PostProcessing] main.DecimalShift = 0 main.AnalogDigitalTransitionStart = 9.2 +main.ChangeRateThreshold = 2 PreValueUse = true PreValueAgeStartup = 720 main.AllowNegativeRates = false diff --git a/sd-card/html/edit_config_template.html b/sd-card/html/edit_config_template.html index 1b3c1770..70f2f29e 100644 --- a/sd-card/html/edit_config_template.html +++ b/sd-card/html/edit_config_template.html @@ -969,6 +969,19 @@ $TOOLTIP_PostProcessing_NUMBER.MaxRateType + + + + + + + + + $TOOLTIP_PostProcessing_NUMBER.ChangeRateThreshold + + @@ -2163,6 +2176,7 @@ function UpdateInputIndividual(sel) { // ReadParameter(param, "PostProcessing", "PreValueUse", false, NUNBERSAkt); ReadParameter(param, "PostProcessing", "DecimalShift", true, NUNBERSAkt); ReadParameter(param, "PostProcessing", "AnalogDigitalTransitionStart", true, NUNBERSAkt); + ReadParameter(param, "PostProcessing", "ChangeRateThreshold", true, NUNBERSAkt); ReadParameter(param, "PostProcessing", "MaxRateValue", true, NUNBERSAkt); ReadParameter(param, "PostProcessing", "MaxRateType", true, NUNBERSAkt); ReadParameter(param, "PostProcessing", "ExtendedResolution", false, NUNBERSAkt); @@ -2180,6 +2194,7 @@ function UpdateInputIndividual(sel) { // WriteParameter(param, category, "PostProcessing", "PreValueUse", false, NUNBERSAkt); WriteParameter(param, category, "PostProcessing", "DecimalShift", true, NUNBERSAkt); WriteParameter(param, category, "PostProcessing", "AnalogDigitalTransitionStart", true, NUNBERSAkt); + WriteParameter(param, category, "PostProcessing", "ChangeRateThreshold", true, NUNBERSAkt); WriteParameter(param, category, "PostProcessing", "MaxRateValue", true, NUNBERSAkt); WriteParameter(param, category, "PostProcessing", "MaxRateType", true, NUNBERSAkt); WriteParameter(param, category, "PostProcessing", "ExtendedResolution", false, NUNBERSAkt); diff --git a/sd-card/html/img/ChangeRateThreshold.png b/sd-card/html/img/ChangeRateThreshold.png new file mode 100644 index 0000000000000000000000000000000000000000..f05640e9a0199f7f2662bb70fbc2ca89e91ae8f7 GIT binary patch literal 39338 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

2eRE$2HG0wWZCBUwfes3l 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 QJVX8&+%~>drE3%NAC3(P8~^|S literal 0 HcmV?d00001 diff --git a/sd-card/html/readconfigparam.js b/sd-card/html/readconfigparam.js index 0a49399c..9fe6126c 100644 --- a/sd-card/html/readconfigparam.js +++ b/sd-card/html/readconfigparam.js @@ -173,12 +173,13 @@ function ParseConfig() { category[catname]["found"] = false; param[catname] = new Object(); ParamAddValue(param, catname, "DecimalShift", 1, true); - ParamAddValue(param, catname, "AnalogDigitalTransitionStart", 1, true); + ParamAddValue(param, catname, "AnalogDigitalTransitionStart", 1, true, "9.2"); + ParamAddValue(param, catname, "ChangeRateThreshold", 1, true, "2"); // ParamAddValue(param, catname, "PreValueUse", 1, true, "true"); ParamAddValue(param, catname, "PreValueUse"); ParamAddValue(param, catname, "PreValueAgeStartup"); ParamAddValue(param, catname, "AllowNegativeRates", 1, true, "false"); - ParamAddValue(param, catname, "MaxRateValue", 1, true); + ParamAddValue(param, catname, "MaxRateValue", 1, true, "0.05"); ParamAddValue(param, catname, "MaxRateType", 1, true); ParamAddValue(param, catname, "ExtendedResolution", 1, true, "false"); ParamAddValue(param, catname, "IgnoreLeadingNaN", 1, true, "false");