Skip to content
Snippets Groups Projects
Commit 3e1e0f0f authored by Susanna Weber's avatar Susanna Weber
Browse files

variables are not declared tweice for events anymore

parent 8dd8ed3a
Branches
No related tags found
No related merge requests found
...@@ -187,7 +187,7 @@ async def main(): ...@@ -187,7 +187,7 @@ async def main():
#batterylow warning event #batterylow warning event
batterywarning = await server.create_custom_event_type(idx, "BatteryLowWarning", ua.ObjectIds.SystemEventType) batterywarning = await server.create_custom_event_type(idx, "BatteryLowWarning", ua.ObjectIds.SystemEventType)
batterywarninggen = await server.get_event_generator(batterywarning, ) batterywarninggen = await server.get_event_generator(batterywarning, mobilerobot)
batterywarninggen.event.Severity = 800 batterywarninggen.event.Severity = 800
#batterylow error event #batterylow error event
......
import jsonparse import jsonparse
import os import os
import tomli import tomli
import json
def defFunction(functionname, file, indent, inargs): def defFunction(functionname, file, indent, inargs):
...@@ -228,31 +229,37 @@ def writendpt1(): ...@@ -228,31 +229,37 @@ def writendpt1():
def triggerevents(generatordict, eventslist, component, variablelist, jsonmeasurements, jsonparameters): def triggerevents(generatordict, eventslist, component, variablelist, jsonmeasurements, jsonparameters):
server = open("opcua-server.py", "a") server = open("opcua-server.py", "a")
indent = 3 indent = 3
print(variablelist) writeindent = ""
variablenamelist = {}
for event in eventslist: for event in eventslist:
eventsearchname = ""
for variable in variablelist:
if variable["name"] == event["element"]:
for measurement in jsonmeasurements:
if variable["value"] == measurement["uuid"]:
eventsearchname = measurement["name"]
for parameter in jsonparameters:
if variable["value"] == parameter["uuid"]:
eventsearchname = parameter["name"]
writeindent = "" writeindent = ""
for i in range(indent): for i in range(indent):
writeindent += " " writeindent += " "
valuename = event["element"] + component
eventsearchname = ""
if event["element"] in list(variablenamelist.keys()):
eventsearchname = variablenamelist[str(event["element"])]
else:
for variable in variablelist:
if variable["name"] == event["element"]:
for measurement in jsonmeasurements:
if variable["value"] == measurement["uuid"]:
eventsearchname = measurement["name"]
for parameter in jsonparameters:
if variable["value"] == parameter["uuid"]:
eventsearchname = parameter["name"]
variablenamelist[str(event["element"])] = eventsearchname
server.write(writeindent + valuename + "= await " + component + ".get_child([\"2:" + eventsearchname + "\"])\n")
dictname = (event["element"].lower()).replace(" ", "") + component + event["severity"] dictname = (event["element"].lower()).replace(" ", "") + component + event["severity"]
generatorname = generatordict[dictname] generatorname = generatordict[dictname]
valuename = event["element"] + component
trigger = str(event["target"]) trigger = str(event["target"])
if type(event["target"]) == str: if type(event["target"]) == str:
trigger = "\"" + str(event["target"] + "\"") trigger = "\"" + str(event["target"] + "\"")
server.write(writeindent + valuename + "= await " + component + ".get_child([\"2:" + eventsearchname + "\"])\n")
server.write(writeindent + "if (await " + valuename + ".get_value()) " + event["trigger"] + " " + trigger + ":\n") server.write(writeindent + "if (await " + valuename + ".get_value()) " + event["trigger"] + " " + trigger + ":\n")
writeindent += " " writeindent += " "
server.write(writeindent + "await " + generatorname+ ".trigger(message=\"" + event["message"] + "\")\n") server.write(writeindent + "await " + generatorname + ".trigger(message=\"" + event["message"] + "\")\n")
writeindent = "" writeindent = ""
for i in range(indent): for i in range(indent):
writeindent += " " writeindent += " "
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment