Replacing internal communication protocol in UNIC control system
Ala-Hynnilä, Matti (2022-08-02)
Ala-Hynnilä, Matti
02.08.2022
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2022080252520
https://urn.fi/URN:NBN:fi-fe2022080252520
Tiivistelmä
This thesis examines OPC-UA (Open Platform Communications Unified Architecture) and investigate how it could be used in Wärtsilä for performing internal communication on their UNIC engine control system. Features of OPC-UA are compared to the currently used in-house built protocol to find out if changing the protocol would be feasible.
OPC-UA is a communication specification that standardizes information exchange of industrial automation. This thesis introduces the key concepts of the specification such as information modelling, client-server communication model, publish-subscribe communication model, and the available transportation mappings defining the concrete protocols for transportation. In addition, the current communication implementation of the control system and the services provided for system software components are inspected. After inspections, a general mapping is made between the currently provided services and the OPC-UA features. It is also discussed what transportation protocols shall be chosen for OPC-UA.
The objective of the thesis is to list requirements for performing internal communication by using OPC-UA. Requirements are set for the OPC-UA software development kit features based on the mapped services and protocols. The mapped protocols also introduce requirements for the network stack of the platform software. Based on the feature mappings an architectural proposal for OPC-UA implementation on the control system is presented. It is shown how the different OPC-UA software components could be distributed between the different hardware modules of the system, how the information model and communication interfaces could be initialized in the source code, and how the servers of the different hardware modules could be aggregated into a single server. It is also presented how the information model of the control system could be structured.
A short performance comparison is performed by comparing the data frame structure of the current implementation and the mapped counterpart. Finally, it is concluded that in theory OPC UA is feasible for performing the internal communication as it provides a lot of options for implementing the tasks of the current service handlers, but in practice the change contains some risks such as immaturity of the technology. Furthermore, the change would require a lot of work, and it could be questioned if the business value of the protocol change is worth the investment. Tässä opinnäytetyössä tarkastellaan OPC-UA:ta (Open Platform Communications Unified Architecture), ja selvitetään miten OPC-UA-tiedonsiirtoa voitaisiin käyttää Wärstilän UNIC-moottorinohjausjärjestelmän sisäisen tiedonsiirron suorittamiseen. OPC-UA ominaisuuksia verrataan tällä hetkellä käytössä olevaan yrityksen itse valmistamaan protokollaan, jotta saadaan selville, olisiko protokollan vaihtaminen mahdollista.
OPC-UA on tietoliikennespesifikaatio, joka standardoi teollisen automaation tiedonvaihdon. Tässä opinnäytetyössä esitellään spesifikaation keskeisimmät käsitteet kuten tiedon mallintaminen, asiakas-palvelin-viestintämalli, julkaise-tilaa-viestintämalli sekä käytettävissä olevat tiedon siirtomenetelmät, jotka määrittelevät konkreettiset tiedonsiirtoon käytettävät protokollat. Tarkasteltavana on myös ohjausjärjestelmän nykyinen viestintätoteutus ja sen tarjoamat palvelut järjestelmän eri ohjelmistokomponenteille. Tarkastusten jälkeen tehdään yleinen kartoitus tämänhetkisten palvelujen ja OPC-UA:n ominaisuuksien välille.
Opinnäytetyön tavoitteena on listata vaatimukset sisäisen viestinnän suorittamiselle OPC-UA:n avulla. Käytettävälle OPC-UA-ohjelmistokehityspaketille asetetaan vaatimukset kartoitettujen palvelujen ja protokollien perusteella. OPC-UA:n tarjoamat protokollat asettavat myös vaatimuksia alustaohjelmiston verkkopinolle. Ominaisuuskartoitusten perusteella esitetään myös arkkitehtoninen ehdotelma OPC-UA:n toteuttamiselle ohjausjärjestelmässä. Ehdotelma osoittaa, kuinka eri OPC-UA-ohjelmistokomponentit voitaisiin jakaa järjestelmän eri laitteistomoduulien kesken, miten tietomalli ja tietoliikennerajapinnat voidaan alustaa lähdekoodissa ja kuinka eri moduulien palvelimet voitaisiin yhdistää yhdeksi palvelimeksi. Lisäksi esitetään miten järjestelmän tietomalli voisi rakentua.
Lyhyt teoreettinen suorituskykyvertailu suoritetaan vertaamalla nykyisen toteutuksen datakehysrakennetta ja kartoitettua vastinetta. Lopuksi todetaan, että teoriassa OPC-UA on käyttökelpoinen sisäisen viestinnän suorittamiseen, koska se tarjoaa paljon vaihtoehtoja nykyisten palvelunkäsittelijöiden tehtävien toteuttamiseen. Käytännössä muutokseen sisältyy kuitenkin riskejä, kuten tekniikan tuoreuteen liittyvä epäkypsyys. Muutos vaatisi paljon työtä ja protokollamuutoksen tuottama liikearvo on hieman kyseenalainen verrattuna vaadittuun investointiin.
OPC-UA is a communication specification that standardizes information exchange of industrial automation. This thesis introduces the key concepts of the specification such as information modelling, client-server communication model, publish-subscribe communication model, and the available transportation mappings defining the concrete protocols for transportation. In addition, the current communication implementation of the control system and the services provided for system software components are inspected. After inspections, a general mapping is made between the currently provided services and the OPC-UA features. It is also discussed what transportation protocols shall be chosen for OPC-UA.
The objective of the thesis is to list requirements for performing internal communication by using OPC-UA. Requirements are set for the OPC-UA software development kit features based on the mapped services and protocols. The mapped protocols also introduce requirements for the network stack of the platform software. Based on the feature mappings an architectural proposal for OPC-UA implementation on the control system is presented. It is shown how the different OPC-UA software components could be distributed between the different hardware modules of the system, how the information model and communication interfaces could be initialized in the source code, and how the servers of the different hardware modules could be aggregated into a single server. It is also presented how the information model of the control system could be structured.
A short performance comparison is performed by comparing the data frame structure of the current implementation and the mapped counterpart. Finally, it is concluded that in theory OPC UA is feasible for performing the internal communication as it provides a lot of options for implementing the tasks of the current service handlers, but in practice the change contains some risks such as immaturity of the technology. Furthermore, the change would require a lot of work, and it could be questioned if the business value of the protocol change is worth the investment.
OPC-UA on tietoliikennespesifikaatio, joka standardoi teollisen automaation tiedonvaihdon. Tässä opinnäytetyössä esitellään spesifikaation keskeisimmät käsitteet kuten tiedon mallintaminen, asiakas-palvelin-viestintämalli, julkaise-tilaa-viestintämalli sekä käytettävissä olevat tiedon siirtomenetelmät, jotka määrittelevät konkreettiset tiedonsiirtoon käytettävät protokollat. Tarkasteltavana on myös ohjausjärjestelmän nykyinen viestintätoteutus ja sen tarjoamat palvelut järjestelmän eri ohjelmistokomponenteille. Tarkastusten jälkeen tehdään yleinen kartoitus tämänhetkisten palvelujen ja OPC-UA:n ominaisuuksien välille.
Opinnäytetyön tavoitteena on listata vaatimukset sisäisen viestinnän suorittamiselle OPC-UA:n avulla. Käytettävälle OPC-UA-ohjelmistokehityspaketille asetetaan vaatimukset kartoitettujen palvelujen ja protokollien perusteella. OPC-UA:n tarjoamat protokollat asettavat myös vaatimuksia alustaohjelmiston verkkopinolle. Ominaisuuskartoitusten perusteella esitetään myös arkkitehtoninen ehdotelma OPC-UA:n toteuttamiselle ohjausjärjestelmässä. Ehdotelma osoittaa, kuinka eri OPC-UA-ohjelmistokomponentit voitaisiin jakaa järjestelmän eri laitteistomoduulien kesken, miten tietomalli ja tietoliikennerajapinnat voidaan alustaa lähdekoodissa ja kuinka eri moduulien palvelimet voitaisiin yhdistää yhdeksi palvelimeksi. Lisäksi esitetään miten järjestelmän tietomalli voisi rakentua.
Lyhyt teoreettinen suorituskykyvertailu suoritetaan vertaamalla nykyisen toteutuksen datakehysrakennetta ja kartoitettua vastinetta. Lopuksi todetaan, että teoriassa OPC-UA on käyttökelpoinen sisäisen viestinnän suorittamiseen, koska se tarjoaa paljon vaihtoehtoja nykyisten palvelunkäsittelijöiden tehtävien toteuttamiseen. Käytännössä muutokseen sisältyy kuitenkin riskejä, kuten tekniikan tuoreuteen liittyvä epäkypsyys. Muutos vaatisi paljon työtä ja protokollamuutoksen tuottama liikearvo on hieman kyseenalainen verrattuna vaadittuun investointiin.