Abstract
A unique fuzzy self-tuning disturbance decoupling controller (FSDDC) is designed for a serial-parallel hybrid humanoid arm (HHA) to implement the throwing trajectory-tracking mission. Firstly, the dynamic model of the HHA is established and the input signal of the throwing process is obtained by studying the throwing process of human's arm. Secondly, the FSDDC, incorporating the disturbance decoupling controller (DDC) and the fuzzy logic controller (FLC), is designed to ensure trajectory tracking of the HHA in the presence of uncertainties and disturbances. With the FSDDC method, the HHA system can be decoupled by actively estimating and rejecting the effects of both the internal plant dynamics and external disturbances. The self-tuning parameters are adapted online to improve the performance of the FSDDC; thus, it does not require detailed system parameters of the presented FSDDC. Finally, the controller introduced is compared with a PD controller which is commonly used for the robot manipulators control in industry. The effectiveness of the designed FSDDC is illustrated by simulations.
1. Introduction
Because of the great advantages of serial robots and parallel robots where the former have simple structures, big workspaces, and easy control, the latter are in high force-to-weight, high stiffness and accuracy, and low inertia; they are widely used in various fields such as industrial production and scientific experiments [1–4]. Since robot is a very complicated multiple-input multiple-output (MIMO) nonlinear system with time-varying, strong-coupling characteristics, the design of robust controllers which is suitable for real-time control of manipulators is one of the most challenging tasks for many control engineers, especially when manipulators are required to maneuver very quickly within external disturbances. Various advanced control strategies, either model-based control or model-free control, have been applied in a variety of robots to improve the control performance [5–13].
The 3-DOF serial-parallel hybrid humanoid arm (HHA) combines the characteristics of series and parallel robot, as shown in Figure 1, and can be used in humanoid robots or automated production lines due to its special serial-parallel hybrid structure and performance, compared with other parallel or serial robots. However, the special structure of the HHA introduces complexity in kinematics, dynamic equations, and coupling of the system, placing greater demands on control methods. Proportional and derivative (PD) controller [14, 15], for its simple and effective properties, does not require any knowledge of the robot dynamics and is widely used in industrial robots, but it cannot follow the desire of accuracy and robustness. The combination of modern control methods and intelligent control technique [5–8] is widely used in various robot control research and brings out better effect. However, model-based controllers [9] cannot be accurately applied since it is almost impossible to obtain exact dynamic models. Although adaptive control [7, 8, 10] can achieve satisfied control effects and compensate for partially unknown manipulator dynamics and sliding-mode control [6–10] is robust with respect to system uncertainties and external disturbance, they all need prior knowledge of the robot. A robust adaptive trajectory tracking controller based on neural network algorithm is designed for HHA in [16], but the coupling effects are not taken into account in these control schemes. The coupling effects can limit the performances of HHA, since the dynamic coupling may restrict not only the further improvement of control performances in HHA but also the development of potential of such robot [11–13]. Eliminating or reducing the coupling of 3-DOF serial-parallel hybrid humanoid arm can improve the system control accuracy and the trajectory tracking performance. From the above analysis, it can be concluded that a control approach, suitable for multivariable systems with great disturbance rejection, decoupling ability, and model-free and strong robustness, is urgently needed for the HHA.

The prototype of 3-DOF forearm.
In recent years, a dynamic disturbance decoupling control (DDC) [17] approach can be applied to the manipulators. This disturbance decoupling control method is rooted in a new ground-breaking paradigm of control design: active disturbance rejection control (ADRC). The original concept of active disturbance rejection was proposed for the nonlinear structure by Han [18–20] and was further simplified and parameterized by Gao [21, 22]. The active disturbance rejection control (ADRC) method is a new kind of practical digital control technology which does not depend upon the accurate mathematical model of the plant. The central idea is that both the internal dynamics and external disturbances of the system can be estimated by extended state observe (ESO) [21, 23, 24] and compensated for in real time. Then the system can be reduced to the standard form of linear system, a simple unit gain of integrals, making the control problem much easier. More importantly, with the proposed parameterization of active disturbance rejection control (ADRC), it becomes a viable candidate for robot decoupling control [17] and practical applications [25–28].
With the continuous development of the fuzzy logic control theory, its application on robots received more and more attentions [5–7]. The main advantage of FLC comes from the applicability to systems when the mathematical model is not known exactly, and another important advance of fuzzy controller is the short rise time and small overshoot [29–31]. The knowledge about system characteristics coming from experts can be expressed by fuzzy logic rules, which makes this control method more attractive than the others.
To enhance the controller performance, in this study, hybridization of these two controller structures comes to one mind immediately to exploit the beneficial sides of both categories, known as a fuzzy self-tuning disturbance decoupling controller (FSDDC). The parameters of the normalization factor of output variable in the fuzzy mechanism and the control gain tuned by fuzzy logic units are adapted online to ensure the performance of the fuzzy self-tuning disturbance decoupling control system. This control algorithm can be applied to manipulator systems with unmodeled dynamics, unstructured uncertainties, decoupling, and external disturbance.
The remainder of the paper is organized as follows. In Section 2, the structure and the throwing process of 3-DOF HHA are analyzed by the means of numerical mathematics and image processing. Mathematical modeling is presented in Section 3. In Section 4, the DDC and FSDDC for HHA are proposed. Computer simulation results of the proposed FSDDC, DDC, and PD algorithms of the HHA are given in Section 5. Finally, Section 6 concludes the paper.
2. 3-DOF Serial-Parallel Hybrid Humanoid Arm
2.1. The Structure of 3-DOF HHA
This 3-DOF serial-parallel hybrid humanoid arm is composed of a 2-DOF parallel mechanism which forms the upper arm of HHA and a 1-DOF serial mechanism which forms the forearm of HHA.
As shown in Figure 1, the 2-DOF parallel mechanism is composed of linear motors 14 and 15 and their movers 16 and 17, upper arm orbits 3 and 5, upper arm slip tubes 1 and 4, elbow handspikes 2, and upper arm pedestal 13. The 1-DOF serial mechanism is composed of linear motor 11 and its mover 12, forearm pedestal 11, wrist handspike 8, wrist 7, forearm orbit 10, and forearm slip tube 9. The motors 14 and 15 and upper arm orbit are fixed on upper arm pedestal. The motor 11 is fixed on forearm pedestal. The movers P1, P2, and P3 move forwards or backwards relatively to its main-body motors M1, M2, and M3, and the movement of motors drives the other components to achieve the desired action through the rotation axes.
The coordinates {O0} and {O1} are shown in Figure 2. {O0} is the fixed reference coordinate system, and {O1} is attached to the upper arm of HHA. Referenced to the horizontal, the upward inclination of the upper arm is up about 20°.

Structure of forearm in {O0} and {O1}.
The same point
where
Under the assumption of the regular shape, smooth surface, and linear density steady of every components, the sketch of HHA in {O0} and {O1} is shown in Figure 2. The dot Q, O, G is the center of mass of the motors M1, M2, and M3 and their pedestals, respectively. The dot C, A, F is the center of mass of the slip tubes S1, S2, and S3, respectively. The lengths of AN and CM are both l1, and the lengths of OQ, AB, RC, RB, CD, BC, EF, DE, ID, and FH are l0, l2, l3, l4, l5, l6, l11, l10, l15, and l30, respectively. The lengths of QC, OA, and GF are defined as x1, x2, and x3, respectively.
In coordinates {O1} and {O0}, the position vectors of dot A and C are
As shown in Figure 2, β is the angle between CD and the axis X1. α is the angle between AB and axis X1. The HHA is on the initial state when β = 0.
Define
As shown in Figure 2, the angles β and α can be described as follows:
The angle θ1 which is the angle between DE and CD and the angle θ2 which is the angle between EF and GF can be described as follows:
In coordinates {O0}, the position vectors of D, R, G, and F can be described as follows:
Ax, Bx, Cx, and Dx are arbitrary dots of AB, RB, RC, and CD. In coordinates {O0}, their position vectors are
Mx and Nx are arbitrary dots in CN and AN. In coordinates {O0}, their position vectors are
Gx, Fx, and Ex are arbitrary dots in HF, EF, and DE. In coordinates {O0}, their position vectors are
2.2. Analysis and Reference Trajectory of Throwing Process
A complete throwing process of HHA in a cycle consists of three stages: HHA raising from initial state stage, HHA waiting for the load stage, and HHA throwing the load out stage. Whether the object can be thrown at a certain position and a certain speed is a key part in the complete throwing process, and obtaining the corresponding reference signal is considered as a difficult problem.
To obtain the corresponding reference signal, a method we proposed is shown as follows. Firstly, the changing curve of HHA elbow joint angle, wrist joint angle, and time should be found by analyzing the throwing process of man's arm, respectively, and then the changing curve of Δx, x3 and time can be found through formula (5) and (6), respectively. By planning the motion of S1 and S2, we can get the changing curve of x1, x2, x3, and time, respectively.
To study the man's throwing process in detail, a camera is used to get the video image of raising and throwing process. After processing by MATLAB and Photoshop, the video image can be divided into four parts: the raising of forearm, the putting down of forearm, the raising of hand, and the putting down of hand. Define the beginning time of raising process at 0 seconds and the beginning time of throwing process at 1.5 seconds; the video image processing results are shown in Figure 3.

Video image processing results of complete throwing process. (a) Forearm raising, (b) forearm putting down, (c) hand raising, and (d) hand putting down video image processing result.
Considering the structure of the elbow joint and energy saving, the Δx can be produced by the following ways: when the forearm is raising, S1 and S2 move close to each other; when the forearm is putting down, S1 and S2 move away from each other. Then, the relationship between variables β, Δx, x1, x2, and time are shown in Tables 1 and 2; the relationship between variables θ1, x3, and time are shown in Tables 3 and 4, respectively. Processing the data in Tables 1–4 by MATLAB CFtool, we get the changing curve of x1, x2, x3 time in a cycle as shown in Figure 4 and their fragment expressions are given as follows:
Elbow joint variables data in raising stage.
Elbow joint variables data in throwing stage.
Wrist joint variables data in raising stage.
Wrist joint variables data in throwing stage.

Position motion of the slip tubes. (a) The motion of S1, (b) the motion of S2, and (c) the motion of S3.
3. Dynamic Modeling for HHA
In this section, the dynamic model of the HHA is derived. The Lagrange formalism used for the serial-parallel mechanism can be written as follows:
where L = V – P is the Lagrange function, K and P are the kinetic and potential energy functions, respectively,
3.1. The Computing for Kinetic and Potential Energy of Every Component
The total kinetic and potential energy of movers P1, P2, and P3 is given, respectively, as
where ρ1 is the linear density of P1, P2, and P3.
The kinetic and potential energy of part CD and wrist handspike is given, respectively, as
where ρ2 and ρ3 are the linear density of CD and wrist handspike, respectively.
The kinetic and potential energy of parts AB, BR, RC, and EF of forearm pedestal is given, respectively, as
where ρ2 is the linear density of AB, BR, RC, and EF.
The total kinetic and potential energy of motor M3 and its pedestal is given as
where m9 is the mass of M3 and its pedestal.
3.2. The Dynamic Model of the HHA
The dynamics of the HHA can be written as
where
where
is the lumped system uncertainty and satisfies [9]
4. Fuzzy Self-Tuning Disturbance Decoupling Control (FSDDC) for HHA
In this section, the FSDDC for HHA is developed, which combines the advantages of the DDC and the FLC. First, the DDC for HHA is derived. Then, the FSDDC is proposed to establish the FLC for the proposed DDC.
4.1. Disturbance Decoupling Control (DDC) for HHA
DDC is a relatively new control design concept and a natural fit for the purpose of disturbance decoupling in robot systems. As it is applied to the control of the HHA system, the idea is that all the nonlinear, time-varying uncertainties and coupling terms are parts of the total disturbance and can be actively estimated using the extended state observer (ESO) and canceled in the control law, leading to roughly three single-input and single-output plants. In this section, three disturbance decoupling controllers are designed for HHA to do trajectory tracking.
The realistic model (18) can be reformulated as
where
The HHA system can be formed by a set of coupled equations with predetermined input-output parings:
Define the total disturbance of each loop as
where bi0 is the approximate value of b i , f i represents the combined effect of internal dynamics and external disturbances in the ith loop, including the cross-channel interference. Then (22) can be written as
Now, the HHA system has been decoupled to a three-loop system as shown in Figure 5. Then an ADRC based SISO controller can be designed for each loop independently. The task of ADRC comes down to a critical subtask: estimate f i in real time. The estimation problem of f i leads us to a unique state observer known as the extended state observer (ESO).

Diagram of the DDC for HHA.
Considering the first loop, the structure of DDC in first loop is given in Figure 6.

The structure of DDC for first loop.
Let x11 = q1,
Letting
where
The state observer denoted as the linear extended state observer (LESO) of (26) is constructed as
where
With the state observer properly designed, z11, z12, and z13 closely track q1,
Ignoring the estimation error in z13 to f1, the plant is reduced to a unit gain double integrator,
which can be easily controlled by a linear state error feedback (LSEF) controller:
where qd1 is the desired trajectory of S1. Then the total control law of first loop is found as
In order to simplify the tuning of ADRC parameters, a parameter tuning method of the LESO is proposed in [24]; with using the pole placement technique, all the observer poles are at – ω01, making ω01 the only tuning parameter for the LESO. That is
where ω01 is the bandwidth of the LESO 1. This makes LADRC only have three tuning parameters ω01, kp1, and kd1, compared to traditional ADRC controller.
4.2. Stability
Proof. Let e1, i = x1, i – z1, i, i = 1, 2, 3, and combine (28) and (29) and subtract it from (26); the error equation can be written as
where
and
Letting ω01 > 0, it is obvious the roots of the characteristic polynomial of
Proof. From (30) and (33), a state feedback equation can be described as
where
Then the closed-loop system can be transformed into the following state equation:
By applying elementary row and column operations, it is obvious that the closed-loop eigenvalues satisfy
Letting kd1, kp1, ω01 > 0, it is obvious the roots of s2 + kd1s + kp1 and s3 + 3ω01s2 + 3ω012s + ω013 are all in the left plane; since h1 and qd1 are bounded, we can draw the conclusion that the DDC 1 is bounded-input bounded-output (BIBO) stable.
Consulting the disturbance decoupling control design strategy and stability analysis in the first loop, it is easy to develop two disturbance decoupling controllers for two other loops, the two other control laws τ2 and τ3,
4.3. Fuzzy Self-Tuning Disturbance Decoupling Control (FSDDC) for HHA
In this section, the fuzzy self-tuning disturbance decoupling control (FSDDC) with varying control gain is presented. The general structure of the proposed controller is given in Figure 7. The control gains of LSEF are changed dynamically by using the fuzzy logic unit in order to improve the performance of the controller; then the parameter regulation rules are given as follows:
where kpi0 and kdi0 are the initial gains of LSEF, Δk pi and Δk di are the output of fuzzy controllers, and ξ i and η i are the scale factors of FSDDC.

The structure of FSDDC.
As shown in Figure 8, the membership functions are used for the fuzzification of the inputs, which are error e
i
and derivative of error

Membership functions: (a) error, (b) derivative of error, (c) gains of Δk pi , and (d) gains of Δk di .
The rule tables for Δk pi and Δk di are constructed and given in Tables 5 and 6.
Fuzzy rules for Δk pi .
Fuzzy rules for Δk di .
Since ξ i and η i are chosen to guarantee that the control gains are always kept positive during the fuzzy adaptation, the BIBO stability of the controlled system is preserved.
5. Simulation
A set of numerical simulations is used here to verify the effectiveness of the proposed DDC and FSDDC. In addition, classical PD controller, which is commonly used for control of robot manipulators in industry because of its simple structure, is also applied to the HHA used for comparison. The numerical values of parameters of the HHA are listed in Table 7.
Parameters of the HHA.
The reference signals are given in Section 2.2. The initial values of the system are selected as
In order to check the robustness of the proposed controllers, a load is introduced and it will be put on the hand in 1.4 seconds to 1.55 seconds; the variation of the mass of the wrist is given in Figure 9.

Variation of the mass of the wrist.
Normally, the distributed noise and the parameter uncertainties of the system always exist, which can be thought as disturbing torques acting on the joints, and are assumed to be time varying as
In the following passage, our proposed FSDDC and DDC are used for stabilizing the HHA system in comparison with the PD controller, with the gains of the FSDDC, DDC, and PD controllers being given in Tables 8, 9, and 10.
Parameters of the FSDDC.
Parameters of the DDC.
Parameters of the PD controller.
The dynamic tracking performances of the proposed FSDDC are illustrated in Figure 10, and one can find that the proposed FSDDC provides a reasonable tracking capability in the various disturbances and uncertainties. The mass variation applied after 1.4 seconds almost does not affect the tracking performance.

Responses to desired throwing trajectories under DDC. (a) Position responses of S1, (b) position responses of S2, (c) position responses of S3, (d) velocity responses of S1, (e) velocity responses of S2, and (f) velocity responses of S3.
Figure 11 illustrates the position tracking errors. For a clear comparison, the requested input thrusts of the two controllers are shown in Figure 12.

Comparison of position tracking errors. (a) Tracking error of S1, (b) tracking error of S2, and (c) tracking error of S3.

Comparison of input thrust. (a) Input thrust of M1, (b) input thrust of M2, and (c) input thrust of M3.
It is easy to see that the DDC has better tracking performance than the PD controller; the proposed DDC has the smaller tracking error and more convergence to zero than the PD controller; the performance of DDC is further improved by combination with the FLC; the FSDDC has smaller overshoot and shorter setup time than DDC.
The requested input thrust of the proposed FSDDC and DDC is slightly bigger than that of the PD controller, which are all in the range of output thrust of linear motors, and proves the efficiency of the proposed controller.
As a result, we can conclude that the proposed DDC and FSDDC can give a better tracking over the commonly used PD control. In this situation, the HHA can complete the throwing process as requested.
6. Conclusion
This paper addressed the robust trajectory tracking problem for a serial-parallel hybrid humanoid arm (HHA) throwing process in the presence of uncertainties and disturbances. The FSDDC control, with the advantages of both DDC and FLC, has shown a significant improvement over the PID control under the same conditions. The FSDDC can readily decouple the multi-input and multioutput processes by taking the interactions among different parts of the process as disturbances to be estimated and cancelled; it has strong disturbance rejection ability and robustness to uncertainties, which widely exist in throwing processes. The effectiveness of the designed unique dynamic FSDDC strategy was illustrated by simulation examples. We expect that, as we continue to work with the implementation, we may improve the response even further.
