我正在编写UA客户端DLL以允许查询和读取OPC标记。我之前已经写过一个DA版本,但是现在是时候与时俱进而离开DCOM的地狱洞了。
一切顺利,但我注意到我无法浏览某些我知道有效且在OPC项目中有效的标签。我对这些标签之一的容器节点的浏览器搜索报告它不包含任何节点并且抛出异常,但是DA进程可以浏览它包含的组和标签。即使是OPC基金会提供的Sample UA Client应用程序,也不会列出这些标签。例如,见下文:
有问题的标签组是" TKPlant.CL535E.Global.iaHomg_Press"。
在Kepware中,该组具有以下6个标签:
在OPC Quick Client中,标签的状态和值是......(一切都很好)
但是在UA Client Sample App中,浏览显示以下内容:
您可以看到该组中不存在任何节点。节点属性是:
将此与类似的组进行比较:
此群组的属性:
我无法看到任何差异,但似乎UA示例客户端与我的浏览功能具有相同的结果 - 未在组内看到任何标记。
我认为UA客户认为这本身就是一个标签,而不是一个群体。但这个项目实际上是在现场和工作。奇怪的是,当查看快速客户端屏幕截图时,该组本身会出现并被赋予一个值???? -
我知道这可能是一个很长的镜头,但有没有人有任何想法为什么这个组 - 它有标签 - 在使用UA访问时显示为空?
由于
史蒂夫
答案 0 :(得分:0)
感谢大家,但我最终解决了这个问题 - 拥有数千个标签的OPC Group的父母碰巧有一个与集团同名的标签! :这是在试图找到OPC Group时返回的那个。我不知道允许重复的标签名称/组名称。