我有一个通过以太网与过程仪表通信的 C# 应用程序。我想在我的应用程序中添加一个 OPC UA 服务器,以便任何具有内置 OPC 客户端的 SCADA 系统都可以连接和读取仪器获取的测量数据。有人知道我可以使用的任何 3rd 方 dll 吗?
我不是在寻找免费或开源的东西,但许可条款需要允许我作为我的应用程序的一部分转售。
非常感谢你的帮助!
您需要购买 OPC UA SDK 才能让您的 C# 应用程序使用 OPC UA。
然后您可以尝试使用 OPC UA 客户端,例如来自 Unified Automation 的客户端:http ://www.unified-automation.com/opc-ua-clients/ (对于 WIN32、Linux 和 Android 来说免费!)
还有一些 SCADA 已经支持 OPC UA,例如 Iconics 的 Genesis:http: //www.iconics.com/Home/Products/HMI-SCADA-Software-Solutions/GENESIS32.aspx(免费试用)
OPC 基金会宣布了他们的“OPC UA 开源共享”战略(04/14/2015)。
.NET 堆栈包括大量 DA、Histori... 客户端和服务器示例,可以在 GitHub 上的OPCFoundation/UA-.NET此处免费下载。
非常好,但问题是它附带的许可证。它基本上只能由 OPC 成员使用,因为其他人都需要在 GPL 2.0 下将使用它的软件开源。
我希望他们只提供一次性费用的开发人员许可证。
可用于商业应用的真正免费库是Open62541(LGPL + 静态链接例外)。但是将它与 .NET 一起使用需要额外的工作,因为它是基于 C 的......
我会看看www.opcfoundation.org。它们与制造 OPC 客户端和服务器工具包的供应商有链接,您可以在应用程序中使用这些工具包。其中大部分是免版税的。请注意,目前支持 OPC UA 的 SCADA 系统并不多;他们中的大多数只支持 OPC DA。
这是您可以使用的最佳 OPC 客户端和服务器库集合: http ://www.opcconnect.com/dotnet.php