accept minor negative values if extendedResolution is enabled

This commit is contained in:
Frank Haverland
2022-10-15 15:23:20 +02:00
parent 8045e0bfaf
commit 2c481c0d15
2 changed files with 12 additions and 6 deletions

View File

@@ -739,12 +739,18 @@ bool ClassFlowPostProcessing::doFlow(string zwtime)
if (!NUMBERS[j]->AllowNegativeRates) if (!NUMBERS[j]->AllowNegativeRates)
{ {
if (NUMBERS[j]->Value < NUMBERS[j]->PreValue) if ((NUMBERS[j]->Value < NUMBERS[j]->PreValue))
{ {
NUMBERS[j]->ErrorMessageText = NUMBERS[j]->ErrorMessageText + "Neg. Rate - Read: " + zwvalue + " - Raw: " + NUMBERS[j]->ReturnRawValue + " - Pre: " + RundeOutput(NUMBERS[j]->PreValue, NUMBERS[j]->Nachkomma) + " "; // Bei isExtendedResolution Ungenauigkeit von 0.2 mit einrechnen.
NUMBERS[j]->Value = NUMBERS[j]->PreValue; if (NUMBERS[j]->Value < (NUMBERS[j]->PreValue-0.2) && NUMBERS[j]->isExtendedResolution) {
NUMBERS[j]->ReturnValue = ""; NUMBERS[j]->Value = NUMBERS[j]->PreValue;
continue; } 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 = "";
continue;
}
} }
} }
#ifdef SERIAL_DEBUG #ifdef SERIAL_DEBUG

View File

@@ -427,7 +427,7 @@ void test_doFlow() {
result = process_doFlow(analogs, digits, Digital100, false, true, 0); result = process_doFlow(analogs, digits, Digital100, false, true, 0);
TEST_ASSERT_EQUAL_STRING(expected_extended, result.c_str()); TEST_ASSERT_EQUAL_STRING(expected_extended, result.c_str());
// Fehler V12.0.1 // Fehler V11.3.0
// https://github.com/jomjol/AI-on-the-edge-device/issues/1143#issue-1400807695 // https://github.com/jomjol/AI-on-the-edge-device/issues/1143#issue-1400807695
digits = { 7.0, 4.0, 7.0, 2.0, 7.0, 5.4, 9.4}; // 7472.749 als falsches Ergebnis digits = { 7.0, 4.0, 7.0, 2.0, 7.0, 5.4, 9.4}; // 7472.749 als falsches Ergebnis
analogs = {}; analogs = {};