From 3aebe5526041b418c4c418e764c92b605555ddd7 Mon Sep 17 00:00:00 2001 From: "marco.locatelli@steamware.net" Date: Wed, 22 Mar 2023 10:33:19 +0100 Subject: [PATCH] introduzione da k1 a k5 --- sampler/FTSampler.py | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/sampler/FTSampler.py b/sampler/FTSampler.py index 61b9aa8..e7975af 100644 --- a/sampler/FTSampler.py +++ b/sampler/FTSampler.py @@ -41,9 +41,15 @@ if redSrv0.get('SETTINGS:LOG:FREQ') is None: if redSrv0.get('SETTINGS:DECIMALS:COUNT') is None: redSrv0.set('SETTINGS:DECIMALS:COUNT',1) if redSrv0.get('RTDATA:VALUE:K1CONST') is None: - redSrv0.set('RTDATA:VALUE:K1CONST', 0) + redSrv0.set('RTDATA:VALUE:K1CONST', 1) if redSrv0.get('RTDATA:VALUE:K2CONST') is None: - redSrv0.set('RTDATA:VALUE:K2CONST', 1) + redSrv0.set('RTDATA:VALUE:K2CONST', 0) +if redSrv0.get('RTDATA:VALUE:K3CONST') is None: + redSrv0.set('RTDATA:VALUE:K3CONST', 0) +if redSrv0.get('RTDATA:VALUE:K4CONST') is None: + redSrv0.set('RTDATA:VALUE:K4CONST', 0) +if redSrv0.get('RTDATA:VALUE:K5CONST') is None: + redSrv0.set('RTDATA:VALUE:K5CONST', 0) if redSrv0.get('RTDATA:VALUE:OFFSET') is None: redSrv0.set('RTDATA:VALUE:OFFSET', 0) if redSrv0.get('SETTINGS:POWER:UPTIME') is None: @@ -182,6 +188,9 @@ def calculateValue(): v2 = getRedisVal('RTDATA:OUT:' + ch2) k1 = getRedisVal('RTDATA:VALUE:K1CONST') k2 = getRedisVal('RTDATA:VALUE:K2CONST') + k1 = getRedisVal('RTDATA:VALUE:K3CONST') + k2 = getRedisVal('RTDATA:VALUE:K4CONST') + k1 = getRedisVal('RTDATA:VALUE:K5CONST') offset = getRedisVal('RTDATA:VALUE:OFFSET') den = abs(float(v1)-float(v2)) if(den < 0.05): @@ -203,8 +212,9 @@ def calculateValue(): strValInRaw = (XVal/eFact) + (oldValRaw * (eFact-1) / eFact) redSrv0.set('RTDATA:VALUE:SMRAW',round(strValInRaw,decimalsCount)) - # applicazione correzioni (costanti k1*x^2, k2*x e offset) - newValue = (float(k1)*float(XVal)*float(XVal))+(float(k2)*float(XVal))+float(offset) + # applicazione correzioni (costanti k e offset) + #newValue = (float(k1)*float(XVal)*float(XVal))+(float(k2)*float(XVal))+float(offset) + newValue = (float(k5)*pow(float(XVal),5)) + (float(k4)*pow(float(XVal),4)) + (float(k3)*pow(float(XVal),3)) + (float(k2)*pow(float(XVal),2)) + (float(k1)*float(XVal)) + float(offset) redSrv0.set('RTDATA:VALUE:REAL',round(newValue,decimalsCount)) #if(newValue > 0): # redSrv0.set('RTDATA:VALUE:REAL',round(newValue,decimalsCount))