Move Configuration details to Correction Algorithm.md

This commit is contained in:
Frank Haverland
2023-03-12 19:23:29 +01:00
parent 15e831fa2a
commit ba6de7c048
2 changed files with 29 additions and 25 deletions

View File

@@ -14,10 +14,7 @@ There are several reasons, that a check might be necessary:
##### PreValue
The last correct read value. Either from a previous correctly identified value or manual setting by the user.
This is used to replace "N"s and make a check for the absolute change.
The last correct read value. PreValue is here a bit missleading, because normally it is the same as the last value. In the next round of reading it will be used to check nagtive rates, high rates (MaxRateValue / MaxRateType) and CCheckDigitIncreaseConsistency (dig-class11 only). Either from a previous correctly identified value or manual setting by the user.
##### Digits
@@ -40,11 +37,25 @@ As you can see, the 17.9 is a false reading as the 7 is assumed to be already re
A detailed description of the algorithm can be found below (not yet ready!)
##### Negative Rate allowed
##### ``AllowNegativeRates``
Most of the meters only have increasing numbers and do not count backwards. Therefore a negative rate (= negative change compared to the PreValue) is surely a false value. This can be checked an flagged as false reading
##### MaxRateValue / MaxRateType
The ``AllowNegativeRates`` property ensures that the result does not become negative in the event of incorrect readings. This can happen, for example, if the alignment of the image did not work properly. But also the neural networks sometimes flip between two states for similar images.
If ``AllowNegativeRates = true``, the result is discarded if it is smaller than the pre-value of the last readout and the output shows an error "Negative rate.."
If the ``ExtendedResolution`` setting is true, there is an exception where the value does not become smaller, but no error is output. This only applies if the value +/- 0.2 of the last digit is inaccurate.
###### ``DecimalShift``
The ``DecimalShift`` setting puts the decimal point in the right place. It acts like a shift. Negative values shift the decimal point to the left. Positive values move the decimal point to the right, filling with zero.
###### ``AnalogDigitalTransitionStart``
For detailed description see [Analog-digital-transition](Watermeter-specific-analog---digital-transition.md).
###### ``MaxRateValue`` and ``MaxRateType``
Here the maximum change from one to the next reading can be limited. If a false reading of the neural network results in a change larger than this, the reading is flagged as false. There a two types of comparisons possible
@@ -53,6 +64,17 @@ Here the maximum change from one to the next reading can be limited. If a false
Example: relative rate of 0.05 m³/minute --> after 20 minutes a maximum change of 20 minutes * 0.05 m³/minute = 1 m³ is possible. That means that a false reading of 1 m³ cannot be detected false after about 20 minutes in this case
Assume, that there might me no change in the meter for hours (e.g. during the night) a much bigger change could also be accepted.
###### ``ExtendedResolution``
Newer models such as dig-cont and dig-class100 have a high resolution of the values and can thus represent another digit by using the value of the last digit or pointer (ex. 7.8 in the last digit).
If the value is set to true, the result of the last digit is used completely.
When using dig-class11 models, the setting is ignored.
###### ``IgnoreLeadingNaN``
#### Flow Chart