Python访问OPCUA服务器,订阅一个变量标签

from opcua import Client
from opcua import ua
import time
#By Weloveut:Python访问OPCUA服务器,展示get变量的方法和注册逢变触发的回调函数
#自定义回调函数
class SubHandler(object):
	def data_change(self, handle, node, val, attr):
		print("Python: New data change event", handle, node, val, attr)
#创建UA的客户端,包含IP地址和端口号
client = Client("opc.tcp://172.32.1.82:4840/")
#建立到服务器连接
client.connect()
#获取object对象
objects = client.get_objects_node()
#获取根对象
root = client.get_root_node()
#依据变量地址创建变量对象
myvar = client.get_node('ns=3;s="clocl0.5hz"."tags"[0]')
#获取变量当前值
valuetmp=myvar.get_value()
print(valuetmp)
#注册到服务器的变量订阅,变量逢变触发
handler = SubHandler()
sub = client.create_subscription(500, handler)
sub.subscribe_data_change(myvar)
time.sleep(100000)
client.disconnect()

你可能感兴趣的:(Python访问OPCUA服务器,订阅一个变量标签)