Fuzzy CMAC-Based Adaptive Scale Force Control of Body Weight Support Exoskeletons

The body weight support method of exoskeletons is useful for the rehabilitation of patients with lower limb dyskinesia and performance augmentation of elders. Rather than enhancing the human joint strength directly, the body weight support exoskeleton provides assistance by supporting part of the human body weight and thus releasing the burden experienced by human legs. This paper proposes a two-level hierarchical control method aiming to achieve task-free and strong system robustness. A scale force control method, which can be simply described as making the supporting force of the robot several times the magnitude of a human leg, is developed as the high-level controller. The low-level controller is designed as a fuzzy cerebellar model articulation controller (CMAC)-based adaptive control to enhance the system robustness. The proposed method is applied to a squat movement and a single leg stance movement and is simulated in a combined simulation environment. The results show that the exoskeleton can always provide improved support according to the foot reaction force that is controlled by the user and that the system handles model errors and external disturbances well.


I. INTRODUCTION
An exoskeleton is a wearable device that can increase the performance of able-bodied wearers [1], [2]. There are many control strategies for achieving assistance, such as sensitivity amplification control (SAC) [3], [4], electromyography (EMG)-based control [5]- [7], and trajectory tracking control [8]. However, few strategies have a good clinical use effect. The body weight support (BWS) control method provides a useful technique and is mainly used for reducing lower limb burden of patients or elders [9]- [11]. Although there are already some devices that achieve the function of BWS, Locomat [12], [13] for example, they are very large and bulky. BWS control methods for portable exoskeletons are still under investigation.
The earliest BWS device resembling an exoskeleton can be traced back to 1890 [14]. The device is passive and supports the wearer's weight with a pair of long bow springs. Research on passive BWS devices has continued in recent years. Lee designed a passive BWS lower limb exoskeleton with a bionic knee joint for walking gait [15], [16]. Krut

developed a
The associate editor coordinating the review of this manuscript and approving it for publication was Juntao Fei . quasi-passive exoskeleton, called MoonWalker, to lighten the forces in legs due to bodyweight [17]. The passive BWS exoskeleton can always provide an anti-gravity support force for the wearer, but the assistance characteristic is inherent, and the passive devices cannot follow the user's movement intentions.
Powered BWS exoskeletons can provide personalized assistance. Compared with powered exoskeletons that provide assistance on joints directly, there are few studies of portable powered BWS exoskeletons. Lv achieves partial body weight assistance when walking by using a control strategy based on underactuated potential energy shaping [18]. However, the potential energy shaping method relies heavily on the motion modes and phase divisions. Honda developed a walking assist device that can be sat on [19]. The structure of the device is designed based on a biomedical engineering analysis so that it can always maintain the assist force vector in the direction from the center of pressure of the floor reaction force to the center of gravity of the user's body. The desired assist force of Honda's walking assist device is constant and can be user-defined. Then, the assist force is distributed to two legs according to the foot reaction forces on each leg. A similar device can be seen in [20]. However, constant BWS assistance cannot be user-friendly; for example, the user needs substantial assistance when going up stair and minimal assistance while walking on a flat floor. A more automated controller is needed that can make the desired assist force be related to the state of human motion rather than a constant value. Mir-Nasiri developed a conceptual design exoskeleton that supports the user's body weight by locking the knee joint in some stance phases [21]. All the above powered BWS exoskeletons have little consideration of the wearer, that is, the users cannot totally control the robot. In this paper, we hope that the exoskeleton has an effect that works like additional human leg muscles and bearing loads (the user body weight) that are several times larger than the user's legs bear. By using this method, the wearer only uses a scaled down effort to achieve the same movement and can completely handle the device regardless of its motion modes.
In addition to the control target selection of the BWS exoskeleton, another challenge is the robustness of the control system, which is important for the safety of the human-robot system. The most commonly used robust control methods include slide mode control [22], [23], fuzzy-based adaptive control [24], [25], and neural network-based adaptive control [26], [27]. Among them, neural network-based adaptive control has the advantage of approximating the unknown nonlinear characteristics of the system dynamics. Generally, the BWS exoskeleton is a kind of biped exoskeleton. To simplify the modeling and control of the system, decoupling is needed for the stance leg and the swing leg. Thus, for the stance leg, the motion of the swing leg can be regarded as external disturbances, which also requests robustness of the BWS control method of the stance leg.
Aiming to resolve the above two problems of the BWS exoskeleton, namely, task-free control target selection and strong robustness controller design, we provide a hierarchical control method [28] for loosely coupled exoskeletons by using sufficient interaction force information. The control method is a kind of assist-as-needed method rather than a constant assistance method. The assistance varies automatically with human movement and the assistance level can be adjusted freely by the user. Additionally, the control method has strong system robustness which increases the system security.
The general hierarchical control framework includes three layers: a high-level layer for motion mode recognition, a midlevel layer for desired trajectory generation, and a low-level layer for actuator control. In this work, only two layers are sufficient. The high-level control target is selected to control the BWS force (can be measured by interaction force sensors) so that it is several times larger than the human leg bears (can be measured by the foot reaction force), and we called this method scale force control (SFC). SFC ensures that the robot provides variable assistance along with changes in human motion. For the low-level layer, a fuzzy cerebellar model articulation controller (CMAC) [29]- [31]-based adaptive controller is designed. Simulations indicate that fuzzy CMAC-based adaptive scale force control is capable of providing any interested body weight assistance only using interaction forces, and the system has a strong tolerance for model uncertainties and outside disturbances.
The rest of this paper is organized as follows. Section 2 introduces the concept of the loosely coupled BWS exoskeleton and builds the model of it. Section 3 describes the proposed control method in detail. The simulation and results are presented in Section 4. Finally, Section 5 summarizes the conclusions, discusses related problems and gives an outlook of the future work.

II. SYSTEM DESCRIPTION AND DYNAMIC MODELING
Many exoskeleton structures are designed to be anthropomorphic or semi-anthropomorphic, such as HAL [32], ReWalk [33], and MINDWALKER [34]. Their mechanical arms are parallel with human limbs so that the robot can provide specific assistance for each human joint. However, that is quite a challenge because of the complexity of human joint structures and individual differences. Another kind of exoskeleton provides assistance from the overall effect through a structure that is loosely coupled with that of a human. For example, MoonWalker [17] only connects at the foot and waist and supplies assistance for the entire lower limb. The benefits of the loosely coupled exoskeleton include a simple structure, wearer convenient, less human-machine interference and so on. In this work, we used a loosely coupled lower limb exoskeleton to achieve body weight support function.

A. SYSTEM DESCRIPTION
The simulation model ( Fig. 1) is designed in the combined simulation environment of MATLAB and OpenSim [35]. The later software provides various anatomical models of the human body. Scripting with MATLAB allows us to interact with the classes of the OpenSim C++ API. The OpenSim-MATLAB link is established by calling functions and classes in the OpenSim API libraries. The geometry of the parts of the exoskeleton is drawn in SolidWorks. The physical parameters of the parts, e.g., mass and inertia, are defined in MATLAB. First, the human model provided by OpenSim is loaded into MATLAB. Then, we add each exoskeleton part to the human model by creating suitable joints.
The loosely coupled lower limb exoskeleton only connects to the foot and back of the wearer. At the back interaction VOLUME 8, 2020 point, the human interacts with the exoskeleton through a spring damper. At the foot interaction locations, we assume that the interaction models are spring dampers. In the simulation model, spring-damper components and interaction force/torque sensors are added at all of the interaction points. The bending direction of the knee joint is opposite to that of the wearer to avoid human-robot interference, although it may increase the possibility of interference with the working environment. Long robot limbs are suitable for different individual statures. There are six degrees of freedom per leg in total, with four powered degrees (hip adduction/abduction, hip flexion/extension, knee flexion/extension and ankle plantar/dorsal flexion) and two passive joints (hip rotation and ankle adduction/abduction). All the powered actuators are located around the waist and equipped with encoders. The torques of the knee and ankle joints are transmitted through cables. Compared with MoonWalker and Honda's walking assist device, the proposed exoskeleton has more actuated joints and is less bound by the structure design but has a more complex controller design. For example, for the proposed exoskeleton, the direction and size of the assist force should be controlled, while for Honda's walking assist device, only the size of the assist force is controlled.
In this work, for simplicity, only movements in the sagittal plane are considered. The controller of the robot is based on interaction forces; thus, multidimensional force information around the interaction places is needed.

B. EXOSKELETON DYNAMICS
For body weight support exoskeletons, the stance leg is mainly used to provide assistance, and the swing leg needs to follow the wearer's movements without hindering movement. Thus, we modeled the supporting leg and the swing leg separately. As Fig. 2 shows, the center of the stance foot is selected as the origin of the reference coordinate. The stance leg dynamics can be described in a general form as where q = [q 1 , q 2 , q 3 ] T is the joint angular position, is a Coriolis and centrifugal matrix, G st ∈ R 3×1 is a gravity term, T a ∈ R 3×1 is the actuators torque, J b is the Jacobian matrix, F b ∈ R 3×1 is the back interaction force, and D is the outside disturbance. For the swing leg, the hip joint is defined as the coordinate origin, and the swing leg dynamics can be written as where q = [q 4 , q 5 , q 6 ] T is the joint angular position, and F f ∈ R 3×1 is the foot interaction force. For loosely coupled lower limb exoskeletons, another advantage is that the physical human robot interaction can be optionally set. In this work, we use a parallel spring and damper to connect the human and the robot. The physical human robot interaction model is expressed as in which k b and k f are elastic coefficients, b b and b f are damping coefficients, r hb is the human back interaction position in the stance leg reference coordinate system, r eb is the robot back interaction position in the stance leg reference coordinate system, r hf is the human foot interaction position in the swing leg reference coordinate system, and r ef is the robot foot interaction position in the swing leg reference coordinate system.

III. FUZZY CMAC-BASED ADAPTIVE SCALE FORCE CONTROL
The controller of the exoskeleton is designed as a two-layer structure. The high-level controller is designed using interaction forces/torques between the human and robot and load forces/torques. As an ideal control result with the high-level controller, the wearer can support the load (or their body weight) only using a scaled down effort. Thus, we defined the interaction force-based control method as scale force control. For the lower-level controller, a fuzzy CMAC-based adaptive controller is used in order to increase the system robustness.

A. SCALE FORCE CONTROL
For exoskeleton systems in which the wearer is in direct contact with the load, the load is handled under the cooperation of the human and machine. Assuming F p is the generalized interaction force, which can be regarded as the robot assistance to the wearer, F h is the generalized human lifting force, and F l is the generalized load force, then the system relation can be easily given as We expect the robot to carry the majority of the load. Assuming the robot assistance is K times the magnitude of the wearer's effort: where K > 0 is a constant. Since it is quite difficult to measure human information directly and accurately, F h is eliminated by substituting (5) to (6) yields Thus, we obtain the scale force control law as (7) shows. The constant K is called the scaling factor. For body weight support exoskeletons, the load becomes complicated. When the system is static, the load F l is equal to the wearer's body weight. However, when the system is dynamic, the load information is hard to calculate. Fortunately, we can obtain the wearer's effort F h indirectly by using the foot-ground reaction force (FRF) F g . Therefore, the scale force control law of the body weight support exoskeleton has the following formula where F g can be measured by the footplate force sensors and F p can be measured by the back force sensors. A benefit of the loosely coupled exoskeleton with scale force control is that we do not have to consider the human joint state, which is hard to accurately measure.

B. FUZZY CMAC
As shown in Fig. 3, the CMAC is constructed of five spaces: the input space S, association space A, receptive field space T , adjustable weight space W , and output space Y . The architecture of the fuzzy CMAC is the same as the CMAC except that the former uses the Gaussian basis function, rather than a local constant binary function, as the receptive field basis function. The progress of the network includes quantization, association, mapping to the receptive field, weighting, and output. For a n-dimensional input vector X = [x 1 , x 2 , · · · , x n ] T , each data point in the vector should be quantized into a nondimensional section with the same range n s and minimum scale n i . Usually, the minimum scale is set to n i = 1. Then, each quantized input data point is represented by multilayer blocks in the association space. The association space of each input data is constructed with n l layers, and each layer is divided into n b blocks. The blocks in each layer are mismatched by one minimum scale. Assuming that the maximum block length is l b , we have and there are n B = n l n b blocks in total for each input. Thus, each input data is represented by n l blocks. Note that each block has a Gaussian basis function expressed as in which i is the input data number, j is the layer number of each input data, k is the block number of each layer, and s i is the quantized input data. After that, all the blocks are recombined, and the same layer blocks from different input dimensions are tied up to constitute hypercubes in the receptive field. Thus, the input vector X is converted into n l hypercubes. The jth layer hypercube function is defined as There are n h = n l × n n b hypercubes in total in the receptive field. Each hypercube corresponds to a weight for an output. That is, the weight space W is p times as large as the receptive field space if the output dimension is p. However, the output y is only related to the selected n l hypercubes in each algorithm step: where w ∈ R n l ×p is the weight matrix of the selected hypercubes, and (s, m, σ ) ∈ R n l ×1 is the function vector of the selected hypercubes.

C. FUZZY CMAC-BASED ADAPTIVE CONTROL
For body weight support exoskeletons, more attention is given to the stance leg control than the swing leg control. The dynamic equation (1) is expressed in the workspace as follows: The low-level controller of the stance leg expressed in (13) can be designed by using inverse dynamics: whereÂ(q),B(q,q), andĜ st (q) are the estimations of A(q), B(q,q), and G(q), respectively. u n is the output of the neural network. r d eb is the desired trajectory of the interaction point of the back of the exoskeleton. K = [K 1 , K 2 ] T , and K 1 and K 2 are diagonal matrixes of constants greater than zero. E = [r d eb − r eb ,ṙ d eb −ṙ eb ] T is the error in the interaction point positions and velocities. Substituting equations (16) and (17) into (13), the stance leg dynamic equation is updated as: where r eb = r d eb − r eb .Ã(q),B(q,q), andG st (q) are modeling errors. If the right-hand side of (18) equals zero, the position error r eb will converge to zero. Therefore, the next step is to design a fuzzy CMAC neural network and make the output u n approach the sum of the model errors and external disturbances. Let The stance leg state space dynamic model can be written as: where U = [0, I 3×3 ; −K 1 , −K 2 ], and V = [0;Â(q) −1 ]. If ideal values w * , m * , and σ * exist that can make → 0, we have where ε(s) is the bounded functional reconstructional error. Letŵ,m, andσ be the estimated values of w * , m * , and σ * ; the output of the neural network u n is: A compensation quantity u c is added to the output of the neural network u n to minimize the approximation error. Thus, the approximation errorũ n is expressed as: wherew = w * −ŵ and˜ = * −ˆ .˜ can be expanded by Taylor series as˜ where G = ∂b 1 ∂m , ∂b 2 ∂m , · · · , ∂b n l ∂m m=m and O t ∈ R n l ×1 is the higher-order term. Substituting (23), (24) into (20) gives: (27) in which η =ŵ T O t +w T˜ + ε is the error of the network and is bounded. By using the Lyapunov method, the fuzzy CMAC-based adaptive control laws are directly given as: where γ 1 , γ 2 , γ 3 , and γ 4 are constants greater than zero. P is a symmetric positive definite matrix that fulfills the following Lyapunov equation: To verify the stability of the controller, the Lyapunov function is defined as: Taking the derivative of V and substituting (32) gives: Substituting (28)- (31) into (34): V is zero only when E = 0. Thus, the equilibrium point is asymptotically stable.

IV. SIMULATION
The proposed method is varied in the combined simulation environment of MATLAB and OpenSim, as shown in Fig. 1 Table. 1. For BWS exoskeletons, vertical direction control is mainly considered. A squat movement is selected to verify the fuzzy CMAC-based adaptive scale force control and a condition of single leg support with the other leg swinging is used to further verify the robustness of the fuzzy CMAC-based adaptive control.
The gravity direction is of interest; thus, scale force control is only applied in the vertical direction, and the control goals of the other two directions are zeroes. The scale force controller is designed as F b = K d F f , where F b is the back interaction force, F f is the sum of the foot interaction force, and the desired scale factor is K d = 5. The lower level controller is the same as Equations (16) and (17) shows. The parameters are set to K 1 = diag(700,700,150), K 2 = diag(155,155,10), The control results of the squat movement are shown in Fig. 5. From Fig. 5a, we can see that the low-level controller tracks the desired trajectories well and that the fuzzy CMAC-based adaptive control has a better dynamic tracking effect than the inverse dynamic control. Fig. 5b shows the effect of the assistance. During the static state (t < 1s), the foot reaction force decreases from 736.6 N down to 113.9 N, and the rest of the body weight is supported by the exoskeleton. During the dynamic squat movement, the response of the inverse dynamic control method without the fuzzy CMAC compensation is somewhat delayed. However, the neural network-based adaptive method can always control the assistance magnification K to 5 with a maximum error of 0.25. This means that the human legs only cost one-sixth of  the effort to achieve the squat movement, which is conform to the scale force control goals. Note that the foot reaction force is affected by both the dynamic movements and the assistance of the exoskeleton; thus, a rapid response ability of the controller is needed.
To show the model uncertainty tolerance of the proposed method, the exoskeleton mass parameters in (13) are selected to be 80% and 120% times as large as the true value in Table. 1. The same parameters of the fuzzy CMAC adaptive scale force control are chosen. The control results are shown in Fig. 6 and 7. Both results indicate that the proposed control method has a robust ability and keeps the scale factor K around the desired set value of 5 with errors between ±0.96.
Considering that the lower limb exoskeleton is mainly used for walking, decoupling the stance leg and the swing leg can greatly simplify the modeling and control of the biped BWS exoskeleton. Thus, a condition of single leg support with the swinging movement of the other leg is used to further research the robust ability (disturbance tolerance) of the fuzzy CMACbased adaptive control. This condition can be regarded as the single leg support period of the walking gait or other complex gaits. The stance leg controller is the same as above. The swing leg can be regarded as disturbance D in (13). The simulation progress is illustrated in Fig. 8. The control results are shown in Fig. 9. With the compensation of the fuzzy CMAC, the tracking errors are below 1.2 × 10 −3 m, 3.06 × 10 −2 m and 2.60 × 10 −2 rad. The scale factor is controlled at approximately 5 with errors between ±0.65. The proposed method applied on the stance leg can still handle the disturbances derived form the swing leg.

V. CONCLUSION
This work proposes fuzzy CMAC-based adaptive scale force control for portable body weight support exoskeletons. The control strategy is a two-layer framework. The high-level controller defines the control target of the system by using scale force control, and the low-level controller has strong robustness with the compensation of the neural network. The proposed control method is task free and has the advantage of decoupling the stance leg and the swing leg. By means of scale force control, the user only requires an adjustable scaled down effort to achieve normal motions, which is especially suitable for lower limb patients and elders. The robot is totally under the wearer's control because the foot reaction force, which is equal to the leg effort, is fully controlled by the user. Squat and single leg standing movement simulations indicate that the proposed method is adequate for providing proper assistance support for users as needed.
In this research, only movements in the sagittal plane are analyzed, and only the vertical direction applies scale force control. Future work includes applying the control method on multidimensional space and making a physical prototype of the exoskeleton.