前言
本文将介绍一个 Node.js 的 npm 包:node-opcua-pseudo-session。该包是用于简化 OPC-UA(开放式平台通信联盟)应用程序中创建伪会话的库。伪会话是针对 OPC-UA 服务器执行一系列操作时使用的模拟会话。在以下文档中,我们将讨论如何使用 node-opcua-pseudo-session 包来创建伪会话,并演示如何使用伪会话在 OPC-UA 服务器上完成一系列操作。
安装
在使用 node-opcua-pseudo-session 前,需要先进行安装。使用以下命令即可对其进行安装:
npm install node-opcua-pseudo-session
创建伪会话
在 OPC-UA 应用程序中,伪会话是一个很重要的部分。我们可以使用 node-opcua-pseudo-session 包来创建伪会话,示例代码如下:
import {PseudoSession} from "node-opcua-pseudo-session"; const session = new PseudoSession(server); // use the session object here
接下来,我们将学习如何使用这个 session 对象来完成一系列操作。
获取节点的值
要获取节点的值,我们需要知道节点的名称或 ID。接着,我们可以使用以下代码来获取该节点的值:
const nodeId = "ns=1;s=Temperature"; session.readValue("ns=1;s=Temperature", (err, value) => { console.log(`The temperature value is ${value.value} and the status is ${value.statusCode}`); });
上面的代码将从节点 "ns=1;s=Temperature" 中获取值。在获取到该节点的值后,我们将值和状态码打印到控制台上。
设置节点的值
要设置节点的值,我们还需要知道节点的名称或 ID。然后,我们可以使用以下代码来设置该节点的值:
session.writeValue("ns=1;s=Temperature", { dataType: "Double", value: 20.5}, (err, statusCode) => { if (err) { console.log(`Failed to set the temperature value with error: ${err.toString()}`); } else { console.log(`The temperature value has been set with status code: ${statusCode.toString()}`); } });
在上述代码中,我们设置节点 "ns=1;s=Temperature" 的值为 20.5。在设置该节点的值后,我们将其状态码打印到控制台上,以便在检查错误时使用。
brower 节点
另一个常见的操作是查找 OPC-UA 服务器中的节点。我们可以使用以下代码来查找 OPC-UA 服务器中的节点:
session.browse("RootFolder", (err, nodeId) => { console.log(`The Root Folder has children like: ${nodeId.map(n => n.browseName.name).join(",")}`); });
上述代码将在 "RootFolder" 下浏览节点,并将找到的节点打印到控制台上。
总结
在本文中,我们学习了 node-opcua-pseudo-session 包的使用方法,它使得创建伪会话在 OPC-UA 应用程序中变得更加容易。我们讨论了如何使用伪会话来获取和设置 OPC-UA 服务器中的节点值。最后,我们还查看了如何使用 browse
函数在 OPC-UA 服务器中浏览节点。
node-opcua-pseudo-session 是一个非常有用的 npm 包,它可以帮助开发人员轻松地创建伪会话,从而更轻松地进行 OPC-UA 开发。如果您想进一步了解 OPC-UA,请访问开放式平台通信联盟网站。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5eedbe9cb5cbfe1ea0611b87