使用C#从OPC-UA服务器获取数据,无需GUI



我们有一个后台服务,它的唯一目的是从服务器获取最近的数据。

现在,服务器应该是OPC-UA服务器。不幸的是,我发现与之相关的SDK和示例受到限制/仅以与经典windows窗体应用程序高度集成的方式进行解释。到了无法将GUI与业务逻辑分离的地步。

在这一点上,我想知道我们是否滥用了客户端功能,应该选择不同的方式?

理想情况下,我想把整个OPC-UA逻辑封装在类库中,只调用GetData((,这是不可能的吗?

您可能指的是;SDK";由OPC基金会提供,但您没有在问题中明确说明;事实上,你使用了";SDKs";,复数形式。当然也有商业SDK在这方面可能会更好。

以下是一个(QuickOPC(,以及读取OPC UA数据的一个线性示例:https://www.opclabs.com/products/quickopc/opc-specifications/unified-architecture/generic-data。免责声明:这是自我推销。

您可能会发现客户端开发教程,特别是控制台客户端教程非常有用。这是一个比OPC基金会更好的SDK。您将发现完整的C#示例,其中包括一个控制台客户端应用程序(没有GUI(。

您可能需要重新评估您对的需求

理想情况下,我想将整个OPC-UA逻辑封装在类库中,只调用GetData((,这是不可能的吗?

这是完全可能的,但对于OPC-UA,您必须记住,建议使用订阅模型(监控项(获取数据,而不是对值执行显式读取(除非您只想读取一次属性(。因此,我要确保无论您如何构建客户端类,都能满足应用程序的需要。

相关内容