# OPEN ROBOTIC CONTROLLERS

Róbert ÜVEGES*, František ĎUROVSKÝ*, David LINDR**

*Department of Electrical Engineering and Mechatronics, Faculty of Electrical Engineering and Informatics, Technical University of Košice, Letná 9, 042 00 Košice, Slovak Republic, Tel.: +421 55 602 2155, 2267, E-mail: robert.uveges@tuke.sk, frantisek.durovsky@tuke.sk

**Institute of Nanomaterials, Advance Technologies and Innovation, Technical University of Liberec, Studentská 2, 46117 Liberec, Czech Republic, Tel.: +420 485 353 828, E-mail: david.lindr@tul.cz

## ABSTRACT

This paper collects information about actual status and future trends of research and development in sphere of open robotic controllers and pointing out the importance of its advances in research, academic and commercial field. Mainly two different approaches were described there. First of them are Hardware In the Loop simulators, which are usually programmed with well-known commercial products from academic field. On the other side, in comparison with commercial products, are open source robotic middleware which is freely available and it is managed by community of researchers and enthusiasts. The main advantage of this approach are large community support, but software may be unstable and there should be also compatibility issues between versions.

**Keywords:** HIL simulators, motion controller, robotics, servo control

## 1. INTRODUCTION

A standard commercial industrial robot usually does not enable open access into its control system. It presents a kind of black-box where the user cannot change the robot program. Robot can be programmed just with function predefined by its manufacturer. This type of solution guarantees safe and reliable operation which is the most important factor for use in industry. Producers of robots usually offer different tools for offline programming and simulation of an end effector motion. This tools and programming languages are always fixed to use with robots of the given manufacturer only. But on the other side, for development of robot algorithms and also for teaching purposes it is often required that the control algorithms should be known and modifiable. Open control system is also suitable if cooperation of different production robots is required, because they are usually not compatible.

An open control system is required for verification of custom control algorithms in laboratory. It should allow easy modification of control structure, ability for adding axes, possibility for connection of additional components and integrating it to control structure and also monitoring functionalities from high level robotic controller to low level control of servo drives. This article is divided to three general topics - Hardware-in-the-loop robotic simulators, controllers based on open source robotic middleware and domestic research in this field.

## 2. HIL SIMULATORS

In general, Hardware In the Loop (HIL) simulation is a method that is used in development and testing of complex real-time embedded systems. In HIL simulation the controlled plant (mechanics, sensors, actuators) are replaced by physical components. It is typical for HIL, that commercially available scientific software is used like MATLAB/Simulink. Recommendation for building a reliable simulation system is in using of customizable

industrial components for testing purposes. It guarantees seamless operation on hardware side of simulator.

### 2.1. Satellite docking simulator based on hardware in the loop hybrid contact model

Authors of this paper presents a HIL docking simulator concept (Fig. 1). Requirement for the docking simulation is that its 6-degree of freedom robots have to mimic the dynamic response of two satellites during contact/docking. To simulate this situation, HIL simulator was build which consists of two robots, controlled in position/impedance structure. For implementation in control system, the dynamic model of hybrid contact was derived and for resulting system, stability analysis was performed. Developed algorithms enables for simulator to make tests with wide range of contact properties, which varies depending on the mass of satellites and on values of desired contact parameters. This approach enables to evaluate and optimise the process of satellite docking. In addition, this paper presents the effect of parameters which are time delay, stiffness, damping and masses of the simulating satellites on the stability of the HIL docking simulator. This simulator could not be realised with

<figure><img src="image_1.png" /><figcaption>Fig. 1 Schematic of the HIL docking simulator</figcaption></figure>
standard commercially available controller, because used
nonstandard algorithms has no use in industrial
applications. [1]

## 2.2. Optimizing Industrial Robots for Accurate High-Speed Applications

Today's standard robotic systems often do not provide their maximal performance for accurate high-speed robotic applications. It can be achieved by pushing it to their hardware limits. This approach is not used by producers of robotics systems because of complexity of modern applications, where overall optimization is not possible. The research team from Johannes Kepler University of Linz presented their results from research in optimisation of dynamic properties of a Stäubli RX130L type industrial manipulator. Optimization was obtained by developing of various control optimization strategies, which improves overall performance. Higher level control system was deployed to industrial PC communicating via Powerlink with six ACOPOS servo drives, which power the synchronous motors of the robot (Fig. 2). Developed time/energy optimal motion planning strategy, based on optimal exciting trajectories solved by nonlinear optimization techniques was combined with model-based control. Algorithm was verified in HIL simulator based on above mentioned system. [2]

<figure><img src="image_2.png" /><figcaption>Fig. 2 Control system block diagram</figcaption></figure>

## 2.3. Design and implementation of a path planning for a high-dynamic handling system

Another project from Linz, based on similar motion control hardware programmed in MATLAB/Simulink designs a software framework used for a high dynamic pick and place handling system. It allows easy programming with simple scripts to easily adapt motion sequences and teach positions. Programming is also simplified by control system deployed on industrial PC with integrated touch screen. Developed application includes path interpolation algorithm with Bezier-curves for position and orientation of tool center point. This approach guarantees smooth motion of handling arm, also as low pick and place cycle time. Hardware configuration can be also extended by adding additional axes, just inverse kinematic algorithm should be modified according to chosen configuration. [3]

## 2.4. Motion Control of Industrial Robots in Operational Space: Analysis and Experiments with the PA10 Arm

Next approach to robot motion control method was
developed based on resolved motion rate control in

operational space, combined and compared with
conventional hierarchical control in joint space. The
stability of this control theory was mathematically
verified. Developed strategy was verified in HIL simulator
with Mitsubishi PA10-7CE robotic arm in loop. As a
control system a conventional PC was used with necessary
applications to make it real-time. Control rules were
programmed via Visual C++ also as a robot visualisation.
Developed algorithms was experimentally verified on
robotic arm in real-time. Control system was tested in
different operation modes and the results showed good
performance in all cases. Torque mode was more affected
by mechanical vibrations due to mechanical friction. [4]

## 2.5. Open Software Architecture for Advanced Control of Robotic Manipulators

This work describes an experimental platform that allows the implementation of model-based and sensorbased control algorithms in Stäubli RX60 type industrial 6-dof robot using a component-based software methodology. Low level control of servo drives was implemented on Intel Pentium based controller, which communicates with conventional master PC with real-time Linux OS. Master PC handles tasks, which needs a lot of computing power like image processing and high level control. Developed system mainly focuses on its modularity with wide range of connectable sensors and another additional components. It allows for different sensors to be easily switched and rewired depending on the new sensor fusion or control strategy must be tested. Series of experiments were carried out to validate the performance of the proposed architecture. This work is heading to develop an open robot control system with implemented impedance control. [5]

## 2.6. Real-Time Control in Robotic System

Main goal of this topic was not to build a real time control system, but to make a detailed analysis of robotic real-time controller, which was broken down to atomic tasks and requirements like timing issues or bandwidth problems. Research summarizes requirements to a modern robotic control system and highlights importance of safety, making this system fault-tolerant. A number of results were presented for the control strategy, as well as an implementation on a real robot. [6]

## 2.7. An Open-architecture Robot Controller applied to Interaction Tasks

Authors of this project made a control system reconstruction for an old REIS Robotics Rv15 type robot to verify their developed control architecture. This reconstruction was necessary, because an old system had a factory closed software architecture and low computing power for advanced control tasks. Low level control for each joint is deployed on dsPIC30F60110A high end digital signal processor. Motor controllers were connected through USB-UART bridge to host computer and CAN communication was also implemented to meet real-time requirements. Additional interaction sensor was added to an end effector for verification of implemented impedance force control algorithm. [7]
## 2.8. PC Based Control Systems for Compliance Control and Intuitive Programming of Industrial Robots

This article presents a modular architecture which can be easily reconfigured with reference to the kinematics of the controlled robot and which can be easily applied to different RTOSs. Similar control method was used, like it was described in previous section. Force and impedance control strategy of robotic arm with force/torque sensor placed on the end effector of robot and also an improved algorithm for sensorless compliance control based on force/torque observer. Each approach was tested on different hardware configuration. Concept with sensor feedback runs on PC with real-time Linux kernel which communicates through ARCNET network card with servo controller of Mitsubishi PA-10 robot. The sensorless approach uses the same computing hardware to control COMAU NS-16 robot. [8]

## 2.9. Design and Simulation of Robot Manipulators using a Modular Hardware-in-the-loop Platform

This research presents an approach to design of robotic HIL simulator using load emulation for each joint. Loading and driving motor were coupled together through a torque sensor and loading motor was controlled to generate torque typical for desired application (Fig. 3). Various situations could be simulated using this approach and control system can be well tuned for every condition. Developed control system was tested and validated also with real robotic hardware specifically with CRS CataLyst-5 lightweight manipulator. The validation of the RHILS platform was successful, and the platform exhibited similar performance characteristics to the original controller under both normal and aggressive operating conditions. [9]

Load Module

Test Module

<figure><img src="image_3.png" /><figcaption>Fig. 3 Load and test modules [9]</figcaption></figure>

## 2.10. Hardware in the Loop Robot Simulators for On-site and Remote Education in Robotics

In this study, a similar approach in HIL simulation was introduced as an education tool in robotics, mechatronics and control. The paper discusses the development and utilization of HIL specifically in the instruction of control design aspects of robotic courses. Two motors driven by high performance DSP boards were used there. One motor represents the joint actuator and the other one is used for

the generation of all the torque components affecting that joint for the robot system in consideration. Thus, it is possible to evaluate the overall performance of the robot and its end-effector by combining the data from each simulated joint-associated dynamics pair. The proposed HIL architecture is combined with a client/server software configuration to allow remote connection for students. It is possible, because in contrast with real robot, this testing platform is safe for its environment. This approach became very popular, and our department also developed similar torque emulator. [10]

## 3. CONTROLLERS BASED ON OPEN SOURCE ROBOTIC MIDDLEWARE

Modern robotic systems are combination of various technical fields such as computing systems, mechatronics or communication. Actual trends are heading to make robotic systems as a set of distributed modules. Every module has its own role, but cooperates with other modules to achieve specific tasks. These modules are controllers, sensors, actuators or software modules for computing tasks. Modules should be reusable and configurable to achieve high level of modularity to reduce development time. For this reason various robotic middleware were developed. Robotic middleware is a layer between application and OS kernel which groups together software modules of all fields in robotics.

### 3.1. Comparison Study of Robotic Middleware for Robotic Applications

This study gives an overview of different actually popular robotic middleware. The document contains descriptions of systems such as Robot Operating System, RT-Middleware, OPRoS and Orocos. Mentioned software was also compared in this report. The comparison was made in different aspects, which are important both from the view of the user and the developer. Comparison results for different aspects are listed in Table 1. [11]

From table is visible that all robotic middleware has its advantages and disadvantages. The most popular of them – ROS has main disadvantage, that it has no real-time capabilities, it is also unusable on windows based systems and doesn't provide an easy to use graphical IDE for programming.

<table><caption>Table 1 Comparison of robotic middleware [11]</caption><thead><tr><th></th><th>RT-Middleware</th><th>ROS</th><th>OPRoS</th><th>Orocos</th></tr></thead><tbody><tr><td>Open-source</td><td>Yes</td><td>Yes</td><td>Yes</td><td>Yes</td></tr><tr><td>Windows</td><td>Yes</td><td>No</td><td>Yes</td><td>Yes</td></tr><tr><td>Linux</td><td>Yes</td><td>Yes</td><td>Yes</td><td>Yes</td></tr><tr><td>Composite component</td><td>Yes</td><td>No</td><td>Yes</td><td>No</td></tr><tr><td>Robot software architecture independent</td><td>Yes</td><td>Yes</td><td>Yes</td><td>Yes</td></tr><tr><td>Graphical IDE</td><td>Yes</td><td>No</td><td>Yes</td><td>No</td></tr><tr><td>Simulation environment</td><td>OpenHRP, Choreonoid</td><td>Stage, Rviz</td><td>OPRoS Simulator</td><td>No</td></tr><tr><td>Real-time</td><td>Yes</td><td>No</td><td>Planned</td><td>Yes</td></tr></tbody></table>
## 3.2. ROS-I interface for COMAU robots

Beside the community, international manufacturers of industrial robotic systems also noticed a potential of open robotic framework. That is the reason why most of them released an open source code to control their robots. Grouping them together leaded to initiative to make an industrial version of Robot Operating System ROS-I. This article presents a ROS-I interface developed to control Comau manipulators. The developed system lets the user to control both a real robot and its simulated counterpart using the same controller. It allows to use any motion planning library inside ROS instead of using Comau's motion planner. Experiments showed that both the virtual and the real robot performed the same movement during the execution of both assignments. This proves that using the same controller in both simulated and real environment guarantees the same motion interpolation. Experiments were performed on Comau Smart5 SiX industrial manipulator. The detected movement precision proves the good functionality of system itself and the possibility to use any type of motion planning library. Having a ROS-I interface makes the Comau system reusable by entire ROS community. [12]

## 3.3. Connecting ROS to a real-time control framework for embedded computing

As was mentioned in comparison study of robotic middleware ROS don't have hard real-time capabilities. That's the reason why time critical applications like motor control loops shouldn't run on it. Authors of this article made a solution for this problem with keeping complex control algorithms running in ROS on resource rich computer and deploying time critical tasks to embedded real-time computing hardware interconnected by TCP/IP communication. Communication layer with embedded controller was implemented as a ROS node called LUNA, which is a bridge between ROS topics and commands to controller. Several tests was performed for verification of developed platform, and showed that solution is working as intended. This approach is also suitable for mobile robotics, where power consumption of computing hardware is important. [13]

## 3.4. RT-ROS: A real-time ROS architecture on multi-core processors

Another solution to make ROS suitable for real-time control applications is to make it real-time. Authors of this paper separate real-time and non real-time tasks running at the same time on different cores of computer. Each group has separate CPU, memory, interrupts and peripheral devices. With this approach they developed a real-time ROS which can communicate with nodes of non RT ROS running on different core through shared memory. RT ROS can be shut down or restart dynamically. This solution reaches low communication times, less than 100 ns between nodes of ROS and response time for interrupt is between 1250 and 2250 ns. The results show that RTROS can be utilized for real-time robot control. Developed control system architecture was tested with 6-DOF modular manipulator. It consists of joint modules communicating with controller PC over CAN bus. Also

simulation with RVIZ for motion teaching was implemented. Presented results shows, that this innovative solution is a viable way to make ROS as a part of robot controller. [14]

## 3.5. An open control system for manipulator robots

In this paper, authors present an implementation of a robot controller using OROCOS. The operating system, where is the control system deployed is OS Linux with applied RTAI real-time patch. The control system concept is based on a distributed architecture where each processing node is associated to a joint of robot. CAN bus was used for real time communication with sensors and actuators. For testing hardware the Janus robot was used, which is an anthropomorphic two-armed robot, with eight degrees of freedom in each arm, and a stereo vision system. Each joint is driven by DC motors and contains an incremental encoder. Presented results showed usability of OROCOS robotic middleware to build an open source robot control system. [15]

# 4. DOMESTIC RESEARCH IN THE FIELD OF ROBOTIC CONTROLLERS

In recent years authors was actively participated in research on field of robotic control systems also in academic and commercial sphere. Results of their work were published in several papers and also were presented on national and foreign conferences.

## 4.1. Development of Motion Control of Legs in Six-Legged Robotic Vehicle

This research is from field of service robotics and it's focused on development of control structure for driving system of the legs in six-legged robotic vehicle (Fig. 4). Vehicle can drive/walk depending on terrain conditions in several modes which were inspired by motion of animals (spider, horse...). Joints are driven by hydraulic actuating units with different mechanical structures. Main source of energy is a gasoline engine with 800cm³ cubature, which drives a hydraulic pump with controllable geometry of blades. For motion control of actuating units a conventional cascade structure was used with inverse linearization of controlled variables. Control performance was improved by pre-compensation of controlled and observed variables from inverse dynamics model. Control

<figure><img src="image_4.png" /><figcaption>Fig. 4 Six-legged robotic vehicle [16]</figcaption></figure>
system was distributed between pairs of legs, where control system of each pair of legs was deployed on National Instruments SBrio real-time computing hardware with FPGA interface. TCP/IP communication was implemented between control nodes, and also with higher level control system, which was running on conventional PC with high computing power. Experimental results showed good performance of control structure and aim for future should be a development on higher level of autonomy in unknown environments. [16] [17]

## 4.2. HIL Simulator of Drives of an Industrial Robot with 6 DOF

This paper deals with design of HIL simulator of SEF ROBOTER SR25 type 6-DOF industrial manipulator driven by industrial frequency converters of SINAMICS S120 type. SINAMICS industrial frequency converters enables deep configuration of control structure which is well documented by manufacturer. It guarantees reliable operation, which is the basic prerequisite to build a HIL simulator. The communication was realised by CAN bus with master control system with QNX OS executing control algorithms in real-time. Development of control algorithms and user interface is performed by MATLAB/Simulink, in combination with RT-LAB software support for HIL simulations. Several control algorithms for manipulator control was implemented such as forward and inverse kinematics, inverse dynamics, fifth degree polynomial interpolations both in Cartesian and joint space, feedforward acceleration and speed compensation or trajectory import from file. Block diagram of a control system is illustrated in Fig. 5. Developed control system was verified experimentally and resulting measurements show good agreement with expected results. [18] [19] [20] [21]

<figure><img src="image_5.png" /><figcaption>Fig. 5 Block diagram of the HIL simulator [18]</figcaption></figure>

## 4.3. An open control system for 6 DOF angular robot implemented into conventional motion controller

At the department of Mechatronics and Computer Science of the Technical University of Liberec was developed [22] proved and implemented the algorithm with analytical solution of forward and inverse kinematics of the six axes 6 DOF industrial robot KUKA VK10/15 into the conventional motion controller. The great advantage of this solution is in its opened structure that provides a possibility to influence entire control system

layers. The control system consists of Sinamics S120 drive system and motion control system Simotion D435 that are standard automation components from the assortment of Siemens Company. Selected hardware is able to control multi-axis system adequately up to 3ms interpolation cycle that seems to be sufficient.

<figure><img src="image_6.png" /><figcaption>Fig. 6 Angular robot (6 DOF) control system based on conventional motion control system Simotion/Sinamics [23]</figcaption></figure>

At the present time it is possible to control the robot both in joint and Cartesian coordinates and vary the orientation according to the Yaw Pinch Roll representation. The system is equipped with the interpolation algorithm that provides PTP manipulation according to the linear or circular space trajectory. It is planned to be implemented the general spline interpreter as well. [23]

# 5. CONCLUSIONS AND FUTURE WORK

The main goal of this study was to present actual trends in field of open robotic control systems. Mainly applications typical for industrial robotics were mentioned, but also several new approaches were presented, which may be usable also in field of service robotics. In future is expected a fusion of several principles based on HIL simulators and robotic middleware to make an easy programmable control system combined with ready for use packages of open source Robotic Operation System. This control system should contain modern control methods based on optical sensing for visual servoing and motion planning of industrial and service robots.

# REFERENCES

[1] ZEBENAY, M. et al.: Satellite Docking Simulator based on Hardware-in-the-loop Hybrid Contact Model.

[2] GATTRINGER, H. – RIEPL, R. – NEUBAUER M.: Optimizing industrial robots for accurate high-speed applications, *Journal of Industrial Engineering*, 2013.

[3] WINKLER, A. – GRABMAIR, G.: Design and implementation of a path planning for a high- dynamic handling system, *Proceedings of the*
Austrian Robotics Workshop 2014, Linz, Austria,
2014, pp. 69-75.

[4] CAMPA, R.: *Motion Control of Industrial Robots in Operational Space: Analysis and Experiments with the PA10 Arm*. INTECH Open Access Publisher, 2010.

[5] ORTEGA, J. et al.: Open Software Architecture for Advanced Control of Robotic Manipulators.

[6] SIMPKINS, A.: *Real-Time Control in Robotic Systems*, INTECH Open Access Publisher, 2012.

[7] OLIVEIRA, A. – PIERI, E. – MORENO, U.: *An Open-architecture Robot Controller applied to Interaction Tasks*, INTECH Open Access Publisher, 2010.

[8] COLOMBO, D. – DALLEFRATE, D. – MOLINARI L.: Pc based control systems for compliance control and intuitive programming of industrial robots. *VDI BERICHTE* 1956 (2006): 91.

[9] MARTIN, A. – REZA, M.: *Design and Simulation of Robot Manipulators using a Modular Hardware-in-the-loop Platform*, INTECH Open Access Publisher, 2008.

[10] TEMELTA, H. – GOKASAN, M. – BOGOSYAN, S.: Hardware in the loop robot simulators for on-site and remote education in robotics, *International Journal of Engineering Education* 22.4, 2006.

[11] MAGYAR, G. – SINČÁK, P. – KRIZSÁN, Z.: Comparison Study of Robotic Middleware for Robotic Applications, *Emergent Trends in Robotics and Intelligent Systems*, Springer International Publishing, 2015, 121-128.

[12] MICHIELETTO, S.: ROS-I interface for COMAU robots in Simulation, Modeling, and Programming for Autonomous Robots, 2014, pp. 243-254.

[13] BEZEMER, M. – BROENINK, J. F.: Connecting ROS to a real-time control framework for embedded computing, Emerging Technologies & Factory Automation (ETFA), 2015 IEEE 20th Conference on. IEEE, 2015.

[14] HONGXING, W. et al.: RT-ROS: A real-time ROS architecture on multi-core processors, Future Generation Computer Systems 56 (2016): 171-178.

[15] SANTINI, D. – CABERLON – LAGES, F.: An open control system for manipulator robots, ABCM Symposium Series in Mechatronics, Vol. 4, 2009.

[16] FETYKO, J. – ÜVEGES, R. et al.: Development of Motion Control of Legs in Six-Legged Robotic Vehicle, Applied Mechanics & Materials 613 (2014).

[17] FETYKO, J. – ÜVEGES, R. et al.: Control Strategy Principles of Leg Motion Control in a Six-Legged Robotic Vehicle, MicroCAD Miskolc, (2014).

[18] FEDAK, V. – ĎUROVSKÝ, F. – ÜVEGES, R. et al.: HIL Simulator of Drives of an Industrial Robot

with 6 DOF, Elektronika ir Elektrotechnika 21.2 (2015): 14-19.

[19] FEDAK, V. – ĎUROVSKÝ, F. – ÜVEGES, R. et al.: Implementation of Robot Control Algorithms by Real-Time Control System, International Journal of Engineering Research in Africa, 2015, 18.

[20] FEDAK, V. – ÜVEGES R. et al.: 3D Model of an Industrial Robot of the SF-25 SEF-Roboter Type with Simulation in SimMechanics Environment, Miskolc, 2013.

[21] FEDÁK, V. – ĎUROVSKÝ, F. – ÜVEGES, R.: Analysis of Robotic System Motion in SimMechanics and MATLAB GUI Environment, MATLAB Applications for the Practical Engineer (2014).

[22] ZÁDA, V. – CHATRAEI, A. – LINDR, D.: Analytical Solution of Inverse Task for Robot with Sixth Rotational Joints and its Concrete Utilization, In Engineering Mechanics 2009, Prague, Czech Republic: Institute of Theoretical and Applied Mechanics, v.v.i., Academy of Sciences of the Czech Republic, 2009, pp. 8, ISBN 978-80-86246-35-2.

[23] LINDR, D. – ZÁDA, V.: Control System for Testing Advanced Algorithms Based on Dynamic Model of Robot, In 9th International Workshop on Electronics, Control, Modeling, Measurement and Signals, Mondragon Unibertsitatea: MU, Mondragon Unibertsitateko Zerbitzu Editoriala, 2009, pp. 75-80, ISBN 978-84-608-0941-8.

Received June 30, 2016, accepted September 22, 2016

## BIOGRAPHIES

**Róbert Üveges** was born on 19.2.1991. In 2015 he graduated (MSc) with distinction at the department of Electrical Engineering and Mechatronics of the Faculty of Electrical Engineering and Informatics at Technical University of Košice. He is a first year PhD student and his dissertation is focusing on precise servo control mainly in robotics.

**František Ďurovský** received M.Sc. and Ph.D. degrees from the Technical University of Košice, Slovak Republic, in 1983 and 1993, respectively. He is currently an Associated Professor at the Department of Electrical Engineering and Mechatronics, TU Košice. His field of research interests are motion control, electrical drives in industrial and automotive applications, control and simulation of mechatronic systems

**David Lindr** received his Ph.D. degree at Technical University of Liberec, Czech Republic in 2012. His dissertation thesis on the topic of electrical drive in intensive application was awarded by Werner von Siemens Excellence Award 2012. His current research is focused on active damping of the low stiffness servomechanism residual vibration.