Distributed manufacturing is an Industry 4.0 concept that focuses on collaboration between different stakeholders, or their robots, and the sharing of resources and costs. To do this, stakeholders need to trust each other, and this can be achieved through blockchain technology. This provides them with a higher level of safety, which is essential in distributed manufacturing. As part of our thesis, we have developed a system for authenticating nodes of a robot operating system using blockchain technology. The basic building block is the robot operating system, which ensures smooth operation of robots and communication between robots' nodes. Through the communication channels it provides us, the robots send messages about their existence and hash functions of their codes. These messages go to the main part of the system, the Ethereum Oracle, which connects the robot Operating System and the Ethereum private test network created with Ganache. Through it, information travels to the smart contract we have installed on the network. A smart contract is a code file that we publish on the blockchain network, and its purpose can be to transfer coins, perform operations or, in our case, transfer and store messages over the blockchain. We wrote the contract in Solidity programming language and published it on Ganache's Ethereum test network. Using Solidity events, we can pass information from the smart contract to the user interface, which allows us to visually present what is happening with our system. With it, the user can check whether the code of a particular robot has changed since its initialization into the robot system. This information is obtained by comparing the hash function that we have recorded on the blockchain and the hash function of the robot that we obtain in real time. If they do not match, it means that someone has changed the code.
This allows the user to monitor their own robots and detect unauthorised intrusions into the robot operating system.
|