diff --git a/NasoScope/config.json b/NasoScope/config.json index 6a9ebb9..777c10d 100644 --- a/NasoScope/config.json +++ b/NasoScope/config.json @@ -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" } \ No newline at end of file diff --git a/NasoScope/nasomain.py b/NasoScope/nasomain.py index 6cc7590..a4473ab 100644 --- a/NasoScope/nasomain.py +++ b/NasoScope/nasomain.py @@ -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