-
- -

Configuration Parameter Details

-

[MakeImage]

-
[MakeImage]
-LogImageLocation = /log/source
-WaitBeforeTakingPicture = 5
-LogfileRetentionInDays = 15
-Brightness = -2
-;Contrast = 0
-;Saturation = 0
-ImageQuality = 5
-ImageSize = VGA
-FixedExposure = true
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ParameterMeaningOptions/Examples
LogImageLocationlocation for storing a copy of the image
WaitBeforeTakingPicturewaiting time between switch on the flash-light and taking the image in seconds
LogfileRetentionInDaysNumber of days, for which the log files should be stored0 = keep forever
BrightnessAdjustment of the camera brightness (-2 ... 2)
ContrastNOT IMPLEMENTED
SaturationNOT IMPLEMENTED
ImageQualityInput image jpg-compression quality 0 (best) to 100 (lowest)5 = default
ImageSizeInput Image Size from Cameraonly VGA, QVGA
FixedExposureIf enabled, the exposure settings are fixed at the beginning and the waiting time after switching on the illumination will be skipped
-

[Alignment]

-
[Alignment]
-InitialRotate = 179
-InitialMirror = false
-SearchFieldX = 20
-SearchFieldY = 20
-AlignmentAlgo = Default
-FlipImageSize = false
-/config/ref0.jpg 104 271
-/config/ref1.jpg 442 142
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ParameterMeaningOptions/Examples
InitialMirrorOption for initially mirroring the image on the original x-axis
InitialRotateInitial rotation of image before alignment in degree (1...359)
FlipImageSizeChanges the aspect ratio after the image rotation to avoid cropping of the rotated imaged
/config/refx.jpg 98, 257Link to reference image and corresponding target coordinatesfile link is relative to SD card root
SearchFieldX/YSearch field size in X/Y for finding the reference images [pixel]
-

Here two reference images are needed. Therefore rotation and shifting can be compensated. As the alignment is one of the most computing time using part, the search field needs to be limited. The calculation time goes quadratic with the search field size.

-

[Digits]

-
[Digits]
-Model=/config/digits.tfl
-ModelInputSize 20, 32
-LogImageLocation = /log/digit
-LogfileRetentionInDays = 2
-number1.digit1 292 120 37 67
-number1.digit2 340 120 37 67
-number1.digit3 389 120 37 67
-number2.digit1 292 180 37 67
-number2.digit2 340 180 37 67
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ParameterMeaningOptions/Examples
ModelLink to the CNN-tflite file used for AI-image recognition
ModelInputSizeImage input size for the CNN-Network [pixel]needed to resize the ROI to the input size
LogImageLocationstorage location for the recognized images, including the CNN-results in the file name/location
numberX.digitYROI for the corresponding digit in the aligned image.
More than one number can be specified. Therefore the name consists of a naming of the number (numberX) and the region of interest (digitY) - separated by .
LogfileRetentionInDaysNumber of days, for which the log files should be stored0 = keep forever
LogImageLocationlocation for storing a copy of the image
-

[Analog]

-
[Analog]
-Model=/config/analog.tfl
-ModelInputSize 32, 32
-LogImageLocation = /log/analog
-LogfileRetentionInDays = 2
-number1.analog1, 433, 207, 99, 99
-number1.analog2, 378, 313, 99, 99
-number1.analog3, 280, 356, 99, 99
-number1.analog4, 149, 313, 99, 99
-number2.analog1, 280, 456, 99, 99
-number2.analog2, 149, 413, 99, 99
-
-

Same as for [digit], here only for the analog pointers

-

[PostProcessing]

-
[PostProcessing]
-number1.DecimalShift = 0
-number2.DecimalShift = -1
-PreValueUse = true
-PreValueAgeStartup = 720
-AllowNegativeRates = false
-number1.MaxRateValue = 0.1
-number2.MaxRateValue = 0.1
-ErrorMessage = true
-CheckDigitIncreaseConsistency = false
-
-

Here the post processing and consistency check for the readout can be adjusted

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ParameterMeaningOptions/Examples
PreValueUseUse the previous value for consistency check and substitution for NaN (True / False)
PreValueAgeStartupMax age of PreValue after a reboot (downtime)
AllowNegativeRatesAllow decrease of the readout value
numberX.MaxRateValueMaximum chance rate from one to the next readout.
This can be specified for each number individual.
ErrorMessageShow error messages
numberX.DecimalShiftShifting of the decimal separator from the default position between digital and analog.
This can be specified for each number individual.
DecimalShift = 2: 123.456 --> 12345.6
DecimalShift = -1: 123.456 --> 12.3456
CheckDigitIncreaseConsistencyThis parameter controls, if the digits are checked for a consistent change in comparison to the previous value. This only makes sense, if the last digit is changing very slowly and every single digit is visible (e.g. 4.7 --> 4.8 --> 4.9 --> 5.0 --> 5.1). If single digits are skipped, for example because the digits changes too quickly, this should be disabled (e.g. 4.7 --> 5.0 --> 5.1).
-

[MQTT]

-
[MQTT]
-Uri = mqtt://IP-ADRESS:1883
-MainTopic = wasserzaehler
-ClientID = wasser
-user = USERNAME
-password = PASSWORD
-
-

Here the post processing and consistency check for the readout can be adjusted

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ParameterMeaningOptions/Examples
UriURI to the MQTT broker including port e.g.: mqtt://IP-Address:Port
MainTopicMQTT main topic, under which the counters are published.
The single value will be published with the following key: MainTopic/number/PARAMETER where parameters are: value, rate, timestamp, error and json
The general connection status can be found in MainTopic/connection
ClientIDClientID to connect to the MQTT broker
useruser for MQTT authentication(optional)
passwordpassword for MQTT authentication(optional)
-

[AutoTimer]

-
[AutoTimer]
-AutoStart= true
-Intervall = 4.85
-
-

This paragraph is used to automatically trigger the periodic automated readout.

- - - - - - - - - - - - - - - - - - - - -
ParameterMeaningOptions/Examples
AutoStartAutomatically trigger the readout after startup
IntervallReadout interval in minutesValues smaller than 2 minutes do not make sense, as this is the time for one detection
-

[DataLogging]

-
[DataLogging]
-DataLogActive = true
-DataLogRetentionInDays = 3
-
-

This paragraph is used to control the logging of the result data to a specific folder of SD card -> \log\data\data_YYYY-MM-DD.csv

- - - - - - - - - - - - - - - - - - - - -
ParameterMeaningOptions/Examples
DataLogActiveActivate data logging to SD card
DataLogRetentionInDaysNumber of days, for which the log files should be stored0 = keep forever
-

[Debug]

-
[Debug]
-Logfile = true
-LogfileRetentionInDays = 2
-
-

This paragraph is used to switch on an extended logging. It is optional and by default only a minimum logging is enabled. -‼️ Attention: in case of extended logging the size of the log file (/log.txt, /alignment.txt) might increase rapidly, therefore manually deletion from time to time is recommended

- - - - - - - - - - - - - - - - - - - - -
ParameterMeaningOptions/Examples
LogfileTurn on (true) or off (false) the extended loggingparameter and section optional
LogfileRetentionInDaysNumber of days, for which the log files should be stored0 = keep forever
-

[System]

-
[System]
-TimeZone = CET-1CEST,M3.5.0,M10.5.0/3
-;TimeServer = TIMESERVER
-;Hostname = undefined
-SetupMode = false
-
-

This paragraph is used to switch on an extended logging. It is optional and by default only a minimum logging is enabled. -‼️ Attention: in case of extended logging the size of the log file (/log.txt, /alignment.txt) might increase rapidly, therefore manually deletion from time to time is recommended

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ParameterMeaningOptions/Examples
TimeZoneTimeZone of the system can be specifiedCentral european, with summertime adjustment: CET-1CEST,M3.5.0,M10.5.0/3
TimeServerAn dedicated time server can be specified.default = pool.ntp.org
HostnameAdditionally to the wlan.ini the hostname can be specified. It will be transferred to the wlan.ini and initiate a reboot
SetupModeIf enabled, the server starts in an initial setup mode. This is automatically disabled at the end of the setup
-

[Ende]

-

No function, just to mark, that the config is done!

- -
-