As OPC UA has grown in it's adoption, more device vendors are implementing OPC UA interfaces on their PLCs and other devices to increase interoperability. OPC UA has been proven to be an adaptable specification with its ability to accommodate industry-specific nuances in data formats, leading to implementations that expose information in ways that make practical sense.
As a middleware solution, OPC Router implements a variety of OPC UA features outside of the generic Data Access profile to cast a wide net for devices it can support.
In this continuation of our Summer of IoT blog series, we will highlight a selection of these features and demonstrate how they can be used to aggregate data from a variety of edge devices.
Structured Data
If you are familiar with OPC communication, you know OPC Tags typically come in the form of singular values of the typical data types, such as Booleans, Integers, Floats, and so on. However, you may not realize there are means available in OPC to structure data that can handle the complexities of multiple data types, that would enhance the clarity, efficiency and interoperability of your communication?
OPC UA supports the implementation of specialized data types in the form of structures (also called complex data), which allows information of different data types to be grouped together into one node. Here’s why Complex Data matters to you:
- Complex data, or structured data, support types like arrays and structures that enable detailed data representation.
- Complex data allows for more efficient transmission of large sets of data.
- It facilitates better interoperability between systems and devices, allowing for the standardization of data models.
- Complex data enables advanced features such as historical data access and alarms, crucial for robust data management.
As demonstrated in the image above, OPC Router’s OPC UA Client is capable of consuming these structures and interpreting the individual values within. With the flexibility provided by its ETL (Extract, Transform, Load) Tools, these values can be reformatted to meet the needs of any connected cloud service or other supported OPC Router connector.
ETL is the process of consuming data from multiple sources (Extract), deriving the information needed from it (Transform), and outputting it to the relevant systems (Load). OPC Router simplifies data transformation for compatibility with web services that utilize common payload formats such as CSV, JSON, and XML. For more details on how these tools can restructure information between any data sources and destinations connected to OPC Router, you can check out our blog post, Data Exchange File Formats: Exploring ETL Tools with OPC Router.
Companion Specifications
OPC UA structures and methods can be specific to a single server or device type, or they can be formalized for common use cases. Quite often, standards and regulations within an industry create the need for the collection of similar information in similar formats in a defined data model that has been agreed upon by the customers and suppliers in that industry. OPC UA Companion specifications accommodate these needs by providing a means to implement those agreed upon industry-specific data models and use OPC UA as a standard transport method for the data. For example, EUROMAP 77 is a more well-known specification that is tailored to injection molding machines in the plastics and rubber space, that is also implemented in an OPC UA Companion Specification.
OPC Router’s OPC UA server supports the import of Companion Specifications from an XML file that defines a vendor’s custom model nodeset. Additionally, it can connect to the OPC UA Cloud Library to import the model nodesets provided by the OPC Foundation for published OPC UA Companion Specifications. This opens the possibilities for OPC UA clients to consume aggregate data from an array of sources in an expected, structured format that is optimized for any industry. Users can create a free account with the OPC Foundation and have pre-configured information models at their fingertips tailored to their needs.
Some examples of information models available in the Cloud Library are:
- General Machinery
- Job Management
- Process Values
- Result Transfer
- Asset Management and Condition Monitoring
- Plastics and Rubber
- Injection Molding Machines to MES
- Extrusion line components
- Peripheral Devices
- HRDs
- LSR dosing systems
- TCDs
- Oil and Gas (Subsea Production)
- Food and Beverage
- Healthcare (OPEN-SCS)
- Mining
- Packaging (PackML, as shown above)
- Scales/Weighing Technologies
- CNC systems
- Woodworking
- Building Automation
Users are not limited to the OPC Foundation's library alone; in fact, they can reference any cloud library of OPC UA Companion Specification, and even load their own if there’s been one defined for your specific business demands. Once a Companion Spec is referenced in OPC Router, an OPC UA Server implementing that specification is created in just a few clicks. Then with the OPC Router’s visual workflow engine, data points can be connected and made available in the OPC UA Server, used with any OPC Router connector, regardless of where you sourced the data from.
PubSub
OPC UA Pub Sub (Publish-Subscribe) is an extension of the OPC UA (Open Platform Communications Unified Architecture) standard that introduces a communication pattern where publishers send data to subscribers without the need for direct point-to-point connections. It enables efficient and scalable data exchange in industrial and IoT (Internet of Things) applications by decoupling data producers (publishers) from consumers (subscribers). See our related post on the integration of OPC UA PubSub and how it leverages MQTT as its conduit for message transmission.
Our product, OPC Router, can operate as an OPC UA publisher or subscriber, allowing for the exchange of data in either direction with any other connected parties. This means that it can be integrated with an existing MQTT broker to push or pull data from sensors or controllers that are OPC UA Pub/Sub publishers.
Conclusion
OPC UA is a robust protocol, and OPC Router leverages that by providing a wide range of additional plug-ins to interface with its OPC UA connections. With its web-based remote configuration and Docker deployment support, there are endless ways to integrate OPC Router and provide edge device data to IoT platforms with RESTful/SOAP web services, SAP and ERP interfaces, MQTT (including Sparkplug B) subscribers, and more.
Please feel free to contact our technical team if you have any questions, and as always, be sure to subscribe to our blog for more information on OPC Router and our other products, such as whitepapers, app notes, case studies, and more!
Ready to get started with OPC Router and get the most out of OPC UA? Download the free trial today!