You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OPCUA Python中get_values()方法的nodes参数格式及使用方法

OPC UA Python中client.get_values()的nodes参数格式及转换方法

nodes参数的数据结构

调用client.get_values()时,传入的nodes参数需要是OPC UA Node对象的列表,不能直接传入字符串格式的节点ID。

转换方法

遍历现有的node_ids字符串列表,用client.get_node()方法把每个字符串ID转换成对应的Node对象,再将这些对象存入列表即可作为nodes参数。

完整代码示例

from opcua import Client

client = Client("Server Address")
client.session_timeout = 3000

client.connect()

node_ids = ["ns=2;s=/Plc/DB190.DBD24:REAL",  "ns=2;s=/Plc/DB190.DBD28:REAL",
           "ns=2;s=/Plc/DB190.DBD32:REAL",]

# 将字符串节点ID转换为Node对象列表
nodes = [client.get_node(node_id) for node_id in node_ids]

# 一次性获取所有节点的值
values = client.get_values(nodes)
print(values)  # 输出结果列表,顺序与node_ids完全对应

client.disconnect()  # 操作完成后断开连接

补充说明

  • client.get_node()可以直接解析西门子Sinumerik格式的节点ID字符串,无需额外格式转换
  • get_values()返回的结果列表顺序和传入的nodes列表顺序严格一致

内容的提问来源于stack exchange,提问作者sb72

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 06:04:51