Keywords

1 Introduction

Stroke is a leading cause of disability in the western society [20]. The European Registers of Stroke study (EROS) reveal that 40% of patients with first-ever strokes had a poor outcome in terms of the Barthel Index (which measures the extent to which somebody can function independently and has mobility in their activities of daily living (ADL) i.e. feeding, bathing, grooming, dressing, etc.) [6]. Because the results of physical therapy for restoring the activities of daily living vary greatly [11], robotic therapy research has shifted towards robotic systems that can be designed for rehabilitation especially in the form of exoskeleton-based robots. Because designing the kinematics of an exoskeleton relies on the replication of the human limb kinematics, certain advantages are observed, such as similarity of the workspaces, singularity avoidance, as described in [14] or one to-one mapping of joint force capabilities over the workspace. However, a major drawback to this paradigm is that human kinematics is impossible to be precisely replicated with a robot, because morphology drastically varies among subjects and joint kinematics is very hard to be reproduced by conventional robot joints [19]. Finding any consensual model of the human kinematics in the biomechanics literature is almost impossible, due to complex geometry of bones interacting surfaces related to human arm anatomy. In [17] an explicit model to predict and interpret constraint force creation has been developed, taking into consideration that deformation at the interface between two kinematic chains is caused by low stiffness of human skin and tissues surrounding the bones. Solutions to cope with this problem can be of two kinds. The first one, as described in [18], consists of making the exoskeleton highly adjustable by creating robotic segments with adjustable length and by adding pneumatic components to introduce elasticity in the robot fixations. The second approach consists of adding passive degrees of freedom to connect the 2 kinematic chains. This was proposed in [10, 13] or [3] among others. There are several commercially available rehabilitation devices for upper limbs, such as the exoskeletons: the Armeopower, the ArmeoSpring and the ArmeoBoom sling suspension system designed by Armeo (Hocoma AG, Switzerland). Other commercial devices are the mPower arm brace (Myomo Inc., Cambridge, MA), a 1 DOF portable arm brace which uses electromyogram (EMG) signals measured from the bicep and triceps muscles to generate assistive torques for elbow flexion/extension, albeit features the disadvantage of flexibility, having just 1 degree of freedom. Other exoskeleton designs having 7 DOF’s are the CADEN-7 and the PERCRO arm [5], that utilize two nonanthropomorphic joints to represent motion of the wrist and fingertips, which greatly improves the replication of human kinematics and movement, but are rather complicated. Other state-of-the-art arms lack one or more of the following aspects: low-backlash gearing [7], back drivable transmissions [8], low-inertia links [1], high stiffness transmissions [2], open mHMIs or physiological ROMs.

Regarding the human rehabilitation of upper limbs, in this paper the authors have proposed a conceptual solution for a medical rehabilitation robotic system that is based on exoskeleton architecture (ReExRob). The ReExRob intends to rehabilitate the upper limb, aiming especially at the achievement of the following motions: the flexion/extension of the elbow, the supination/pronation of the forearm and the extension/flexion and adduction/abduction of the wrist.

2 Kinematic Modelling of a New Robotic Structure

The motion study is extremely important in designing a robotic system for rehabilitation due to the efficiency and safety that such a system targets. The ReExRob [15] conceptual solution is based on an exoskeleton architecture, that is designed for the rehabilitation of the upper limb, especially the mobilization of the elbow and the wrist (the forearm). The targeted motions by the ReExRob are presented in Fig. 1 and they refer to flexion/extension of the elbow, the pronation/supination and adduction/abduction and flexion/extension of the wrist. Figure 1 presents the motions amplitude, indicating the maximum mean ranges for each targeted motion of the upper limb (the patients group age has not been considered), [12]. Regarding the mobilization of the limbs, a series of anchor points have been defined. Figure 2 presents the major anchor points for each motion, where the dotted line represents the active anchor area (which performs the motion) and the continuous line represents the passive anchor area (which remains fixed). It is to note that the active anchor area for the flexion/extension of the elbow becomes the passive anchor area for the wrist motions (flexion/extension and adduction/abduction).

Fig. 1.
figure 1

Motion intervals of the shoulder during flexion/extension (a), pronation/supination (b) and wrist motions (c) [16]

Fig. 2.
figure 2

Motion anchor points for elbow and wrist mobilization: (a) flexion/extension; (b) pronation/supination; (c) wrist flexion/extension; (d) adduction/abduction.

Considering the above aspects, the authors propose the ReExRob robotic system, whose kinematic design is presented in Fig. 3. The 4R robot is built as based on an anthropomorphic structure, having only active rotation joints, each one performing a certain rehabilitation motion (i.e. \( q_{1} \) performs elbow flexion/extension, \( q_{2} \) pronation/supination, \( q_{3} \) the wrist flexion/extension and \( q_{4} \) the wrist adduction/abduction). To simplify the mathematical model, at this stage, the fixed coordinate system \( OXYZ \) has been placed in the middle of the \( R_{1} \) joint. The size parameters of the robot are: \( l_{1} ,l_{2} ,l_{3} ,l_{4} ,l_{5} \). Figure 4 presents the ReExRob 3D model design. Its key features include: the fixing elements, the three anchors: the passive one and the active anchors (2 – for supination/pronation and 3 for the wrist motions). The pronation/supination motion is designed using a spur gear mechanism actuated by Motor 2.

Fig. 3.
figure 3

A kinematic design of the ReExRob robotic system for elbow and wrist mobilization

Fig. 4.
figure 4

ReExRob robotic system kinematic scheme for elbow and wrist mobilization

2.1 Direct Kinematics

The direct kinematics of the ReExRob takes as input data the values of the active joints \( q_{1} ,q_{2} ,q_{3} ,q_{4} \) when \( l_{1} ,l_{2} ,l_{3} ,l_{4} ,l_{5} \) are given and the target is to determine the end-effector coordinates (\( X_{E} ,Y_{E} ,Z_{E} \)) and the Euler angles \( \psi ,\theta \) and \( \phi \), Fig. 1. Kinematic model is summarized in Table 1 to give the expressions from manipulator analysis [4]. Matrix transformations in (1) are used for kinematics analysis.

Table 1. The transformation matrices of ReExRob
$$ \left[ {\begin{array}{*{20}c} {X_{E} } & {Y_{E} } & {Z_{E} } & 1 \\ \end{array} } \right]^{T} = \left[ T \right]_{0}^{1} \cdot \left[ T \right]_{1}^{2} \cdot \left[ T \right]_{2}^{3} \cdot \,\left[ T \right]_{3}^{4} \cdot \,\left[ T \right]_{4}^{5} ; $$
(1)

to

$$ \left\{ {\begin{array}{*{20}l} \begin{aligned} X_{E} = \left( {l_{1} + l_{3} } \right)\cos \left( {q_{1} } \right) + l_{5} \cos \left( {q_{4} } \right)\cos \left( {q_{1} } \right)\cos \left( {q_{3} } \right)\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\, \hfill \\ \,\,\,\,\,\,\,\,\,\,\,\, + l_{5} \cdot \left( {\sin \left( {q_{1} } \right)\sin \left( {q_{2} } \right)\sin \left( {q_{3} } \right) - \cos \left( {q_{2} } \right)\sin \left( {q_{1} } \right)\sin \left( {q_{4} } \right)} \right);\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\, \hfill \\ \end{aligned} \hfill \\ {Y_{E} = l_{5} \left( {\sin \left( {q_{2} } \right)\sin \left( {q_{4} } \right) + \cos \left( {q_{2} } \right)\cos \left( {q_{4} } \right)\sin \left( {q_{3} } \right)} \right);\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,} \hfill \\ \begin{aligned} Z_{E} = \left( {l_{1} + l_{3} } \right)\sin \left( {q_{1} } \right) - l_{5} \cos \left( {q_{4} } \right)\left( {\sin \left( {q_{1} } \right)\cos \left( {q_{3} } \right) - \cos \left( {q_{1} } \right)\sin \left( {q_{2} } \right)\sin \left( {q_{3} } \right)} \right) \hfill \\ \,\,\,\,\, + l_{5} \cos \left( {q_{2} } \right)\cos \left( {q_{1} } \right)\sin \left( {q_{4} } \right);\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\, \hfill \\ \end{aligned} \hfill \\ \end{array} } \right. $$
(2)

with

$$ \cos \left( \theta \right) = \cos \left( {q_{4} } \right)\cos \left( {q_{1} } \right)\cos \left( {q_{2} } \right) - \sin \left( {q_{4} } \right)\left( {\sin \left( {q_{1} } \right)\cos \left( {q_{3} } \right) - \cos \left( {q_{1} } \right)\sin \left( {q_{2} } \right)\sin \left( {q_{3} } \right)} \right) $$
(3)
$$ \cos \left( \psi \right) = - \left( {\sin \left( {q_{4} } \right)\cos \left( {q_{2} } \right)\sin \left( {q_{3} } \right) - \cos \left( {q_{4} } \right)\sin \left( {q_{2} } \right)} \right)/\sin \left( \theta \right) $$
(4)
$$ \cos \left( \phi \right) = - \left( {\sin \left( {q_{1} } \right)\sin \left( {q_{3} } \right) + \cos \left( {q_{1} } \right)\cos \left( {q_{3} } \right)\sin \left( {q_{2} } \right)} \right)/\sin \left( \theta \right) $$
(5)

The coordinates of E, are obtained using (1) and the closed form of these coordinates are shown in (2). The Euler angles \( \psi ,\theta \) and \( \phi \) can be computed using (3)–(5), after applying atan2.

2.2 Inverse Kinematics

The inverse kinematics consists in determining the joint variables \( q_{1} ,q_{2} ,q_{3} ,q_{4} \), when the coordinates \( X_{E} ,Y_{E} ,Z_{E} \) and orientation of the end-effector are given. Usually, for serial robots, this could lead to multiple solutions. Several methods have been used to solve the inverse kinematics of serial robots, like Jacobian pseudoinverse, Jacobian transpose, Jacobian damping and filtering, damped least-squares, gradient projection, task priority, each one with their advantages and disadvantages [9]. For ReExRob, the Jacobian pseudoinverse algorithm has been used and implemented in a numerical procedure to find a solution for the inverse kinematics. In pseudo-code, the algorithm can be described by the expressions:

$$ \begin{aligned} & dXe = {\text{X}}_{\text{E}} \left( {q_{1\_start} ,q_{2\_start} ,q_{3\_start} ,q_{4\_start} } \right) \\ & dYe = {\text{Y}}_{\text{E}} \left( {q_{2\_start} ,q_{3\_start} ,q_{4\_start} } \right) \\ & dZe = {\text{Z}}_{\text{E}} \left( {q_{1\_start} ,q_{2\_start} ,q_{3\_start} ,q_{4\_start} } \right) \\ \end{aligned} $$

with the following steps:

$$ \begin{array}{*{20}l} {{\text{while}}\,\sqrt {\left( {dXe - X_{e\_in} } \right)^{ 2} + \left( {dYe - Y_{e\_in} } \right)^{ 2} + \left( {dZe - Z_{e\_in} } \right)^{ 2} } < c} \hfill \\ {\quad \quad \quad \{ \bullet \,{\text{compute}}\,\,{\text{Jacobian}}\,{\text{J}}} \hfill \\ {\quad \quad \quad \bullet \,{\text{compute}}\,\,{\text{the}}\,{\text{Jacobian}}\,{\text{pseudoinverse}}\,{\text{J}}^{ + } } \hfill \\ {\quad \quad \quad \bullet \,{\text{compute}}\,\,{\text{active}}\,{\text{joint}}\,{\text{values}}\,{\text{dQ }} = {\text{J}}^{ + } \cdot \left[ {\begin{array}{*{20}c} {dXe} & {dYe} & {dZe} \\ \end{array} } \right]^{T} } \hfill \\ {\quad \quad \quad \bullet \,Q = Q +\upalpha \cdot dQ\,\left( {{\text{yielding q}}_{ 1} , {\text{q}}_{ 2} , {\text{q}}_{ 3} , {\text{q}}_{ 4} } \right)} \hfill \\ {\quad \quad \quad \bullet \,dXe = X_{E} \left( {q_{1} ,q_{2} ,q_{3} ,q_{4} } \right);\,dYe = Y_{E} \left( {q_{2} ,q_{3} ,q_{4} } \right);\,dZe = Z_{E} \left( {q_{1} ,q_{2} ,q_{3} ,q_{4} } \right)\} } \hfill \\ \end{array} $$

where \( q_{i\_start} = 0,i = \overline{1,4} \), \( dXe,dYe,dZe \) represents the end-effector current position, \( \alpha \) is a small increment (in this case \( \alpha = 1^{ \circ } \)), \( c \) is an satisfactory chosen error (whose size is related to human arm precision, as for example arm tremor) and \( dX_{e\_in} ,dY_{e\_in} ,dZ_{e\_in} \) is the desired end-effector position. The goal is to determine a convergence to a feasible solution.

3 ReExRob Workspace Analysis

One of the main requirements for ReExRob is to provide a suitable workspace for the elbow and wrist rehabilitation. Figure 5a shows the maximum workspace of the robot in the XZ plane, corresponding to the extension/flexion motion of the elbow. The plot represents the area that can be covered by the patient’s hand during exercising this kind of motion. In a similar way, the workspace that can be provided for the wrist motions is determined and plotted in Figs. 5b and 6a. Figure 5b presents the robot workspace as generated by a motion due to the \( q_{3} \) active joint when the \( q_{2} \) active joint, remains fixed, the wrist motion being in the XY plane (the flexion/extension of the wrist).

Fig. 5.
figure 5

ReExRob workspace for the flexion/extension of the elbow (a) and wrist (b)

Fig. 6.
figure 6

ReExRob workspace for the adduction/abduction motion (a) and the total workspace (b)

Fig. 7.
figure 7

Computed joint motions of ReExRob for elbow flexion/extension and pronation/supination motion: positions, velocities and accelerations of the active joints

Figure 6a shows the amplitude motion for the adduction/abduction motions of the wrist, as obtained for a motion of the \( q_{4} \) active joint, when \( q_{3} \) is kept fixed. Figure 6b shows the isometric view of the whole workspace of the robot, for the full amplitude of each type of motion. The presented workspaces have been generated using the following values for the size parameters: \( l_{1} = 258.3\,{\text{mm}},l_{2} = 83\,{\text{mm}},\, \) \( l_{3} = 35.36\,{\text{mm}},l_{4} = 104.72\,{\text{mm}},l_{5} = 110\,{\text{mm}} \), for an average-size human arm [12].

4 Motion Simulations

In the first phase (or the acute phase) of a post-stroke survivor, rehabilitation is achieved by mobilizing the affected limb, to avoid muscles atrophiation with time and the mobility loss of the joints. ReExRob system has been designed to be used from the very beginning as a rehabilitation tool immediately after stroke. As already mentioned, ReExRob system addresses four types of motions (elbow flexion/extension, pronation/supination, wrist flexion/extensions and adduction/abduction), but some of these motions can be grouped together to increase the efficiency, in a combination of joint motions like: \( q_{1} + q_{2} ,\,q_{1} + q_{3} ,\,q_{2} + q_{3} ,\,q_{1} + q_{4} \), usually without any risk for the patient, if the workspace limits are acknowledged. Based on a study in [12], the maximum values for motion parameters can be assumed as \( v_{\hbox{max} } = 6.5^\circ /{\text{s}} \) and \( \varepsilon_{\hbox{max} } = 6^\circ /{\text{s}}^{2} \). The proposed formulation of kinematic analysis can be used in optimal design procedures and operation simulation to characterize the feasibility of the proposed exoskeleton design. Thus Fig. 6 shows a simulation for the coupled motion of the joints \( q_{1} \) and \( q_{2} \): the patient’s motion starts from the 0 position (for all joints, when the elbow is in the horizontal plane); the patient’s elbow starts a flexion motion upwards (\( q_{1} \) has negative values), up to −45o and simultaneously a supination motion (using \( q_{2} \), which has positive values, up to 81o) is achieved (see the time history diagrams for \( q_{1} \) and \( q_{2} \), while \( q_{3} = q_{4} = 0 \)); after reaching the imposed position, the elbow starts an extension motion up to +83o (yielding a total angle of 128o for \( q_{1} \)), while simultaneously executing a pronation motion using \( q_{2} \). The two generated motions using \( q_{1} \) and \( q_{2} \) have been correlated, so that when \( q_{1} \) reaches to −45o, \( q_{2} \) completely performs the supination motion and when \( q_{1} \) reaches +83o, \( q_{2} \) completely performs the pronation motion. Figure 8 presents the time history diagrams of the end-effector coordinates, based on the imposed motion, including velocities and accelerations. As it is a planar motion, the \( Y_{E} \) coordinate is constant (zero) (Fig. 7).

Fig. 8.
figure 8

The time history diagrams of the end-effector (coordinates \( X_{E} ,Y_{E} ,Z_{E} \)), velocities and accelerations for a simulated rehabilitation exercise

5 Conclusions

The paper presents the design and kinematics of an exoskeleton-based robotic structure. The presented kinematics is useful for operation purposes in rehabilitation motions of post-stroke human arms. The inverse kinematics provides a solution for the joint variables, but since the final configuration is unknown, it will not be used in the robot control. The computed workspace, fulfills the needed range of motion to perform the upper limb rehabilitation. The presented motion simulations have been developed as an example of rehabilitation exercises. As future work, the authors plan to build a prototype for testing and practical implementation.