opcua.ua.uatypes.NodeId
类:class opcua.ua.uatypes.NodeId(identifier=None, namespaceidx=0, nodeidtype=None)
参数:
- identifier:可以为int,string,bytes,Guid 类型
- namespaceidx:地址空间的索引,int 类型
- nodeidtype(NodeIdType):
NodeIdType.Numeric
,NodeIdType.String
,NodeIdType.TwoByte
,NodeIdType.FourByte
,NodeIdType.Guid
,NodeIdType.ByteString
变量:
- Identifier (NodeId) –
- NamespaceIndex (Int) –
- NamespaceUri (String) –
- ServerIndex (Int) –
static 方法:
- from_string(string)
- has_null_identifier()
- is_null()
- to_binary()
- to_string()
import opcua
from opcua import uaurl = 'opc.tcp://192.168.1.39:4840'
client = opcua.Client(url)
client.connect()cip_ary_bool_node = client.get_node('ns=4;s=CIP数据BOOL')
cip_ary_bool_nodeid = cip_ary_bool_node.nodeid
print(1, cip_ary_bool_nodeid, type(cip_ary_bool_nodeid))print(2, cip_ary_bool_nodeid.is_null()) # 判断NodeId是否为空
print(3, cip_ary_bool_nodeid.has_null_identifier()) # 判断NodeId中的identifier是否为空
print(4, cip_ary_bool_nodeid.to_string()) # 返回NameSpaceIndex和Identifier组成的字符串
print(5, cip_ary_bool_nodeid.to_binary()) # 返回NameSpaceIndex和Identifier组成的字节流# 创建一个NodeId
defined_nodeid = ua.NodeId.from_string('ns=10;s=asd')
print(6, type(defined_nodeid))
输出:
1 StringNodeId(ns=4;s=CIP数据BOOL)
2 False
3 False
4 ns=4;s=CIP数据BOOL
5 b'\x03\x04\x00\r\x00\x00\x00CIP\xe6\x95\xb0\xe6\x8d\xaeBOOL'
6 StringNodeId(ns=10;s=asd)