media della risultante + fix refresh

This commit is contained in:
marco.locatelli@steamware.net
2021-06-07 16:02:19 +02:00
parent 63af70a9df
commit 44ec0cf299
+7 -3
View File
@@ -195,7 +195,6 @@ def checkPowerOff():
def calculateValue():
decimalsCount = int(getRedisVal('SETTINGS:DECIMALS:COUNT'))
smoothFact= int(getRedisVal('SETTINGS:SMOOTHING:FACTOR'))
ch1 = getRedisVal('SETTINGS:CHANNEL:A')
ch2 = getRedisVal('SETTINGS:CHANNEL:B')
v1 = getRedisVal('RTDATA:OUT:' + ch1)
@@ -208,8 +207,13 @@ def calculateValue():
strValIn = newValue
# EWMA: RILEGGO DA REDIS vecchio valore
oldVal = float(redSrv0.get('RTDATA:VALUE'))
# effettuo smoothing valore
strValIn = (newValue/smoothFact) + (oldVal * (smoothFact-1) / smoothFact)
if(oldVal == 0):
oldVal = 0.01
# se variazione < 50% smooth
if((abs(newValue - oldVal) / oldVal) < 0.5):
# effettuo smoothing valore
eFact = 4
strValIn = (newValue/eFact) + (oldVal * (eFact-1) / eFact)
redSrv0.set('RTDATA:VALUE',round(strValIn,decimalsCount))
# init oggetto lettura da