As technical consultants at Software Toolbox, we are often approached by users who need to expose data from a software application they have written, or are writing, to communicate from systems they own to a client, HMI/SCADA, or historian. And, in many cases, there are dozens of applications at different sites that the data needs to reach. The question we are then presented with is, “how can I accomplish this quickly and efficiently while staying within budget?”
Continuing our OPC Development Toolkits blog series, our hope is to answer this question and share from our experience with OPC since 1996, what our users have told us are the common reasons why they chose to use a commercial OPC server toolkit, and to help readers determine what factors to consider for their specific situation and circumstances.
In the first part of this series, we covered the basics of commercial OPC client development toolkits, with a dive into the benefits of using one, while here in part 2, our focus is on OPC server development toolkits. If you read our blog on OPC client toolkits, you will likely notice a clear overlap in the benefits you gain from using both types of commercial OPC toolkits.
To truly begin understanding the benefits of a commercial OPC server toolkit, it is important to understand what exactly an OPC server toolkit is. If you are new to OPC software for industrial data exchange, we suggest you also download and review our Beginner’s Guide to OPC.
What is an OPC server toolkit?
A commercial OPC server toolkit is a library of software modules developed through an exhaustive process of design, implementation, and testing, which provide simplified interfaces to a custom application/software developer. The toolkit’s primary purpose is simplifying custom application development via predefined interface elements such as properties, methods, and events that abstract the details of OPC server functionality, minimizing the need for the user to learn the low-level nuts and bolts of the OPC specifications.
Example applications include:
- Building a custom OPC server
- Adding an OPC server interface to an existing application
OPC server toolkits can generally support one or multiple OPC specifications. Typically, it’s common to find OPC server toolkits for adding OPC DA and/or OPC UA compliance that enable a custom software application to share data with as many other systems as possible. This data can be completely user-defined or be sourced from another type of toolkit that may enable reading from a device.
OPC Client toolkits can support one or multiple OPC Specifications. Most commonly, one would find OPC Client toolkits for adding OPC DA and/or OPC UA compliance to enable a custom software application to interoperate and read/write data with as many other systems as possible, whether that be other software applications or devices. As you read on, you’ll learn that, with OPC UA, it’s important to know what facets and profiles in the specification you need to implement.
What are some benefits of using a commercial OPC server toolkit?
Reduce learning curve and development timeAs we touched on earlier, any OPC toolkit’s primary purpose is greatly simplifying the addition of OPC client and/or server capabilities to an application without requiring the time and frustration of the developer having to learn the relevant OPC specifications and then having to implement them from the ground up. If you read Part 1 in this series, you may recall that, to fully understand OPC UA, you’d need to read at least 617 pages of specifications. A toolkit condenses this to basic functions for reading, writing, subscribing and error handling.
Increased Quality of Your SoftwareCommercial OPC server toolkits are developed by way of thorough analysis, development, and testing processes. Since commercial toolkits are typically product managed, features are added periodically along with regular bug fixes, and support is available. You benefit from every other user at other companies that have bought and committed to support & maintenance of the toolkit. The developers use those regular license & maintenance fees to cover the staff and teams that work to improve and support the product. While you only pay for your own licenses & support, you reap the benefits from the whole. At the same time, you can then focus on the quality of your code, user experience, and application, while letting the toolkit developers be the experts on OPC.
Reduced support costs - Interoperability with other OPC products
OPC interoperability can be a common source of support headaches, especially if you chose to write your own code from scratch. Or, if you are using a free OPC server toolkit, you can only rely on free community support, and there is no one to call for help, no regular updates or someone whose livelihood depends on your satisfaction. A good toolkit developer will have followed the relevant OPC specifications while creating that toolkit, increasing reliability when used with other OPC products that have also followed the OPC specifications to the letter.
Compatibility and integration with development toolsCommercial OPC Client toolkits will have been thoroughly interoperability tested with a range of development environments where they will be used to develop custom OPC Client applications. Development environment compatibility is an important part of supporting your goal of a quality OPC client application.
Lower Total Cost of OwnershipAnother key motivation for using an OPC server toolkit is to lower the cost of implementing an OPC server interface in a custom application. This includes both the initial implementation and the ongoing maintenance.
Because designing an OPC server interface from scratch is generally an extremely costly, time-consuming project and any future issues will be harder to identify and resolve, a good toolkit is a sound investment.
Documentation, examples, and supportA good OPC server toolkit should make the developer’s job easier – this includes the learning and implementation process. Some essential elements of an OPC server toolkit and its provider towards gaining you the best return on your OPC server toolkit investment include:
- Detailed and easy to follow documentation
- Examples and/or code samples
- A knowledgeable support team to help with any questions not covered by documentations and examples is essential to get the greatest return on your OPC server toolkit investment.
Where can I find an OPC server toolkit that has all of those benefits?
At Software Toolbox, we have been involved with OPC on the ground level since our founding in 1996. We have offered OPC toolkits for many years to help users like you tackle projects not strictly fitting an off-the-shelf requirement. Our OPC server toolkit is known as the SLIK-DA OPC Server Toolkit.
For ease of use:
- SLIK-DA enables users to create a simple, custom OPC DA Server in a short amount of time, greatly simplifying the task of integrating OPC into applications.
- SLIK-DA handles the messy OPC details for you behind the scenes, so you do not have to worry about learning the underlying OPC calls and specifications.
- The simple API exposed by SLIK-DA allows you to rapidly develop robust applications that are both flexible and scalable.
- OPC UA (Generic Data/Data Access Profile) functionality can be added without writing any additional code!
- OPC UA implementation uses modern, secure TCP connections that eliminate DCOM headaches that come with establishing remote OPC DA connections.
- OPC UA and DA interfaces can co-exist next to each other in your application for maximum client interoperability
For interoperability with other OPC solutions:
- SLIK-DA directly supports the following OPC specifications:
- OPC UA (Unified Architecture - Generic Data/Data Access Profile)
- OPC DA (Data Access) 1.0, 2.0, and 3.0 (aka OPC Classic)
- OPC Security 1.0 (OPC Classic)
- SLIK-DA directly supports the following OPC specifications:
For total cost of ownership:
- Software Toolbox offers development licenses for SLIK-DA that are runtime free. This includes unlimited deployment for non-commercial applications (i.e. applications that will NOT be sold to others as off-the-shelf products). This means users can develop a custom OPC server and deploy it to multiple sites, all for the price of a single developer’s license.
For documentation, examples, and support:
- All SLIK-DA license purchases from Software Toolbox include a 1-Year Support and Maintenance Agreement, which entitles you to access product updates, bug fixes, and email/phone support. And, though it is not a requirement to renew annually, it is highly recommended so that you have access to the latest builds and to our experienced team of application consultants for continued support.
- Our knowledgeable support team is well-versed in using our OPC server toolkit, enabling them to assist you with any questions or issues you may encounter while creating your custom OPC servers.
- SLIK-DA also includes extensive documentation, which you can access regardless of your support agreement status. This includes, but is not limited to:
- Example code with working sample OPC server applications, compiled in different Visual Studio versions
- Detailed Help File
- Getting Started Guides
- Knowledge Base with FAQs
There are certainly many factors to consider when deciding to use an OPC server toolkit. First and foremost, selecting the right OPC server toolkit that will both meet your needs and provide the greatest return on investment is vital. We hope this post will be helpful and informative as you explore using OPC server toolkits to build your own OPC servers.
We encourage you to download our SLIK-DA OPC server Toolkit and give it a try!
Have any questions? Please contact us to start a discussion about your OPC toolkit needs.