我有一个C#应用程序,它通过以太网与过程仪器通信。我想在我的应用程序中添加OPC UA服务器,以便任何带有内置OPC客户端的SCADA系统都可以连接并读取仪器采集的测量数据。有没有人知道我可以使用的任何第三方dll?
我不是在寻找免费或开源的东西,但许可条款需要允许我作为我的申请的一部分进行转售。
非常感谢你的帮助!
答案 0 :(得分:3)
您需要购买OPC UA SDK以允许您的C#应用程序使用OPC UA。
然后您可以尝试使用OPC UA Client,例如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(免费试用)
答案 1 :(得分:2)
OPC基金会宣布了他们的“OPC UA Open Shared Source” Strategy(2015年4月14日)。
.NET的堆栈包括DA,Historie ...客户端和服务器的大量示例,可以在GitHub上免费下载OPCFoundation/UA-.NET 。
非常好,但问题是随附的许可证。它基本上只能由OPC成员使用,因为其他人都需要在GPL 2.0下制作使用它的开源软件。
我希望他们只需一次性提供开发商许可证。
可以在商业应用程序中使用的真正免费的库是Open62541(LGPL +静态链接例外)。但是将它与.NET一起使用需要额外的工作,因为它是基于C的......
答案 2 :(得分:1)
我会看看www.opcfoundation.org。它们与制造OPC客户端和服务器工具包的供应商建立了链接,您可以在应用程序中使用它们。其中大多数都是免版税的。请注意,目前还没有太多支持OPC UA的SCADA系统;其中大多数只支持OPC DA。
答案 3 :(得分:0)
查看OpenOPCUA - 一个开源的crosss平台C语言堆栈。
答案 4 :(得分:0)
这是您可以使用的最佳OPC客户端和服务器库集合: http://www.opcconnect.com/dotnet.php
答案 5 :(得分:-1)