**Author details**

PLC programs can be operated. Threads that link shared variables to I/O modules are defined in the libiodispat.so, which is illustrated in the third part of **Figure 11**, and the middleware executes the thread. If the thread libiodispat.so periodically reads sensing data from the input module and stores into shared variables, then control threads of robot of Robot.so and PLC of main.so access shared variables.

In this study, we presented seven requirements of real-time robot SW platform that can be used for industrial robot and examined whether existing middleware such as ROS, OPROS, openRTM, and RTMIA [15] satisfy these requirements. In particular, communication middleware such as ROS has a disadvantage of demanding the user to have more knowledge about the real-time operating system to use the industrial robot but advantage that its usage is simpler because it does not manage execution of processes and/or threads. On the other hand, OPRoS, openRTM, and OROCOS manage the execution of threads for periodic execution

In this study, we proposed the real-time robot SW platform that satisfied the presented seven requirements R1–R7 by extending RTMIA and demonstrated its implementation on the Xenomai real-time operating system and Linux. The proposed SW platform utilized the timer-interrupt based approach to keep strict period

We applied our method to a practical robot system, wherein the programs of PLC and the robot were used simultaneously, and their corresponding operating results were also presented. In this implementation, PLC ladder program and robot

implemented application was simple, it was not shown that event handling and execution of periodic processes were working well. But they did work well. That is, it can be known that the proposed platform satisfied requirements R1–R7. As a

be known that it is generally easy and convenient to read and write the shared variables using the conventional variable access method when the shared variables defined in other threads are accessed. Hence the proposed method for accessing of shared variables is designed for multiple processes or threads to have mutually exclusive access to shared variables using the conventional variable access method. And it is shown that the proposed method for accessing of shared variables is

Future work may include investigating a robotic platform that optimally operates multiple threads in multicore systems. And the proposed platform will be

This work was partially supported by KITECH research fund and Korea Evalua-

tion Institute of Industrial Technology (KEIT) grant funded by the Ministry of Trade, Industry & Energy (KOREA) (No. 20004535 and No. 20005055).

The other advantage of this study is the method to access shared variable. It can

control program were managed using period of 10 milliseconds. As the

**5. Conclusions**

*Industrial Robotics - New Paradigms*

working well.

**118**

implemented on the μC/OS.

**Acknowledgements**

but does not control the execution of processes.

and the shared memory for convenient usage.

result, the platform proposed in this study was verified.

Sanghoon Ji<sup>1</sup> , Donguk Yu<sup>2</sup> , Hoseok Jung<sup>1</sup> and Hong Seong Park<sup>3</sup> \*

1 Convergent Technology R&D Division, Robot R&D Group, Korea Institute of Industrial Technology, Gyeonggi-do, South Korea

2 Navcours, Daejeon, South Korea

3 Department of Electrical and Electronic Engineering, Kangwon National University, Gangwon-do, South Korea

\*Address all correspondence to: hspark@kangwon.ac.kr

© 2020 The Author(s). Licensee IntechOpen. This chapter is distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/ by/3.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
