OPC UA PubSub in Industrial Systems Integration
Jarva, Aleksi (2024)
Jarva, Aleksi
2024
Automaatiotekniikan DI-ohjelma - Master's Programme in Automation Engineering
Tekniikan ja luonnontieteiden tiedekunta - Faculty of Engineering and Natural Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2024-06-07
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202406056731
https://urn.fi/URN:NBN:fi:tuni-202406056731
Tiivistelmä
Advanced communication technologies are required in the future as traditionally hierarchical industrial control systems transition towards smart factories as part of the Fourth Industrial Revolution. Open Platform Communications Unified Architecture (OPC UA) is an open, platform-independent, and modular communication architecture widely adopted by the industry. Communication in the OPC UA is traditionally based on a client-server communication model with session-based point-to-point connections. Recently in 2018, the OPC Foundation introduced a new communication model to the core standard collection called PubSub. It is based on a publish-subscribe pattern and designed to enhance the scalability of industrial systems by enabling a one-to-many communication schema and making integrations with cloud services more flexible.
In this thesis work, the capabilities of OPC UA PubSub were explored in industrial systems integration. The results were compared to directly using existing broker-based messaging protocols like MQTT and AMQP, in terms of interoperability, security and required integration engineering effort. The Design Science Research Methodology is employed to propose a general integration model using PubSub as the backbone. The generic model is demonstrated in a real-world application-based proof-of-concept integration using the PubSub over MQTT/JSON transport profile. Temporary stub components, which act as generic PubSub entities that aren’t fully compliant with the OPC UA standard, were developed with various programming languages. Those generic entities are used to simulate communication partners in the demonstration.
Key findings indicate that since the OPC UA PubSub communication model leverages existing widely adopted messaging protocols like MQTT and AMQP for transport, the interoperability between system components in the integration is good. In smaller-scale integrations, using fully compliant PubSub entities introduces a significant amount of configuration overhead compared to directly using MQTT client functionality. However, the standardized message structure and MQTT topic conventions defined by the PubSub standard were found useful also in the demonstration. Unlike other broker-based solutions under investigation, OPC UA defines end-to-end message security out-of-the-box using security groups and cryptographic keys for message signing and encryption. These are managed by the Security Key Service (SKS). Due to the status of the current PubSub software implementations, the SKS functionality couldn’t be tested and remains for future work.
Future research topics were identified during development, such as those related to the dynamic discovery mechanisms of publishers in a network using OPC UA status messages and wild card patterns in subscriptions. Even though PubSub seems promising as a future integration technology, further engineering effort is still needed to make PubSub more attractive and accessible for industrial system integrations.
In this thesis work, the capabilities of OPC UA PubSub were explored in industrial systems integration. The results were compared to directly using existing broker-based messaging protocols like MQTT and AMQP, in terms of interoperability, security and required integration engineering effort. The Design Science Research Methodology is employed to propose a general integration model using PubSub as the backbone. The generic model is demonstrated in a real-world application-based proof-of-concept integration using the PubSub over MQTT/JSON transport profile. Temporary stub components, which act as generic PubSub entities that aren’t fully compliant with the OPC UA standard, were developed with various programming languages. Those generic entities are used to simulate communication partners in the demonstration.
Key findings indicate that since the OPC UA PubSub communication model leverages existing widely adopted messaging protocols like MQTT and AMQP for transport, the interoperability between system components in the integration is good. In smaller-scale integrations, using fully compliant PubSub entities introduces a significant amount of configuration overhead compared to directly using MQTT client functionality. However, the standardized message structure and MQTT topic conventions defined by the PubSub standard were found useful also in the demonstration. Unlike other broker-based solutions under investigation, OPC UA defines end-to-end message security out-of-the-box using security groups and cryptographic keys for message signing and encryption. These are managed by the Security Key Service (SKS). Due to the status of the current PubSub software implementations, the SKS functionality couldn’t be tested and remains for future work.
Future research topics were identified during development, such as those related to the dynamic discovery mechanisms of publishers in a network using OPC UA status messages and wild card patterns in subscriptions. Even though PubSub seems promising as a future integration technology, further engineering effort is still needed to make PubSub more attractive and accessible for industrial system integrations.
