*2.2. Kinematics*

The kinematic model of the exoskeleton robot is developed by using Denavit–Hartenberg (DH) parameters defined in Table 1, where *L*1 and *L*2 represent the lengths of the upper arm and forearm links, respectively. Based on the DH parameters, the transformation matrix is given by

$$\mathbf{T}\_{i-1,i} = \begin{bmatrix} c\theta\_i & -s\theta\_i c\alpha & s\theta\_i s\alpha\_i & a\_i c\theta\_i \\ s\theta\_i & c\theta\_i c\alpha\_i & -c\theta\_i s\alpha\_i & a\_i s\theta\_i \\ 0 & s\alpha\_i & c\alpha\_i & d\_i \\ 0 & 0 & 0 & 1 \end{bmatrix} \tag{1}$$

where *s* and *c* represent the sine and the cosine functions, respectively.

The forward kinematics is obtained by computing the overall matrix of transformation from the base frame to the wrist


**Table 1.** Denavit–Hartenberg (DH) parameters.

$$\mathbf{T}\_{0,4} = \begin{bmatrix} m\_{11} & m\_{12} & m\_{13} & n\_{14} \\ m\_{21} & m\_{22} & m\_{23} & n\_{24} \\ m\_{31} & m\_{32} & m\_{33} & n\_{34} \\ 0 & 0 & 0 & 1 \end{bmatrix} \tag{2}$$

where all entries are given in the Appendix A.

The inverse kinematics is derived from the transformation matrix (2). The joint angles can be obtained as:

$$\begin{array}{l} \theta\_2 = \pi + \arctan2(n\_{34}, n\_{14})\\ \theta\_3 = \pm \arcsin(\frac{n\_{34}}{L\_2 \sin \theta\_2})\\ \theta\_1 = \frac{\pi}{2} + \frac{1}{2} \arcsin \frac{n\_{14} - n\_{24}}{L\_1 + L\_2 \cos \theta\_3 + L\_2 \cos \theta\_2 \sin \theta\_3} \\ \theta\_4 = \arccos(\frac{m\_{32} \cos \theta\_2 + m\_{34} \cos \theta\_3 \sin \theta\_2}{\cos^2 \theta\_2 - \cos \theta\_3 \sin \theta\_2}) \end{array} \tag{3}$$

#### *2.3. Workspace and Singularity Analysis*

The two most important properties that influence the geometrical design of a robotic exoskeleton are workspace and singularity analysis [28]. The kinematic model is used to analyze the workspace of the human upper limb and exoskeleton robot. Given the position of any point in the workspace, it is important to determine whether it belongs to the actual workspace or not, and helps to verify if at least one solution for the joint angles exists [2]. Therefore, a direct search method is employed to essentially evaluate the existence of an inverse kinematics solution for the human and robotic exoskeleton, shown in Figure 2b,c. The kinematic properties selected for this study are given in Appendix C.

**Figure 2.** Workspace analysis of the 4-DOF upper limb exoskeleton (cyan) within the human arm workspace (red) (measured in meters): (**a**) human–exoskeleton system, (**b**) isotropic view of upper limb exoskeleton and human arm workspace, (**c**) sagittal plane view of upper limb exoskeleton and human arm workspace, (**d**) different configurations of human–exoskeleton system in high manipulability region, (**e**) configurations of human–exoskeleton system in low manipulability region.

Apart from analyzing the reachable workspace, implementation of safe and stable operation is also required due to kinematic singularities within the workspace. Hence, it is necessary to identify all singular configurations while planning trajectories for the robotic exoskeleton. The manipulability ellipsoid and determinant of the Jacobian matrix are the two important indices that characterize the degree of singularity [29]. Our study determines the kinematic performance of the exoskeleton system by analyzing the manipulability index, which gives us information about the low and high manipulability regions, shown in Figure 2d,e.

In the manipulability analysis, we look at the position of the wrist only. Thus, we take Jacobian in the form of

$$\mathbf{J} = \frac{\partial \mathbf{n}}{\partial \theta\_i} = \begin{bmatrix} -n\_{24} + L\_1 c \theta\_1 & -n\_{34} c \theta\_1 & -L\_2 (s \theta\_1 s \theta\_3 + c \theta\_1 c \theta\_2 c \theta\_3) \\ n\_{14} + L\_1 s \theta\_1 & -n\_{34} s \theta\_1 & L\_2 (c \theta\_1 s \theta\_3 - s \theta\_1 c \theta\_2 c \theta\_3) \\ 0 & -L\_2 c \theta\_2 s \theta\_3 & -L\_2 s \theta\_2 c \theta\_3 \end{bmatrix} \tag{4}$$

where *n* = [*<sup>n</sup>*14 *n*24 *<sup>n</sup>*34]*<sup>T</sup>*, *θi* = [*θ*1 *θ*2 *<sup>θ</sup>*3]*<sup>T</sup>*. The manipulability index can be determined after computing the Jacobian as follows:

$$
\mu(\mathbf{J}) = \sqrt{|\mathbf{J}\mathbf{J}^T|}\tag{5}
$$

where *μ* is the manipulability index. Figure 2d,e display different configurations of the human upper limb and exoskeleton system and their corresponding manipulability ellipses in high and low region of manipulability. Moreover, the manipulability analysis gives us information about the uniform distribution of the forces and torques applied by the exoskeleton system to the human upper limb [30]. Another important aspect of analyzing the manipulability ellipse is to identify the singular configuration of the exoskeleton system in the workspace. If the determinant of the Jacobian matrix is zero, the robot encounters singularity or exhibit zero manipulability. Hence, this analysis can be used for the robot path planning where it will try to avoid the low region of manipulability.

#### **3. Exoskeleton Control System**

The control architecture for the upper limb exoskeleton and carbon hand is shown in Figure 3. The control system is implemented in the robotic operating system (ROS), which includes task planning for activities of daily living, a complete path planning for the robotic exoskeleton, computing the inverse kinematics, trajectory generation, and controller design. Furthermore, input control signals are used to perform an ADL while wearing the robotic exoskeleton and carbon hand.

**Figure 3.** An overall system control architecture. The tasks for the activities of daily living (ADL) is predefined. The PD control method is implemented for the individual joint control. A carbon hand developed by SEM glove is adopted to control the hand opening/closing movement (switch on/off control).

The control system consists of four motors, controllers (Maxon EPOS4 Compact 50/8 CAN) and encoders. Moreover, a graphical interface was developed using a combination of PyQt4, Python and ROS that can be used to choose the various types of control modes, tune control parameters, sending high level control commands and real-time logging of data. A CAN bus communication is adopted as the communication method between ROS and Maxon EPOS4.

#### *PD Control Scheme for Upper Limb Exoskeleton Robot*

The dynamic model of an exoskeleton can be derived using the Lagrange formulation and can be expressed by the following equation

$$M(q)\ddot{q} + \mathcal{C}(q, \dot{q})\dot{q} + \tau\_{\mathcal{K}} = \tau \tag{6}$$

where *q* ∈ is a position vector, *<sup>M</sup>*(*q*) is inertia matrix, *<sup>C</sup>*(*q*, *q*˙) represents the Coriolis forces and *τg* is the torque due to gravity. Although we have used the model-free PD/PID control scheme, the dynamic model of the system is still provided in (4) to simulate the dynamic response of the robotic exoskeleton. All entries of the dynamic Equation (4) can be found in Appendix B.

In this article, a PD-based trajectory tracking control problem is investigated, where the joint angle trajectories *q* are bound to track the desired trajectories *qd* (Algorithm 1).

The PD control law can be expressed as:

$$\begin{aligned} \mu &= K\_p \ddot{q} + K\_d \dot{\bar{q}} \\ \dot{\bar{q}} &= \dot{q}\_d - \dot{q} \end{aligned} \tag{7}$$

where *q*˜ = *qd* − *q*. *Kp* and *Kd* are the proportional and differential gains, respectively.

We stabilize the open loop robotic system (6) by using the stability property of the PD control scheme (9) and form a stable closed loop system as follows:

$$\begin{array}{l} \mathcal{M}(q)\ddot{q} + \mathcal{C}(q, \dot{q})\dot{q} + \tau\_{\mathcal{S}} = K\_{P}\ddot{q} + K\_{d}\dot{\bar{q}}\\ \dot{\ddot{q}} = \dot{q}\_{d} - \dot{q} \end{array} \tag{8}$$

The equation can be written in the matrix form as:

$$
\begin{bmatrix}
\dot{\tilde{q}} \\
\ddot{\tilde{q}}
\end{bmatrix} = \begin{bmatrix}
\dot{q}\_d - \dot{\eta} \\
\ddot{\eta}\_d + \frac{1}{M}(\mathbf{C}\dot{\boldsymbol{q}} + \mathbf{g} - \mathbf{K}\_p\ddot{\boldsymbol{q}} - \mathbf{K}\_d\dot{\boldsymbol{\eta}})
\end{bmatrix} \qquad \qquad \dot{\cdot} \colon \ddot{\eta} = \ddot{\eta}\_d - \ddot{\tilde{q}} \tag{9}
$$

#### **Algorithm 1** PD-based trajectory tracking for each joint

**Given:**


**Initialization:**


**Repeat:**


#### **4. Control Implementation in the Upper Limb Exoskeleton and Experimental Evaluation**

The challenge of the human–exoskeleton system lies in its complicated interaction in which the robotic motion is coupled with the human upper limb musculoskeletal system. Thus, we have selected joint angle trajectories to evaluate the system's performance, which helps us to analyze the influence of the kinematic/kinematic properties of the human– exoskeleton system for different manipulation activities. In this section, a model-free PDbased trajectory tracking is implemented to demonstrate the performance of the wheelchair exoskeleton. The architecture of the control scheme is presented in Figure 3.

In our study, we selected two tasks to evaluate the effectiveness of using a wheelchair exoskeleton, shown in Figures 4 and 5. Several positions in the task space were preliminarily

defined via human demonstration, and the trajectories were generated in the joint space corresponding to each task. Sixteen trials were recorded from the two subjects for each task, where they were instructed to sit in the wheelchair by wearing the exoskeleton and forced to follow the desired joint angle trajectories, shown in Figure 6. The joint angle trajectories were recorded, and the whole system was evaluated upon the tracking performance of all joints represented by the root mean square (RMSE) value from the 16 trials shown in Figure 7. The detailed statistics representing the human–exoskeleton system's performance are listed in Table 2. For the normal drinking task, it was noted that the human–exoskeleton system was able to satisfactorily track the reference trajectories and shown average RMSE values of 0.0247 rad, 0.0210 rad, and 0.0207 rad for the three joints, respectively. Moreover, the variation in the RMSE values among the 16 trials was also in the acceptable range, i.e., 0.0184 rad, 0.0027 rad, and 0.0071 rad for all three joints, which shows that the human–exoskeleton was able to perform the task during different trials satisfactorily.

**Figure 4.** Demonstration of normal drinking task: (**a**) initial position *t* = 0 s, (**b**) exoskeleton moves to the grasping position *t* = 11 s, (**c**) the drinking position *t* = 31 s, (**d**) drop the bottle to the table *t* = 51 s, (**e**) ge<sup>t</sup> back to the initial position *t* = 72 s.

**Figure 5.** Demonstration of an object picking-up task: (**a**) initial position *t* = 0 s, (**b**) moving over the target *t* = 8 s, (**c**) exoskeleton moves to a grasping position and hold the object *t* = 16 s, (**d**) pick the object up *t* = 24 s, (**e**) ge<sup>t</sup> back to the initial position *t* = 42 s.

**Figure 6.** Exoskeleton's trajectory tracking control performance assessment for two different ADL. (**a**) PD-based trajectory tracking controls for drinking task. (**b**) PD-based trajectory tracking control for an object picking-up task.


**Table 2.** Statistical analysis of PD control method using RMSE value for the performance assessment of the wheelchair exoskeleton.

The robotic system and the control algorithms can be designed to fulfil the requirement for a particular task, but sometimes it is hard to achieve generality. Thus, to maximize the functional reliability of the presented system, we selected a second task to evaluate the system's performance, shown in Figure 5. It is noted that the tracking performance of the shoulder joint was reduced, while the tracking accuracy of Joint 2 and Joint 3 was increased compared to the normal drinking task, shown in Figure 7. In general, the variation in the RMSE values among the 16 trials was in an acceptable range, i.e., 0.0079 rad, 0.0024 rad, and 0.0062 rad for all three joints.

**Figure 7.** Bar diagram of the RMSE with variance from 16 trials for each task.

## **5. Discussion**

Table 2 summarizes the results of two experiments and presents a statistical analysis of the joint trajectories to demonstrate the effectiveness of using an exoskeleton system for basic ADLs. The data illustrated in Figure 7 show the variations in mean RMSE values among two tasks in joint space. Several parameters, such as mechanism design, mode of actuation, selection of control method to accommodate variations in payload, and human anthropomorphic parameters, may influence the functional reliability of the human–exoskeleton system.

Implementation of a basic PD control method without gravity compensation/human arm weight compensation and a backdrivability of shoulder mechanism had made it difficult to achieve a more precise control compared to the other joint mechanisms. Therefore, average RMSE values for the shoulder joint were comparatively higher than the other two joints. Teng et al. [1] implemented a PD control with gravity compensation and analyzed the effect of uncertain dynamics and external disturbances on the human–exoskeleton system. Data presented in [1,31,32] have shown that the performance of an exoskeleton driving human shoulder joint was comparatively lower than the elbow joint exoskeleton because the gravity torque induced by variable payload and human arm weight may affect

the relative precision. Alternatively, the C-ring and worm gear mechanisms responsible for supporting a human shoulder joint rotation and elbow joint movements take advantage of a large reduction ratio. The design also facilitates holding the output position without energy consumption because of its non-backdrivability. Moreover, the two joints are relatively less affected by the variation in the payload and upper limb anatomy as can be seen from error bar diagram presented in Figure 7. Deyby et al. [12] presented a similar mechanism and analyzed the position and orientation synchronization between the human upper limb and exoskeleton.

The study demonstrates that the exoskeleton presented is applicable for motion assistance of physically impaired people in their ADLs. In our future work, we will extend this study to clinically evaluate the system to examine comfort, patient acceptance, and functional use of the system with severe to moderate upper limb impairment. We will look into more advanced control methods to compensate for ill effects caused by uncertain dynamics and external disturbances and study their implications for assistive applications. Manipulability/singularity free workspace is another important factor that should be considered during the path planning of an exoskeleton robot. Future work will focus on developing a method to optimize the exoskeleton's trajectory in the task space and attempt to maximize likelihood of manipulation in the high manipulability region; thereby, it guarantees uniform distribution of forces and the torques and improves the physical human–robot interaction.
