在 nodejs 中使用 opcua.OPCUAClient 如何连接到 Matrikon OPC 模拟服务器

In nodejs using opcua.OPCUAClient how to connect to a Matrikon OPC Simulation server

我已经使用 https://github.com/node-opcua/node-opcua/blob/master/documentation/creating_a_client.md 中的代码创建了一个 opcclient 来读取 sample_server。那行得通。现在我想连接到 Matrikon OPC 模拟服务器。所以在节点 sample_client 中,我更改了

var endpointUrl = "opc.tcp://" + require("os").hostname() + ":8080/Matrikon.OPC.Simulation.1";

在 MatrikonOPC Explorer 中,我在左侧选项卡上看到

Localhost '\compname'
     Matrikon.OPC.Simulation.1
        Group0

单击右窗格中的 Group0 时,我有一个标签 Random.Int1 并且该值不断变化。在服务器信息窗格中,它表示服务器凝视为 运行ning。

当我 运行 节点 sample_client 时,它没有输出..它甚至没有给出

"cannot connect to endpoint"

错误。好像卡在了foll line

client.connect(endpointUrl,function (err) {

有人知道为什么以及如何构建端点 url。

您尝试连接的服务器似乎是旧的 OPC 经典服务器(使用 Microsoft 的 DCOM 作为通信层)而不是 OPC.UA 服务器(在 TCP 上使用新的统一架构标准). 这就是 Matrikon.OPC.Explorer 可以连接到它的原因。 没有直接连接 OPC <=> OPC.UA 的简单方法,因为这两种技术是不同的,除非您使用特殊的桥接软件。 有关经典 OPC 与 OPC.UA

的更多信息,另请参阅 Difference Between OPC UA and OPC DA?