OPC .Net client server toolkits for OPC DA, HDA, AE, XML-DA      Advanced
         OPC .Net client server toolkits for OPC DA, HDA, AE, XML-DA
Online Tools
- OPC Error Lookup
* privacy and security Guaranteed  
XML-DA .NET Server Toolkit  Buy or Evaluate

OPC Foundation Self-Tested for Compliance logo indicates that these products have been tested by the manufacturer to be compliant with the following OPC Specifications: XML-Data Access 1.00. Additional information about compliance testing, logo program and a summary of test results for XML-DA Rapid Server Toolkit version 1.0 can be found at www.opcfoundation.org. The XML DA .NET Server Toolkit (XDASrv) implements the OPC Foundations OPC XML-DA specification version 1.0.1 in a generic server .NET assembly that is provided in versions for ASP.NET2 and .NET3/4 (WCF, the Windows Communication Foundation).
The application specific server part is in a .NET plug-in assembly. It handles the device access and is developed using Visual Basic .NET, C# or any .NET compatible compiler. The interface between the customization component and the generic server part is simple yet flexible enough to suit most applications.

XML-DA Server Toolkit Features

bullet The generic server is provided as an ASP.NET1, ASP.NET2 and WCF service with all XML DA defined features..
bullet Customization in a separate .NET Assembly that can be coded with VB.Net, C# or any .NET supported compiler.
The OPC XML DA server uses the same customization component interface as the DANSrv OPC DA server, making it possible to use the server customization plug-in for XML DA and OPC DA servers.
bullet The project documentation is integrated into the Visual Studio help system and offers context sensitive help.
bullet The Visual Studio project wizard creates a functional server with the features selected in the wizard dialog.
bullet Tools for simple deployment.
bullet Standard Edition and Professional Edition with additional performance optimization features for servers with ten thousands of items.
bullet Developer license with one time fee, no run-time licenses required.
bullet The license includes an Updates/Support subscription for 90 days.

System Requirements
bullet Windows 7, 8.x, 10 or Windows Server 2008, 2012, 2016
bullet 32 bit or 64 bit
bullet .NET Framework 4.x
bullet Visual Studio 2010,2012,2013,2015 or 2017, C# or Visual Basic
OPC XML customizable server toolkit

Advosol was first to deliver software components for XML-DA servers and clients and now offers up-to-date software in version 5.

Version 5 adds support for WCF (.NET3).
WCF servers/clients can be configured for a variety of communication protocols, such as basic HTTP for compatibility with standard web services, TCP for high performance data exchange or secure connections with X.509 certificates.

Version 1 of the Advosol XML DA components were based on the OPC XML-DA pre-release specification and allowed users and us to create advanced solutions and build up know-how.
Version 2 was released shortly after the XML-DA standard V1.0 was available. It was tested at the Spring 2004 OPC Interoperability workshop with all available XML-DA products.
Version 3 offered enhanced performance, functionality and ease of use. The V3 products are tested with the newest pre-release version of the XML-DA compliance test tool.
Version 4 added support for Visual Studio 2005 and ASP.NET2 and was tested for compliance with the released version of the OPC Compliance Test tools.


Advosol offers software development tools for XML-DA clients, XML-DA Servers and Gateways. These products provide a perfect base for new applications and an easy migration path for the thousands of OPC DA products in use today.



Why use OPC XML DA?

OPC XML provides the foundation for multi-platform interoperability because it is based on XML instead of the Windows specific DCOM. It simplifies sharing and exchange of data amongst the various levels of the plant hierarchy (low level devices and up to enterprise systems), and to a wider range of platforms. DCOM with it's problematic configuration issues can be eliminated from the solution while only well established standards are used. XML DA is slower than the DCOM based OPC DA and TCP based proprietary tunneling solutions but is actually fast enough for most applications.
Unlike previous OPC data access specifications, the OPC XML-DA specification describes data exchange in an environment which assumes no persistent connection between the client and the server. This makes it suitable for a much wider range of communication systems. The Windows Communication Foundation (WCF) adds a lot of flexibility. WCF application are compatible with established web services and between WCF client/servers the communication can be configured either high performance or high security.

WCF (Windows Communication Foundation)
WCF (also named .NET3) offers a highly flexible communication infrastructure for web services. WCF clients and servers can be configured for communication bindings such as:

  • Basic HTTP for ASP.NET compatibility
  • Secure communication with X.509 certificates
  • TCP for high performance binary communication

XML DA servers based on the .NET3 (WCF) version of XDASrv can be accessed either as ASP.NET2 web service or from .NET3 (WCF) clients as a WCF server.
WCF based XML DA clients can be created with the Advosol XMLDA.NET client component product.

XML DA Server Development

All web service and XML DA client interface handling are done in the generic server. This is a .Net web assembly provided in versions for ASP.NET1.1, ASP.NET2 and WCF. The WCF version can be used in either IIS, WAS or self-hosted XML DA servers.
The server developer only has to create a .Net assembly as a plug-in with the device access methods. This plug-in assembly can be used with all generic server versions. A server can be developed by implementing as little as three methods. Additional methods can be implemented to support additional features or to optimize performance.
Visual Studio project wizards create a functional server with the features selected in the wizard dialog. The custom specific device access code is embedded into the created plug-in module methods.
Another approach is to use one of the sample servers as the starting point.

Visual Studio Project Wizard

The wizards create a web service project with small sample code according the selections in the user dialog.

XML DA wizard dialog


Professional Edition features
The XDASrv Server Toolkit is available in a Standard and a Professional edition. The main features added in the Professional Edition are:

  • Dynamic address space with items added when they are first accessed by a client.
    This feature is important in servers that handle 'devices' with a huge number of items, such as e.g. a database.
  • The item refresh can be based on the current client usage and the client sampling rate definitions.
    Performance can be optimized by reducing the device communication.
  • ConfigBuilder utility and class for the handling of XML server configuration files.



Provided Sample Servers

Simple This is a simple server with a few items, statically defined within the code.
A simulation thread increments the item values and updates the server cache.
Write calls write the item value into the simulation buffer, forcing the incrementing to continue from the written value.

Properties This sample works as the 'Simple' sample and additionally defines an handles custom item properties.

Dynamic This sample is very similar to the 'Properties' sample but implements a dynamic item address space.
At startup no items are defined in the generic server. All items are added dynamically when they are first accessed by a client. The browse mode is set to virtual and the client browse calls are handled in this sample. The return the items that could be added to the server cache.
For the client this handling is invisible. It appears identical to the 'Properties' sample.
The XDARap Professional Edition is required because the Standard Edition does not support virtual browsing.

ConfigBuilder This sample loads the item configuration from the file CfgSample.xml and creates the defined items at startup.
The XML file can be modified with the ConfigBuilder application. The new configuration used when the server is restarted. No compilation is required.
The sample does embed the XML file to show this possibility. To use the embedded file the sample has to be modified to use the LoadEmbedded() method in place of LoadFromExeDir(). The method call is in the code as comment.

20kItem This sample defines 20000 items at startup and updates the first 1000 items every 100ms.
It should give an impression of the performance and can be used as the base for a custom benchmark application.
On a 2GHz Pentium the startup takes about 2 seconds and the CPU load is around 6%.

TCPDevice This sample uses a TCP socket on port 6500 for device communication. For tests a Device simulator console application is provided.
The IP address is initialized as localhost, allowing both applications to run on the same computer.
At startup the DeviceSimulator sends a line with item names and the server creates these items in it's address space. The DeviceSimulator then periodically increments the item values and sends lines with the values of all items. The server customization reads these lines and updates the server cache. Items written by a client are sent to the DeviceSimulator, which displays them.

StockQuotes This sample application shows how a server can be implemented to handle a huge number of items.
The server uses the dynamic address space mode and creates items when they are first accessed.
The current stock quotes are read from the Internet, showing a sample how an OPC server can access the Internet.
The client accesses the server with a stock symbol as the item name. The server then tries to read the current quote for this symbol and if successful adds the item to it's address space. The item value is then periodically updated.

WCF Remoting The server plug-in assembly uses a WCF connection to communicate with another .NET application. Using the NamedPipe binding such a connection is highly efficient.

Self-Hosted This sample shows how a .NET3 (WCF) XML DA server can be hosted in a Windows Forms application.


Online accessible sample server

Browser ASP.NET Sample Client Application
XML-DA Client XML-DA Sample Server with item simulation

XML-DA clients can access the XML-DA sample server at the given URL. The XML-DA server installed on our web server is the 'ConfigBuilder' sample server.
If you don't have an XML-DA test client available then you can use the sample ASP.NET client from the browser. The sample ASP.NET client is built with XMLDA.NET and supports browsing and subscriptions.


The ConfigBuilder Tool creates and changes XML files with item configuration definitions.
The XML configuration file can be used in the customization module to create the item address space of the server.
This tool is available only in the Toolkit Professional Edition.

XML DA Server Toolkit item configuraton tool.


Test Client
All XML DA defined methods can be called interactively. The server item address space is displayed in a tree structure for easy item selection. In the Browse tab is a dialog to browse the server step-by-step.
This test client is built with the XMLDA.NET component and can also access OPC DA servers through the internal OPC DA gateway. The test client is also provided in a version for WCF.

XML DA Test Client


Error Code Lookup
The OPC error codes and OPC related Windows error codes are explained.

OPC Error Code Lookup Utility


This utility simplifies the deployment of web services. Any directory can be defined as a web application directory. MakeIISVDir can be used interactively or in batch mode to automate the deployment process. Just copy the application files and run MakeIISVDir in the target directory. Then the XML DA server is accessible at that location under the URL http://localhost/appDir/OpcXmlDaServer.asmx

MakeIISVDir utility to create IIS web application directories.




Buy or Evaluate
home | contact us | return policy | privacy policy | security policy | Copyright © 2018 Advosol Inc. All Rights Reserved.