问题标签 [opc-ua]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
opc-ua - milo 中的 requestedPublishingInterval 是什么意思?
在我基于 milo 的 OPC-UA 客户端实现中,我需要大量订阅。因此,我使用了以下示例:
但是 1000.0 的 requestedPublishingInterval 是什么
UaSubscription subscription = client.getSubscriptionManager().createSubscription(1000.0).get();
意思?
此外,参数_samplingInterval
在哪里MonitoringParameters
代表?
谢谢!
c# - OPC UA .NET 客户端 - 使用浏览路径获取 OPCUA 节点 ID
我正在使用OPC Foundation 的 .NET Standard 堆栈,需要使用其浏览路径获取节点 ID。使用我一直在使用的 Python FreeOPCUA 实现,很容易做到这一点:
obj = root.get_child(["0:Objects", "2:MyObject"])
我只是在寻找类似的东西,但到目前为止还没有找到一组有用的文档。我可以使用示例应用程序之一中的代码浏览整个根节点。我想避免这种开销,因为我知道我要查找的节点的确切位置并且只需要它的 ID。
opc-ua - 如何在 milo OPCUA 中创建用于过滤的 ExtensionObject?
我正在尝试为订阅定义过滤器,但我不知道如何创建ExtensionObject
所需的过滤器。它要么是我想念ByteString
的,要么是XmlElement
我想念的,但我不知道如何或从哪里得到任何一个。如果我使用ByteString
that is null
,它将无法连接到服务器。
我要为“???”插入什么?在我的代码中?
谢谢!
java - opc UA服务器重新启动时未创建eclipse milo会话
我在我们的应用程序中使用 eclipse milo java OPCUA 客户端 SDK 来实现 OPC。我能够创建会话、订阅和监控。它工作正常,但是当 opc 服务器重新启动并且我尝试删除以前的会话并创建一个具有相同参数的新会话时,我得到以下异常:
UaException: status=Bad_Timeout, message=timed out waiting for acknowledge
引发错误的行是:
EndpointDescription[] 端点 = UaTcpStackClient.getEndpoints(endpointurl).get();
在服务器端,我收到错误:
OPCUAServerEndPoint#_on_client_connection 已达到最大连接数 - 连接被拒绝
但是,当我尝试使用相同的参数再次创建会话时,它确实被创建了
plc - 如何从 OPC UA 开始——从 PLC 设备采样和收集数据?
我希望设计用于从 PLC 设备收集/处理样本的解决方案,并使用设备的一些控制标签。请提出方法。对不起,很长的问题。在了解了更小更合理的主题/问题后,我会将其拆分为更多问题。
该公司的解决方案几乎是从零开始构建的。有一些 PLC 设备,还有一个 KEPServerEx(没有IoT 网关)。PLC 设备已通过第三方专有软件使用。但未来没有“更大的框架”。从这个角度来看,我可以介绍一个现代设计,但预算有限。
从我目前所了解的情况来看,KEPServerEx 似乎是访问 PLC 设备的一个不错的选择,但我没有实际使用它的经验。在我看来,OPC UA 应该是旧 OPC (DA) 的选择。我也知道使用 PLC 的梯形图方式。
根据我对 KEPServerEx 的“物联网网关”(不会使用)的了解,KepServer 可以在 PLC 标签级别设置采样频率。并且传输数据的频率也可以由物联网网关设置。然后物联网网关使用内部(内存)缓冲区来存储采样值,并且可以读取元组(tagID、值、质量、时间戳)并将其传递给第三方。
我不清楚的是,如何在没有物联网网关的情况下做到这一点。我认为它必须是一个基本操作。(tagID、值、质量、时间戳)是否适用于通过任何 OPC 服务器与 PLC 一起工作?还是只对 KEPServerEx 通用,还是物联网网关(可选)插件专用?
我了解到 OPC 基金会最近在 OPC UA 中添加了 Publih/Subscribe 机制。它是否还需要更新版本的 KEPServerEx?或者它可以与任何早期的 OPC 服务器一起使用吗?
我在编程和数据库方面经验丰富。我在工业传感器、执行器等方面也有一些技术背景……但是,我从未在工业领域从事过数字自动化方面的工作。
感谢,并有一个愉快的一天。
opc - OPC UA 唯一节点 ID
我有一个关于 OPC 基金会统一架构的问题。对于 ObjectType NodeClass、Object NodeClass、VariableType NodeClass、Variable NodeClass 和 DataType NodeClass,它们每个至少有 1 个属性。每个属性都由一个变量节点表示。
假设我从它的 NodeClass 实例化一个变量节点,然后是它的 NodeVersion 属性,该属性由变量节点表示并通过 HasProperty 引用与变量节点相关。NodeVersion 属性的节点 ID 在服务器上下文中是唯一的还是数字标识符是 3068 的常量值(取自https://opcfoundation.org/UA/schemas/1.02/NodeIds.csv)?
opc-ua - Eclipse Milo,OPC-UA:从哪里开始?
我对 OPC-UA 世界完全陌生。
我需要建立一个关于如何让我们的 ERP 与 PLC 通信的概念证明。我正在评估充当 OPC-UA 服务器的软件(它正在工作)。我找到了有关 Milo 的信息,并让代码在 Eclipse 中工作。查看示例,我得到了一个连接到 OPC-UA 服务器的玩具程序,并且正在做……一些事情。
基本的管道工作,但我不知道从哪里开始 OPC-UA 和 Milo。我一直无法找到介绍性材料来帮助我理解这一切。
是否有关于 OPC-UA 架构以及 Milo 如何实现它的文档?有没有比看例子来弄清楚事情应该如何做更好的方法呢?
client-server - OPC-UA 服务器重启和订阅
一般来说,会发生什么情况:如果客户端在 OPC-UA 节点上进行了订阅,并且该节点运行了一段时间。OPC-UA 服务器以标准行为向客户端发布数据。然后,OPC-UA服务器因任何原因重启,OPC-UA是否存储其订阅者并在启动后恢复连接并继续发布数据?或者客户端是否需要感知服务器宕机并因此重新创建订阅?如果是这种情况,是否应该通常使用轮询来实现更大的稳定性?
opc-ua - OPC UA TranslateBrowsePathsToNodeIds() 服务
我知道 TranslateBrowsePathsToNodeIds() 服务可用于针对类型定义进行编程,并通过扩展检索节点的组件/属性的 NodeId。
我有两个问题。
1)RelativePath 结构的最后一个元素是否需要有效的targetName,即不能为null?
2)当路径可以成功解析到两个不同的分支时,是否有任何规定的行为,即程序可以在中间路径选择不同的节点并且仍然成功地遵循下一个路径序列?
谢谢