Mechanical Design and Kinematic Modeling of a Cable-Driven Arm Exoskeleton Incorporating Inaccurate Human Limb Anthropomorphic Parameters

Compared with conventional exoskeletons with rigid links, cable-driven upper-limb exoskeletons are light weight and have simple structures. However, cable-driven exoskeletons rely heavily on the human skeletal system for support. Kinematic modeling and control thus becomes very challenging due to inaccurate anthropomorphic parameters and flexible attachments. In this paper, the mechanical design of a cable-driven arm rehabilitation exoskeleton is proposed to accommodate human limbs of different sizes and shapes. A novel arm cuff able to adapt to the contours of human upper limbs is designed. This has given rise to an exoskeleton which reduces the uncertainties caused by instabilities between the exoskeleton and the human arm. A kinematic model of the exoskeleton is further developed by considering the inaccuracies of human-arm skeleton kinematics and attachment errors of the exoskeleton. A parameter identification method is used to improve the accuracy of the kinematic model. The developed kinematic model is finally tested with a primary experiment with an exoskeleton prototype.


Introduction
Robot-assisted motion training for stroke patients is being widely applied in physical therapies; the approach has several advantages over the traditional motion training which is conducted by therapists. A rehabilitation robot can offer intensive and repetitive, long-duration motion training. An exoskeleton for upper-limb rehabilitation can be worn on the human arm and can provide the required torque on human arm joints for motion training. For these reasons, this approach has received a great amount of attention in recent years.
Based on their configurations, exoskeletons can be divided into two categories: serial [1][2][3] and parallel [4][5][6]. In serial exoskeletons, the actuators are mounted onto the joints of serial linkages. This requires alignment between the exoskeleton joints and human joints for motion training safety [7][8][9]. To overcome this limitation, some mechanisms which can realize joint alignment were designed in [10][11][12][13][14][15]. The ASSISTON utilizes a 3-RRP parallel mechanism, a Schmidt coupler, and so on to achieve joint axes adjustments [11][12][13]. In [14], Thalagala et al. designed a six-degrees-of-freedom (6-DOFs) shoulder joint mechanism which allows the user to move his/her shoulder joint center in the frontal and transverse planes. However, as redundant joints are required to avoid misalignments between straight due to the arm bones; this leads to misalignments between the human limb and the exoskeleton joints axes. In the circumferential direction, the arm has an irregular surface due to the presence of muscles. The arm transverses are not circular or elliptical, but have all kinds of dimensions. Therefore, a wearable exoskeleton should have the capacity to adjust to these variable dimensions.

Mechanical Design
The cable-driven arm rehabilitation exoskeleton system is shown in Figure 1. As can be seen, the user is sitting in a chair while wearing the exoskeleton. A binding vest fixing the subject body to the chair was used in an attempt to increase the stability of the motion training. The exoskeleton is mounted onto the user's upper limb through the use of three cuffs, namely, a base cuff, upper-arm cuff, and forearm cuff, which allow to provide high force and torques in rehabilitation motion training. The exoskeleton shown in Figure 1 is used for motion training of the shoulder and elbow joints. The exoskeleton can thus be divided into two independent modules, e.g., 3-DOFs shoulder module and 1-DOF elbow module, as shown in Figure 2. The 3-DOFs shoulder module shown in Figure 2a consists of base cuff and an upper-arm cuff. The base cuff is mounted onto the base frame, while the upper-arm cuff is fastened to the human upper-arm. In the shoulder module, the upper-arm cuff can be considered as a moving platform [27][28][29][30] which rotates around the human shoulder joint. The 1-DOF elbow module shown in Figure 2b consists of an upper-arm and a forearm cuff. The forearm cuff is fastened to the human forearm. The forearm cuff is the moving platform which can rotate around the elbow joint. In the exoskeleton, six cables are routed from DC motors (model: Maxon RE35) mounted on the based frame to the upper-arm and forearm cuffs through Bowden cables The exoskeleton shown in Figure 1 is used for motion training of the shoulder and elbow joints. The exoskeleton can thus be divided into two independent modules, e.g., 3-DOFs shoulder module and 1-DOF elbow module, as shown in Figure 2. The 3-DOFs shoulder module shown in Figure 2a consists of base cuff and an upper-arm cuff. The base cuff is mounted onto the base frame, while the upper-arm cuff is fastened to the human upper-arm. In the shoulder module, the upper-arm cuff can be considered as a moving platform [27][28][29][30] which rotates around the human shoulder joint. The 1-DOF elbow module shown in Figure 2b consists of an upper-arm and a forearm cuff. The forearm cuff is fastened to the human forearm. The forearm cuff is the moving platform which can rotate around the elbow joint. In the exoskeleton, six cables are routed from DC motors (model: Maxon RE35) mounted on the based frame to the upper-arm and forearm cuffs through Bowden cables  In the diagram, local frames, , , and are located on the center of the shoulder joint, the center of the elbow joint, and the attachment point between the forearm cuff and human forearm, respectively; the global frame is located at the center point of base cuff.
In the exoskeleton, the design of the cuffs was developed based on the requirements of human comfort and the stability of the exoskeleton structure. Figure 3 shows the CAD model of the cuff. As shown in the figure, the cuff has a two-stage structure. The inner stage is made of a flexible silicon shell and can be fitted closely to the arm skin. The inner stage with flexible material can uniformly distribute the preload and pulling force on the arm skin surface generated from the cable tensions. The outside stage is designed with a rigid aluminum frame which can provide connecting points for the cables. Ensuring a firm attachment between the cuff and the human arm segment is important for the design of the cuff. In the cuff design, three sets of parallel mechanisms are applied to connect the inner and outside stages together. The parallel mechanism for exoskeleton assembly adjustment is designed based on an analysis of the irregular contours of the arm. It is intended to decrease the number of misalignments between the exoskeleton and the arm through adjusting the central axis of the exoskeleton to coincide with the arm. A schematic diagram of the parallel mechanism is shown in Figure 3b. The mechanism consists of three two-leg chain which can adjust assembly errors in their direction. Each two-leg chain has a configuration of U (universal joint), T (translational joint), S (spherical joint), and R (rotational joint), and can also be regarded as a parallel chain that consists of two U-T-S chains connected together by the R joint. Basically, the T joint is actuated manually to adjust the error in the circumferential direction and the R joint serves to fit the arm structure irregularity passively in the longitudinal direction.  In the exoskeleton, the design of the cuffs was developed based on the requirements of human comfort and the stability of the exoskeleton structure. Figure 3 shows the CAD model of the cuff. As shown in the figure, the cuff has a two-stage structure. The inner stage is made of a flexible silicon shell and can be fitted closely to the arm skin. The inner stage with flexible material can uniformly distribute the preload and pulling force on the arm skin surface generated from the cable tensions. The outside stage is designed with a rigid aluminum frame which can provide connecting points for the cables. Ensuring a firm attachment between the cuff and the human arm segment is important for the design of the cuff. In the cuff design, three sets of parallel mechanisms are applied to connect the inner and outside stages together. The parallel mechanism for exoskeleton assembly adjustment is designed based on an analysis of the irregular contours of the arm. It is intended to decrease the number of misalignments between the exoskeleton and the arm through adjusting the central axis of the exoskeleton to coincide with the arm. A schematic diagram of the parallel mechanism is shown in Figure 3b. The mechanism consists of three two-leg chain which can adjust assembly errors in their direction. Each two-leg chain has a configuration of U (universal joint), T (translational joint), S (spherical joint), and R (rotational joint), and can also be regarded as a parallel chain that consists of two U-T-S chains connected together by the R joint. Basically, the T joint is actuated manually to adjust the error in the circumferential direction and the R joint serves to fit the arm structure irregularity passively in the longitudinal direction. In the exoskeleton, the design of the cuffs was developed based on the requirements of human comfort and the stability of the exoskeleton structure. Figure 3 shows the CAD model of the cuff. As shown in the figure, the cuff has a two-stage structure. The inner stage is made of a flexible silicon shell and can be fitted closely to the arm skin. The inner stage with flexible material can uniformly distribute the preload and pulling force on the arm skin surface generated from the cable tensions. The outside stage is designed with a rigid aluminum frame which can provide connecting points for the cables. Ensuring a firm attachment between the cuff and the human arm segment is important for the design of the cuff. In the cuff design, three sets of parallel mechanisms are applied to connect the inner and outside stages together. The parallel mechanism for exoskeleton assembly adjustment is designed based on an analysis of the irregular contours of the arm. It is intended to decrease the number of misalignments between the exoskeleton and the arm through adjusting the central axis of the exoskeleton to coincide with the arm. A schematic diagram of the parallel mechanism is shown in Figure 3b. The mechanism consists of three two-leg chain which can adjust assembly errors in their direction. Each two-leg chain has a configuration of U (universal joint), T (translational joint), S (spherical joint), and R (rotational joint), and can also be regarded as a parallel chain that consists of two U-T-S chains connected together by the R joint. Basically, the T joint is actuated manually to adjust the error in the circumferential direction and the R joint serves to fit the arm structure irregularity passively in the longitudinal direction.

Kinematic Modeling
A kinematics analysis of the exoskeleton system can be divided into two parts, i.e., the kinematics of the human arm skeleton and the kinematics of the cable-driven modules.
(1) Kinematics of human arm skeleton: The arm skeleton can be regarded as a serial open-chain mechanism. In Figure 2, the screw coordinates of the four arm joints in the global frame {O G } are denoted as s i ∈ R 6×1 (i = 1, · · · , 4). The joint rotations are denoted as q i . According to the POE formula, the nominal end pose g O G O 2 can be obtained as: It should be noted that the irregular structure of the upper limb joints gives rise to position deviations of screw coordinates s i ∈ R 6×1 (i = 1, · · · , 4). Herein, the deviation between the frame {O G } and frame {O 0 } caused by shoulder joint center motion is denoted as δP S , while that between the frame {O 0 } and frame {O 1 } caused by elbow joint center motion is denoted as δP E . The effects of δP S and δP E on the homogeneous transformation matrices between the frames {O G }, {O 0 } and {O 1 } can be written as: Taking Equation (2) into consideration, Equation (1) is modified as (2) Kinematics of cable-driven modules: In Figure 2, the shoulder and elbow modules can be regarded as cable-driven parallel platforms, in which the moving platforms rotates around the shoulder and elbow joints relative to the base platform. Based on the cable-routing structure, the kinematics of the human arm skeleton and the attachment positions of the exoskeleton on the upper limb, the kinematic relationship between the human arm joint rotations and the motor outputs can be determined.
In the shoulder module, the cable lengths are obtained as: . denotes the positions of the cable-routing points of the base With this in mind, the numbers of cables used in the shoulder and elbow modules are represented by m and n.
The cable lengths in the elbow module are obtained as:  (4) and (5), O 0 P Bi , O 1 P Ui , and O 2 P Fi change as the exoskeleton moves, due to the floating shoulder joint center and flexible attachment of the exoskeleton to the upper limb. Taking the motion of shoulder joint center P s and attachment errors P U and P F of the upper-arm and forearm cuffs into consideration, the positions of the cable routing points are modified as: where O 0 P Bi , O 1 P Ui , and O 2 P Fi are the nominal attachment positions in the base, upper-arm, and forearm cuffs, respectively.
The lengths of the cables in the shoulder and elbow modules, l s i , i = 1, · · · , m and l E i , i = m − n + 1, . . . , m, can be obtained using the inputs of the motor rotations, θ i , i = 1, · · · , m, which are given by: where 0 l S i and 0 l E i represent the initial cable lengths in the shoulder and elbow modules, respectively, and r i , i = 1, · · · , m are the radii of winches which are directly installed along the motors.
Based on Equations (2), (3), and (5), the kinematics of the shoulder and elbow modules can be determined as:

Kinematic Identification
In the kinematic model, uncertain parameters have effects on the accuracy and robustness of the model. In this paper, a model based method which was used in our previous works [20,21] helped us to identify these uncertain parameters.
In the kinematics Equations (8), the uncertain parameters are the following: P U , P F , P S , P E , 0 l S i , and 0 l E i . The identification model can thus be obtained by differentiating Equation (6) about uncertain parameters and the inputs θ i of exoskeleton system, as follows: where P = [P S ; P E ], O = [P U ; P F ], 0 l i = 0 l S i ; 0 l E i . Expressing Equation (9) in the matrix form, we get The least-square solution of the Equation (10) about δY is where pinv(J) is the pseudo-inverse of J. Finally, the iteration method for the identification of uncertain parameters shown in Figure 4 is used to find solutions for the identification model. In this method, the deviations, δX, between the nominal rotation and real rotation angles of the motors are the inputs, while the deviations of uncertain parameters δY between w and w+1 iteration steps are defined as the outputs. As shown in Figure 4, the iteration is repeated until the output satisfies the stopping criterion The estimated values of uncertain parameters are updated using With the estimated values, the kinematic model of the exoskeleton can be updated.
where ( ) is the pseudo-inverse of .
Finally, the iteration method for the identification of uncertain parameters shown in Figure 4 is used to find solutions for the identification model. In this method, the deviations, , between the nominal rotation and real rotation angles of the motors are the inputs, while the deviations of uncertain parameters between w and w+1 iteration steps are defined as the outputs. As shown in Figure 4, the iteration is repeated until the output satisfies the stopping criterion 1 + 12 ( ) The estimated values of uncertain parameters are updated using With the estimated values, the kinematic model of the exoskeleton can be updated.   Note that the identification model contains m equations but has m + 12 unknown parameters. To find the solution for the identification model, at least num ≥ (m + 12)/m sets of data from the sensors are required.
A simulation model of the exoskeleton was developed in MATLAB to test the identification method. In the simulation, the rotation angles θ = [θ 1 , . . . , θ 6 ] of the motors and limb orientations R = O 0 R O 1 , O 0 R O 2 were acquired from the simulation model in MATLAB. Ten sets of data of θ and R were used in the simulation. The stopping criterion ε was set as 0.1.
The simulation results are depicted in Figure 5. We can see that after 8 iterations, the error was smaller than the defined value of the stopping criterion, demonstrating the convergence of the identification method. The elapsed time in MATLAB was 0.129 s. We can further use the identification method in our experimental study.

Experiments
In this section, the effectiveness of the method of identification of uncertain parameters in a practical application is verified through experiments on a cable-driven exoskeleton prototype, as shown in Figure 6.  In the experiments, the subjects were asked to wear the exoskeleton and sit on a chair. The task was to move their right upper limbs to track a line path four times. The line path is shown in Figure 6. In the task, the exoskeleton system worked in the human-in-charge mode, in which the cables were controlled at a constant tension of 20 N. With load cells (model: Forsentek FS01-10kg), a PID force feedback controller was applied to control the motors in order to allow the cables to follow the desired tension. In the task, 500 sets of

Experiments
In this section, the effectiveness of the method of identification of uncertain parameters in a practical application is verified through experiments on a cable-driven exoskeleton prototype, as shown in Figure 6.

Experiments
In this section, the effectiveness of the method of identification of uncertain parameters in a practical application is verified through experiments on a cable-driven exoskeleton prototype, as shown in Figure 6.

Experiment Setup
In In the experiments, the subjects were asked to wear the exoskeleton and sit on a chair. The task was to move their right upper limbs to track a line path four times. The line path is shown in Figure 6. In the task, the exoskeleton system worked in the human-in-charge mode, in which the cables were controlled at a constant tension of 20 N. With load cells (model: Forsentek FS01-10kg), a PID force feedback controller was applied to

Experiment Setup
In the exoskeleton system, rotations θ = [θ 1 , . . . , θ 6 ] of the motors were acquired using encoders (model: HEDL-5540) which are connected in series with the motors. Two inertial measuring units (model: HiPUNC HI21X) mounted on the upper-arm and forearm cuffs were used to measure the orientations R = O 0 R O 1 , O 0 R O 2 of the upper and forearm limbs. θ and R, acquired from the exoskeleton system in the real world, are used as the inputs for the identification of uncertain parameters. Two subjects, namely A and B, participated in the experiments. In the experiments, the subjects were asked to wear the exoskeleton and sit on a chair. The task was to move their right upper limbs to track a line path four times. The line path is shown in Figure 6. In the task, the exoskeleton system worked in the human-in-charge mode, in which the cables were controlled at a constant tension of 20 N. With load cells (model: Forsentek FS01-10kg), a PID force feedback controller was applied to control the motors in order to allow the cables to follow the desired tension. In the task, 500 sets of measurement data from the sensors of the exoskeleton system were acquired, and every 10 sets of data were used for the identification of uncertain parameters. Thus, 50 kinematic models of the system could be obtained.
To verify the accuracy of the kinematic models with identified parameters, a Nokov motion capture system was used, as shown in Figure 6. In the motion capture system, a marker was mounted onto the hand of the subjects to measure their tracking results in the experiments. Fourteen markers were mounted onto the cable-routing points of the cuffs to capture changes in the lengths of the cables in the exoskeleton in the tracking task. A marker mounted on the subject's shoulder joint recorded the movement of the joint center. Noting that as the Nokov system captures motion with sub-millimeter accuracy, the measurements can be considered as the real results in this work. The captured results can be compared with the identified results to validate the accuracy of the kinematic model. Figure 7 shows the tracking results of the subjects. As shown in the figure, the tracking results are close to the predefined trajectory. In the tracking task, the exoskeleton system runs stably, and the data acquired from the encoders and inertial measuring units can be used in the identification of uncertain parameters. Tables 1 and 2 show the identified results for Subjects A and B, respectively. In the tables, the identified results are represented by the mean and root mean squared error (RMS error). As shown in Tables 1 and 2, the uncertain parameters in the kinematic model fluctuate significantly as upper limb moves. Kinematic models with these identified parameters can be used to calculate changes of the cable length in the exoskeleton. The calculated results were further compared with the results acquired from motion capture system to validate the kinematic models. To verify the accuracy of the kinematic models with identified parameters, a Nokov motion capture system was used, as shown in Figure 6. In the motion capture system, a marker was mounted onto the hand of the subjects to measure their tracking results in the experiments. Fourteen markers were mounted onto the cable-routing points of the cuffs to capture changes in the lengths of the cables in the exoskeleton in the tracking task. A marker mounted on the subject's shoulder joint recorded the movement of the joint center. Noting that as the Nokov system captures motion with submillimeter accuracy, the measurements can be considered as the real results in this work. The captured results can be compared with the identified results to validate the accuracy of the kinematic model. Figure 7 shows the tracking results of the subjects. As shown in the figure, the tracking results are close to the predefined trajectory. In the tracking task, the exoskeleton system runs stably, and the data acquired from the encoders and inertial measuring units can be used in the identification of uncertain parameters. Tables 1 and 2 show the identified results for Subjects A and B, respectively. In the tables, the identified results are represented by the mean and root mean squared error (RMS error). As shown in Tables 1 and 2, the uncertain parameters in the kinematic model fluctuate significantly as upper limb moves. Kinematic models with these identified parameters can be used to calculate changes of the cable length in the exoskeleton. The calculated results were further compared with the results acquired from motion capture system to validate the kinematic models.      Figure 8 shows the changes of cables lengths in the 4th experiment for Subject A. As shown in the figure, the results calculated from the kinematic model with identification fit the results acquired from the motion capture system better than that without identification. The RMS errors between the captured results and the identified/unidentified results for both Subject A and Subject B are summarized in Table 3. The results indicate that the kinematic model can be improved effectively through the identification of uncertain parameters.

Experiment Results
Sensors 2019, 19, x FOR PEER REVIEW 10 of 13 Figure 8 shows the changes of cables lengths in the 4th experiment for Subject A. As shown in the figure, the results calculated from the kinematic model with identification fit the results acquired from the motion capture system better than that without identification. The RMS errors between the captured results and the identified/unidentified results for both Subject A and Subject B are summarized in Table 3. The results indicate that the kinematic model can be improved effectively through the identification of uncertain parameters.     Figure 9 shows the variations of the position of the human shoulder joint center as the limb moves; the green solid curves denote the results measured from the motion capture system, and the blue curves denote the identified results of parameter P S . As shown in the figure, the results of P S are generally in accordance with those measured from the motion capture system, showing a good predictive ability of the movement of the human shoulder joint.

Conclusions
The major accomplishment of this paper is the mechanical design of a cable-driven arm rehabilitation exoskeleton with a new, custom-designed arm cuff. The new arm cuff shows good adaptability to the human arm, and can reduce uncertainties caused by instabilities between the exoskeleton and the human arm. Another major feature is the kinematic modelling of the exoskeleton. Uncertainties from the inaccuracy of human-arm skeleton kinematics and wearing errors of the exoskeleton are considered. An error model is built, with which an iteration method is used to identify uncertain parameters. A primary experiment on the prototype is carried out to demonstrate the improvements of the model. In future work, the improved kinematic model will be used in the motion control of the exoskeleton.

Conclusions
The major accomplishment of this paper is the mechanical design of a cable-driven arm rehabilitation exoskeleton with a new, custom-designed arm cuff. The new arm cuff shows good adaptability to the human arm, and can reduce uncertainties caused by instabilities between the exoskeleton and the human arm. Another major feature is the kinematic modelling of the exoskeleton. Uncertainties from the inaccuracy of human-arm skeleton kinematics and wearing errors of the exoskeleton are considered. An error model is built, with which an iteration method is used to identify uncertain parameters. A primary experiment on the prototype is carried out to demonstrate the improvements of the model. In future work, the improved kinematic model will be used in the motion control of the exoskeleton.

Conflicts of Interest:
The authors declare no conflict of interest.