问题标签 [node-opcua]

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.

0 投票
3 回答
5549 浏览

plc - 如何使用 opc ua 从 PLC 读取信号?

我的机器上运行着一个 node-opcua 服务器。我想从 PLC 读取数据。据我了解,OPC Server 用于在 PLC 上进行读/写。

我已按照说明从http://node-opcua.github.io/创建服务器和客户端

那么,我的问题是如何从 PLC 读取信号?我是 IoT 和 OPC UA 的新手。请指导我。

0 投票
1 回答
404 浏览

opc-ua - 我在哪里可以找到 OPC UA 规范中的标准节点(和 ID)?

我正在创建一个简单的 OPC UA 客户端。我需要知道在哪里可以找到包含所有标准节点及其 ID 列表的文档。

谢谢乔什瓦

0 投票
2 回答
2098 浏览

opc-ua - Node-OPCUA 连接到未知 securityMode/securityPolicy 的服务器

我正在尝试连接到具有未知 securityMode 和 securityPolicy 的 opcua 服务器。可能我有一个基本的理解问题,但是根据OPCUA规范我可以通过本地DiscoveryServer获取EndpointDescription,然后打开一个SecureChannel(会话)。

简单的发现过程

目前我在没有指定安全设置的情况下连接到服务器,读出端点,然后选择适当的安全设置并重新连接。

这感觉不对。如果有人能帮我举个例子,那就太好了。

此致

0 投票
2 回答
1611 浏览

opc-ua - 拥有服务器实例时如何更改节点的值(node-opcua)

我正在使用 node-opcua 库。我有 OPCUAServer 的实例。如何获取节点值并进行编辑?

我认为 OPC 客户端应该能够做到这一点,但我想与 OPC 服务器交互,因为我正在响应内部事件。

我是否应该使用诸如WriteRequest 之类的东西来执行此类操作?

0 投票
0 回答
647 浏览

opc-ua - BadSessionNotActivated,0x80270000,会话无法使用,因为没有调用ActivateSession

每当我尝试向 opcua 服务器发送一个 ActivateSessionRequest 时,它都会抛出一个错误,指出“ BadSessionNotActivated ”。以下是ActivateSessionRequest的消息格式:

客户端-服务器通信 如图所示,ActivateSessionRequest 通过向服务器发送 SessionId 和 AuthenticationToken 是成功的。ActivateSessionRequest 的头部包含 AuthenticationToken。但是我该如何向服务器提供 SessionId 呢?是因为我没有在 ActivateSessionRequest 中提供 SessionId 导致服务器抛出错误还是由于其他一些错误?有人可以指导我吗?

任何反馈都非常感谢。先感谢您

带着敬意,

阿夫杜特

0 投票
2 回答
217 浏览

opc-ua - 强制性 OPC-UA 服务

谁能告诉我 OPC-UA 文档,我可以在其中找到 OPC-UA 提供的所有强制性服务?

先感谢您!

带着敬意,

阿夫杜特粉笔

0 投票
3 回答
765 浏览

node.js - 无法使用 node-opcua 写入标签(BadTypeMismatch)

我正在使用 node-opcua 编写一个布尔值来设置重置标签。这是我的代码:

它实际上并没有调用“err”,因为控制台记录了这一点:

但是,这显然是一个错误,并且写入永远不会完成。该标签在 KEPServer 中设置为布尔值并且工作正常。我不知道为什么它说它是不匹配的。有什么帮助吗?

0 投票
0 回答
636 浏览

opc-ua - 节点 Opcua / QtOpcUa - 方法调用

我有一个节点 OPC 服务器,我使用 QtOpcUa 客户端库与 Qt 应用程序连接。

在我的服务器上,我定义了一个基本上是粗略的历史访问请求的方法,因为 HDA 支持尚不可用,它接受 start_date 和 end_date 然后查询数据库以获取它在数组中返回的相关值。

它看起来有点像这样:

我可以在 Prosys 等客户端中看到这一点,并调用可以正常工作的方法:

Prosys 屏幕抓取

但是我似乎无法从 Qt 调用此方法,我已经删除了参数的打包和结果处理程序(它只是列出了接收到的参数):

痕迹:

我似乎也无法在其他客户端上找到该方法,这是来自我手机上的 OPC UA 客户端应用程序,它在 Trends 对象下没有显示任何内容:

OPC UA 客户端应用程序

其他一切似乎都可以访问,我可以请求变量,设置监控一切都很好。

有什么我只是在这里遗漏的东西,还是 QtOpcUa 和其他客户的问题?

我可以通过创建变量而不是捕获输入和输出参数以及表示方法调用的布尔值来解决此问题,但是将所有内容绑定在一个方法中要简洁得多。

谢谢

0 投票
1 回答
187 浏览

opc-ua - opcua 客户端节点:出现错误:无法将 value=4 强制为 Enum

我正在使用节点 OPC-UA 客户端并收到以下错误

我一直在将此 opc UCA ( https://github.com/node-opcua/node-opcua ) 用于其他 ocpUA 服务器,它们工作正常。

UserTokenPolicy 令牌似乎有问题,但它不是应该默认匿名登录吗?可能是什么其他问题?

请注意,它适用于 prosys opcua 客户端。

0 投票
2 回答
374 浏览

node.js - 你应该/可以运行在 Azure 上运行的 Node-OPCUA 服务器吗?

我在 Azure 上部署了我的 OPC 服务器(使用 Node.js node-opcua 制作)作为 WebApp 并运行它。我还得到了 opc.tcp 地址(例如 opc.tcp://somenumbers:4840/UA/INDUSTRIE4.0)。当我尝试使用UaExpert连接到它时,我收到此错误:

在 opc.tcp://somenumbers:4840 上发现 FindServersOnNetwork 失败 (BadHostUnknown),回退到 FindServers

[uastack] OpcUa_P_ParseUrl:OpcUa_P_RawSocket_InetAddr 报告错误 0x81060000。

我究竟做错了什么?Azure 上的 TCP 连接是否只能在同一个网络中实现?