Implementation of Fault-Tolerant Control for a Robot Manipulator Based on Synchronous Sliding Mode Control

: In this paper, an active fault-tolerant control for a robot manipulator based on synchronous sliding mode is proposed. As the synchronization errors approach zero, the joint errors tend to become equal and also approach zero. Therefore, the synchronization technique is inherently e ﬀ ective for a fault-tolerant controller. To demonstrate such a system, the following implementation is presented. First, an estimator was designed with an extended state observer to estimate uncertainties / disturbances along with faults / failures. The estimator signal was used for an online compensator in the controller. A fault-tolerant controller with a combination of synchronous sliding mode technique and estimator was proposed. The stability of the system was established using Lyapunov theory. Finally, fault tolerant control was implemented in a three degree-of-freedom robot manipulator and compared to the conventional sliding mode control. This comparison shows the e ﬀ ectiveness of the proposed active fault-tolerant control with synchronous sliding mode technique. the proposed control algorithm for a three degree-of-freedom FARA-AT2 robot were carried out and compared with the active fault-tolerant control with conventional sliding mode control in the both single and multiple fault cases. The results indicate that the active fault-tolerant control with synchronous sliding mode control has better fault-tolerant capability and results in better trajectory tracking performance when compared to the active fault-tolerant control with conventional sliding mode control algorithms. This fault-tolerant capability comes from synchronous sliding mode control, because each joint error is coupled and constrained due to the synchronization errors and newly deﬁned synchronous sliding surface. Future work includes the optimal tuning of synchronization parameters by following some methods (e.g., the genetic algorithm, neural network technique, etc.) In addition, the synchronization technique will be applied to ﬁnite-time control such as terminal sliding mode control, non-singular terminal sliding mode control, and so on, in fault-tolerant control for a serial robot manipulator.


Introduction
During the past two decades, fault detection and fault-tolerant control (FTC) have become attractive research subjects that can be used to improve system reliability and guarantee system stability in all situations. Implementation of fault-tolerant control in robot manipulators has encountered a number of challenges due to high nonlinearities, dynamic uncertainties, and external disturbances. In addition, the time delay inherent to mechanical systems also affects the performance of FTC. FTC strategies can be divided into two categories: passive FTC (PFTC) [1,2] and active FTC (AFTC) [3,4]. In PFTC, the control performances mainly depend on the robust capability dealing with uncertainties/disturbances of the controller such as sliding mode control [5] or adaptive control [6,7]. In this strategy, the controller does not have a faults estimation process. The advantage of PFTC is the fast response when faults occur, because it does not need time to estimate faults. However, the ability to deal with high magnitude faults is limited. Unlike PFTC, AFTC reconfigures the control system based on the estimation process. The fault information from the estimation process is used to compensate the conventional controller. The disadvantage of this strategy is slow response after faults occur, which leads to the occurrence of a picking phenomenon, because the controller needs the time to estimate the faults. Most studies in active fault-tolerant control [3,8,9] have focused on increasing the ability to deal with uncertainties/disturbances of the controller. Therefore, the performance degradation of the system with the AFTC strategy due to the slow response still remains an open problem. However, AFTC has better ability when dealing with high magnitude faults than PFTC. As above-mentioned, using PFTC or AFTC depends on the characteristics of the system and type of faults. In robot manipulator control, AFTC generally outperforms PFTC because AFTC includes a fault estimation (FE) step. The estimated faults can be compensated for by online controller reconfiguration. In this way, the stability and acceptable performance of the robot can be maintained.
In AFTC, the quality of the fault-tolerant control depends on the accuracy of both FE and the system reconfiguration after faults occur. In fault estimation processing, several techniques [10][11][12][13][14][15] have been used. The parameter estimation method [10] is used to early detect faults applied for dynamic linear and nonlinear systems. The parity relations [11] used the parity equations to be combined with the least-square method to estimate faults. The sliding mode observers [12] have been given lot of attention by researchers. However, this method is limited in real applications due to the disadvantages such as the chattering phenomenon, the requirement of the knowledge of the fault's bound to choose the observer parameters, and the stability issue. In addition, other techniques such as the Kalman Filter [13], zonotope [14], and nonlinear observer [15] were developed to estimate the faults as well as uncertainties/disturbances. After faults are estimated, they are compensated for by using various control strategies [16][17][18]. In this study, an extended state observer [19] was adopted for on-line observation of the dynamic uncertainties, disturbances, and faults. An extended state observer (ESO) is a simple technique for estimating faults in which simply adjusting the observer parameters leads to simple application in real systems, and the observer can detect and isolate faults without a fault diagnosis process. In addition, the upper bound of faults does not have to be exactly known in the design of ESO.
A synchronization technique based on cross-error was first introduced by Y. Koren [20] in the 1980s for a computerized numerical control (CNC) machine. In his idea, a CNC with independent axes control is extended to enable the control of each access to consider the effects of the other axes through cross-errors. L. Feng et al. [21] proposed cross-coupling control for mobile robots. He suggested that minimization of the most significant error leads to coordination of the motion of the two wheels. Lu Ren et al. [22] introduced synchronization errors, a new type of cross-coupling error, in controlling a parallel robot manipulator. Synchronization control has also been applied in multi-robot cooperation [23,24]. Synchronization techniques combined with the sliding mode method have attracted the interest of many researchers. The position and velocity synchronization error have been used instead of position and velocity error, respectively, in sliding mode control structures [25]. Zhang et al. [26] also proposed a robust synchronous control based on a sliding mode variable structure for multi-motors. These studies [23][24][25][26] have applied synchronization control techniques to a parallel robot, multi-robot cooperation, and multi-motors to improve trajectory tracking performance. This work is interested in addressing a slow response issue by using the synchronization control technique, which can make the position error at each joint equal. Therefore, the system can quickly respond to a fault due to the constraint of synchronization control before the controller has the feedback information from the fault estimation process. Considering the dynamic coupling effects between actuators and the upper bound of the uncertainties, the effectiveness of synchronization techniques might be somewhat limited to improvements of the trajectory tracking control. However, synchronization techniques become more effective in critical conditions, which lead to applying synchronization techniques to the fault-tolerant control. The contributions of this paper are summarized as follows: (1) Synchronization techniques are applied to fault-tolerant control for robot manipulators for the first time. Compared to active fault-tolerant control using conventional sliding mode control, the proposed system has achieved higher accuracy, robustness, and faster system reconfiguration when faults occur. These results confirm that synchronization techniques are very effective in fault-tolerant control. (2) The stability of the proposed AFTC with the synchronous sliding mode technique is demonstrated using analysis via Lyapunov theory.
(3) Based on the extended state observer, the proposed controller can easily monitor faults without detection and isolation processes. This feature is helpful in maintenance systems as well as maintenance planning systems. (4) The experimental results show that the proposed control can be easily applied to a real system with robust performance.
In this paper, we present a fault-tolerant control for robot manipulators based on synchronous sliding mode control. Section 2 describes the robot dynamic models. Section 3 explains the process of fault estimation with the extended state observer for robot manipulators. In Section 4, a fault-tolerant control based on synchronous sliding mode control is presented and its stability is demonstrated. In Section 5, a simulation study of the proposed fault-tolerant control for a 3-DOF manipulator was conducted to show the method's effectiveness. In Section 6, real implementation of the FTC for a 3-DOF FARA AT2 robot was carried out in two cases: a single fault and multiple faults. Finally, conclusions are discussed in Section 7.

Dynamics Model of Robot Manipulators
The dynamics of an n-degree of freedom robot manipulator was defined [27] as q, q ∈ n are the vectors of joint acceleration, velocity, and position, respectively. M(q) ∈ n×n , C(q, . q) ∈ n , and G(q) ∈ n represent the inertia matrix, the centripetal and Coriolis matrix, and the gravitation force, respectively. F f ∈ n is the friction term and τ ∈ n is the torque at the joints.
In practice, the dynamics model of a robot is not exactly known, so Equation (1) can be written as where ∆M, ∆C, ∆G and ∆F are unknown dynamic uncertainties and δ is the unknown external disturbances. M(q), C(q, ..
where ψ(q, Properties: In general, actuator faults can be divided into two types: bias faults and gain faults. In a robot manipulator, these are known as loss of effectiveness and lock-in-place faults. In practice, both kinds of actuator faults commonly occur. Actuator bias faults can be generally described as . . . f n ] T ∈ n (i = 1, 2, . . . , n) denotes a bounded signal. τ b is the torque at the joint when faults occur. Due to loss of effectiveness, actuator gain fault can be described as where ρ(t) = diag(ρ i (t)) ∈ n×n , 0 ≤ ρ i (t) < 1(i = 1, 2, . . . , n), which is unknown, denotes the remaining control rate. I ∈ n×n is the identity matrix. Therefore, the total torque including two kinds of actuator faults can be comprehensively described as where t f is the time of occurrence of each fault. Substituting Equation (6) into Equation (3), the dynamics model of an n-degree of freedom robot manipulator with actuator faults can be written as

Fault Estimation Using an Extended State Observer
In this section, an extended state observer of uncertainties/disturbances and faults/failures is presented.
The dynamic model of the robot manipulator of Equation (7) can be rewritten in state space as ..

of 19
We define the Lyapunov function as where the matrix P is unique, symmetric, and positive. The time derivative of V in Equation (11) is It is easy to see that A is Hurwitz, so there is a symmetric positive definite matrix Q satisfying the Lyapunov equation Substituting Equations (13) and (14) into Equation (12), we have where L is the positive constant that satisfies . φ ≤ L. Therefore, To guaranty stability of the system, we impose . V ≤ 0, so the observer error convergence is given as

Fault Tolerant Control with Synchronous Sliding Mode Control
In this section, the fault-tolerant control based on synchronous sliding mode control is proposed. Some definitions are necessary to propose the fault-tolerant control law. Synchronization error [28] is given as ε n−1 = ψ n−1 e n−1 − ψ n e n ε n = ψ n e n − ψ 1 e 1 (18) where e i (i = 1, 2, . . . , n) is the error at each joint and ψ i (i = 1, 2, . . . , n) is the corresponding positive gain. The synchronization control goal [28] is stated as e 1 = e 2 = e 3 = . . . = e n and e i → 0 at t → ∞ . In a traditional controller, only the position error converges to zero, but in the synchronization control, the kinematic relationship among the errors as well as the position error converges to zero. For ease of practical implementation, ψ i = 1 is chosen. Then, Equation (18) can be written as Cross-coupling error [28] is given as where γ i (i = 1, 2, . . . , n) is the positive gain. In this paper, γ i = 1 was chosen. Then, Equation (20) can be written as The coupling position error [28], which includes the position and synchronization errors, is defined as where η i and µ i are positive gains. The synchronous sliding surface [26] is defined as where S = [S 1 , S 2 , . . . , S n ] T ∈ n ;c ∈ n×n is the diagonal positive matrix; and E = [E 1 , E 2 , . . . , E n ] T ∈ n with E i defined in Equation (22). For ease of implementation, the synchronous sliding surface is rewritten as e + ce + αξ + κ ξdt (24) where s = [S 1 /µ 1 , S 2 /µ 2 , . . . , S n /µ n ] T ∈ n , α = diag(η i /µ i ) ∈ n×n and κ = diag(c i η i /µ i ) ∈ n×n (i = 1, 2, . . . , n) are positive gain matrices.
Here, the fault-tolerant control law is proposed as where ..
Proof. Following [22], the Lyapunov function can be selected as The time derivative of V is therefore where A 1 = s T . s. Λ ε and κ ε are positive gain. Differentiation of Equation (24) gives ..

Substituting Equations (37) and (38) into Equation (36) yields
ε i are bounded. Therefore, s i and ε i are uniformly continuous. Then, from Barbalat's lemma, it is concluded that s i → 0 and ε i → 0 as time t → ∞ . Now, we prove e i = 0 when s i → 0 and ε i → 0 . From Equations (23) and (24), s i → 0 implies E i → 0 . Combining all equations in Equation (22) with indices 1 to n, one obtains We also have ε i = 0 when t → ∞ , which means e 1 = e 2 = e 3 = . . . = e n . Substituting this part into Equation (41) we have Therefore, Theorem 2 is proven.

Simulation Results
In this section, a simulation of the proposed fault-tolerant control algorithm for the 3-DOF manipulator shown in Figure 1 is described.

Simulation Results
In this section, a simulation of the proposed fault-tolerant control algorithm for the 3-DOF manipulator shown in Figure 1 is described. For this trajectory tracking simulation, the desired trajectories at each joint are given as The friction at each joint is assumed to be For this trajectory tracking simulation, the desired trajectories at each joint are given as The friction at each joint is assumed to be

Simulation 1
In this part, the parameter selection of the extended state observer as seen in Equation (10) is explained. The total torque function at each joint is assumed to be where for loss of effectiveness, ρ 2 (t) = 0.4 sin(πt), and a fault function f 2 (t) = 60 sin(πt/2). For the extended state observer of Equation (10), the four parameters such as α 1 , α 2 , α 3 and ε should be suitably selected. The turning parameters in the set of α 1 , α 2 , α 3 that should satisfy the Hurwitz condition are quite related to the qualities of the observer such as the accuracy and peaking values. From this consideration, the turning parameters were set as α 1 = 8, α 2 = 28, α 3 = 7. For ε, Equation (17) shows that the value of ε highly affects the behavior of the observer convergence. Therefore, three different values of ε = 0.1, 0.01, and 0.001 were considered in this simulation. In Figure 2b, it can be seen that the peaking value highly defends the selection of ε. The smaller value of ε causes faster convergence, but the high magnitude peaking value in the fault estimation. As a trade-off between the convergence and the peaking value, ε = 0.01 was selected.

Simulation 1
In this part, the parameter selection of the extended state observer as seen in Equation (10) is explained. The total torque function at each joint is assumed to be where for loss of effectiveness, 2 ( ) 0.4sin( ) t t ρ π = , and a fault function For the extended state observer of Equation (10), the four parameters such as 1 2 3 , , α α α and ε should be suitably selected. The turning parameters in the set of 1 2 3 , , α α α that should satisfy the Hurwitz condition are quite related to the qualities of the observer such as the accuracy and peaking values. From this consideration, the turning parameters were set as 1 Equation (17) shows that the value of ε highly affects the behavior of the observer convergence. Therefore, three different values of 0.1, 0.01 ε = , and 0.001 were considered in this simulation. In Figure 2b, it can be seen that the peaking value highly defends the selection of ε . The smaller value of ε causes faster convergence, but the high magnitude peaking value in the fault estimation. As a trade-off between the convergence and the peaking value, 0.01

Simulation 2
For comparison, a passive fault tolerant control with conventional sliding mode control (PFTC-SMC) and active fault-tolerant control with conventional sliding mode control (AFTC-SMC) were considered, in addition to the proposed active fault-tolerant control with synchronous sliding mode control (AFTC-SSMC).
The parameters of the observer were chosen as in Section 5.1. The AFTC-SMC is given as , in which the sliding mode surface is selected as The parameters in AFTC-SMC were suitably chosen as 1 (7; 7;7), (220; 220; 220) c diag k diag = = , and 2 (250; 250; 250) k diag = . The PFTC-SMC is given as The parameters in PFTC-SMC were suitably chosen as

Simulation 2
For comparison, a passive fault tolerant control with conventional sliding mode control (PFTC-SMC) and active fault-tolerant control with conventional sliding mode control (AFTC-SMC) were considered, in addition to the proposed active fault-tolerant control with synchronous sliding mode control (AFTC-SSMC).
In this case, a failure occurs only at a single joint. The total torque function at each joint is assumed to be where ρ 2 (t) = 0.4 sin(πt) and f 2 (t) = 60 sin(πt/2). In Figure 3b, the single fault occurs at Joint 2 after five seconds. Figure 3 shows the fault estimation algorithm given in Equation (10) seems to be working well even though its estimation error still exists on the order of 1/100 of the fault magnitude. In Figure 4, without fault estimation, PFTC-SMC cannot guarantee the performance after the fault occurs. Unlike PFTC, the joint position errors of AFTC-SMC and proposed AFTC-SSMC look very different, but they were all on the order of 10 −3 , so that the overall trajectory tracking performance of the two control algorithms can be said to be acceptable in this simulation. However, it can be seen that the proposed AFTC-SSMC has very high accuracy after a fault occurs. This fault-tolerant capability can be said to come from the synchronous SMC. Each joint error is coupled and constrained due to the synchronization errors and the newly defined synchronous sliding surface. To avoid chattering, the signum function in Equations (25), (46), and (48) are replaced with the saturation function, In this case, a failure occurs only at a single joint. The total torque function at each joint is assumed to be 1 1 In Figure 3b, the single fault occurs at Joint 2 after five seconds. Figure 3 shows the fault estimation algorithm given in Equation (10) seems to be working well even though its estimation error still exists on the order of 1/100 of the fault magnitude. In Figure 4, without fault estimation, PFTC-SMC cannot guarantee the performance after the fault occurs. Unlike PFTC, the joint position errors of AFTC-SMC and proposed AFTC-SSMC look very different, but they were all on the order of 10 -3 , so that the overall trajectory tracking performance of the two control algorithms can be said to be acceptable in this simulation. However, it can be seen that the proposed AFTC-SSMC has very high accuracy after a fault occurs. This fault-tolerant capability can be said to come from the synchronous SMC. Each joint error is coupled and constrained due to the synchronization errors and the newly defined synchronous sliding surface.   To avoid chattering, the signum function in Equations (25), (46), and (48) are replaced with the saturation function, In this case, a failure occurs only at a single joint. The total torque function at each joint is assumed to be In Figure 3b, the single fault occurs at Joint 2 after five seconds. Figure 3 shows the fault estimation algorithm given in Equation (10) seems to be working well even though its estimation error still exists on the order of 1/100 of the fault magnitude. In Figure 4, without fault estimation, PFTC-SMC cannot guarantee the performance after the fault occurs. Unlike PFTC, the joint position errors of AFTC-SMC and proposed AFTC-SSMC look very different, but they were all on the order of 10 -3 , so that the overall trajectory tracking performance of the two control algorithms can be said to be acceptable in this simulation. However, it can be seen that the proposed AFTC-SSMC has very high accuracy after a fault occurs. This fault-tolerant capability can be said to come from the synchronous SMC. Each joint error is coupled and constrained due to the synchronization errors and the newly defined synchronous sliding surface.

Simulation 3
In this part, the effect of the actuator loss effectiveness factor to the proposed fault tolerant control is discussed. The assumed fault is given as where the fault function of f 2 (t) = 60 sin(πt/2) and ρ 2 (t) with the different values such as C1: ρ 2 (t) = 0.1, C2: ρ 2 (t) = 0.5, C3: ρ 2 (t) = 0.9. The selected parameters of the observer are in Section 5.2. Even though the total fault function has a large magnitude with ρ 2 (t) of 0.9 as seen in Figure 5b, each joint error was still less than the value of 10 −3 in Figure 6. Therefore, it can be said that the proposed fault tolerant control can have the capability to show acceptable performances, even in the case of a high value of ρ 2 (t).
Appl. Sci. 2020, 10, x FOR PEER REVIEW 12 of 19 In this part, the effect of the actuator loss effectiveness factor to the proposed fault tolerant control is discussed. The assumed fault is given as Even though the total fault function has a large magnitude with 2 ( ) t ρ of 0.9 as seen in Figure   5b, each joint error was still less than the value of 3 10 − in Figure 6. Therefore, it can be said that the proposed fault tolerant control can have the capability to show acceptable performances, even in the case of a high value of 2 ( ) t ρ .

Simulation 4
To test the robustness of the fault-tolerant characteristics of the proposed algorithm, simulations with multiple faults were performed with the three control algorithms Equations (25), (46), and (48), for which the parameters were selected in Section 5.2. Multiple faults/failure functions were assumed to be In Figure 7, the estimation results with multiple joint faults have been shown. Multiple faults simultaneously occurring at each joint seemed to burden the control system more than a single fault Appl. Sci. 2020, 10, x FOR PEER REVIEW 12 of 19 In this part, the effect of the actuator loss effectiveness factor to the proposed fault tolerant control is discussed. The assumed fault is given as Even though the total fault function has a large magnitude with 2 ( ) t ρ of 0.9 as seen in Figure   5b, each joint error was still less than the value of 3 10 − in Figure 6. Therefore, it can be said that the proposed fault tolerant control can have the capability to show acceptable performances, even in the case of a high value of 2 ( ) t ρ .

Simulation 4
To test the robustness of the fault-tolerant characteristics of the proposed algorithm, simulations with multiple faults were performed with the three control algorithms Equations (25), (46), and (48), for which the parameters were selected in Section 5.2. Multiple faults/failure functions were assumed to be In Figure 7, the estimation results with multiple joint faults have been shown. Multiple faults simultaneously occurring at each joint seemed to burden the control system more than a single fault

Simulation 4
To test the robustness of the fault-tolerant characteristics of the proposed algorithm, simulations with multiple faults were performed with the three control algorithms Equations (25), (46) and (48), for which the parameters were selected in Section 5.2. Multiple faults/failure functions were assumed to be where f 1 (t) = 60, ρ 2 (t) = 0.4 sin(πt), f 2 (t) = 60 sin(πt/2), and ρ 3 (t) = 0.7 sin(πt). In Figure 7, the estimation results with multiple joint faults have been shown. Multiple faults simultaneously occurring at each joint seemed to burden the control system more than a single fault did. However, the proposed algorithm still resulted in smaller position-tracking errors than the conventional algorithm, demonstrating fault-tolerant characteristics, as seen in Figure 8. did. However, the proposed algorithm still resulted in smaller position-tracking errors than the conventional algorithm, demonstrating fault-tolerant characteristics, as seen in Figure 8.

Remark 1:
As mentioned in Section 1, the accuracy of fault estimation highly affects the performance of AFTCs, so Simulation 1 discussed the design of ESO. As a trade-off between the convergence and the peaking value of estimation results, the parameters of the observer were selected by using a trial-error technique, as shown in the Simulation 1 results. In Simulations 2,3, and 4, the outperformance of the proposed controller was presented by the tracking trajectory error results. In Simulation 3, the robustness of the proposed controller was described with a high magnitude of fault. In this case, PFTC-SMC and AFTC-SMC could not guarantee stability of the system. However, the proposed AFTC-SSMC could keep the system stable and showed acceptable performance results with the tracking trajectory error inside 3 10 − rad. In Simulations 2 and 4, single and multiple faults were presented. Compared with the two fault-tolerant controllers without the consideration of the synchronization error, the proposed controller can reduce the picking phenomenon due to the simultaneous approach to zero at each joint of the synchronization technique. This characteristic of synchronization control can act to prevent the slow response of AFTCs.

Experimental Results
In this section, the real implementation of fault-tolerant control with AFTC-SMC and the proposed AFTC-SSMC is described, and the experimental results were compared and discussed in the case of both single and the multiple joint faults. did. However, the proposed algorithm still resulted in smaller position-tracking errors than the conventional algorithm, demonstrating fault-tolerant characteristics, as seen in Figure 8.

Remark 1:
As mentioned in Section 1, the accuracy of fault estimation highly affects the performance of AFTCs, so Simulation 1 discussed the design of ESO. As a trade-off between the convergence and the peaking value of estimation results, the parameters of the observer were selected by using a trial-error technique, as shown in the Simulation 1 results. In Simulations 2,3, and 4, the outperformance of the proposed controller was presented by the tracking trajectory error results. In Simulation 3, the robustness of the proposed controller was described with a high magnitude of fault. In this case, PFTC-SMC and AFTC-SMC could not guarantee stability of the system. However, the proposed AFTC-SSMC could keep the system stable and showed acceptable performance results with the tracking trajectory error inside 3 10 − rad. In Simulations 2 and 4, single and multiple faults were presented. Compared with the two fault-tolerant controllers without the consideration of the synchronization error, the proposed controller can reduce the picking phenomenon due to the simultaneous approach to zero at each joint of the synchronization technique. This characteristic of synchronization control can act to prevent the slow response of AFTCs.

Experimental Results
In this section, the real implementation of fault-tolerant control with AFTC-SMC and the proposed AFTC-SSMC is described, and the experimental results were compared and discussed in the case of both single and the multiple joint faults.

Remark 1.
As mentioned in Section 1, the accuracy of fault estimation highly affects the performance of AFTCs, so Simulation 1 discussed the design of ESO. As a trade-off between the convergence and the peaking value of estimation results, the parameters of the observer were selected by using a trial-error technique, as shown in the Simulation 1 results. In Simulations 2, 3, and 4, the outperformance of the proposed controller was presented by the tracking trajectory error results. In Simulation 3, the robustness of the proposed controller was described with a high magnitude of fault. In this case, PFTC-SMC and AFTC-SMC could not guarantee stability of the system. However, the proposed AFTC-SSMC could keep the system stable and showed acceptable performance results with the tracking trajectory error inside 10 −3 rad. In Simulations 2 and 4, single and multiple faults were presented. Compared with the two fault-tolerant controllers without the consideration of the synchronization error, the proposed controller can reduce the picking phenomenon due to the simultaneous approach to zero at each joint of the synchronization technique. This characteristic of synchronization control can act to prevent the slow response of AFTCs.

Experimental Results
In this section, the real implementation of fault-tolerant control with AFTC-SMC and the proposed AFTC-SSMC is described, and the experimental results were compared and discussed in the case of both single and the multiple joint faults.

Experimental Setup
The experimental setup is shown in Figure 9 with a 3-DOF FARA-AT2 robot manipulator. This robot manipulator has 6-DOF, but for these experiments joints 4, 5, and 6 were blocked. The 3-DOF FARA-AT2 robot had a CSMP series motor at each joint, and aCSMP-02BB driver was used for Joints 1 and 2 while the CSMP-01BB driver was used for Joint 3. The gear box at each joint is 120:1, 120:1, 100:1 at Joints 1, 2, and 3, respectively. The encoder at each joint was a 2048 line count incremental encoder. The controller ran on Labview-FPGA NI-PXI-8110 and NI-PXI-7842R PXI cards with the frequency control set at 500 Hz. NI-PXI-8110 was run on a Windows operating system.

Experimental Setup
The experimental setup is shown in Figure9 with a 3-DOF FARA-AT2 robot manipulator. This robot manipulator has 6-DOF, but for these experiments joints 4, 5, and 6 were blocked. The 3-DOF FARA-AT2 robot had a CSMP series motor at each joint, and aCSMP-02BB driver was used for Joints 1 and 2 while the CSMP-01BB driver was used for Joint 3. The gear box at each joint is 120:1,120:1, 100:1 at Joints 1, 2, and 3, respectively. The encoder at each joint was a 2048 line count incremental encoder. The controller ran on Labview-FPGA NI-PXI-8110 and NI-PXI-7842R PXI cards with the frequency control set at 500Hz. NI-PXI-8110 was run on a Windows operating system.
The desired trajectory at each joint is given as

Experimental Design
To reduce the high-frequency chattering of fault estimation of φ ) in Equation (10) before it is used in the AFTC scheme, a simple low-pass filter was designed as where filted k φ ) and k φ ) are the output and input, respectively, of the low-pass filter at the th k step. The low-pass filter as seen in the next subsection allows the signal from the fault estimation (FE) to become smoother and is suitably applied to the AFTC schemes. However, the FE also increases the time delay of the feedback to the controller. To ensure that the smoothness and time delay are acceptable, 0.05 υ = was selected. The related parameters of the FE in Equation (10) can be suitably selected as  The desired trajectory at each joint is given as

Experimental Design
To reduce the high-frequency chattering of fault estimation of φ in Equation (10) before it is used in the AFTC scheme, a simple low-pass filter was designed as where φ f ilted k and φ k are the output and input, respectively, of the low-pass filter at the k th step. The low-pass filter as seen in the next subsection allows the signal from the fault estimation (FE) to become smoother and is suitably applied to the AFTC schemes. However, the FE also increases the time delay of the feedback to the controller. To ensure that the smoothness and time delay are acceptable, υ = 0.05 was selected.

Single Fault
In this experiment, the fault occurred only at a single joint after 10 s. The desired fault function includes bias, and the fault is assumed to be where ρ 2 (t) = 0.4 sin(πt/2400) and f 2 (t) = −60 sin(πt/2400).
The results are shown in Figures 10-12. First, in Figure 10, the fault estimation is presented where the dashed aqua and pink lines are the upper and lower thresholds, respectively. The estimation results of the uncertainties and disturbance were within the thresholds for Joints 1 and 3, and for Joint 2 before the fault occurred. In contrast to the simulation results, the fault estimation results were not close to 0 before the fault occurred because in practice, relatively high value for the uncertainties and disturbances always exist. Therefore, using such thresholds is a good method for monitoring when faults occur in real applications. As shown in Figure 10, the extended state observer estimated the fault well. In Figure 11, the tracking error performance at each joint is shown. Before the fault occurred, the tracking trajectory of the proposed AFTC had no advantage over the AFTC with conventional sliding mode control. However, after the fault occurred, the advantages of the proposed AFTC were observed; the error at Joint 2 with AFTC-SSMC was smaller than that of AFTC-SMC, and the joint error was approximately 0.005 rad when the fault occurred. This means that the proposed controller has the ability to prevent tracking errors from getting larger due to a fault, and thus averting a critical condition ( Figure 11b); the Joint 2 error of the AFTC-SSMC was reduced when compared to that of the AFTC-SMC after faults. However, the Joints 1 and 3 errors of AFTC-SSMC were slightly increased compared with those of AFTC-SMC after faults (Figure 11a,c). This is probably due to the synchronization techniques, which tend to drive all joint errors to be comparable. The proposed synchronous control seems well-suited for fault tolerant control. In addition, the synchronization joint errors theoretically approached zero, and as shown in Figure 12, they remained less than~0.0025 rad in this experiment. The results are shown in Figures 10-12. First, in Figure 10, the fault estimation is presented where the dashed aqua and pink lines are the upper and lower thresholds, respectively. The estimation results of the uncertainties and disturbance were within the thresholds for Joints 1 and 3, and for Joint 2 before the fault occurred. In contrast to the simulation results, the fault estimation results were not close to 0 before the fault occurred because in practice, relatively high value for the uncertainties and disturbances always exist. Therefore, using such thresholds is a good method for monitoring when faults occur in real applications. As shown in Figure 10, the extended state observer estimated the fault well. In Figure 11, the tracking error performance at each joint is shown. Before the fault occurred, the tracking trajectory of the proposed AFTC had no advantage over the AFTC with conventional sliding mode control. However, after the fault occurred, the advantages of the proposed AFTC were observed; the error at Joint 2 with AFTC-SSMC was smaller than that of AFTC-SMC, and the joint error was approximately 0.005rad when the fault occurred. This means that the proposed controller has the ability to prevent tracking errors from getting larger due to a fault, and thus averting a critical condition (Figure 11b); the Joint 2 error of the AFTC-SSMC was reduced when compared to that of the AFTC-SMC after faults. However, the Joints 1 and 3 errors of AFTC-SSMC were slightly increased compared with those of AFTC-SMC after faults (Figures 11a,c). This is probably due to the synchronization techniques, which tend to drive all joint errors to be comparable. The proposed synchronous control seems well-suited for fault tolerant control. In addition, the synchronization joint errors theoretically approached zero, and as shown in Figure 12, they remained less than ~0.0025rad in this experiment.  The results are shown in Figures 10-12. First, in Figure 10, the fault estimation is presented where the dashed aqua and pink lines are the upper and lower thresholds, respectively. The estimation results of the uncertainties and disturbance were within the thresholds for Joints 1 and 3, and for Joint 2 before the fault occurred. In contrast to the simulation results, the fault estimation results were not close to 0 before the fault occurred because in practice, relatively high value for the uncertainties and disturbances always exist. Therefore, using such thresholds is a good method for monitoring when faults occur in real applications. As shown in Figure 10, the extended state observer estimated the fault well. In Figure 11, the tracking error performance at each joint is shown. Before the fault occurred, the tracking trajectory of the proposed AFTC had no advantage over the AFTC with conventional sliding mode control. However, after the fault occurred, the advantages of the proposed AFTC were observed; the error at Joint 2 with AFTC-SSMC was smaller than that of AFTC-SMC, and the joint error was approximately 0.005rad when the fault occurred. This means that the proposed controller has the ability to prevent tracking errors from getting larger due to a fault, and thus averting a critical condition (Figure 11b); the Joint 2 error of the AFTC-SSMC was reduced when compared to that of the AFTC-SMC after faults. However, the Joints 1 and 3 errors of AFTC-SSMC were slightly increased compared with those of AFTC-SMC after faults (Figures 11a,c). This is probably due to the synchronization techniques, which tend to drive all joint errors to be comparable. The proposed synchronous control seems well-suited for fault tolerant control. In addition, the synchronization joint errors theoretically approached zero, and as shown in Figure 12, they remained less than ~0.0025rad in this experiment.
The overall results of this experiment are similar to the previous results from the simulations and the single fault experiments. The fault estimation capability is still at the same level as that of the single fault case, as seen in Figure 13. The trajectory tracking performances of the two algorithms can be said to have behaviors similar to those seen in Figure 14. AFTC-SSMC showed the smaller trajectory tracking errors, especially after the faults occurred at 10 s, demonstrating the fault-tolerant characteristics, even in this multiple faults case. In Figure 14a,b, it can be seen that the picking phenomenon due to the slow response of the AFTC strategy was reduced by using the synchronization technique. And the synchronization joint errors were shown in Figure 15. The overall results of this experiment are similar to the previous results from the simulations and the single fault experiments. The fault estimation capability is still at the same level as that of the single fault case, as seen in Figure 13. The trajectory tracking performances of the two algorithms can be said to have behaviors similar to those seen in Figure 14. AFTC-SSMC showed the smaller trajectory tracking errors, especially after the faults occurred at 10 s, demonstrating the fault-tolerant characteristics, even in this multiple faults case. In Figures 14a, b, it can be seen that the picking phenomenon due to the slow response of the AFTC strategy was reduced by using the synchronization technique. And the synchronization joint errors were shown in Figure 15.

Remark 2:
In this section, the experimental results were discussed. The resulting tracking trajectory errors were shown with single and multiple faults. In a real system, the uncertainties and disturbances have a higher magnitude than that of the simulation environment. Due to the limitation of selection parameters in a real system, the robot system with PFTC-SMC failed when multiple faults occurred. Therefore, in these experimental results, only the results of AFTC-SMC and the proposed AFTC-SSMC were presented. As mentioned in Section 1, the synchronization technique does not show effectiveness in an open-chain system such as a serial robot manipulator. Therefore, before a fault occurs, both controllers have a similar accuracy level. After a fault occurs, due to the slow response of AFTCs, the controller without the consideration of the synchronization error showed a high picking value at the joint fault. The proposed controller with a constraint within the synchronization technique quickly responded to the occurrence of faults before the system had the feed-back information from fault estimation. Hence, AFTC-SSMC showed better performance than AFTC-SMC. However, in a real system, due to the limitation of adjustment controller parameters, the error at joints without faults were slightly increased when compared with those of AFTC-SMC by the synchronization technique. This characteristic may be a disadvantage of this proposed controller. However, the AFTC-SSMC still showed an acceptable performance at these actuators.

Conclusions
In this paper, an active fault-tolerant control for a robot manipulator based on synchronous sliding mode was proposed. To verify its effectiveness, experimental implementation of the proposed control algorithm for a three degree-of-freedom FARA-AT2 robot were carried out and compared with the active fault-tolerant control with conventional sliding mode control in the both single and multiple fault cases. The results indicate that the active fault-tolerant control with synchronous sliding mode control has better fault-tolerant capability and results in better trajectory tracking performance when compared to the active fault-tolerant control with conventional sliding mode control algorithms. This fault-tolerant capability comes from synchronous sliding mode control, because each joint error is coupled and constrained due to the synchronization errors and

Remark 2.
In this section, the experimental results were discussed. The resulting tracking trajectory errors were shown with single and multiple faults. In a real system, the uncertainties and disturbances have a higher magnitude than that of the simulation environment. Due to the limitation of selection parameters in a real system, the robot system with PFTC-SMC failed when multiple faults occurred. Therefore, in these experimental results, only the results of AFTC-SMC and the proposed AFTC-SSMC were presented. As mentioned in Section 1, the synchronization technique does not show effectiveness in an open-chain system such as a serial robot manipulator. Therefore, before a fault occurs, both controllers have a similar accuracy level. After a fault occurs, due to the slow response of AFTCs, the controller without the consideration of the synchronization error showed a high picking value at the joint fault. The proposed controller with a constraint within the synchronization technique quickly responded to the occurrence of faults before the system had the feed-back information from fault estimation. Hence, AFTC-SSMC showed better performance than AFTC-SMC. However, in a real system, due to the limitation of adjustment controller parameters, the error at joints without faults were slightly increased when compared with those of AFTC-SMC by the synchronization technique. This characteristic may be a disadvantage of this proposed controller. However, the AFTC-SSMC still showed an acceptable performance at these actuators.

Conclusions
In this paper, an active fault-tolerant control for a robot manipulator based on synchronous sliding mode was proposed. To verify its effectiveness, experimental implementation of the proposed control algorithm for a three degree-of-freedom FARA-AT2 robot were carried out and compared with the active fault-tolerant control with conventional sliding mode control in the both single and multiple fault cases. The results indicate that the active fault-tolerant control with synchronous sliding mode control has better fault-tolerant capability and results in better trajectory tracking performance when compared to the active fault-tolerant control with conventional sliding mode control algorithms. This fault-tolerant capability comes from synchronous sliding mode control, because each joint error is coupled and constrained due to the synchronization errors and newly defined synchronous sliding surface. Future work includes the optimal tuning of synchronization parameters by following some methods (e.g., the genetic algorithm, neural network technique, etc.) In addition, the synchronization technique will be applied to finite-time control such as terminal sliding mode control, non-singular terminal sliding mode control, and so on, in fault-tolerant control for a serial robot manipulator.
Author Contributions: All authors contributed equally to this article and accepted the final report. All authors have read and agreed to the published version of the manuscript.