我正在使用eclipse milo构建OPC-UA服务器。为订阅服务提供多个节点的不同方法有哪些?我可以为此定义具有基本数据类型属性的自定义数据对象吗?怎么样?
我希望有一个服务,它提供不同数据类型的数据(Integer,Double,Boolean等)作为输出。每个值都应该命名为不同的单个名称,如数组输出,所有值都使用单个名称。为此目的,有一种方法可以定义具有不同类型属性的自定义数据对象类吗? OPC中是否可以将自定义数据对象类型作为服务的输出?
答案 0 :(得分:1)
从概念上讲,使用您询问的每个不同数据类型添加节点与创建文件夹节点并向其添加节点没有什么不同。
milo-examples
项目中的ExampleNamespace
会向您展示如何执行此操作。
如果你真的想要使用自定义ObjectType
的实例而不是FolderType
的实例,那么你需要做一些簿记工作。
然后,当您创建原始ObjectNode时,您将类型定义指定为新创建的ObjectTypeNode,而不是像FolderType。
您可以更好地了解规范的第3部分和第5部分中的所有工作方式,或者使用UaExpert等客户端来检查服务器中的一些预先存在的ObjectType,例如ServerType
。
编辑:现在有一个如何执行此操作的示例here。如果这看起来有点笨重......你是对的。通常,ObjectTypes和VariableTypes是在建模工具中设计的,并通过NodeSet XML文件导入,但这不在现在的范围之内......