OPC Toolkits and Free Source Code

Overview of Available Toolkits

Guide Prices for OPC Toolkits

Toolkit Suppliers

Free Source Code

See also our Component Libraries and Tools and Techniques pages.

Overview of Available Toolkits

The following table gives an overview of configurable OPC toolkit suppliers. These are configurable toolkits that do not require programming or compiling of code. In each case, the supported specifications (Data Access, Alarms & Events, Historical Data Access) are indicated.

Specifications

Toolkit Types

Supplier

DA2

DA3

AE

HDA

XML-DA

Client

Server
Rapid

Server
Source

Notes

MatrikonOPC

yes yes yes

No programming required.

The following table gives an overview of OPC toolkit suppliers. In each case, the supported specifications (Data Access, Alarms & Events, Historical Data Access) are indicated.

Specifications

Toolkit Types

Supplier

DA2

DA3

AE

HDA

XML-DA

Client

Server
Rapid

Server
Source

Notes

Advosol

yes yes yes yes yes yes yes

Strong support for .NET and web services

ICONICS

yes yes yes yes yes yes yes

Support for Complex Data specification; Support for Windows CE

ifak system

yes yes yes yes

Integration Objects

yes yes yes yes yes yes

DX server support

Kassl

yes yes yes yes yes

Specific to Delphi, C++Builder and .NET

LightOPC

yes yes

Free and open source

Northern Dynamic

yes yes yes yes yes yes

Client/server development using ActiveX controls;
Support for Windows CE and .NET

OpenOPC for Python

yes yes

Specific to the Python language; free and open source

Production Robots Engineering Ltd

yes yes yes yes

Specific to Borland Delphi

Prosys

yes yes yes yes

Supports Borland Delphi and C++Builder

Softing

yes yes yes yes yes yes yes yes

Support for Windows CE; .NET client Toolkit

Technosoftware

yes yes yes yes yes yes yes

.NET client and server toolkits

uForte

yes yes yes yes yes

Supports development with both VB and C++

WinTECH Software

yes yes yes yes yes yes yes

Guide Prices for OPC Toolkits

We no longer show individual vendors' prices for most toolkits, and instead give guide prices for different types of toolkit, irrespective of supplier. There are a number of reasons for this:

  • Some vendors will not release pricing information at all, while others will only do so under duress.
  • Many customers will negotiate discounts when buying toolkits, so the quoted price is really only a maximum price in any case.
  • OPC toolkits are arguably now a commodity item, and prices from different vendors are broadly similar. That's not to say that you won't find differences in quality from different vendors.

So what are our guide prices? We believe you should pay no more than these prices for OPC toolkits:

Client Toolkit 1250 USD
Server Toolkit
('rapid' development model, incomplete source)
1250 USD
Server Toolkit
(fully featured, with source)
4500 USD

You should expect a substantial discount if buying two or more toolkits as a bundle. Similarly, you may pay a slight premium if support is offered for two or more OPC specifications within the same toolkit.

A newer toolkit type extends the rapid development model by packaging the core server functionality as an ActiveX control. This approach allows the use of Visual Basic for server development. It is less easy possible to offer a guide price for this toolkit category, though you should certainly not pay more than for an equivalent rapid development toolkit.

Toolkit Suppliers

MatrikonOPC

OPC Genie

Matrikon's OPC Genie (Generic Information Exchange) enables the exchange of process data between OPC compliant applications and any device that supports serial or Ethernet communication. This flexibility enables you to develop an OPC server without sacrificing throughput or data integrity. Simply configure OPC Genie with the required protocol and all the data will be exposed via OPC!

No programming is required. Refer to the OPC Genie page for more information.

Advosol

OPCDA.NET, OPCHDA.NET, OPCAE.NET

Advosol's .NET client products offer the capability to develop DA, HDA and AE clients using Microsoft .NET. See our .NET page for more information.

OPCDA.NET Server Toolkit, Historian .NET Server Toolkit

Advosol's DANSrv (OPCDA.NET Server Toolkit) and HDANSrv (OPC HDA. NET Server Toolkit) provide .NET developers with the ability to build their own Data Access and HDA servers using exclusively .NET languages (VB.NET and C# are supported). See our .NET page for more information.

XML-DA Rapid Server Toolkit

This XML-DA Rapid Server Toolkit is an ASP.NET module: a native .NET web service which makes no use of COM. The developer provides a customization component written using any .NET language. Only five functions must be implemented, and the same customization module may also be used with Advosol's OPCDA.NET COM server. Also available as a 'Professional' edition, with more options for customization.

Advosol is an OPC Foundation member.

ICONICS

OPC ToolWorX

ICONICS publishes OPC ToolWorX, a toolkit for server and client development, with support for a broad range of OPC specifications:

  • Data Access 3.00 and earlier
  • XML-DA
  • Complex Data
  • Alarms & Events

In common with other toolkits listed here, OPC ToolWorX relies on Microsoft Visual C++ and the Active Template Library.

ActiveX ToolWorX

ICONICS also offers ActiveX ToolWorX, a toolkit targeted at the rapid development of OPC-enabled HMI ActiveX controls. ICONICS is patenting aspects of the toolkit, which it claims produces high performance, multithreaded controls. A free sample of a control produced with ActiveX ToolWorX is available from the ICONICS website.

ICONICS is an OPC Foundation member.

ifak system

ifak system's _is OPC Toolkit provides a Wizard-based mechanism for implementing OPC servers, with support for Data Access 1 and 2. ifak system claim that even developers with no experience of OPC are able to generate OPC servers very quickly.

A distinguishing feature is the ability for generated OPC servers to load device definitions from XML storage.

A 'Lite' version of the toolkit, with support only for Data Access 1.0, may be ordered free of charge.

ifak system is an OPC Foundation member.

Integration Objects

Integration Objects (an OPC Foundation member) offers solutions for rapid client and server development.

OPC Client Development Tools

These products enable rapid DA, AE and HDA client development. Features include server discovery and browsing, as well as simultaneous connection to multiple servers.

OPC Server SDK

This rapid server toolkit supports a broad range of OPC specifications: OPC DA 3.0, 2.05 and 1.0a, OPC DX 1.0 and OPC HDA 1.2, 1.1 and 1.0.

The OPC Server SDK is supplied as a Windows DLL. A separate OPC AE Server SDK is also available.

Kassl

Kassl's dOPC Client Toolkits are aimed specifically at developers using Borland's Delphi and C++Builder. See our Delphi page for more information.

Kepware

new Kepware is a latecomer to the OPC toolkit arena, but its KEPServerEX product has been a leading multi-protocol OPC DA server for a number of years. Kepware is now entering the OPC server toolkit market with CID - a Custom Interface Driver add-on to KEPServerEX.

Using CID, the developer creates a separate application which will communicate with KEPServerEX using a shared memory pool. A generated XML file informs KEPServerEX of the available address space. An advantage of this model is that the integrity of the KEPServerEX process remains intact - which may not be the case with some other Rapid server development models. This means that the certified compliant behavior of KEPServerEX should remain, and the user obtains a compliant server with no need for retesting.

This theory will be tested when CID ships in October 2009. A possible downside is increased latency - an extra process context switch at least will be needed. In addition, a dependency on KEPServerEX will presumably limit flexibility on pricing models for generated servers. As such, CID should be seen primarily as a solution for small volume applications, and therefore most applicable to System Integators.

LightOPC

Lab43's LightOPC is an open source OPC server toolkit, produced by a group of Russian academics and released under the GNU LGPL license.

Contrary to its name, LightOPC is a comprehensive piece of work. One Programmers' Connection reader described it thus: "easy to use, fast to integrate, and works well - its price is unequalled".

An additional library, 'ntse', is also available to support development of NT services.

Northern Dynamic

Northern Dynamic's Data Access Server Toolkit packages the key OPC functionality within a single DLL (source can be purchased at additional cost if required). This approach allows the user to concentrate on the development of his particular driver, without needing extensive knowledge of COM and OPC.

Data Access 3.0, 2.0 and 1.0a are all supported, and runtime diagnostic facilities are built-in. The toolkit is certified compliant with the OPC Foundation's Comlpiance Test Software - based on a simulation server built using the toolkit. Windows CE support is also available.

The DA Server Toolkit now supports the OPC Security 1.0 specification.

Northern Dynamic's Alarms & Events Server Toolkit adopts a similar rapid development model, with the core AE functionality encapsulated in a single DLL. Northern Dynamic claims this offers improved ease of use over existing AE toolkits. Both AE 1.10 and AE 1.02 are supported. As with the DA toolkit, a Windows CE version is also available.

Usefully, Northern Dynamic's toolkits may be downloaded free of charge, and payment deferred until development is complete. If used in this way, the toolkit DLLs will timeout after 30 minutes use.

SLIK-DA, SLIK-DAC

Northern Dynamic's SLIK-DA takes the rapid development model a step further, and packages the core Data Access server functionality as both an ActiveX control and a .NET Windows Forms control. All the key benefits of the company's proven Data Access toolkit remain, but with the added advantage of allowing OPC servers to be implemented using Visual Basic, VB.NET or C#. For .NET developers, both C# and VB.NET reference server implementations are included.

SLIK-DA supports Data Access 3.0, as well as DA 2.0 and 1.0a.

Likewise, SLIK-DAC is an AxtiveX and Windows Forms control for DA client development. Support is provided for development using Win32 (VB, Delphi) and .NET (C#, VB.NET). A key benefit is integrated support for COM Call Tracing, to help diagnose interoperability problem.

SLIK-DA and SLIK-DAC are unusual in at least two respects. First, both products support the (little used) OPC Security 1.0 specification. Perhaps more usefully, both also allow development licenses to be transferred between computers using a hardware key (a dongle). This option is reasonably priced at 95 USD.

See our .NET page for other products which support OPC development using .NET.

Northern Dynamic is an OPC Foundation member.

OpenOPC for Python

A powerful open source DA toolkit, specific to the Python language - though a general purpose console client is included. OpenOPC is covered in more detail on our Tools & Techniques page.

Production Robots Engineering Ltd

PREL's prOpcKit is coded entirely in Borland Delphi, and is aimed specifically at Delphi developers. See our Delphi page for more information.

Prosys

Prosys Sentrol is a Delphi/C++Builder component library which provides a "Rapid OPC Application Development Framework". This includes OPC DA client and server functionality, as well as database, visualization and other components.

See our Delphi page for more information.

Softing

Softing supplies a number of OPC toolkits. The Toolbox C++ range comprises Server and Client Development Kits for Data Access (including DA 3), XML-DA, and Alarms & Events.

Using a similar approach to some other vendors, the Server Development Kits simplify development by encapsulating all OPC functionality in a single DLL, known as the 'OPC Engine'. This shields the developer from the full complexity of OPC, ATL, DCOM, etc.

For even more rapid development, the XPress OPC Server Tool allows project generation using a wizard-style interface, and server development may be completed by implementing just three functions. These user-supplied functions are built as an extension DLL to the main XPress executable, and Alarms and Events support may be added by implementing additional functions.

Payment for toolkits may be deferred until the development is completed: free demo versions may be downloaded from Softing.

Windows CE (including version 5.0) is supported via modified versions of the Data Access, XML-DA, and Alarms & Events toolkits.

Softing's version 4.10 toolkits include Toolbox .NET support for client and server development (see .NET page) plus XML-DA server support for both Windows and Linux.

Softing is a member of the OPC Foundation. All Softing's server toolkits have been certified using the appropriate Compliance Test, where appropriate.

Technosoftware

OPC Client Framework C++

The OPC Client Framework is described as an object-oriented C++ application framework, allowing rapid development of DA and AE clients.

Support is provided for Data Access 3, and a 30-day evaluation version is available.

OPC Client Framework includes a set of DA browse classes, providing an abstraction layer which supports both DA 2 and DA 3 browse interfaces.

An OPC Client Framework version for .NET is also offered. That product supports HDA and XML-DA, in addition to DA and AE.

OPC Server Developer Studio

Technosoftware's OPC Server Developer Studio differs from other rapid development products in that all common code is provided by a single supplied EXE file, while the part which must be adapted resides in a C++ DLL; this is the reverse of the model used elsewhere, but provides an elegant and straightforward development route.

Only five custom functions need to be defined by the user. The server supports all versions od OPC DA and AE, and both 32- and 64-bit operation.

A free download is available, enabling payment of fees to be deferred until server development is complete.

An OPC Server Developer Studio for .NET is also offered.

Technosoftware is an OPC Foundation member.

uForte

The uForte OPC Server supports Data Access (1, 2 and 3), Alarms & Events and HDA, all within the same package. Customization is through implementation of a CCM (Client Control Module). This may be either an EXE or DLL, and samples are supplied in both C++ and VB.

Pricing is dependent on number of installations, up to 4900 USD for unlimited use and full source code. A free demo download is available, allowing evaluation and customization prior to purchase.

WinTECH Software

WinTECH offers both server and client toolkits.

WinTECH's OPC Server Development Toolkit adopts the 'rapid development' model, whereby all OPC functionality is encapsulated in a single DLL.

An attractive feature of WinTECH's toolkit is its relatively low price: 750 USD (or 2000 USD for source code). A second advantage is that you don't have to pay a cent until your OPC server development is complete. The toolkit may be downloaded free of charge, with the restriction that the demo version of the DLL times out after 30 minutes of operation.

WinTECH's server toolkit supports Data Access 1 and 2 and Alarms & Events. More recently, toolkit support has also been introduced for Historical Data Access.

Unusually, WinTECH's OPC Client Development Toolkit also adopts a DLL-based rapid development model. Pricing is 750 USD, or 1400 USD for source code. As with the server toolkit, all development may be undertaken prior to purchase.

Free Source Code

(Note: OPC Foundation supplies sample code for all published specifications, available to Foundation members only.)

Delphi source code for a simple OPC client and a prototype server may be downloaded from our Delphi page. Similarly, Java client code is available from our Java page.

Google Code Search also offers a possible route to free OPC source code (but check the licensing on whatever code you find).

Free Client Code

CERN - OPC Client Tutorial

CERN's sample code is supplied with a brief tutorial. This code uses a subset of the OPC interfaces, and is compatible with DA 1, 2 and 3.

beharrell - OPC DA Client SDK

Mark Beharrell's OPC DA Client SDK is a more complete toolkit for Data Access 2, providing wrapper classes to hide much of the complexity of OPC.

The OPC DA Client SDK downloads are hosted by SourceForge.

SourceForge

SourceForge hosts a number of other Open Source projects relating to OPC. Be aware that quality and maturity vary greatly between projects.

SST

SST's sample console client has Data Access 2.0 support, and includes source code.

SST also have a freely available server download (without source), which also supports Data Access 2.0. See Free Stuff.

Free Server Code

LightOPC

LightOPC is an open source OPC server toolkit. See entry in toolkits listing.