wait time prima della prima scrittura

This commit is contained in:
Marco Locatelli
2021-06-10 11:36:07 +02:00
parent 433b771aa8
commit 6486cc5d4e
4 changed files with 14 additions and 2 deletions
+9 -1
View File
@@ -27,6 +27,10 @@ def getRedisVal(redisKey):
#assegno directory per file di data output
DATA_path = "/home/pi/data/"
#assegno waiter prima di scrivere (2 secondi)
redSrv0.set('SETTINGS:LOG:WAITER',0)
timeBeforeWrite = 2
#intervallo in millisecondi fra una scrittura su file e la successiva
startingWriteFreq = 1000
redWriteFreq = 'SETTINGS:WRITE:FREQ'
@@ -88,6 +92,10 @@ while(1):
now = datetime.datetime.now()
# solo se su redis LOG è 1 eseguo il ciclo principale
if(getRedisVal('SETTINGS:LOG:STATUS') == "1"):
#attendo 2 secondi all'avvio della registrazione
if(getRedisVal('SETTINGS:LOG:WAITER') == "0"):
time.sleep(timeBeforeWrite)
redSrv0.set('SETTINGS:LOG:WAITER', 1)
fileSave()
# riporto ultima esecuzione ad adesso
endExec = datetime.datetime.now()
@@ -96,5 +104,5 @@ while(1):
waitTime = int(redSrv0.get(redWriteFreq)) / 1000 - delta.microseconds/1000000
if(waitTime < 0.1):
waitTime = 0.1
# attesa
# attesa fra una scrittura e successiva
time.sleep(waitTime)
+3
View File
@@ -71,6 +71,7 @@ while (1):
if stop.is_pressed:
#basically la stessa funzione stop_log contenuta in FTServer
redSrv0.set('SETTINGS:LOG:STATUS', 0)
redSrv0.set('SETTINGS:LOG:WAITER', 0)
redSrv0.set('RTDATA:SESSION:NAME', "")
if cancello.is_pressed:
@@ -81,6 +82,7 @@ while (1):
# CANCELLO APERTO
redSrv0.set('RTDATA:GATE_OPEN', 1)
redSrv0.set('SETTINGS:LOG:STATUS', 0)
redSrv0.set('SETTINGS:LOG:WAITER', 0)
redSrv0.set('RTDATA:SESSION:NAME', "")
if(getRedisVal('SETTINGS:LOG:STATUS') == "1"):
@@ -90,6 +92,7 @@ while (1):
if(getRedisVal('SETTINGS:POWER:OFF') == "1"):
redSrv0.set('SETTINGS:POWER:OFF',0)
redSrv0.set('SETTINGS:LOG:WAITER', 0)
FTL.FTLog.Write(" FTDInOut requested shutdown")
os.system("sudo shutdown -h now")
+1 -1
View File
@@ -263,5 +263,5 @@ except KeyboardInterrupt:
#eccezione da errore e chiusura
except Exception as errorMessage:
FTL.FTLog.Write(str(errorMessage))
FTL.FTLog.Write(str(" FTSampler stopped: " + errorMessage))
exit()
+1
View File
@@ -245,6 +245,7 @@ def start_log():
def stop_log():
#funzione stop_log: scrive su redis LOG:STATUS -> 0
redSrv0.set('SETTINGS:LOG:STATUS', 0)
redSrv0.set('SETTINGS:LOG:WAITER', 0)
redSrv0.set('RTDATA:SESSION:NAME', "")
led.off()
return "OK"