软件说明
OPC DA .NET Server Toolkit
DANSrv服务器工具包非常适合快速实现简单服务器或创建具有万个项目的高性能OPC服务器。
NSPlugin.dll .NET定制程序集接口定义了从通用服务器调用的少量方法,以及允许定制程序集调用通用服务器中的方法的一些回调方法,例如将新项目值写入缓存。
服务器开发只是用C#或VB.NET构建此DLL。
DANSrv OPC服务器.NET工具包有两个版本:
标准版具有静态项地址空间的OPC V2 / V3服务器的所有基本功能。
专业版其他功能增加了功能和性能。
- 服务器可以具有动态地址空间,其中当客户端首次访问它们时添加项目。
- ConfigBuilder工具/类允许在XML文件中定义项目。
- 项目刷新可以基于当前客户端使用和客户端抽样率定义。
- 项目浏览可以选择浏览缓存或设备/数据库。
- 客户端更新处理可选择用于优化频繁的数据更改或大量项目。
- 可以与uaPLUS结合用于DA / UA服务器。
嵌入式UA服务器
DANSrv专业版可以包括uaPLUS通用服务器DLL,以允许从OPC DA和OPC UA客户端并行访问。
除了DANSrv许可证之外,还需要uaPLUS服务器工具包的许可。
这两种版本都支持32位和64位操作。为每个平台提供一个版本的通用服务器。服务器定制.Net插件程序集可在两个平台上运行。不需要重新编译,Visual Studio 2005 /../ 2015编译的程序集与通用服务器一起工作。
使用.NET进行OPC服务器开发
C#和VB.Net是许多软件开发人员的首选工具。 OPC服务器可以像任何其他.NET应用程序一样开发,如果基于DANSrv工具包。没有DCOM问题必须由开发人员处理。工具箱通用服务器处理DCOM客户端接口和.NET包装。 OPC服务器可以使设备与TCP / IP或串行通信或前端另一个应用程序或数据库连接。数据库访问或“设备”通信是必须在定制组装中实现的。
直接I / O端口访问也可以通过.Net轻松处理。端口访问类通常随硬件一起提供。
需要越来越远程的OPC服务器访问。 DCOM不太适合,可能必须使用OPC XML DA Web服务OPC UA。
Advosol Inc.提供XDASrv XML DA服务器工具包和uaPLUS OPC UA服务器工具包,它们使用与DANSrv OPC DA .NET服务器工具包相同的定制组件。您对OPC服务器开发的投资是安全的,您不需要担心支持新OPC标准的高成本。
.Net服务器自定义程序集可以使用WCF或TCP / IP与现有.Net应用程序链接。这个概念对于具有例如一个用户界面,并在OPC DA COM服务器和XML DA Web服务中工作同样出色。
从UA客户端访问
UAtoCOM转换器服务器可以用于使UA客户端应用程序访问OPC DA服务器,而不是嵌入UA服务器。
通过直接或通过转换器服务器访问OPC DA和OPC UA客户端可以同时访问同一个DA服务器。
另一个选项是使用带有uaPLUSserver工具包的DANSrv自定义插件.NET程序集。如果服务器主要从UA客户端访问,则该方法可能是优选的。
DA客户端仍然可以通过COMtoUA转换器DCOM服务器访问uaPLUS服务器。
OPC DA .NET服务器功能包括:
•OPC DA V2.05和V3.0兼容通用服务器
•可以扩展OPC报警和事件支持
•在大型和小型应用中具有高性能和高效率
•自由线程设计和手工优化的.Net封装
•完全集成到Visual Studio .NET中。
•带有向导的项目模板,用于Visual Studio 2005,…,2015。
向导根据向导GUI中的选择,使用示例服务器生成C#或VB项目。生成的项目可以编译,并作为一个完全功能的OPC服务器。
•许多VB和C#示例应用程序
•Visual Studio集成帮助包含有关定制界面的详细信息,并包括OPC规范。上下文相关帮助显示所需的信息,而无需长时间搜索。
•可以轻松地调试定制组件。
•提供的测试客户端允许用户交互测试每个OPC服务器功能。
•站点许可证一次性费用,不需要运行时许可证。
•90天内包含更新/支持订阅。
专业版的附加功能包括:
•ConfigBuilder工具和类。
服务器项地址空间在XML文件中定义。 XML文件是使用ConfigBuilder工具创建/编辑的。还可以从工作的OPC服务器导入定义,并快速克隆此服务器。
ConfigBuilder类读取XML文件并相应地配置服务器。
•更新优化功能,显着提高性能。
标准配置针对频繁更改值的中等数量的项目优化服务器。服务器处理可以改变为针对具有适度频繁的值改变的大量项目优化的处理。
•可以处理数十万件物品。
服务器设计用于处理大项目地址空间。可以在复杂的树结构或单个分支中的大量项目中快速创建和访问万个项目。
•动态项地址空间处理和虚拟项地址空间浏览。
动态项地址空间在应用中是有用的,例如一个前端是大型数据库的OPC服务器。将大量的数据库点作为项添加到服务器是不高效的。相反,虚拟项地址空间浏览直接浏览数据库,并且只有被客户端读取/写入的项目被添加到服务器以用于高效的OPC兼容处理。未使用的项目可以删除。
•访问限制。
可以基于客户端凭据限制对项目的访问。
OPC报警和事件选项:
OPC AE .NET服务器工具包可以与此OPC DA .NET服务器工具包结合使用,使服务器符合OPC DA2,OPC DA3和OPC AE1.1。
OPC AE事件响应可以是DA服务器项或任何其他信号源。
示例服务器
以下示例服务器自定义是作为Visual Studio 2003解决方案提供的VB和C#源代码:
简单
这是一个简单的服务器,有几个项目,在代码中静态定义。
模拟线程递增项值并更新服务器缓存。
写调用将项目值写入模拟缓冲区,迫使递增从写入的值继续。
属性
此示例作为“简单”示例,另外定义和处理自定义项属性。
动态
此示例非常类似于“属性”示例,但实现动态项地址空间。
启动时,在通用服务器中未定义任何项。 当客户首次访问所有项目时,将动态添加所有项目。 浏览模式设置为虚拟,并且在此示例中处理客户端浏览调用。 返回可以添加到服务器缓存的项目。
对于客户端,这种处理是不可见的。 它看起来与“属性”示例相同。
仅在DANSrv专业版中,因为标准版不支持虚拟浏览。
ConfigBuilder
此示例从文件CfgSample.xml加载项配置,并在启动时创建定义的项。
可以使用ConfigBuilder应用程序修改XML文件。 重新启动服务器时使用的新配置。 不需要编译。
示例会嵌入XML文件以显示此可能性。 要使用嵌入文件,必须修改样本以使用LoadEmbedded()方法代替LoadFromExeDir()。 方法调用在代码中作为注释。
仅在DANSrv专业版中,因为标准版不支持ConfigBuilder。
20kItems
此示例在启动时定义了20000个项目,并且每100ms更新前1000个项目。
它应该给出性能的印象,并且可以用作自定义基准应用程序的基础。
在2GHz Pentium上,启动大约需要2秒钟,CPU负载大约为6%。
TCPDevice
此示例在端口6500上使用TCP套接字进行设备通信。 对于测试,提供了设备模拟器控制台应用程序。
IP地址初始化为localhost,允许两个应用程序在同一台计算机上运行。
在启动时,DeviceSimulator发送一个带有项名称的行,服务器在它的地址空间中创建这些项。 然后,DeviceSimulator会定期增加项目值,并发送带有所有项目值的行。 服务器定制读取这些行并更新服务器高速缓存。 由客户端写入的项目将发送到DeviceSimulator,显示它们。
股票报价
这个示例应用程序显示了如何实现服务器来处理大量项目。
服务器使用动态地址空间模式,并在客户端首次访问这些项目时创建这些项目。
当前股票报价从互联网上读取,显示OPC服务器如何访问互联网。
客户端使用库存符号作为项目名称来访问服务器。 服务器然后尝试读取此符号的当前报价,如果成功将项目添加到其地址空间。 然后定期更新项目值。
多进程
此示例显示如何使用.NET WCF将.NET应用程序与OPC DA服务器耦合。 有关概述,请参阅白皮书。
工具
OPCDA.NET服务器工具包提供了快速和简单的服务器开发和测试的工具:
Visual Studio 2005/2008项目创建向导
向导将创建一个包含用户对话框中定义的小示例代码和服务器注册设置的项目。 它还为服务器创建的GUID。
Visual Studio 2010,..,2015项目创建向导
向导将创建一个包含用户对话框中定义的小示例代码和服务器注册设置的项目。 它还为服务器创建的GUID。
服务器项目是为.NET4.x或.NET 2/3 / 3.5创建的
OPC DA V2测试客户端
这是一个易于使用的客户端,非常适合测试服务器的正确项目处理。
OPC DA V3测试客户端
该客户端主要使用OPC DA V3功能,并允许大多数OPC DA V3功能进行交互式测试。
错误查找
将解释OPC和相关的Windows错误代码。
ConfigBuilder
ConfigBuilder工具使用项目配置定义创建和更改XML文件。
XML配置文件可以在定制模块中用于创建服务器的项地址空间。
此工具仅在Toolkit专业版中可用。
系统要求:
•Windows 7/8/10或Windows Server 2003/2008/2012
•32位和64位
•Microsoft Visual Studio .NET 2005/2008,VB .Net或C#和.Net Framework 2.0 / 3.0 / 3.5
或Microsoft Visual Studio .NET 2010/2012/2013/2015,Visual Basic .Net或C#和.Net Framework 2.0 / 3.0 / 3.5或4.0 / 4.5