- November 11, 2012
By Peter Seeberg and J√ºrgen Lange, Softing
An OPC toolkit is a collection of libraries, classes and interfaces that simplify the development of OPC applications for programmers by providing standard functions for reading and writing OPC items, browsing and managing the OPC address space, and much more.
The sixth part of the OPC UA Series (SPS-Magazin, Issue 7) outlined the OPC Compliance Tests and Certifications. In the seventh part, we will discuss the OPC UA toolkits.
An OPC toolkit is a collection of libraries, classes and interfaces that simplify the development of OPC applications for programmers by providing standard functions for reading and writing OPC items, browsing and managing the OPC address space, and much more. Several man-years must be invested to develop a powerful toolkit for easily creating OPC clients and servers.
The more a toolkit manufacturer invests in a toolkit's architecture, efficient programming interface, sample implementations, documentation and wizards for automatically creating a program framework, the more toolkit users benefit by saving time and money when creating their own OPC UA components.
Softing has been a world leading provider of toolkits for OPC clients and servers for 15 years. The current product range comprises 18 versions for both the Classic OPC technology and the OPC Unified Architecture. Experiences from the past fifteen years have shown that the use of toolkits can save several man-weeks of development work for an OPC client, and around several man-months of development work for an OPC server. The time savings when creating a Classic OPC server depend on the number of Classic OPC information models (DA, AE, HDA, XML-DA) and on the complexity of the communication link. The time needed to create an OPC UA server depends on the scope of OPC UA functionality, the profile to be supported, the number of service sets to be supported, and the level of OPC UA Security used.
Make or buy
The decision to develop an OPC UA product is a make-or-buy decision as regards the OPC UA portion of the product: “make” in the sense of in-house development based on the OPC UA Specification and the OPC UA Stack of the OPC Foundation, or “buy” in the sense of acquiring a commercial toolkit. Important criteria for a make-or-buy decision when developing an OPC UA product are:
Time to market
When an OPC UA toolkit is used, the complete OPC UA standard functionality is encapsulated behind an API (Application Programming Interface). Important OPC UA standard functionalities like OPC UA stack integration, subscription and session management, and managing the AddressSpace, to name just a few, are covered by an OPC UA toolkit and therefore do not need to be implemented by the developer of an OPC UA Client or Server component using such a toolkit. The reduced effort results in earlier completion and thus a faster time to market and return on investment.
OPC UA compliance and interoperability with OPC UA products from other manufacturers
The manufacturers of professional toolkits test their products in a variety of scenarios. They ensure that their software is always successfully tested with the current versions of the OPC UA CTT (Compliance Test Tools) and that it undergoes regular tests at the Interoperability Workshops (IOP) of the OPC Foundation. For the manufacturers of OPC UA Client or Server components using a professional toolkit, OPC UA compliance and maximum interoperability are practically implicit product features which are crucial to the marketing of OPC UA products.
Fig. 2: By dividing the OPC UA implementation into platform-dependent and platform-independent parts, porting and embedding is possible on almost any target platform
OPC UA toolkits are used for creating many different OPC products in a wide range of scenarios with various load requirements. The maturity of an OPC component developed with a toolkit is many times higher than that of a component developed without an OPC toolkit. In a go-to-market strategy, it may be a decisive advantage to completely skip the “teething troubles” phase.
Efficiency and optimized performance
Professional toolkits are “living” tools in the sense that they are continually refined, functionally enhanced, debugged and optimized for performance. High transmission performance can prove to be a positive product feature or even an important competitive advantage for an OPC UA product.
Costs of an OPC UA toolkit
The toolkit costs make up only a small portion of the total cost of developing a new product. Depending on the complexity of the OPC UA product, the toolkit costs account for an average of 10% to 35% of the overall development costs. A multiple of the cost of an OPC UA toolkit is required to achieve a comparable level of maturity when developing OPC UA software without a toolkit.
Product maintenance costs
In addition to the initial cost of developing an OPC UA product, there are maintenance costs for compliance with specification changes, debugging and functional enhancements. When a toolkit is used, maintenance for the OPC portions of the software is limited to recompiling and linking the application with the current version of the toolkit. The OPC UA Specification is also continually improved and adapted to new market conditions. Changes to the specification, the OPC UA Stack or the operating system are irrelevant to the OPC UA Client or Server components, however. Viewed over a few years, the regular maintenance savings are several factors higher than the cost of the toolkit.
Focus on core competencies
An OPC UA toolkit is an obvious choice for manufacturers whose core competency does not lie in the field of software technology. But toolkits also spare software manufacturers the effort of mastering the details and internals of OPC UA technology and investing in the expansion of their expertise.
Availability of internal resources
Using a toolkit to develop an OPC UA product can save several man-months’ worth of a company’s resources.
Dependency on toolkit manufacturer, further development of the toolkit, long-term investment security
When a company decides to develop an OPC UA product using a purchased toolkit, that company enters into a dependency. If the toolkit manufacturer has a large toolkit portfolio, has clearly focused on the OPC toolkit market for many years, has invested continually in toolkit products and has a large customer base, these are good indications that the manufacturer will continue to develop and maintain its toolkits in the long term.
Due to the complexity of OPC UA technology and the enormous range of applications for OPC UA products, it is normal to consult with the toolkit manufacturer’s technical support or even development team. Toolkits are universal OPC cores which continually face new demands as regards implementation scenarios, environmental conditions, performance requirements and quantity structures. For this reason, errors can never be entirely ruled out. This makes the toolkit manufacturer’s troubleshooting response time all the more important. Signing a maintenance agreement with a toolkit manufacturer usually has a positive effect on response times.
Part 8 of the OPC UA Series will provide a detailed outlook on the future of OPC UA technology.
Peter Seeberg, Product Marketing Manager, Softing Industrial Automation GmbH
Jürgen Lange, Area Account Manager Embedded Technology Products, Softing Industrial Automation GmbH
Did you enjoy this great article?
Check out our free e-newsletters to read more great articles..Subscribe