manda le cose su mqtt

This commit is contained in:
2021-02-19 17:26:04 +01:00
parent 0d4735d28d
commit c7b9dcadad
2 changed files with 26 additions and 16 deletions

View File

@@ -1,6 +1,6 @@
{
"version": "0.1c",
"logFile": "D:\\Test\\Nasoscope.log",
"version": "0.2",
"logFile": "./Nasoscope.log",
"logFormat": "%(asctime)s|%(levelname)-7s|%(funcName)-10s|%(lineno)-3d: %(message)-50s",
"logTimeFormat": "%m-%d %H:%M:%S",
"URL": "http://localhost:8081",
@@ -8,7 +8,7 @@
"loopPeriod": 0.5,
"recordTime": 3600,
"fileSaveTime": 360,
"fileSaveDir": "D:\\Test\\Traces3015\\{}_CL3015HSD.{fType}",
"fileSaveDir": "./{}_CL3015HSD.{fType}",
"fileType": "csv",
"variables": [ {"deviceID":1,
"name": "AsseX",
@@ -41,8 +41,10 @@
"descr": ["ActualFeed","FollowingError","MeasuredPosition","CalculatedAcceleration","Jerk","ServoPoint"]
}
],
"mqttHost": "192.168.10.81",
"mqttHost": "localhost",
"mqttPort": 1883,
"mqttSend": "nasoscope/cnc2recorder",
"mqttReceive": "nasoscope/recorder2cnc"
"mqttReceive": "nasoscope/recorder2cnc",
"sendMqtt": true,
"mqttSendSamples": "nasoscope/samples"
}

View File

@@ -197,6 +197,10 @@ def saveSamples(s, fileName = None):
dataOut.write(json.dumps(s))
pass
def sendSamples(s):
client.publish(settings['mqttSendSamples']json.dumps(s))
def onMessage(cli, userdata, msg):
global stat
msg=str(msg.payload)
@@ -326,18 +330,21 @@ if __name__ == '__main__':
for idx,rec in enumerate(tempSamples[ax][reg]):
tempSamples[ax][reg][idx]=((tempSamples[ax][reg][idx][templates.SAM_TS]-firstTS)/10**6,
tempSamples[ax][reg][idx][templates.SAM_VAL])
if tempSamples[ax][reg][idx][templates.SAM_TS] > settings["recordTime"]:
samples[ax][reg] = samples[ax][reg][-(len(samples)-len(tempSamples)):]
if bufferFull < 1:
bufferFull = 1
elif bufferFull == 1:
LOGGER.warning("Buffer Campioni Pieno, inizio roll")
bufferFull = 2
else:
if not settings["sendMqtt"]:
if tempSamples[ax][reg][idx][templates.SAM_TS] > settings["recordTime"]:
samples[ax][reg] = samples[ax][reg][-(len(samples)-len(tempSamples)):]
if bufferFull < 1:
bufferFull = 1
elif bufferFull == 1:
LOGGER.warning("Buffer Campioni Pieno, inizio roll")
bufferFull = 2
else:
pass
pass
pass
pass
samples[ax][reg]+=tempSamples[ax][reg]
samples[ax][reg]+=tempSamples[ax][reg]
else:
sendSamples(tempSamples)
pass
pass
pass
@@ -352,7 +359,8 @@ if __name__ == '__main__':
elif stat == "STOP":
stopSampling()
closeChannel()
saveSamples(samples)
if not settings['sendMqtt']:
saveSamples(samples)
LOGGER.warning("Chiudo il Canale")
stat = "IDLE"
firstLoop = True