首页 > 解决方案 > 使用“AddIn”引用在命名空间中添加一个对象

问题描述

我正在使用 node-opcua 创建一个 OPC UA 服务器。我正在使用的配套规范的节点集规定了一个“AddIn”参考。

是否可以将对象添加到其父对象引用为 hasAddIn 的命名空间?

AddObjectTypeOptions中没有像“addInOf”这样的属性,例如“componentOf”。

要将组件添加到我使用的对象

const _Identification = namespace.addObject({
     componentOf: myMachine,
     browseName: "Identification",
     typeDefinition: baseObjectType.getChildByName('FolderType').getChildByName('FunctionalGroupType').getChildByName('MachineIdentificationType').getChildByName('MachineToolIdentificationType')
});

或者,我想先将对象创建为组件,然后再更改引用,但我没有找到合适的方法。

标签: node-opcua

解决方案


要添加HasAddIn节点之间的引用,您可以利用接口的references属性。AddBaseNodeOptions它是类型AddReferenceOpts

要添加AddIn对对象的引用,

const _Identification = namespace.addObject({
    browseName: "Identification",
    references: [{
        referenceType: "HasAddIn",
        nodeId: <provide the nodeId of the AddIn here>
    }]
});

希望这能回答你的问题。


推荐阅读