Design and implementation of a fault-tolerant system for industrial robots under hostile operating conditions

https://doi.org/10.1016/j.compeleceng.2020.106951Get rights and content

Highlights

  • The loss of information causes degradation in the control of the path of the robot.

  • Strategy for protecting trajectory data to be executed by industrial robots working under hostile operating conditions.

  • Information is protected through a convolutional code.

  • The controller response is evaluated under communication disturbances by means of performance indexes.

  • The experimental results show that corrupted data is corrected allowing the optimal operation of the robot.

Abstract

This paper presents the design and implementation of a strategy for protecting trajectory data that will be executed by industrial robots working under hostile operating conditions. Specifically, the Controller Area Network protocol is used to send information about trajectories between two terminals: the controller and the robot. To prevent the adverse effects of corrupt information on robot performance, information is protected through a convolutional code. In this way, the receptor detects and corrects the bits damaged during communication. The communication system designed is validated by assessing the performance of a 3-DoF1 planar robot that executes default trajectories under hostile operating conditions. The controller response is evaluated under communication disturbances by means of performance indexes and considering two scenarios: with or without the convolutional code designed.

Introduction

The demand for industrial robots has grown exponentially since 2010. Meeting rising global demands in manufacturing output and quality, as well as reducing operation costs, are some of the challenges faced by these robots [1]. Due to the natural trend toward automation, the applications for them have expanded, for example, to the electrical and electronics, rubber and plastic, pharmaceutical, makeup, and metal industries, among others. Between 2018 and 2021, estimations indicate that almost 2.1 million industrial robots will be installed in manufacturing plants all over the world [2]. This has brought some advances to the field, such as an increase in productivity, more continuity in production lines and fewer accidents in risky operations.

Modern manufacturing systems should comply with high reliability and availability standards in order to guarantee efficient planning and optimization. However, the operation of industrial robots generates intermittent interactions in manufacturing systems [3]. Autonomous robots are intelligent systems that accept tasks, change their description into executable commands and, finally, autonomously perform them in a complex, unknown and changing environment [4]. These embedded systems are heterogeneous systems whose hardware and software are designed to solve specific problems within a larger system to which they belong [5]. However, the presence of external disturbances, system model inaccuracies and measurement noise hinder tracking performance and even devastate system stability [6].

The reliability analyses for industrial robots test possible operating faults that may occur during their operation. Said analysis considers variables that allow for the assessment of the state of each robot joint, such as average speed, average torque, accumulated absolute position, number of emergency stops, execution time in hours, waiting time in hours and corrupt information, among others [7].

Since, in general, industrial robots operate under hostile conditions [8], their communication systems are exposed to electromagnetic fields, connectors disconnections, short circuits, bus ruptures and high data load [9]. Consequently, during operation, both the control and communication systems of these robots are highly susceptible to faults. In this context, information losses or corrupted data can cause failures or interruptions of the productive process, leading to economic losses, equipment damage and unsafe conditions for the staff around the robot, among other adverse phenomena. Therefore, industrial robots should be equipped with systems to reconfigure information, which allows robots to receive and/or send information related to the execution of specific tasks in a comprehensive way, despite external disturbances.

To ensure that the transmitted message is received complete, communication systems can include error detection and correction codes. To achieve this, two methods are considered: backward error correction, and forward error correction. In the former case, parity control only identifies the error and requests the retransmission of information. In the latter case, corrupted data is reconstructed through algebraic methods denominated block codes [10] such as Hamming code [11], Bose Chaudhuri Hocquenghem (BCH) code [12] and Reed-Solomon code [13]. Emergent applications require the transmission of short or medium units, for example, communication between machines, the Internet of Things, remote command links and messenger services, among others. As a consequence, the interest in coding has seen considerable growth [14].

Specifically, the Controller Area Network (CAN) protocol, which is widely used in data networks for vehicles, process automation and real-time embedded systems [15], uses backward error correction. Backward error correction is an algebraic procedure of Cyclic Redundancy Verification. This method includes a field to which verification bits are added in the information grid and then a calculation is executed in the receptor, in which verification bits are collated with the bits received to detect errors without correcting them [16].

Forward error correction methods include a great variety of algebraic procedures denominated coding, which has been used to improve data transmission systems. For example, in [17] a BCH coder and decoder (7,4,1) is designed as a feasible alternative for possible faults or omissions from a traditional BCH coder and decoder, since it is equipped with a radial basis neural network for the detection and correction of errors in a digital communication system. Another application is presented in [18], in which the Modbus-RTU is used to design systematic codes to add redundant information to messages and thereby guarantee the integrity of transmitted data. In [19], the concatenation of Reed Solomon and convolutional codes is proposed for the implementation of links in an optical communication channel. This study concluded that the performance of this concatenation is better than using the two codes separately. Moreover, [20] employs the Modbus-RTU for error correction and detection through a systematic code implemented in a dsPIC30F microcontroller. In [21], the application of a convolutional code to an AWGN2 channel is presented, in which the error detection capacity is improved by means of a cyclic redundancy verification code. In [22], using the Reed Solomon code, a substantial reduction of error occurrence is achieved in an electric line communication system, mitigating the effects of background noise on the change signal, which affects the BFSK3 modulation.

Since convolutional codes offer lower bit-error rates than block codes [19,21,23], this work uses them to design and implement a strategy for protecting the data of trajectories to be executed by industrial robots that work under hostile operating conditions. This paper is organized as follows. First, the general system structure is described and a convolutional code and Viterbi decoder are established. Then, the design and implementation of a fault-tolerant system, nodes, trajectories and a controller of the robot are presented. Finally, the results of the experimental tests are analyzed considering two scenarios, namely with or without the convolutional code designed and implemented in this work.

Section snippets

System structure

The system is composed of a 3-DoF planar robot interconnected with two nodes and one computer (Fig. 1). The communication system is implemented over the CAN protocol. Node 1 corresponds to an electronic board with three functions: to apply a PWM4 signal to the robot servomotors, to obtain position signals from the sensors of each joint and to execute the CAN protocol. Node 0 is used as an interface with a computer through USB5 communication and

Convolutional code

The convolutional code ‒used for error detection and correction‒ is applied to an input sequence of k0 bits of information, obtaining an output sequence of n0 bit length (Fig. 2). The output sequence of the coder not only depends on the most k0 bits, but also on the last (L − 1) inputs of the coder. The L parameter is denominated code restriction length. The coder has a finite state machine structure, the output sequence ‒at any time instant‒ is not only dependent on the current input sequence

Viterbi decoder

The decoding of a message from a convolutional code consists in deducing the state sequence that most likely generated the code. Several decoding algorithms are found for this type of codes. In this work, the Viterbi algorithm is selected due to a series of characteristics such as ease of calculation, high probabilities of finding the original sequence, and low memory requirements. These advantages make its implementation in systems with limited capacities, like microcontrollers, feasible. This

Base communication system

Communication in the industrial field should be implemented over a communication protocol that defines the rules for the information exchange between two devices or more. In February 1986, during the Automobile Engineer Society Congress, Robert Bosch introduced a serial bus system called Controller Area Network [16] protocol. Nowadays, this protocol is used in automobiles, trains, ships, as well as industrial controllers, among other applications. Massive use has made CAN one of the most

Controller for trajectory tracking

The function of the 3-DoF planar robot controller is to make this robot perform a default trajectory. The robot actuators correspond to 3 Futaba 3003 servomotors, whose axis can rotate from 0° to 180° Position sensors correspond to 3 potentiometers located on the axis of each joint and that have a voltage signal from 0.5 to 3 Vs approximately, depending on the position. Each link has 0.2 m from axis to axis; therefore, the robot is 0.6 m long from its vertical support and its working area is

Experimental results

Below, a controller is implemented to follow up the robot's trajectory. The controller is programmed in MatLab Simulink and executed in a computer. Serial USB communication is employed between the CAN interface node and the computer, and CAN communication between nodes.

The parametric trajectory presented in Eq. (6) is implemented by creating reference signals for the controller, which sends angular positions aimed at correcting the servomotors and receives feedback from the robot sensors. All

Conclusions

The main contribution of this manuscript was the design and implementation of a convolutional code that considers the data field characteristics of a standard CAN protocol to improve the controller performance of the robot used in the experimental validations.

The application was validated by means of tests conducted on the 3-DoF planar robot.

The results of the performance indexes were the following: RMS found the least disperse results out of the angular position series to be yielded by the

Declaration of Competing Interest

The authors declare no conflicts of interest.

Acknowledgments

This work was supported by the Vicerrectoría de Investigación, Desarrollo e Innovación of the Universidad de Santiago de Chile, Chile.

Author Statement

We wish to confirm that there are no known conflicts of interest associated with this publication and there has been no significant financial support for this work that could have influenced its outcome.

We confirm that the manuscript has been read and approved by all named authors and that there are no other persons who satisfied the criteria for authorship but are not listed. We further confirm that the order of authors listed in the manuscript has been approved by all of us.

We understand that

Claudio Urrea received the M.Sc. Eng. and the Dr. degrees from Universidad de Santiago de Chile, Santiago, Chile in 1999, and 2003, respectively; and the Ph.D. degree from Institut National Polytechnique de Grenoble, France in 2003. Ph.D. Urrea is currently Professor at the Department of Electrical Engineering, Universidad de Santiago de Chile, from 1998. He currently Director of Postgraduate at the Universidad de Santiago de Chile.

References (27)

Claudio Urrea received the M.Sc. Eng. and the Dr. degrees from Universidad de Santiago de Chile, Santiago, Chile in 1999, and 2003, respectively; and the Ph.D. degree from Institut National Polytechnique de Grenoble, France in 2003. Ph.D. Urrea is currently Professor at the Department of Electrical Engineering, Universidad de Santiago de Chile, from 1998. He currently Director of Postgraduate at the Universidad de Santiago de Chile.

John Kern was born in Santiago, Chile. He received the M.Sc. Eng. and the Dr. degrees from Universidad de Santiago de Chile, Santiago, Chile in 2010 and 2013, respectively. John Kern is currently Professor of electronic engineering in the areas of automatic control and robotics, since 1999 and studies post doctorate in Fault-Tolerant Systems at the Universidad de Santiago de Chile.

Ricardo López-Escobar was born in Santiago, Chile. He is electronics engineer, received the M.Sc. Eng. degree from Universidad de Santiago de Chile, Santiago, Chile in 2018. Ricardo Lopez is currently student of doctorate in engineering science, automatic mention at the Universidad de Santiago de Chile

1

Degrees of Freedom.

View full text