diff --git a/robot.py b/robot.py index eb6bf8d0ed5283f8d119ece2cb940643ce036f9d..dbdec7adb1c5f99f9abe53b6e9188f9d6d76039b 100644 --- a/robot.py +++ b/robot.py @@ -140,6 +140,12 @@ async def main(): #getting node ids of battery and position robotposname = "2:" + positionobject.name positionrobot = await mobilerobot.get_child([robotposname]) + positionrobot.set_writable(True) + + @uamethod + def goTo(parent, position): + positionrobot.set_value(position) + return position batteryvarname = "2:" + batteryobject.name batterymeas = await mobilerobot.get_child([batteryvarname]) @@ -148,7 +154,7 @@ async def main(): tcpvarmeas = await mobilerobot.get_child([tcpvarname]) #adding function goTo to robot - goTofunc = await mobilerobot.add_method(idx, "goToset", goTo, [vartype, positionrobot]) + goTofunc = await mobilerobot.add_method(idx, "goToset", goTo, [ua.VariantType.Float], [ua.VariantType.Float]) #batterylow warning event batterywarning = await server.create_custom_event_type(idx, "BatteryLowWarning", ua.ObjectIds.SystemEventType) @@ -168,6 +174,10 @@ async def main(): tcpstreamgenmobrob = await server.get_event_generator(tcpstream, mobilerobot) tcpstreamgenmobrob.tcpstream = await tcpvarmeas.get_value() + #tryout für zugriff + # tryoutpara = await robot.add_variable(idx, "Try out", , ua.VariantType.StatusCode) + # tryoutpara.set_writable(True) + async with server: print("Server läuft!") time = 0 @@ -178,7 +188,7 @@ async def main(): await tcpstreamgenrob.trigger(message = "Robot updatet value [" + str(tcppos[0]) + "," + str(tcppos[1]) + "," + str(tcppos[2]) + "]") await tcpstreamgenmobrob.trigger( message="MobileRobot updatet value [" + str(tcppos[0]) + "," + str(tcppos[1]) + "," + str(tcppos[2]) + "]") - + # await positionrobot.set_value([1.0, 0.0, 0.0]) batteryload = await batterymeas.get_value() #await batterymeas.set_value(19) if 20 > batteryload >= 10: