Communication between machines in smart factories

Loading...
Thumbnail Image
Journal Title
Journal ISSN
Volume Title
Insinööritieteiden korkeakoulu | Master's thesis
Date
2021-12-13
Department
Major/Subject
Mechatronics
Mcode
Degree programme
Master's Programme in Mechanical Engineering (MEC)
Language
en
Pages
42
Series
Abstract
Smart factories are one of the concepts of the fourth industrial revolution and are used to make factories more effective. Smart factories are controlled partly by programs and machines themselves. In this thesis, three communication models for smart factories are compared and implemented using digital twins to determine how communication should be implemented in a smart factory. In the literature review, different communication methods such as request-response are presented. These are compared, and their advantages and disadvantages are presented. Based on these advantages and disadvantages, three communication models were implemented later in the thesis. Simulation in the thesis was performed using Python, ROS (Robot Operating System), and Gazebo by simulating communication with Python and the movement of the machines by Gazebo. Communication between Python and Gazebo was implemented with ROS. The advantages and disadvantages between centralized client-server, decentralized client-server, and decentralized peer-to-peer implementations are compared. In the centralized implementation, the user controls the factory manually. In the decentralized client-server implementation, the factory is controlled by microservices that can be run in the cloud. Finally, in the peer-to-peer implementation, machines control the factory. Differences in implementations were analyzed by comparing properties such as scalability and robustness. These analyses were based on both literature review and experiences from the implementations. Based on these, it was found out that the optimal controlling implementation depends on the priorities of the system. However, it seems that generally, the best choice is an implementation that uses peer-to-peer communication, and microservices would control the system. This peer-to-peer implementation with microservices allows machine movement algorithms to be implemented within the machines rather than in the controlling unit. However, this was not implemented in this thesis and thus would require additional research in the future to study that implementation. Twinbase was used to manage digital twin documents in the system. Using Twinbase makes adding new machines to the system simpler. Even though it is not needed to implement Twinbase in a centralized client-server implementation, it makes replacing the client simpler. Replacing the client is more straightforward because all information about machines is kept in the Twinbse rather than within the client, so it is advantageous to implement Twinbase in a centralized client-server system. In addition, having backup Twinbase raises systems robustness as the system works even if one of the Twinbases breaks.

Älytehtaat ovat yksi neljännen teollisen vallankumouksen konsepteista. Niissä tehtaan ohjaamista on siirretty laitteille itselleen sekä ohjelmistoille. Tässä työssä on toteutettu ja vertailtu kolmea erilaista kommunikaatiomallia älytehtaille käyttäen digitaalisia kaksosia, jotta selviäisi miten kommunikaatio kannattaa toteuttaa älytehtaassa. Kirjallisuuskatsauksessa käydään läpi erilaisia kommunikointimetodeja kuten pyyntö-vastaus. Tämän jälkeen kommunikointimetodeja on vertailtu ja niiden etuja ja haittoja on esitelty. Näiden etujen ja haittojen perusteella on toteutettu kolme kommunikaatiomallia tässä diplomityössä. Työssä tehty simulaatio on toteutettu käyttäen Pythonia, ROS:sia (Robot Operating System, Robotin käyttöjärjestelmä) sekä Gazeboa siten, että Pythonilla on simuloitu laitteiden välistä kommunikaatiota ja Gazebolla on simuloitu laitteiden liikkumista. Pythonin ja Gazebon välinen kommunikaatio on toteutettu käyttäen ROS:sia. Etuja ja haittoja keskitetyn asiakas-palvelin, hajautetun asiakas-palvelin ja hajautetun vertaisverkkototeutuksen välillä vertaillaan. Keskitetyssä toteutuksessa käyttäjä ohjaa älytehdasta manuaalisesti. Hajautetussa asiakas-palvelin toteutuksessa älytehdasta ohjataan käyttäen mikropalveluja, joita voidaan ajaa pilvessä. Viimeisessä toteutuksessa laitteet ohjaavat itse tehtaan toimintaa. Eroja toteutusten välillä analysoitiin vertailemalla niiden ominaisuuksia kuten skaalautuvuutta ja luotettavuutta. Analysointi perustui kirjallisuuskatsaukseen sekä havaintoihin toteutuksista. Näiden tulosten perusteella havaittiin, että paras ratkaisu riippuu systeemin vaatimuksista. Kuitenkin vaikuttaisi siltä, että yleisesti paras ratkaisu olisi vertaisverkko, jossa ohjaaminen on toteutettu mikropalveluilla. Tällainen vertaisverkkototeutus mahdollistaa ohjausalgoritmien toteutuksen laitteissa ohjausyksiköiden sijaan. Mikropalveluja käyttävää vertaisverkkoa ei kuitenkaan tässä työssä tutkittu, joten tämän toteutusvaihtoehdon arviointi vaatii lisää tutkimusta tulevaisuudessa. Työssä käytettiin Twinbasea hallinnoimaan ”digitaalinen kaksonen”-dokumentteja. Työssä havaittiin, että Twinbasen käyttö helpotti uusien laitteiden lisäämistä. Vaikka Twinbase ei ole välttämätön keskitetyssä asiakas-palvelin totetutuksessa sen käyttäminen helpottaa asiakkaan korvaamista systeemissä. Asiakkaan korvaaminen systeemissä on helpompaa, kun Twinbasea käytetään, sillä silloin laitteiden tiedot eivät ole tallessa asiakkaalla vaan Twinbasessa joten näitä tietoja ei tarvitse siirtää uuteen asiakkaaseen. Tämän lisäksi useamman Twinbasen käyttäminen tekee systeemistä luotettavamman, sillä yhden Twinbasen hajotessa systeemi pystyy yhä toimimaan.
Description
Supervisor
Tammi, Kari
Thesis advisor
Ala-laurinaho, Riku
Autiosalo, Juuso
Keywords
smart factories, Twinbase, digital twin document, robot operating system, simulation
Other note
Citation