OPC UA and Open Industry 4.0
Prosys OPC has been an active member of the OPC Foundation since 1999. We also joined Open Industry 4.0 Alliance in 2020 since we see the organizations complementing each other. Whereas OPC Foundation focuses on defining standards, Open Industry 4.0 looks at industrial use cases and provides a platform for vendors to streamline their offerings on a larger scale using standards.
OPC Unified Architecture (OPC UA, IEC 62541) is a standard technology that enables industrial equipment and applications to communicate together in a secure and reliable way, eventually enabling Plug & Produce in practice.
OPC UA defines standard Client/Server and Publisher/Subscriber communication models that are suitable for exchanging manufacturing data and calling services between different components and applications. It is not limited to manufacturing, though, since, in practice, it just defines standard ways to read and write variables, call methods, and organize data objects using semantic models. It also defines standard security mechanisms to enable trust between applications and encryption of all communication.
Open Industry 4.0 (OI4) has defined a Reference Architecture and guidelines for Edge and Cloud connectivity using common communication models. The Development Guideline for Open Edge Computing (OEC Guideline) is extending the OPC UA PubSub communication protocol with additional, use case specific data structures, such as Master Asset Model (mam), Device Health (health) and Overall Equipment Efficiency (oee).
Asset Information in OPC UA for Devices
OPC UA actually defines asset information in the interface types IVendorNameplateType and IDeviceHealth that are defined in the OPC UA Companion Specification for Devices (OPC UA DI), and these are indeed also used as a basis for the OI4 data structures.
The OPC UA DI specification also defines ComponentType and DeviceType that implement these interfaces, standardizing the asset information for every device.
Open Industry 4.0 Reference Architecture
Open Industry 4.0 has defined a Reference Architecture that defines recommendations for Edge and Cloud computing to improve interoperability between devices and machines from different vendors.
The OEC Guideline defines an MQTT Message Bus with the idea that all devices will publish their information in a common format. Other applications can then monitor this data by subscribing to the information in the message bus.
The basis of the OEC Message Bus is OPC UA PubSub MQTT/JSON communication. The information in the IVendorNameplateType is taken in use as is and defines the basic data to publish in the defined mam messages.
The following diagram shows the sequence of asset onboarding, using the mam message.
The contents of the PubSub message for the mam message would look like the following:
{
"MessageId": "unixTimestampInMs-PublisherId",
"MessageType": "ua-data",
"PublisherId": "/",
"DataSetClassId": "360ca8f3-5e66-42a2-8f10-9cdf45f4bf58",
"correlationId": " or ",
"Messages": [
{
"DataSetWriterId": ,
"filter": "",
"subResource": "",
"Timestamp": "",
"Payload": {
"Manufacturer": {
"locale": "en-US",
"text": ""
},
"ManufacturerUri": "",
"Model": {
"locale": "en-US",
"text": ""
},
"ProductCode": "",
"HardwareRevision": "",
"SoftwareRevision": "",
"DeviceRevision": "DeviceRevision",
"DeviceManual": "",
"DeviceClass": "",
"SerialNumber": "",
"ProductInstanceUri": "",
"RevisionCounter": ,
"Description": {
"locale": "en-US",
"text": ""
}
}
}
]
}
This conforms to the OPC UA PubSub message model with a few extra fields, so the idea is that normal OPC UA Subscribers can extract the dataset message without a problem, and the OI4 capable subscribers can also extract the extra information – namely the oi4Identifier, which is used to identify assets in the OI4 world.
The oi4Indentifier is in fact defined to be composed of the asset information as follows: <ManufacturerUri/Model/ProductCode/SerialNumber>
Support for Open Industry 4.0 in Prosys OPC UA Products
Looking at the definitions above, it will be possible to define a straight forward mapping for devices that act as OPC UA Servers and Publishers, in order to also let them conform to the OEC Guideline. Our intention is to extend the Client & Server PubSub Edition of the Prosys OPC UA SDK For Java, so that you can develop support for OEC along with OPC UA as easily as possible. We are also working on a basic OI4 simulation to Prosys OPC UA Simulation Server to help you out in testing it in real world. Stay tuned, contact us or come and talk to us at the events, if you find this interesting!
Author Info
Jouni Aro
Chief Technology Officer
Email: jouni.aro@prosysopc.com