Fuzzy cerebellar model articulation controller-based adaptive tracking control for load-carrying exoskeleton

Load-carrying exoskeletons need to cope with load variations, outside disturbances, and other uncertainties. This paper proposes an adaptive trajectory tracking control scheme for the load-carrying exoskeleton. The method is mainly composed of a computed torque controller and a fuzzy cerebellar model articulation controller. The fuzzy cerebellar model articulation controller is used to approximate model inaccuracies and load variations, and the computed torque controller deals with tracking errors. Simulations of an exoskeleton in squatting movements with model parameter changes and load variations are carried out, respectively. The results show a precise tracking response and high uncertainties toleration of the proposed method.


Introduction
The exoskeleton is a kind of wearable and anthropomorphic device that enhances the physical capabilities of a non-disabled wearer. 1,2 It looks like a humanoid robot or a part of that in appearance and is worn in parallel with human body in general. The significant feature of the mechanical device is that it combines the cognitive ability of human with powerful mechanical system, 3 which makes the human-machine system more intelligent and powerful. For example, lower limb exoskeleton can adapt complex terrains well without building map in advance. 4 Load-carrying exoskeleton (also called load-bearing or load transfer exoskeleton) is one kind of lower limb exoskeletons. It transfers substantial loads to the ground directly rather than augments human joints power. 1 This type of leg exoskeleton is urgently needed in the military for long-distance locomotion with heavy loads 5 and is widely researched during the past two decades. However, one of the most difficult problems in designing an excellent loadcarrying exoskeleton is the control system. On the one hand, the device should follow the pilot's motion flexibly. On the other hand, it should overcome load variation and other disturbances and support the remainder loads steady at the same time. In most cases, the carried loads could be a few times heavier than the device itself, and the variation of loads is a tough challenge for control system design.
Much work has been done on the control of loadcarrying exoskeleton by earlier studies. But most of them deal with fixed payload or small load variation, or only focus on the uncertainty of the dynamic model. Among them, more effective and practical methods include sensitivity amplification control (SAC), modelbased control (MBC), sliding mode control (SMC), and neural network-based adaptive control (NNAC). The Berkeley Lower Extremity Exoskeleton (BLEEX) is the first functional load-carrying activated exoskeleton. It uses SAC method to acquire a high sensitivity of pilot's forces or torques without any human side information, which is hard to be measured accurately. 4,6 But the control method depends on a better dynamic model and is unable to cope with parameter variations and model uncertainties. After BLEEX, SAC is seldom being used in other exoskeletons for its strick requirements of the model. MBC, such as direct force control 7,8 and impedance control, 9,10 is relatively easy to implement. HEXAR-CR50 developed by Hanyang University uses direct force control to calculate the desired joint torques in the stance phase and then applied a proportional-integral-derivative (PID) controller at each joint. 11,12 The exoskeleton developed by Massachusetts Institute of Technology (MIT) uses similar force control method under a state-machine control strategy with the support of plenty of sensor information. 13 Both of them showed wearer's metabolism reduction during locomotion.
To enhance the robustness of the exoskeleton control system, SMC 14 and intelligent control NNAC 15 are mainly investigated. SMC has an advantage of parameter-insensitive, and NNAC is good at approximating uncertainties. Hence, the method of SMC with NNAC compensation is widely studied as well. [16][17][18] Though much progress has been achieved in adaptive control of load-carrying exoskeleton, few works touch on the situation of a broad range of load mass and inertia variation, which is practically unavoidable. Typical cases include loading and unloading, loads waggling during moving, impacting when weapon firing, and so on.
In this paper, a computed torque control (CTC) 19 associated with fuzzy cerebellar model articulation controller (FCMAC) 20 method is proposed for loadcarrying exoskeleton on tracking problems. The biomimetic reference trajectory is given in advance since we focus on control techniques rather than motion intention detection, which is another specific research point. 21 CTC, also called inverse dynamics control, is a unique application of feedback linearization of nonlinear systems 19 and performs well in trajectory tracking of robot manipulators. 22 The CTC is made up of two feedback loops: an inner loop based on the dynamic model and an outer loop operating on the tracking error. The inner loop is used to obtain a linear and decoupled input/output relationship, whereas the outer loop is required to stabilize the overall system.
To satisfy the precise model requirement of CTC, we introduced neural network compensation. FCMAC is used to approximate modeling deviation, overcome parameter variations as well as represent the dynamic payload model. This neural network is a local approximation network. For each input, only a few related weights should be adjusted, so the network can approximate non-linear terms exceptionally quickly. 23,24 A clear FCMAC structure which mainly aims at significant payload variation is provided, and the unified stability analysis of the whole control scheme is proved by the Lyapunov method. Simulation results show that the proposed control method performs well during tracking even there exist model uncertainties. Moreover, the method can tolerate a broad range of payload mass over one time bigger than the mass of the device itself. With the proposed adaptive controller, exoskeletons not only help soldiers or workers transfer heavy objects but also can maintain high stability when loading and unloading without bothering operators much.

Dynamic model
As Figure 1 shows, exoskeleton model can be simplified as a four-bar linkage which represents foot, shank, thigh, and torso that are parallel with wearer's limbs. O a , O k , and O h are the rotation centers of the ankle, knee, and hip joint, respectively. Gravity center of each linkage is located at points G f , G s , G t , and G ub separately. Other parameters and variables are defined in Table 1.
As mentioned above, load-carrying exoskeleton saves wearer's efforts by transferring heavy loads to the ground. The transfer progress only occurs in the stance phase. Thus, we mainly consider device activities in the stance phase of the sagittal plane. Figure 1 shows a state of two feet stand. A squat movement, which is a typical activity of the stance phase, is applied and researched in the following work.
The dynamic model of the stance phase exoskeleton is designed with Eural-Lagrange equation and is expressed as where M is the inertia matrix, C is the Coriolis and centrifugal force matrix, G is the gravity matrix, J is the Jacobian matrix, F int is the interaction force between exoskeleton and its wearer, and u = ½t 1 , t 2 , t 3 T is the control input torque. The interaction force F int is detected by a multidimensional force sensor, which is usually mounted on the back between human and machine. 25 Note that the payload, which is usually mounted on the back of the exoskeleton torso, is not modeled considering its variation. That is, equation (1) is a nonloaded model and the existence of load will definitely influence the accuracy of M, C, and G. While those Length from ankle to G f m L Gs Length from ankle to G s m L Gt Length from knee to G t m L Gub Length from hip to G ub m q 1 Shank angle with respect to vertical rad q 2 Thigh angle with respect to shank extension rad q 3 Torso angle with respect to thigh extension rad t 1 Ankle torque Nm t 2 Knee torque Nm t 3 Hip torque Nm inaccuracies can be pretty handled using the proposed control scheme. The friction term is not considered, as well. Assuming the friction is only related to the joint velocity, the existence of friction can be regarded as a deviation of C. Besides that, we assume the humanrobot interaction force is in linear relationship with displacement errors as expressed in equation (2) If the exoskeleton tracks the reference trajectory decided by the wearer well, then the interaction force will be minimum, and that is what a load-carrying exoskeleton should achieve.

Method
The whole control structure is shown in Figure 2. The inputs of the exoskeleton include three parts: the physical human-robot interaction (pHRI) force F int , the control value of CTC u CTC , and the control quantity of FCMAC u CMAC . If the system model is precise enough, the CTC controller guarantees the tracking errors converging to zero by reasonable pole placement. The precise model is ensured by the FCMAC controller but cannot be ideal. Thus, a compensated controller u c is introduced.

CTC controller
The control law is designed as the following form where Substituting equations (3) and (4) into equation (1), the system dynamic equation is updated aŝ Take equations (5) and (7) into equation (6), we get The system will be stable as long as the coefficient matrices K 1 and K 2 are positive definite, and the position error Dq will converge to zero. That is, the exoskeleton can follow wearer's movement pretty well without hindering each other. However, it's quite challenging to make equation (7) tenable because of the exists and the unpredictability of the dynamic uncertainties and external disturbances. Thus, the ideal control law equations (3) and (4) are practically limited used. To counteract those uncertainties and guarantee the tracking error Dq converging to zero, a compensation control quantity is added based on FCMAC network.

Architecture of FCMAC
FCMAC architecture is similar to the conventional CMAC. The difference is that FCMAC uses Gaussian basis function as receptive field basis function rather than local constant binary function. Figure 3 shows the architecture of an n-dimensional input and p-dimensional output CMAC. The network is constructed with five spaces: input space S, association space A, receptive field space T, adjustable weight space W, and output space Y. And the network mainly has three mapping processes The function u = R(s) maps each input vector s onto the association space A. According to u, function c = U(u) can select specific hypercubes, which constitute the receptive field space T. Each hypercube corresponds with a function that is obtained by multiplying related basis functions. At last, function y = P(c)   Quantization. Each data of the input vector s should be quantized into a given interval to map it onto the association space conveniently. The units and ranges of the inputs may be different, but the quantization converts them into uniform dimensionless values. The minimum scale of the quantization zone decides the side length of the hypercube, which represents the size of each receptive field. Usually, we define the minimum scale as 1, and the number of scales n s is called resolution. The quantization can be linear or non-linear, and the difference has not been systematically researched. In this study, we choose E 2 R 631 as input that can be measured relative easily in the physical system. Resolutions of all the n = 6 inputs are defined the same as 9 with the minimum scale as 1. Figure 4 illustrates the quantized coordination of the inputs s 1 and s 2 .
Receptive field function. After quantization, each input is mapped onto the association space and be represented by multilayer blocks. The association space of each input is constructed with n l layers. Each layer is divided into n b blocks. The maximum block length is defined as l b . The blocks in each layer are mismatched. In general, n s , n l , n b , and l b have a relation as shown in equation (10), so that the number of blocks in each layer is the same and the mismatch interval exactly is a minimum scale Thus, any input data can be mapped to n l blocks and each minimum scale corresponding to n l specific blocks. For each input, there are totally n B = n l n b blocks.
Each block corresponds with a receptive field basis function. The basis function is effected only in its related block. Any continuously bounded function can be used as the basis function, and the Gaussian function is used in this work. The basis function of the kth block of the jth layer of the ith input s i is presented as Note that k is related with i and j. Any input point s can be represented by a set of n l hypercubes in the receptive field. Each hypercube has a receptive field function that is composed of basic functions of the related n blocks. Note that the related blocks are located in the same layer of different inputs. The jth layer hypercube function of the input s is defined as  There are n h = n l 3n n b hypercubes in total. Different hypercubes can be overlapped with some same receptive field blocks. We called the overlap as local generalization, which can be understood as neighboring inputs producing similar outputs. If there is no overlap between the two inputs, there is no generalization between them and they will not influence each other when the network is training.
All networks have the problem of dimensional explosion, and CMAC is no exception. As mentioned above, a CMAC with n inputs, if divided into n l layers and each layer into n b blocks, will have n l 3n n b hypercubes. The amount of computation could be horrible with the increase in n and n b . However, using hash coding, the progress of mapping from association space to receptive field space can be compressed and does not influence the local generalization much at the same time. 26,27 Thus, the computation amount and the space memory of receptive field can be reduced to an acceptable range, n h = n B , for example. 28 Weight space and output. Each hypercube corresponds to a specific weight when mapping to a specific output. Suppose the output dimension is p, the weight space W is p times large as the receptive field space T . . .
in which w i (i 2 1, 2, Á Á Á , p) is the weight vector of the ith output y i . The output y 2 R n h 3p is expressed as For example, if two input vectors are quantized to (2.1, 2.4) and (2.5, 2.6), respectively, they are both located at the square (3,3) and represented by the hypercubes 1 C 2 C, 1 D 2 D, 1 E 2 E, and 1 F 2 F.

FCMAC and compensated controller
Redesign the control law equation (3) as Then equation (6) can be rewritten as in which C represents the uncertainties and the neural network output term The system state-space dynamic model can be written as If there exists ideal weight values w Ã and parameters m Ã , s Ã that can make C ! 0, then the uncertainties can be represented as in which e(s) is the functional reconstructional error and k e(s) k 4e M is bounded. 29 Letŵ,m, andŝ are the estimated values of w Ã , m Ã , and s Ã , the output of FCMAC network u f is To minimize the approximation error of the network, a compensation quantity u c is added. The approximation errorũ is expressed as wherew = w Ã Àŵ andG = G Ã ÀĜ. LinearizeG using Taylor expansioñ where O t 2 R n h 31 is a higher-order term and G, H 2 R nn B 3n h are the coefficient matrices with elements expressed as (symbol '') c '' means the block left of the symbol is one of the elements that construct the hypercube right of the symbol) The optimal hypercube function set is represented as Substitute equations (20), (22), (24), and (28) to equation (21) in which h is the error of the network and is bounded h 0 . The FCMAC and the compensated control laws are directly given using the Lyapunov method where g 1 , g 2 , g 3 , and g 4 are some constants greater than zero. P is a symmetric positive definite matrix and fulfills the following Lyapunov equation and Q is a positive definite matrix. As for the load-carrying exoskeleton described in equation (1), the control laws, which correspond with the control scheme in Figure 2, are entirely designed as in which u CTC is designed as equations (3)

Stability analysis
Define the Lyapunov function as Taking the derivative of the Lyapunov function and substituting equations (29) and (34) successively, we get According to equations (30)-(33), equation (37) is simplified as where _ V is zero only occurs at the situation of E = 0. According to Barbalat's Lemma, E ! 0 as t ! '.

Simulation
The proposed method is verified through simulations. The leg on the stance phase rather than the swing phase is selected as the application object because the load variation has a slight influence on the swing leg. A squat movement is used in the simulation. The desired trajectories of the ankle, knee, and hip joints are obtained through the fitting results of human squatting data, which are collected by the motion analysis equipment. Figure 5 is the squatting progress during the simulation. The average mass m = 25 kg of the existing exoskeleton products 30 is chosen as the total weight of the load-carrying exoskeleton simulation model. The parameter values in Table 1 are specified as m f = 3.0 kg, m s = 6.0 kg, m t = 6.0 kg, m u b = 10.0 kg, L f = 270 mm, L s = 520 mm, L t = 450 mm, and L ub = 530 mm. Assume all the links are homogeneous, and the mass point is located at the geometrical center.
As for FCMAC network, joint angle displacements and their differential E are chosen as the inputs and the outputs u CMAC are the joint torque control quantity. Assume the three joint angle displacements Dq have a range of ½Àp=90, p=90, and the differential of angular deviations D _ q changes within the range of ½Àp=15, p=15. All of the six inputs are quantized to the section ½0, 9 with a minimum scale of 1. The block length b l is chosen as 4. Hence, there are four layers for each input in the association space, and each layer has three blocks. The mean values of the basis function m are initialized as the center value of each block and the standard deviations s as zero. The weight w is initialized as zero as well.
Three groups of simulation in different conditions are designed in this paper. The first is without model uncertainties. The second is with model parameter changes, and the last is with load changes.

Simulation without uncertainties
In this condition, no load is added on the exoskeleton. The dynamic system model is definite and is used in the CTC controller design. The parameters used in the controller are designed as K 1 = 600I 333 , K 2 = 100I 333 , Q = 100I 636 , g 1 = 2000, g 2 = 100, g 3 = 100, and g 4 = 10. Figure 6 is the trajectory tracking results during a period of squatting. The system tracks the desired trajectory well whether using the neural network or not, which indicates that the CTC controller is adequate. Moreover, from the tracking errors, we can see the CMAC controller can restrain errors and plays a positive role during tracking.

Simulation with model parameter changes
The model parameter changes come from the modeling simplification and the measuring errors. In this condition, the load is not considered for the moment. For simplicity, we set the model parameter changing by adjusting the value of M, C, and G in equation (1). The maximum variable quantity is 640%. The controllers are designed identical as in the above subsection. The tracking results are displayed in Figures 7 and 8.
In the condition that the model parameters increase 40%, the maximum tracking errors of the control without FCMAC and with FCMAC are 2:12310 À2 and 1:8310 À3 rad, respectively. Both of the maximum errors occur at the knee joint. Favorable tracking response is obtained when using the FCMAC controller. When the model parameters decrease 40%, a similar control effect appears that the maximum tracking errors of control without FCMAC and with FCMAC are À3:84310 À2 and À1:6310 À3 rad, respectively. From the above two simulations, it can be seen that without the FCMAC controller, though the joints can track the desired trajectory, the tracking errors are relatively high, which increases the interaction force between the pilot and exoskeleton. However, with the FCMAC controller, more precise tracking responses can be guaranteed.

Simulation with load changes
The load adheres to the exoskeleton torso. During the working, the load supported by the exoskeleton can be changed frequently; for example, loading and unloading equipment, weapon launching, fuel consumption, and so on. Thus the control system should have the  ability to cope with load variations. In this condition, only load mass variation is considered, and the load position and orientation variations are not taken into account, which can be regarded as the model parameter changes in the above subsection.
The initial state of the system used in the simulation is non-loaded. Three groups of simulation are designed with 10, 20, and 30 kg load, respectively. The controllers stay the same as subsection ''Simulation without Uncertainties.'' The tracking responses are illustrated in Figure 9. For comparison, the tracking responses without FCMAC controller are displayed in Figure 10.
Along with the adding of load, the tracking error of both the controls with FCMAC and without FCMAC is increasing. However, the control without FCMAC is hard to track the desired trajectory, especially when the load is heavy. The maximum tracking errors of the three joints under the condition of 30 kg load in Figure  10 are 0.05, 0.21 and 20.33 rad, respectively. While using the control with FCMAC, the maximum tracking errors are reduced to À1:3310 À3 , 2:6310 À3 and 1:7310 À3 rad, respectively. The proposed control scheme can well deal with the load variation.

Conclusion
A trajectory tracking controller associated with FCMAC compensation for load-carrying exoskeleton in the stance phase is proposed in this paper. The control scheme is mainly composed of CTC and FCMAC. The CTC is the primary controller for the trajectory tracking and has a benefit of smooth control quantity compared with the sliding mode controller. The FCMAC is used to approximate the dynamic model uncertainties. The system stability is proved by the Lyapunov function. The simulation results show that the proposed control strategy has a perfect tracking response in squatting movements and can better deal with situations, such as model uncertainties and load variations.
The proposed controller has a robust ability of system uncertainties. As to the flexibility of the loadcarrying exoskeleton, it can be affected by many factors besides the robust control. First, the flexibility is related with the load weight and the motion state. In practical applications, the power of the actuators of the exoskeleton is limited. Second, the load-carrying exoskeleton can be regarded as a biped robot. During walking, the    flexibility of the exoskeleton is mainly affected by the swing phase and the swing-stance-switch phase. Then, if the system uncertainties are too large, the proposed control method cannot guarantee the tracking effect. Because the higher-order term O t in equation (25) will have large impact on the controller. Also, in this paper, the desired trajectory is given directly. Actually, the acquisition of the desired trajectory is a challenge of intention perception of human motion. The accuracy of motion intention perception decides the control effect of the exoskeleton. So, if the power of the actuators is large enough, the system uncertainties are limited (the load is less than 30 kg and the errors of the model parameters are below 40%) and the desired trajectory is accuracy enough, the proposed FCMACbased adaptive tracking control impacts the flexibility of the exoskeleton less.
Future work includes designing proper association space of FCMAC, researching non-linear quantization of FCMAC, and simulating the control strategy on various movements. Considering that the proposed control strategy has a high tolerance of uncertainties, the swing leg of the exoskeleton can be regarded as disturbances of the stance phase model, thus the control strategy of the complex activities can be simplified. The method will be evaluated on a physical system in the future.

Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.