J L Ramírez

A Rubiano
email: astrid.rubiano@unimilitar.edu.co

N Jouandeau

L Gallimard

O Polit

Morphological optimization of prosthesis' finger for precision grasping

Keywords: Morphological optimization, mechanisms prehension, precision grasping, soft robotic

In this paper, we present the morphological optimization of our tendon driven underactuated robotic hand prosthesis' finger, to improve precision grasping. The optimization process is performed with a black box optimizer that considers simultaneously kinematic and dynamic constraints. The kinematic is computed with the Denhavit-Hartenberg parameterization modified by Khalil and Kleinfinger and the dynamic is computed from the virtual displacements and the virtual works. All these constraints are considered as a fitness function to evaluate the best morphological configuration of the finger. This approach gives a way to introduce and improve soft and flexible considerations for the grasping robots such as hands and grippers. Theoretical and experimental results show that flexible links combined with morphological optimization, lead in more precise grasping. The results of the optimization, show us an important improvement related to size, torque and consequently energy consumption.

Introduction

Frequently, robots are designed as rigid structures, but recently some works have shown that the use of flexible bodies, actuators, and sensors could improve considerably the performance of the robots to interact with the environment, this kind of robots is known as soft robots. Soft robotic [START_REF] Nurzaman | Soft robotics [tc spotlight[END_REF] systems could be able to improve grasping and manipulation, because they use: (i) elastic and deformable bodies, (ii) unconventional materials (like smart materials, shape memory alloy [START_REF] Andrianesis | Design of an innovative prosthetic hand with compact shape memory alloy actuators[END_REF], i.a.) and (iii) high number of degrees of freedom.

In this context, the University of Bologna developed the UB-HAND IV, also called DEXMART Hand [START_REF] Palli | Development of robotic hands: The ub hand evolution[END_REF]. The hand is based on an endoskeletal structure articulated via pin joints, the actuators are located remotely with tendon-based transmissions, it has a soft cover and the mechanical structure of the hand was manufactured using additive technologies [START_REF] Ficuciello | Postural synergies of the {UB} hand {IV} for human-like grasping[END_REF].

With the aim of building a robust and safe hand the University of Pisa and the Advanced Robotics Department of the Italian Institute of Technology in Genoa pro-posed the Pisa-IIT Soft Hand. This hand incorporated traditional and rolling contact joints with elastic ligaments. The rolling contact joints ensure a correct motion while the hand is actuated. In case of impacts, these joints provide an easy disengage and allow deformations. The hand has a single tendon, passing through all the joints simultaneously. The tendon produces flexion-extension and adduction-abduction of the fingers during the actuation [START_REF] Ajoudani | Teleimpedance control of a synergy-driven anthropomorphic hand[END_REF].

Consequently, an important tool named Mooveit! [START_REF] Chitta | Moveit! [ros topics[END_REF] incorporates the latest advances in motion planning, manipulation, control and navigation of arms, grippers and hands i.a. Even if the tool is designed for rigid robots it constitutes an interesting approach.

The consideration of a tendon driven under-actuated mechanisms, flexible links and soft articulations in kinematics chains, introduces the necessity of optimal analysis of the morphological parameters. In this domain, one important development is presented by Jouandeau [START_REF] Jouandeau | Enhancing humanoids walking skills through morphogenesis evolution method[END_REF], which is related to "Enhancing Humanoids Walking Skills through Morphogenesis Evolution Method", in that work the optimization was performed using confident local optimization for noisy black-box parameter tuning (CLOP) [START_REF] Coulom | Clop: Confident local optimization for noisyblack-box parameter tuning[END_REF].

Based on our first prototype, we observe that an optimization of the finger lengths is wide important to increase the precision and reduce the torque requirements. Consequently, considering that the target of our robotic hand is the precision grasping, we begin the design process with the optimization of the finger that is the key element of the robotic hand.

Therefore, in this paper we propose the application of CLOP to improve the performance of our tendon driven finger, during the precision grasping. Our approach is to use the mathematical model of the kinematic (based on the Denhavit-Hartenberg parameterization modified by Khalil and Kleinfinger) and dynamics (based on the virtual displacements and virtual works) as the fitness function to evaluate the best morphological configuration of the finger. This approach gives a way to introduce and improve soft and flexible considerations for the grasping robots such as hands and grippers.

2 Kinematic and dynamic modelling of the robotic hand prosthesis' finger

Description of the robotic hand prosthesis' finger

Our approach is a bio-inspired tendon-driven finger composed of three joints, the metacarpophalangeal (MP), the proximal interphalangeal (PIP) and the distal interphalangeal (DIP). The MP joint has two degrees of freedom (DoF); one rotation (to perform flexion-extension), and one passive translation that allows the vertical alignment of the joint with the motor axis. The PIP and DIP joints have one DoF to perform flexion and extension.

The finger is under-actuated, so it is controlled by only one servo motor. The drive mechanism uses two tendons for transmitting motion to the finger, one tendon flex the finger and the other extend the finger. Considering that the tendons are attached to the motor pulley and the fingertip, as shown in Fig. 1, the clockwise rotation of the servo motor causes a flexion, and the anticlockwise rotation produce an extension. Due to the under actuation the rotation angles of the PIP (θ 35 ) and DIP (θ 36 ) joints are linked with the rotation angle of MP (θ 33 ) joint. The relation between angle is given as θ 35 = 0.23θ 33 and θ 36 = 0.72θ 33 , where θ 33 is the MP joint angle, θ 35 is the PIP joint angle and θ 36 is the DIP joint angle. The kinematic and the dynamic modeling are presented in the following subsections. For the kinematics, the Denhavit-Hartenberg parameterization modified by Khalil and Kleinfinger (DHKK) is used and for the dynamics we use the virtual displacements and virtual works approach. The equivalent mechanical model of the finger is shown in Fig. 2a for the kinematic and in Fig. 2b In Fig. 2a, the parameters l 32 , l 33 and l 34 are the lengths of the proximal, medial and distal phalanges respectively. The angles θ 33 , θ 34 , θ 35 and θ 36 correspond to MP, PIP and DIP joints rotations. The frameworks (x 33 , y 33 , z 33 ) and (x 34 , y 34 , z 34 ) are associated to the MP joint. The framework (x 35 , y 35 , z 35 ) is associated to the PIP joint and the framework (x 36 , y 36 , z 36 ) associated to the DIP joint. The framework (x f , y f , z f ) corresponds to the fingertip position. In the same way, in Fig. 2b, w 32 , w 33 and w 34 are the weights of the proximal, medial and distal phalanges respectively, and are placed in the points (x 33 , y 33 ), (x 35 , y 35 ) and (x 36 , y 36 ). F r is the applied force that is equivalent to the reaction force.

Kinematic model of the robotic hand prosthesis' finger

To propose a method to model the kinematic of our robotic hand prosthesis' finger, we use the DHKK. This convention, allows the representation of open-loop and close-loop kinematic chains, and presents a convenient definition of:

• The rotation axis z i of each i -th joint • The angle of rotation θ i around z i • The rotation α i around x i-1 • The distance a i along of x i-1 • The distance d i along of z i
These parameters θ i , α i , a i and d i are known as DHKK parameters, and are calculated for each joint M i with coordinates (x i , y i , z i ), in Fig. 3 a graphical representation of these DHKK parameters is presented. The rotations are performed using the transformation matrix shown in Eq. (1) [START_REF] Harada | Multiple sweeping using quaternion operations[END_REF].

i-1 T i =     cos θ i sin θ i 0 a i sin θ i cos α i cos θ i cos α i sin α i sin α i d i sin θ i sin α i cos θ i sin α i cos α i cos α i d i 0 0 0 1     (1)
𝑎 𝑖 𝑥 𝑖 𝛼 𝑖 𝑑 𝑖 𝜃 𝑖 𝑀 𝑖-1 𝑀 𝑖 𝑃 𝑖-1 ′ 𝑃 𝑖 ′ 𝑃 𝑖-1

Fig. 3: Graphical representation of DHKK parameters

Consequently, the kinematics of a robot composed of n joints is the matrix 0 T n , which is a composition of the 3 × 3 orientation matrix 0 n R, and the position vector [ 0 P x n , 0 P y n , 0 P z n ] T , as shown in the following expression:

0 T n = n ∏ i=1 i-1 T i = 0 n R 0 P n 0 0 0 1 (2)
Usually, the formulation of DHKK parameters is difficult, because is performed manually, and is more difficult when there are multiple kinematic chains. Even that, a method to automatically generate these parameters is presented in [START_REF] Hugel | Automatic generation of humanoids geometric model parameters[END_REF], and is the adopted methodology to parameterize in the present work. The DHKK parameter for our finger are shown in Table 1, using the configuration shown in Fig. 2a. Operating the Eq. ( 1) with the DHKK parameters of the robotic hand prosthesis' finger, shown in Table 1, we get a set of five matrices 0 T 33 , 33 T 34 , 34 T 35 , 35 T 36 and 36 T f , that describe the transformation between the links of the kinematic chain. Applying the Eq. ( 2) with the calculated i-1 T i matrices, we get the position [ 0 P x n , 0 P y n , 0 P z n ] T and orientation 0 n R of the joints. Considering that the frameworks M 33 and M 34 are in the same position of the reference framework, the position vectors of 0 T 33 and 0 T 34 are zero (see Eq. ( 3), and Eq. ( 4)). From Eq. (3) to Eq. ( 7) we use the abbreviations C i := cos(θ i ) and S i := sin(θ i ).

0 T 33 =      C 33 -S 33 0 0 0 0 1 0 -S 33 -C 33 0 0 0 0 0 1      (3) 0 T 34 =      C 33 C 34 -C 33 S 34 S 33 0 S 34 C 34 0 0 -C 34 S 33 S 33 S 34 C 33 0 0 0 0 1      (4)
The following equation corresponds to the position [ 0 P The following equation corresponds to the position [ 0 P x f , 0 P y f , 0 P z f ] T and orientation 0 f R of the fingertip.

0 T f =      0 f r

Dynamic model of the robotic hand prosthesis' finger

The proposed dynamic model uses the principle of the virtual displacements and virtual works [START_REF] Yamane | O(n) forward dynamics computation of open kinematic chains based on the principle of virtual work[END_REF]. We use the dynamic equilibrium to define a model of the input torque as function of the applied force. The virtual work δW is calculated for the external forces (e.g. weight, applied force and input torque) in Eq. ( 8) and the inertial forces (e.g. centrifugal forces) in Eq. [START_REF] Harada | Multiple sweeping using quaternion operations[END_REF].

δW e = Q T e δ r e (8)
where Q T e is the external forces vector and δ r e is the virtual displacement vector of the forces application points.

δW i = M qT δ r i ( 9
)
where M is the diagonal mass matrix composed of the masses m i and inertias J i , qT is the acceleration vector and δ r i is the virtual displacement vector of the inertial frameworks.

The dynamic equilibrium is given by Eq. ( 10), but as in our model the rigid bodies have movements restrictions, the displacements in the points where forces are applied aren't independent, so to solve the equilibrium equation it is necessary separate the coordinates into dependent and independent coordinates.

δ q T [M q -Q e ] = 0 (10)
In order to separate coordinates, the transformation shown in Eq. ( 11) is proposed, as result we have the equilibrium equation proposed in Eq. ( 12), which is separable.

δ q = Bδ q ii , B = -C -1 qd C qi I (11)
where C qd is the jacobian of dependent coordinates, C qi is the jacobian of independent coordinates and I is the identity matrix.

δ q T ii B T [M q -Q e ] = 0 (12)
Solving the equation Eq. ( 12), we obtain the dynamic function which give us the input torque τ 33 as function of the force Fr and the kinematics q, q, q. The resulting expression is shown in Eq. ( 13), where we use the abbreviations C i := cos(θ i ) and S i := sin(θ i ). 3 Finger prototype test platform set-up

τ 33 (Fr, q, q, q) = H 0 -
With the aim of test the drive mechanism, we design a platform to carry out several experiments, the experiments seek to measure the kinematics of the finger and fingertip force using several servo motors. The platform permits to adjust the position of the MP joint with respect to the actuator axis, which guarantees that the actuator torque is transmitted to the tendons in the same condition. The CAD model of the test platform is shown in Fig. 4.

Interchangeable Actuator Adjustable finger position

Materials and methods

The experiments are performed using two standard servo motors HS-422 and Traxxas 2065 with torques of 0.324Nm and 0.225Nm respectively, and three serial servo motors Dynamixel XL-320, AX-12a and MX-106R with torques of 0.390Nm, 1.50Nm and 10.0Nm respectively. To measure the force, we use a resistive-based force sensor Flexiforce , that measure up to 5N, connected to a circuit that uses an inverting operational amplifier arrangement to produce an analog output based on the sensor resistance, the output voltage is registered with a digital oscilloscope.

The sensor is calibrated in the range 0.6N to 4.8N. The sensor is placed in a support (platform) which is located in the trajectory of the fingertip.

Considering that the finger performs flexion and extension in 2D, the kinematic is measured using a high-performance 4 megapixel CCD camera Prosilica GE-2040, to track black markers placed on the finger joints and the fingertip.

Kinematic tracking and force measure

As result of the test, shown in Fig. 5, which corresponds to the measure of the position of each M i joint (using the Traxxas 2065 servo motor), it is possible to identify several peaks, i.e. the 0 P x f value shows a perturbation after contact. These overshoots are produced by different phenomena as friction forces and other external causes. The maximal force value is 2.82N, (using the Traxxas 2065 servo motor) Fig. 6 shows the fingertip force f r during three repetitions of flexion and extension. Although we cannot control external conditions, we identify that the performance of the finger is affected by the phalanges lengths. The lengths of the finger could increase the amount of torque needed to apply the same force over an object, and also may impact the precision of the grasping. So that, we propose a morphological optimization of the lengths of the finger phalanges, which is presented in Section 4.

Morphology optimization

This section introduces the proposed optimization process, which improves the movement of the finger during the precision grasping. This process seeks to find the optimal lengths of the finger phalanges, to reduce the position error during a grasping movement and also to reduce the torque τ 33 to apply a force of 5N.

The used method is confident local optimization (CLOP) for noisy black-box parameter tuning, which was developed to tune parameters in artificial intelligence for games. In our case, we follow the methodology proposed in [START_REF] Jouandeau | Enhancing humanoids walking skills through morphogenesis evolution method[END_REF] for enhancing the humanoids walking skills through morphogenesis evolution so that CLOP is implemented in two stages: evolution and evaluation.

Evolution process

The evolution process (based on an heuristic evaluation) uses as parameters the set H (which contains Motors, Torques < M, T > and lengths new parameters, and their maximum and minimum values) and the eval function to calculate the fitness of the results. For each iteration, a new set of lengths is calculated and evaluated, the best result is updated when the founded solution is better than the stored one. The evolution process is presented in Alg. 1.

Algorithm 1 evolution < M, T >(n, H , eval)

Evaluation process

The evaluation, use the results of the kinematic and the dynamic simulation to evaluate the fitness. The eval function determines two Euclidian distances: (i) distance d between the fingertip and the objective position (positioning error), and (ii) distance d best between the best position founded and the objective position. Both distances are compared and the best result is updated only if d is lower than d best . In the same way, the function analyses if the input torque m (which corresponds to τ 33 ) is lower than the best to modify the result. The eval function is presented in Alg. 2 Algorithm 2 eval (d, m)

Experiment setting and application

To perform the experiment, two functions are defined, f (lengths, q, u, dt) to describe the movement before the contact with the object to grasp and g(lengths, x, u, dt) to describe the movement after the contact with the object.

Before contact, the parameter u is a speed control law defined as a ramp, which handle the engine speed to a maximal value with a constant slope. After contact u is a force control law that handles the applied force to a maximal value Fr with a constant slope. The algorithms to implement both functions are presented in Alg. 3 and Alg. 4.

Algorithm 3 kinematicMove (lengths new , q initial , q ob j , U, dt) 1: q ← q initial ; 2: t ← 0; 3: while contact (q) == f alse do 4:

(u, t) ← next (U, t, dt); 5:

q ← f (lengths new , q, u, dt); 6: end while 7: return (dist (q, q ob j ), -1); Algorithm 4 DynamicMove (lengths new , x initial , q ob j , Fr, U, dt) 1: q ← position (x initial ); 2: x ← x initial ; 3: t ← 0; 4: while contact (q) == f alse do 5:

(u, t) ← next (U, t, dt); 6:

x ← g (lengths new , x, u, dt); 7:

q ← position (x); 8: end while 9: while torque (x) < Fr do 10:

(u, t) ← next (U, t, dt); 11:

x ← g (lengths new , x, u, dt); 12: end while 13: return (dist (q, q ob j ), u);

Results

The experiment, which was executed 150 times, search to minimize the position error and the torque τ 33 . The evaluation process generates iteratively solutions, from the first (where l 32 is 22.1mm and τ 33 is 46Nmm) to the last (where l 32 is 22.2mm and τ 33 is 50.7Nmm). Each solution is equivalent or better than the previous. By applying the morphological optimization on l 32 , l 33 , l 34 and τ 33 parameters that produce f R , we change parameters from (36.6mm 24mm 25mm 225Nmm) to (22.2mm 9.2mm 10mm 50.7Nmm) that improves f R by a factor of 2 with a single finger experiment. Such gain over output force on each finger will be more important with a prosthetic hand with multiple fingers. The complete experiment, corresponding to the last row of Table . 2, is shown in Fig. 7a, where is possible to follow the evolution of the phalanges lengths and the trajectory described from the initial position to the objective position. Consequently, the result shows a direct relationship between the length of the phalange l 32 and the torque τ 33 , and as can be shown in the Fig. 7b, the values are converging around a mean value.

Perspectives

The consideration of a tendon driven under-actuated mechanisms, introduces the necessity of torque control after the contact with the object to grasp, which in our case is the result of the optimal analysis of the morphological parameters. The morphological optimization performed, leads us to envisage a new finger, which should involve soft and flexible considerations for the design of the links and articulations, in order to achieve the grasping task in a more appropriate way. The results of the optimization, show us an important improvement related to size, torque and consequently energy consumption. Therefore, the next stage will be the integration of the optimal finger. Further investigations should also be tested to improve usability of robotic hand prosthesis with soft and flexible components.

Conclusions

The CLOP optimizer is a performant method that deals automatically with nonnegative Hessians, which is the case of the proposed dynamic method. Consequently, the morphological optimal values allow to propose an evolution of our robotic finger. The obtained results show a smooth trajectory that is important for precision grasping. A similar optimization process could be applied to create an adaptive torque control grasping system.

The results of the performed torque optimization, give us an energetic performance, which render the robotic finger ideal to be used in our hand prosthesis. This energetic performance also lets the robotic hand prosthesis be more convenient to the patient according to the fact that we reduce the weight and increase the autonomy of the robot.

Fig. 1 :

 1 Fig. 1: Section view of the finger mechanism

Fig. 2 :

 2 Fig. 2: Equivalent models of the finger. (a) Kinematic Model. (b) Dynamic model

Fig. 4 :

 4 Fig. 4: CAD Model of the test platforms

Fig. 5 :Fig. 6 :

 56 Fig. 5: Results of the position tracking using the Traxxas 2065 servo motor

Fig. 7 :

 7 Fig. 7: Equivalent models of the finger. (a) Kinematic Model. (b) Dynamic model

  for the dynamic.

	𝒙 𝒇
		𝒙 𝟑𝟔	𝒛 𝒇 𝒍 𝟑𝟒	𝜽 𝟑𝟔
	𝒚 𝒇	𝒚 𝟑𝟔	𝒙 𝟑𝟓 𝒍 𝟑𝟑	𝒛 𝟑𝟔	𝜽 𝟑𝟓 𝒛 𝟑𝟓		𝜽 𝟑𝟓	𝒙′ 𝟑𝟓	𝜽 𝟑𝟔	𝒙′ 𝟑𝟔
		𝒚 𝟑𝟓 𝒚 𝟑𝟑 𝒍 𝟑𝟐	𝜽 𝟑𝟑 𝜽 𝟑𝟒 𝒙 𝟑𝟒 𝒛 𝟑𝟒 𝒙 𝟑𝟑	𝜽 𝟑𝟑 𝝉 𝟑𝟑	𝒙′ 𝟑𝟑 𝒘 𝟑𝟑 𝒚′ 𝟑𝟑 𝒚′ 𝟑𝟓 𝒚′ 𝟑𝟔	𝒘 𝟑𝟒 𝒇 𝑹
				𝒛 𝟑𝟑	𝒚 𝟑𝟒		𝒘 𝟑𝟐
				(a)					(b)

Table 1 :

 1 DHKK Parameters of the robotic hand prosthesis' finger.

	Link	α i	a i	d i	θ i
	33	-π /2	0	0	θ 33
	34	π /2	0	0	θ 34
	35	-π /2	l 32	0	θ 35
	36	0	l 33	0	θ 36
	f	0	l 34	0	0

  C 33 C 34 C 35 -S 33 S 35 -C 35 S 33 -C 33 C 34 S 35 -C 33 S 34 l 32 C 33 C 34 C 35 S 34 -S 34 S 35 C 34 l 32 S 34 -C 33 S 35 -C 34 C 35 S 33 C 34 S 33 S 35 -C 33 C 35 S 33 S 34 -l 32 C 34 S 33 36 S 35 +C 36 C 35 ) -S 34 (S 36 C 35 +C 36 S 35 ) -C 34 0 P y 11 = C 34 (-S 36 S 35 +C 36 C 35 )C 33 -S 33 (S 36 C 35 +C 36 S 35 ) 0 36 r 12 = -C 34 (S 36 C 35 +C 36 S 35 )C 33 -S 33 (-S 36 S 35 +C 36 C 35 ) 0 36 r 31 = (-S 36 C 35 -C 36 S 35 )C 33 -C 34 S 33 (-S 36 S 35 +C 36 C 35 ) 0 36 r 32 = (S 36 S 35 -C 36 C 35 )C 33 +C 34 S 33 (S 36 C 35 +C 36 S 35 ) 0 P x 36 = C 34 (l 32 + l 33 C 35 )C 33l 33 S 33 S 35 0 P y 36 = S 34 (l 32 + l 33 C 35 ) 0 P z 36 = -S 33 (l 32 + l 33 C 35 )C 34l 33 C 33 S 35

						
	0 T 35 =	   				   	(5)
				0	0	0	1
	The following equation corresponds to the position [ 0 P x 36 , 0 P y 36 , 0 P z 36 ] T and orien-tation 0 36 R of the joint M 36 .
				0 36 r 11	0 36 r 12	C 33 S 34	0 P x 36	
	0 T 36 =	   	S 34 (-S 36 0 36 r 31 0 36 r 32 -S 33 S 34 0 P y 36	   	(6)
				0	0	0	1
	where 0 36 r
	tation 0 35 R of the joint M 35 .		x 35 , 0 P y 35 , 0 P z 35 ] T and orien-

  11 = C 34 (-S 36 S 35 +C 36 C 35 )C 33 -S 33 (S 36 C 35 +C 36 S 35 ) 0 f r 12 = -C 34 (S 36 C 35 +C 36 S 35 )C 33 -S 33 (-S 36 S 35 +C 36 C 35 ) 0 f r 31 = (-S 36 C 35 -C 36 S 35 )C 33 -C 34 S 33 (-S 36 S 35 +C 36 C 35 ) 0 f r 32 = (S 36 S 35 -C 36 C 35 )C 33 +C 34 S 33 (S 36 C 35 +C 36 S 35 ) 0 P x f = ((l 33 + l 34 C 36 )C 35 + l 32l 34 S 36 S 35 )C 34 C 33 -(C 35 S 36 l 34 + S 35 (l 33 + l 34 C 36 ))S 33 0 P y f = ((l 33 + l 34 C 36 )C 35 + l 32l 34 S 36 S 35 )S 34 0 P z f = -((l 33 + l 34 C 36 )C 35 + l 32l 34 S 36 S 35 )S 33 C 34 -C 33 (C 35 S 36 l 34 + S 35 (l 33 + l 34 C 36 ))

	11	0 f r 12	-C 33 S 34	0 P x f	
	S 34 S 35 S 36 -S 34 (S 36 C 35 +C 36 S 35 ) C 34 0 f r 31 0 f r 32 S 33 S 34	0 P y f 0 P z f	   	(7)
	0	0	0	1
	where 0 f r

  4 l 32 H 12 + H 13 (l 33 S 35 -4) 8 l 33 S 35 -32 (13) where H 0 = 2 l 32 2 θ33 (l 33 (m 33 + m 32 ) S 35 -6 m 33 -4 m 32 ) (S 33 ) 2 H 1 = 3 θ35 + ẍ33 m 33 + 2 θ35 m 34 + (m 34 + 2 m 33 + m 32 ) g -2 Fr l 33 S 35 H 2 = (m 33 + 2 m 34 ) l 33 2 + 4 m 34 l 33 l 34 + 2 m 34 l 34 H 3 = ((1/2 m 33 ÿ33 + m 34 ÿ35 ) l 33 + l 34 ÿ35 m 34 )C 35 H 4 = 2 θ36 S 36 l 34 m 34 -6 ẍ33 m 33 + 2 J 33 θ35 -4 ẍ35 m 34 H 5 = (-6 m 33 -4 m 32 -4 m 34 ) g H 6 = 1/4 l 32 2 θ33 (3/2 m 33 + m 32 ) (C 33 ) 2 H 7 = ((m 33 + 2/3 m 34 ) l 33 + 2/3 l 34 m 34 ) θ35 C 35 H 11 = 1/4 m 33 l 33 C 3 5l 32 C 3 3 θ33 + 1/4 θ35 H 2 C 35 + H 11 + H 3 + H 4 + H 5 + 8 Fr S 33 H 13 = 8 H 6 + 3/8 l 32 (H 7 + 2 m 33 ÿ33 + 4/3 m 34 ÿ35 )C 3 3 + J 32 θ33

				2
	H 12 = -1/2 m 33 l 33	2 S 35	2	θ35 + H 1

Table 2 :

 2 Seven best results of the CLOP experiments. l 32 [mm] l 33 [mm] l 34 [mm] τ 33 [Nmm]

	22.1	19.6	16	46
	26.5	15.3	13.3	58.6
	26.2	10	18.9	55.1
	23.1	12.9	10.6	52.3
	22.9	12.8	10.3	51.8
	18.9	9.9	13.1	40.3
	22.2	9.2	10	50.7

Acknowledgements Through this acknowledgement, we express our sincere gratitude to the Université Paris Lumières UPL for the financial support through the project PROMAIN This work has been partly supported by Université Paris Lumières UPL and by a Short Term Scientific Mission funding from LEME-UPO-EA4416 / LIASD-UP8-EA4383. We also acknowledge Colciencias -Colombia and the Universidad Militar Nueva Granada for the financial support of the PhD students.


J L Ramírez

A Rubiano

N Jouandeau

M N El Korso

L Gallimard

O Polit

Hybrid kinematic model applied to the under-actuated robotic hand Prosthesis ProMain-I and experimental evaluation

Upon the appearance of nylons, silicon, tendons, smart and soft materials, wearable robotics is going closer to the human body, leading robotics and biomechanics to provide us new physical rehabilitations and improvements. In the area that concerns soft robotic prosthesis, the main challenge is the design of well sized mechatronic limbs and smart controllers that should help people to achieve desired movements. As a consequence, we present a hybrid model that allows different ways of representing hand poses, according to special interactions that arise from soft robotics chains. Our hybrid model uses the positions of finger's parts computed with the Denavit-Hartenberg (DH) method mixed with the quaternions representation to avoid singularities and to reduce the number of DH parameters. Kinematic and dynamic of finger motions are evaluated using an experimental setup with mechanical parts produced by 3D printing and different actuators. Finally, experimental results are compared with the theoretical values and demonstrate the accuracy of our model.

I. INTRODUCTION

Considering that the aim of wearable robotics is to improve or give back physical skills, one of the greatest challenges is to provide a safe, dexterous, and easy to use robotic system. Therefore, the growing interest in the design of robotic hand prostheses able to achieve human manipulation skills.

The task of designing or improving a robotic hand (to replicate the grasping capabilities and the kinematic function of the human hand) involves the consideration of a high complexity sensory and motor functions. Some examples of robotic hands that could be used as a prosthesis are available in the literature [START_REF] Zodey | Matlab Toolbox for Kinematic Analysis and Simulation of Dexterous Robotic Grippers[END_REF]. These robotic hands could be classified as commercial (e.g i-Limb) or research purposes (e.g DLR-HIT II or UB Hand 4) [START_REF] Melchiorri | Development of the UB Hand IV: Overview of Design Solutions and Enabling Technologies[END_REF]. Even so, the actual state-of-the-art has not fulfilled the requirements of dexterous manipulation, in terms of physical, actuation, and kinematic properties [START_REF] Belter | Performance characteristics of anthropomorphic prosthetic hands[END_REF].

Recently, two important considerations have been proposed to increase the performance and the simplicity of robotic hand prostheses. Such as the postural synergies [START_REF] Ficuciello | Experimental evaluation of the UB Hand IV postural synergies[END_REF] and the adaptive synergies [START_REF] Catalano | Adaptive synergies for the design and control of the Pisa/IIT SoftHand[END_REF]. These synergies are used to formulate grasping forces [START_REF] Gabiccini | On the role of hand synergies in the optimal choice of grasping forces[END_REF]. Adaptive synergies are particularly referred to the consideration of variable stiffness joints in soft robots, interacting in an adaptive way with the environment and the objects to grasp. These approaches allow the design of underactuated robotic hands to accomplish a soft-synergy model, which provides a robust and compliance mechanism [START_REF] Catalano | Adaptive synergies for the design and control of the Pisa/IIT SoftHand[END_REF]. Despite the excellent results to control the internal forces needed to hold an object, the variable stiffness joints state a challenge related to the modeling and handling of not previously considered movements.

Consequently, the synergies approach has been combined with the parameterization of Denavit-Hartenberg (DH) [START_REF] Ficuciello | Experimental evaluation of the UB Hand IV postural synergies[END_REF]. The DH parameters and its variations were proposed for rigid robots, and new developments are necessary to calculate the kinematic and the dynamic of soft robots.

The main drawback of the DH methods is the limitation of active rotations because they are only possible around zaxes of each joint. Thus, a new framework must be added if an extra rotation is needed. Furthermore, the use of homogeneous matrices could cause singularities due to the presence of not considered rotations introduced with soft materials.

An interesting approach of kinematic modelization is presented in [START_REF] Campa | Kinematic modeling and control of robot manipulators via unit quaternions: Application to a spherical wrist[END_REF], where the author proposes a model based on DH parameterization and unit quaternion instead of homogeneous matrices. In the same way, [START_REF] Heidari | Geometric design of 3r manipulators for three precision poses using dual quaternions[END_REF] presented a methodology for the geometric design of 3R manipulators using the DH and quaternions. The DH parameterization and the representation of rotations using quaternions were tested in [START_REF] Harada | Multiple sweeping using quaternion operations[END_REF] to express deformation in 3D CAD models. Even so, these methods introduce a real difficulty because they remove totally the homogeneous matrices, and a modelling using only quaternions is not efficient from a computational point of view [START_REF] Radavelli | A comparative Study of the Kinematics of Robots Manipulators by Denavit-Hartenberg and Dual Quaternion[END_REF].

For these reasons, we present in this paper a new hybrid model that improves the representation of rotations that arise from soft robotics prosthesis movements. Our model combines the parameterization of DH method with quaternions to formulate soft rotations. This new method allows to: avoid the singularities, reduce the number of rotation parameters and unify the formulation to describe the kinematic of a soft robot.

Furthermore, we propose two new experimental setup: i) the first one is carried out to evaluate the performance of a first prototype of a robotic finger for the task of precision grasping, ii) the second one permits to compare two actuation mechanisms and five different actuators using the same finger. Finally, the results of these experiments are compared with the theoretical ones obtained from our model. In order to propose a performant method to model the kinematic of a soft robot, we propose a hybrid method, that consist in the utilization of the Denhavit-Hartenberg parameterization Modified by Khalil and Kleinfinger (DHKK), and the formulation of soft rotations using quaternions.

For the purpose of formulating the unexpected rotations that arise from soft robotics movements, our hybrid method represents the kinematic, using DHKK and homogeneous matrices for rigid rotations, and introduces the formulation of soft rotations using quaternions (SRQ). The SRQ is launched taking into account several parameters as the desired movement precision, the direction of movement vectors, and the stiffness of the joints. Likewise, the SRQ can be launched by sensory feedback.

A. Denhavit-Hartenberg parameterization Modified by Khalil And Kleinfinger

The DHKK convention, allows the representation of openloop and close-loop kinematic chains, and presents a convenient definition of the axis z i , which corresponds to the rotation axe of the i -th joint. The angle of rotation around z i is denoted by θ i , and is applied using a transformation matrix, that is described in [START_REF] Zodey | Matlab Toolbox for Kinematic Analysis and Simulation of Dexterous Robotic Grippers[END_REF], which result of the application of: a rotation α i around x i-1 , a translation a i along of x i-1 , a rotation θ i around z i , and a translation

d i along of z i [9]. i-1 T i =     cos θ i sin θ i 0 a i sin θ i cos α i cos θ i cos α i sin α i sin α i d i sin θ i sin α i cos θ i sin α i cos α i cos α i d i 0 0 0 1     (1)
The parameters α i , a i , θ i and d i , are known as the DHKK parameters, a graphical representation of the parameters is shown in Fig. 1. Usually, the task of calculation of DHKK parameters is hard, because is performed manually, and is more difficult when there are multiple kinematic chains. Even that, a method to automatically generate these parameters is presented in [START_REF] Hugel | Automatic generation of humanoids geometric model parameters[END_REF], and is the adopted methodology to parameterize in the present work.

𝛾 𝑛 𝑟

Fig. 2: Rotation γ applied to r around n Consequently, the kinematic of a robot composed of n joints is:

0 T n = n i=1 i-1 T i (2)
As result the matrix 0 T n is a composition of the orientation of the end effector 0 R n , and the position vector

[ 0 P x n , 0 P y n , 0 P z n ]
T , as shown in the following expression:

0 T n =     0 R n 0 P x n 0 P y n 0 P z n 0 0 0 1     (3)

B. Formulation of Rotations Using Quaternions

The quaternion [START_REF] Dai | An historical review of the theoretical development of rigid body displacements from Rodrigues parameters to the finite twist[END_REF] is a composition of four coefficients, as shown in (4), usually represented with ordered pairs [START_REF] Altmann | Hamilton, rodrigues, and the quaternion scandal[END_REF] as

H = [[ h 0 , h ]], where h = (h 1 , h 2 , h 3 ). H = h 0 + h 1 i + h 2 j + h 3 k (4)
The components i, j, and k represent the unit vectors that match the direction of h, and satisfy:

i 2 = j 2 = k 2 = ijk = -1 (5)
The real number h 0 represented as quaternion, is denoted by

H 0 = [[ h 0 , 0 ]
] and the pure quaternion of the vector p is given by P

= [[ 0, p ]], whose conjugate is P = [[ 0, -p ]]. As presented in [14], two quaternions H = [[ h 0 , h ]] and V = [[ v 0 , v ]
] can be multiplied as:

HV = [[ h 0 v 0 -h • v, h 0 v + v 0 h + h × v ]] (6)
In the 3D space, a rotation γ applied to the vector r around the vector n, shown in Fig. 2, can be expressed using (6) as:

NRN ( 7
)
where i is at (0,0,1) and that goes to S 3 i at (0,1,0).

N = [[ cos(γ/2), n sin(γ/2) ]] R = [[ 0, r ]] N = [[ cos(γ/2), -n sin(γ/2) ]]
Consequently, any combination of three rotations (α, β, θ) around the 3 axis x, y and z can be written as: XYZRXYZ

where

X = [[ cos(α/2), x sin(α/2) ]] Y = [[ cos(β/2), y sin(β/2) ]] Z = [[ cos(θ/2), z sin(θ/2) ]]
The hypersphere S 3 [START_REF] Yan | Study of diagonalization on skew self-conjugate matrix in quaternion field[END_REF] centered at the origin of the joint, can represent any configuration space M 3 of a rigidbody orientation without singularities [START_REF] Yang | Generalized kinematics of five-axis serial machines with non-singular tool path generation[END_REF] and avoid the addition of an extra reference frame. Our quaternions X, Y, and Z can be considered as points lying from S 3 i to S 3 i , as shown in Fig. 3.

C. Hybrid Model DHKK-SRQ

This part presents our new hybrid model DHKK-SQR that unifies the DHKK parameters with multiple sets of quaternions using an optimal analysis of the available sensor feedback. This unified formulation allows to express the kinematic of soft robots and reduces the corresponding computational cost.

Consequently, each i -th joint (for i = 1, . . . , n where n is the number of joints) is considered as an element that has a hybrid (rigid and soft) behavior. In Fig. 4, the i -th joint is modeled, in a first step as a rigid element, and only with the rotation θ i around z i ; finally, the rotations α i and β i around axis x i and y i are added with the hypersphere S 3 i . As a result, the model can apply rotations in all axes avoiding to add any extra reference frames.

The rigid rotations are performed using the homogeneous matrices which are given by (1) and the kinematics of the rigid joints results from [START_REF] Melchiorri | Development of the UB Hand IV: Overview of Design Solutions and Enabling Technologies[END_REF]. The orientation and the final position are given by [START_REF] Belter | Performance characteristics of anthropomorphic prosthetic hands[END_REF].

Using DHKK, the only possible active rotation is i around the axes z i . Therefore, we formulate the extra rotations (those that appear from the low stiffness joints) α i and β i using SRQ. Additionally, after the SRQ is launched, the rotation θ i is formulated using a quaternion; so that, the set of quaternions for each i -th joint is like the proposed in [START_REF] Heidari | Geometric design of 3r manipulators for three precision poses using dual quaternions[END_REF].

To define when the SRQ is launched, avoiding the extra computational cost, our hybrid method is parameterized in three different cases depending on the available instrumentation: i) a fully instrumented setting, i.e. position and force sensors, ii) a partially instrumented robot with only position sensors (full or partial measure), and iii) no instrumentation available.

For the first case, the model use (3) to calculate the final position of the robot. Once the force sensor detects the contact with an object, we apply [START_REF] Harada | Multiple sweeping using quaternion operations[END_REF] to evaluate the absolute position error (Euclidian distance). If the error exceeds the threshold λ, the rotations are performed using [START_REF] Heidari | Geometric design of 3r manipulators for three precision poses using dual quaternions[END_REF], with the measured angles α = [α 1 , . . . , α n ], β = [β 1 , . . . , β n ] and θ = [θ 1 , . . . , θ n ] for the n joints of the robot. The threshold λ depends on the precision requirements of the robot.

x,y,z

| 0 P M n -0 P n | 2 ≤ λ (9)
Where, 0 P M n = [ 0 P M x n , 0 P M y n , 0 P M z n ] T is the measured end position and 0 P n = [ 0 P x n , 0 P y n , 0 P z n ] T is the calculated end position.

For the second case, the model use (3) to calculate the final position of the robot, and the criterion ( 9) is applied. Once the threshold λ is overtaken, if the robot is instrumented to measure all parameters, the rotations are performed using [START_REF] Heidari | Geometric design of 3r manipulators for three precision poses using dual quaternions[END_REF], with the measured angles α = [α 1 , . . . , α n ], β = [β 1 , . . . , β n ] and θ = [θ 1 , . . . , θ n ]. If the robot is equipped only with sensors for rigid joints, then we apply [START_REF] Radavelli | A comparative Study of the Kinematics of Robots Manipulators by Denavit-Hartenberg and Dual Quaternion[END_REF] to calculate angles α and β of each joint, and the rotations are performed using [START_REF] Heidari | Geometric design of 3r manipulators for three precision poses using dual quaternions[END_REF].

(α, β) = arg min α,β   x,y,z | 0 P M n -0 P n | 2   (10)
The last case is proposed for robotic hand applications, where the grasping parameters (size, shape and weight of the object) are known, but the robot doesn't have sensory feedback. So, the known grasping information is used to parameterize our method.

To grasp in a steady way an object, it is necessary to consider four conditions [START_REF] Mishra | Stochastic re-grasp planning for vision aided capture of deforming and moving object[END_REF]:

1) The Summatory of the applied forces and torques must be equal to zero.

2) The direction of the forces must be orthogonal to the tangential plane of the point of contact with the object, as shown in Fig. 5a. The maximal angle of the force ϕ depends on the friction coefficient µ of the object (cone of force).

3) The center of application of forces C N must be as close as possible to the center of mass of the object C, as shown in Fig. 5b. 4) The area formed by the points where the force is applied ∆ F , see Fig. 5c, should be up to ξ o , which is a constant defined as a function of the maximal distance between the point of application of force. These four conditions, can be expressed as follows:

i f i = 0 and i τ i = 0 ϕ = arctan(µ) |C N -C| → ε ∆ F → ξ o (11)
where, f i and τ i are the applied forces and torques with i fingers and ε is the maximal difference between the center of application of forces and the center of mass of the object.

On the basis of the above, we define the following criterion, to calculate the articular values required to position the robot in the required grasp posture as follows:

(α, β, θ) = arg max α,β,θ (∆ F ) s.t |C N -C| < ε , ∆ F < ξ o (12)
The rotations are performed using (1), while the values of α or β are constant; then the rotations are formulated using SRQ as proposed in [START_REF] Heidari | Geometric design of 3r manipulators for three precision poses using dual quaternions[END_REF].

III. MODELING OF THE ROBOTIC HAND PROSTHESIS PROMAIN-I

The aim of the ProMain-I robotic hand is to perform precision grasping. Bearing in mind that the majority of this kind of grasping is achieved with only three fingers, our first approach is a three fingered bio-inspired hand. The hand is composed of two rigid joints in the wrist, and three hybrid joints in each finger. The joints metacarpophalangeal, proximal and distal interphalangeal are considered rigid for the flexion-extension movement and soft for the other rotations.

The hand is under-actuated, so each finger is controlled by only one servomotor. The equivalent mechanical model of the hand is shown in Fig. 6. The DHKK parameters for all joints are presented in TABLE I: DHKK parameters for the ProMain-I Hand the fingers are joints three to five. The parameters of fingers are denoted using a sub-index preceded by 1 for thumb finger, 2 for index finger and 3 for middle finger, e.g. for joint i of the thumb we denotes the θ as θ 1i . The parameter l 31 is the distance between the wrist framework and the metacarpophalangeal joint of the middle finger. Parameters l 21x and l 21z are de distance from the wrist framework to the metacarpophalangeal joint of index finger. l 11x , l 11y and l 11z represent the distance between the wrist framework and the carpometacarpal joint of thumb finger. Parameter l 22 , . . . , l 24 and l 22 , . . . , l 24 are the lengths of the index and the middle finger phalanges and l 12 , . . . , l 14 are the lengths of the metacarpal bone and the phalanges of the thumb finger. Applying (1), for the parameters

[α 1i , a 1i , d 1i , θ 1i ], [α 2i , a 2i , d 2i , θ 2i ] and [α 3i , a 3i , d 3i , θ 3i ],
we obtain three rotation matrices (2) of the form 0 T n , three orientation matrices of the form 0 R n , and three position vectors of the form [ 0 P x n , 0 P y n , 0 P z n ] T , that describe the end position of each finger.

On the other hand, to model soft rotation, we use the DHKK parameters [α ji , a ji , d ji , θ ji ], for the fingers j = 1, . . . , 3 and the joints i = 3, . . . , 5, to propose:

1) The set of vectors r ji = d ji x ji that match direction, orientation and length of the finger phalanges.

2) The set of pure quaternions

R ji = [[ 0, r ji ]].
3) The sets of quaternions X ji , Y ji , Z ji , adding the rotations β ji around axes y ji . To formulate rotation as proposed in (8), we introduce the set of rotation for all fingers as follows:

𝜃 𝑗3 𝜃 𝑗4 𝜃 𝑗5 𝛼 𝑗3 𝛼 𝑗4 𝛼 𝑗5 𝛽 𝑗3 𝛽 𝑗4 𝛽 𝑗5
X ji Y ji Z ji R ji X ji Y ji Z ji (13)
As a result, we have a model where one hypersphere S 3 ji is added to each soft joint. In Fig. 7 the model DHKK-SRQ of one finger j of the hand is shown.

IV. FIRST PROTOTYPE OF THE FINGER AND EXPERIMENTS

In the first stage of the design and implementation of the ProMain-I Hand, we test a tendon driven finger prototype, which has three phalanges and is actuated by only one servomotor. The finger has rigid joints but due to the driving mechanism, it mechanically self-adjusts the articulation when is needed, this behavior can be considered as soft.

The aim of the test is to implement and try out our hybrid modeling method DHKK-SRQ and to obtain information to design the hybrid joints and drive mechanism of the ProMain-I Hand. Therefore, we design two platforms to carry out an experiment to measure the kinematics of the finger, and two fingers grip force and fingertip force. The experiment is performed for several servomotors and two configurations.

A. Materials and methods

The first platform is designed to place two fingers pointing toward each other, to perform a grip force between the fingers. The platform allows to set the distance between the fingers and the height to place several actuators. The second platform allows to change actuators and the position of the finger about the motor axis. The CAD models of the test platforms are shown in Fig. 8 To measure the force, we use a resistive-based force sensor Flexiforce , that measure up to 5N , connected to a circuit that uses an inverting operational amplifier arrangement to produce an analog output based on the sensor resistance, Considering that the finger performs flexion and extension in 2D, the kinematic was measured using a high-performance 4 megapixel CCD camera Prosilica GE-2040, to track black markers placed in the finger joints. The camera is placed at 1m from the prototype; the optical objective is configured with an aperture of F = 1.4, and a focal length of 20mm and the shutter speed is 20ms. As the camera has a square format, the diameter limit of the circle of confusion is CoC = 0.053mm, which means that each pixel correspond to 0.17mm. After measure the precision of acquisition comparing several static images with a known value of length, we find a position accuracy of 0.51mm. The global setup of the experiment is shown in Fig. 9.

B. Results

The captured images are analyzed using Matlab by applying a Canny filter and the Hough circular transform, to calculate the position of the fingertip and joint angles during the movement. As a result, we get a set of four points (x i , y i ). The first three points match with the position M j i of each i-th joint, and the last one is fingertip position 0 P jn , where j represents the finger. The angles are measured as shown in Fig. 10, following the DHKK parameterization.

The measured values are compared with the result of DHKK and DHKK-SRQ methods. To calculate the mean absolute error of position, the measures of the fingertip are compared with the calculated values, the results are shown in Table III. On the other hand, for the test of grip, the same analysis is performed but changing the distance between the finger and using only one actuator (HS-422). The results of grip kinematics and force are presented in Table II.

V. DISCUSSION OF FUTURES DEVELOPMENTS

Based on the obtained results, it is important to remark that our method presents a smaller error compared with the classical modeling of kinematics. Considering that the kinematic is measured in 2D, the effects of the angles α ji and β ji are not taking into account, and so that, the error difference doesn't seem to be as big as expected. Even that, it is evident that this difference will become important for the final model of our ProMain-I hand and also for all soft robots.

Furthermore, the experiment of gripping, allow us to identify that the drive mechanism used for the first prototype needs to be improved, adding at less one soft degree of freedom in the metacarpophalangeal joint and introducing a fixed angle relationship between the sub-actuated joints and the actuator.

In this case, the force measure is used as a flag to launch the DHKK-SRQ, in future develops we plan to model the dynamic problem of the soft robots taking into account kinematics and forces.

VI. CONCLUSIONS

In this work, we have proposed a new methodology to model the kinematic of any soft robots e.g. prostheses and exoskeletons. Experiments show that our model is more accurate than classical modeling of kinematics. Additionally, with the consideration of different utilization panoramas, the method can be set up to improve the computational cost. One critical application of soft robotics is in the medical domain and telesurgery, where the improvements of accuracy, provided by our method have a high impact. Our method also offers the possibility of new developments to improve the soft robotics in the next years. The advances of soft robotics could allow the design of robots more suitable for the interaction with humans, and consequentially, the robotic prostheses could be more acceptable to the patients. Finally, the consideration of the synergies simplifies the configuration space during the application of our DHKK-SRQ kinematic method.

Fig. 1 :

 1 Fig. 1: Graphical representation of DHKK parameters

Fig. 3 :

 3 Fig. 3: Combination of rotations α, β and θ around x, y and z. In this case, it shows a single rotation around x of 90[deg] from S 3i is at (0,0,1) and that goes to S 3 i at (0,1,0).

Fig. 4 :Fig. 5 :

 45 Fig. 4: Model of hybrid joint using DHKK and SRQ.

Fig. 6 :

 6 Fig. 6: Equivalent mechanical model of the hand, axes x i in red, axes y i in green and axes z i in blue 1 Joint Wrist α a d θ 1 0 0 0 θ 1 2 -π 2 0 0 θ 2 Middle Finger Index Finger Thumb Finger α a d θ α a d θ α a d θ 3 0 l 31 0 θ 33 0 l 21x l 21z θ 23 0 l 11x l 11z π 2 0 l 11y 0 -π 2 4 0 l 32 0 θ 34 0 l 22 0 θ 24 αopp l 12 0 θ 14 5 0 l 33 0 θ 35 0 l 23 0 θ 25 0 l 13 0 θ 15 n 0 l 34 0 0 0 l 24 0 0 0 l 14 0 0

Fig. 7 :Fig. 8 :

 78 Fig. 7: Complete model of DHKK-SRQ for one finger j

Fig. 9 :Fig. 10 :

 910 Fig. 9: Experiment Set-up

  Table. I, where the joints parameters for the wrist are joints one and two, and the parameters for

	𝜃 1 𝜃 2			𝜃 1 𝜃 2
	𝜃 33 𝜃 25 𝜃 23 𝜃 24 𝜃 34 𝜃 35	𝜃 13 𝜃 15 𝜃 14	𝜃 34 𝜃 35 𝜃 33	𝜃 25 𝜃 24 𝜃 23	𝜃 13 𝜃 15 𝜃 14

TABLE II :

 II The mean absolute position error and grip force (2nd platform).

	Actuator DHKK-Error DHSKK-SRQ-Error	Force
	HS-422	2.0438mm	1.7927mm	2.19N
	TR-2065 0.6929mm	0.4206mm	1.19N
	Ax12a	1.8032mm	1.3900mm	3.21N
	XL-320	2.2647mm	2.2300mm	2.10N
	MX-106R 4.5700mm	4.4939mm	> 5.0N

TABLE III :

 III The mean absolute position error and fingertip force (1st platform).

The hand image is courtesy of Visible Body (www.visiblebody.com)

ACKNOWLEDGMENT

We express our gratitude to the Université Paris Lumières for the financial support through the project PROMAIN This work has been supported by Université Paris Lumières and by a Scientific Mission funding from LEME-UPO-EA4416 / LIASD-UP8-EA4383. We acknowledge Colciencias and the UMNG for the financial support of the Ph.D. students.

*This work was supported by


A Rubiano

J L Ramírez

M N El Korso

L Gallimard

N Jouandeau

O Polit

ELBOW FLEXION AND EXTENSION IDENTIFICATION USING SURFACE ELECTROMYOGRAPHY SIGNALS

Keywords: Electromyography, feature extraction, upper limb kinematic, support vector machine, quaternions

In this paper, a new approach is presented for the analysis and the identification of the surface electromyography (EMG) signals of biceps and triceps muscles. The objective of this study is the accurate classification of elbow flexion and extension movements. We propose a cropping method based on the agreement of the movement changes and the EMG signal using the upper limb kinematic. Then, we perform the extraction and selection of several well known features in time and frequency domain. The selected features are used as inputs for our support vector machine classifier which is designed using an optimal weight vector criterion. Afterward, the training and test steps are performed in the proposed scheme. Finally, numerical simulation assess the accuracy of the classification, as well as the robustness of the proposed approach considering noisy measurements.

INTRODUCTION

The surface electromyography (EMG) signal contains relevant information about the electrical activity produced by the neuromuscular process during contraction or relaxation [START_REF] Reaz | Techniques of EMG signal analysis: detection, processing, classification and applications[END_REF]. Due to the nature of the EMG, it is possible to extract some characteristics, which are useful to identify the produced movements, as function of the measured electrical activity. Nevertheless, the complexity of the measured EMG signals makes the detection and/or classification process a difficult task [START_REF] Alkan | Identification of EMG signals using discriminant analysis and SVM classifier[END_REF].

In the literature, different studies had been carried out, with the aim to identify movements from EMG signals. In [START_REF] Oskoei | Support vector machine-based classification scheme for myoelectric control applied to upper limb[END_REF], the authors focused on the identification of five hand movements in which the obtained accuracy range was 94% to 99%. In the same way, [START_REF] Naik | Twin SVM for gesture classification using the surface electromyogram[END_REF] proposed the detection of the wrist and ring finger movements, and achieved an accuracy of 87.3%.

More recently, in [START_REF] Wang | The recognition of multi-finger prehensile postures using LDA[END_REF], the authors put forward the recognition of eight grasping gestures, and earned an accuracy between 96.9% and 99.65%.

Although these studies have reached good accuracies, none of them have considered the synchronization of the upper limb kinematic with the EMG signal, in order to extract the signal fragment that match with each movement. One of the achievement of this communication, is the design of a real time synchronized process w.r.t. both kinematic and EMG signal, which guarantees the correct extraction of signals.

Likewise, we consider variations in kinematical parameters, such as speed and angle range of the performed movements. These variations affect considerably the EMG signals, and so that, the classification accuracy. Even that, we achieve and maintain an accuracy of 99.79% using noisy measurements as input (i.e., measurements corrupted by an additive noise in order to asses the robustness of the proposed scheme) unlike the previous studies which used noise-free measurements (i.e., without adding an artificial additive noise).

Furthermore, we note that the obtained accuracy is obtained by testing the EMG signal from a new subject. This is of importance, since it means that the proposed scheme has both accurate accuracy and robustness to new subjects which could be not included in the learning process. Consequently, the proposed scheme earn generalization and applicability in real applications.

The main contributions of this paper are as follows: 1. The development of an open source software, which is able to: a) show in real time the synchronization of upper limb kinematic and EMG signals, b) fill automatically data gaps in kinematics using quaternion's approach, c) extract EMG signals in an accurate way through the calculation of angle and speed of movements, during the flexion and extension. 2. Design a methodology for analyzing and choosing the bests features to identify and classify movements, avoiding black boxes, which improve the control of the classification and generalization of the method. 3. Propose a nonlinear support vector machine (SVM) classifier which is feeded with an experimental data set, that con- sider variations in kinematical parameters. Furthermore, we perform a proper exploration of the SVM settings, which give us an identification of the parameters influences in the learning process. Finally, the robustness of the proposed scheme is test by artificially adding zero mean white gaussian noise.

EXPERIMENT AND MATERIALS

Three healthy subjects have participated in the proposed experiment. Each subject performed flexion and extension movements, changing the covered angle and speed of movement, while the upper limb motion tracking (ULMT) and EMG signals for biceps and triceps are recorded. Subject one, two, and three, performed one, four, and six trials respectively, thus making a total of 44 recorded EMG signals.

The EMG signals have been recorded using the ZE-ROWIRE wireless EMG system with a sampling frequency of 1 kHz. All subjects were equipped with two EMG sensors, which were located over the biceps branchis and triceps. We selected these muscles, because they are the main muscles involved in the elbow flexion and extension [START_REF] Ali | Surface electromyography for assessing triceps brachii muscle activities: A literature review[END_REF], and consequently, they produce high electrical activity during the movements.

The ULMT, is performed using 7 3D VICON cameras and Nexus software. The system has a sampling frequency of 200 Hz. The subjects were equipped with 30 retro-reflective markers, positioned all over the upper limb kinematic chain including the spinal column, see Fig. 1, distributed as follows: i) Occipital bone (markers 1 to 3). ii) Cervical and lumbar vertebra (markers 4 to 13). iii) Sacrum (markers 13 to 15). iv) Scapula (markers 16 and 17) v) Medial epicondyle of humerus (marker 18). vi) Coronoid process of ulna and radius (markers 19 and 20). vii) Styloid process of ulna and radius (markers 21 and 22). viii) Metacarpophalangeal joint of fingers 1, 2, 3 and 5 (markers 23 to 26). ix) Proximal interphalangeal joint of the fingers 2, 3 and 5 (markers 27 to 29). x) Interphalangeal joints of finger 1 (marker 30).

PRE-PROCESSING OF DATA

The pre-processing of data consist in the visualization and extraction of the EMG signals, that corresponds to the flexion and extension movement. For this issue, we develop a open For the purpose of plotting the ULMT data, the markers are clustered by regions as follows: i) Head markers 1 to 3, ii) spinal column markers 4 to 13, iii) sacrum markers 13 to 15, iv) scapula markers 16 to 18, v) arm markers 18 to 20, vi) forearm markers 19 to 22 and vii) hand markers 21 to 30. These regions are used to draw lines between markers to allow an easy interpretation of the 3D visualization, linking the scattered points in the graph (this explains that some markers are repeated in different clusters).

Automatic correction of missing data and outliers

Frequently, some markers of the ULMT disappear within several periods of times. Vicon Nexus Software try to fill the gaps of these missing markers. Nevertheless, sometimes, it appears that the software fails to fill it and let empty the values of the missing markers (which are set to 0 in Matlab, see Fig. 3). Nevertheless, each zero has a dramatic effect on the accuracy of the following classification steps. Consequently, to over come this disadvantage, we develop a mathematic model, which is able to determine the values of the markers which disappear. The model use quaternions, since they are used to formulate spatial rotation in many fields, including computer graphics and robotics [START_REF] Bell | Reachability problems in quaternion matrix and rotation semigroups[END_REF]. Due to space limitation, we briefly describe the model, more details are included in the open source package software.

Our proposed model consists of a coordinate system fixed to each marker, and a set of vectors which links the markers between them, maintaining the order of the markers cluster (e.g. marker 1 is linked to marker 2 by a vector, and marker 2 is linked to marker 3 by another vector, and so on). Then, we define a group of quaternions, which express the rotations between the created vectors, in order to verify the position of each marker. When the position of a marker exceed a certain threshold (in our case 3mm) w.r.t. the calculated position with the quaternions, the marker is replaced by the calculated point, so that, the 3D model is automatically corrected.

Elbow angle evaluation and analysis

Once the 3D model is corrected, we can determine correctly the elbow angle ϕ. For this, we use two vectors: one from the elbow to the wrist and the other from the elbow to the shoulder. Since there are two markers in the elbow, it is required to find the position of the middle point p 1 between the coronoid process ulna and radius (markers 19 and 20), and also the point p 2 in the wrist, between the markers placed over the styloid process of ulna and radius (markers 21 to 22).

The arm vector denoted by v a ∈ R 3 is the vector that links the point p 3 (marker placed over the epicondyle of humerus), to the point p 1 . The forearm vector denoted by v f a ∈ R 3 links points p 1 and p 2 . With these two vectors, the elbow angle ϕ is calculated as ϕ = arccos va,v f a va v f a . Since the EMG signal and the UMLT are synchronized, our software calculate the angular velocity, defined as ω = dϕ /dt, to identify if the angle ϕ is increasing or decreasing. The behavior of ϕ allows the exact identification of elbow flexion and extension movements, which is important for the correct and accurate extraction of EMG signals. As result of the pre-processing, we obtain a set of EMG signals which corresponds to electromyography of biceps and triceps for flexion and extension at different angles and speeds (see Table . 1) for all subjects and all trials.

FEATURE EXTRACTION

Feature extraction is a technique to obtain relevant information of a signal, in time or frequency domain, which is given by a single vector value [START_REF] Oskoei | Support vector machine-based classification scheme for myoelectric control applied to upper limb[END_REF]. There are several features often used for analyzing EMG signals. Specifically, we consider the following features:

• Entropy : Ent(s) = -i o 2 i log 2 (o 2 i )
where o i represents the projection coefficients of the signal s in an orthonormal basis [START_REF] Liu | Metric learning for event-related potential component classification in EEG signals[END_REF].

• Mean Absolute Value : MAV(s) = n -1 n i=1 |[s] i |,
where [s] i represents the i-th sample of the signal s, and n is the number of samples.

• Mean value: M(s) = n -1 n i=1 [s] i . • Harmonic mean: HM(s) = n( n i=1 [s] -1 i ) -1 . • Mean frequency: MF(s) = ( N j=1 I j ) -1 N
j=1 I j f j where N denotes the number of harmonics in the spectrum, I j represents the magnitude of the j-th harmonic, and f j is the frequency of the j-th harmonic. As previously mentioned, the aim of this study is to identify two movements (elbow flexion and extension) from EMG signals. Therefore, the proposed approach is to extract the aforementioned features of electromyography signals, to create two sets of features, one for flexion, and one for extension. These sets are used to characterize the difference between the features which is evaluated using an Euclidean distance. It is important to note that the generated sets of features are affected by the variations in kinematical parameters, such as speed and angle range of the performed movements.

In order to chose the best set of feature for our classification scheme, the maximum distance between the nearest values of each couple of feature is calculated. For this, we propose the following criterion which is applied to all trials in the two muscles (biceps and triceps):

(b, u) = arg max b,u min | ext b -fle b | + | ext u -fle u | for b = u in which ext b
and fle b are the b-th features for extension and flexion, ext u and ext u are the u-th features for extension and flexion. Based on the the proposed criterion, the selected features are found to be the entropy and the mean frequency features. Therefore, with these selected features, we build a matrix X, in which each row is the value of 2. The feature matrix X in which rows one and twelve are trial extracted from subject one, rows two to five and rows thirteen to sixteen are trials extracted from subject two, and the other rows are trials extracted from subject three.

[Ent(s bi ), MF(s bi ), Ent(s tr ), MF(s tr )] for one trial, where s bi and s tr are the biceps and triceps recorded EMG signals respectively (note that the extracted features are influenced by variations in kinematical parameters). Table 2 shows the extracted values of the selected features stored in the matrix X for different subject and different trials.

CLASSIFICATION SCHEME

The matrix X, can be considered as a set of points in a 4-th dimensional features space, wherein each l-th point x l ∈ R 4 , has an etiquette y l ∈ {1, -1}. The etiquette classifies the points into two categories: flexion or extension. The points of the matrix X can be separated, using a learning strategy based on statistical theory, called support vector machine (SVM).

The SVM calculate an optimal hyperplane between such categories, using a matrix X composed by q rows, where each row x q is a support vector. In our case, the support vectors are the rows three, four, six, fourteen, fifteen and seventeen of the matrix X, i.e. three vectors for flexion and three for extention.

In our study, a linear separation is not possible, as can be seen from Fig. 4. Consequently, we propose to use a non-linear SVM classifier, where the optimal hyperplane is obtained by solving a quadratic programming problem (QPP) [START_REF] Chamasemani | Multi-class support vector machine (SVM) classifiers -an application in hypothyroid detection and classification[END_REF], given by min w,b,ξ

1 2 w T w + C m q=1 [ξ] q s.t. y q w T φ(x q ) + b ≥ 1 -[ξ]
q and [ξ] q ≥ 0 for q = 1, . . . , m where w and b determine the hyperplane in feature space, [ξ] q represents the error soft margin, C is a term to control the overfitting, m denotes the amount of support vectors inside X , and φ maps x q into high-dimensional space. The solution of this problem, is the following decision function: Γ(x l ) = sign m q=1 α q y q K(x q , x l ) + b in which α q are the lagrange coefficients used to solve the QPP problem [START_REF] Liu | Metric learning for event-related potential component classification in EEG signals[END_REF], and K(x q , x l ) denotes a kernel function, that is, in our case, given by the following radial basis function (RBF):

K(x q , x l ) = exp - ||x q -x l || 2 2σ 2
where σ denotes a positive parameter for controlling the radius. This RBF function is selected due to its capacity of maximizing the distance between the hyperplane and the points [START_REF] Peng | TPMSVM: A novel twin parametric-margin support vector machine for pattern recognition[END_REF]. Since we use six support vectors, the decision function Γ(x l ) is applied to the remaining points x l of the matrix X. Then, the result of Γ(x l ), is compared with y l . If the values match, it is considered that the SVM has correctly classified the point x l . As result, using a non optimal setting of σ and C, the algorithm may achieve a classification percentage of 90.91%. This result shows that only two movements of all the trials (flexion of second subject with trial three, and flexion of the third subject with trial three) are not correctly classified. It is important to remark that the SVM is trained only with 13.63% of the whole trials (considering trials of subject two and three), but the algorithm is able to classify correctly the EMG signals produced during flexion and extension of the first subject whose patterns are new for the classifier and was not used in the training step. In order to improve this result, we analyse the effect of the parameters σ and C in order to identify their influence in the final percentage of classification. This numerical analysis consists of a double iteration changing the values of the enounced parameters. As result, we find that there is an optimal area for values of σ near to 1.1 and C close to 2.5, where the percentage of classification reaches 100% as is shown in Fig. 5. It is important to note that the 100% of successful classification is due to the fixed (finite) number of testing data. To test the method in a more realistic environment, the EMG signal may be corrupted by some noisy data. Such scenario is discussed in the following section.

CLASSIFICATION ROBUSTNESS IN THE PRESENCE OF NOISY MEASUREMENTS

Even if we obtained an accurate result of EMG signals identification with the nonlinear SVM classifier, it is necessary to consider that there are several conditions that could influence the results (e.g. the sweat and fatigue of the subject and displacement of the recording electrodes). The effect of some non idealistic conditions can be modeled as an additive white Gaussian noise (AWGN) [START_REF] Reaz | Techniques of EMG signal analysis: detection, processing, classification and applications[END_REF]. In our simulations, we added AWGN to the biceps and triceps EMG signal measurements of: (a) the first subject for trial 1, (b) the second subject for trial 1, (c) the third subject for trial 5. Note that the contaminated trials are only used to test robustness and thus, they ware not in the training set X of SVM. The noise is generated for several values of signal to noise ratio (SNR), using 1000 Monte Carlo trials for each value of SNR. The corresponding percentages of the additive power of noise, over the power of EMG signal, lies between 0.64% and 1.43%. Subsequently of adding noise to these signals, the same process described in section 4 is applied in order to obtain features of the noisy signals. The SVM achieves a successful classification of 99.79%. The results of percentage of classification with respect to the percentage of noise added to the signal, for the subject one, is presented in Fig. 6 (for the other subjects the same behavior is noticed but due to space limitation it is not presented here).

CONCLUSION

In this paper, a new elbow flexion and extension identification scheme is proposed. Quaternion based method was used to correct the ULMT data analysis, which allow us to calculate the position of missing kinematic markers. Accordingly, with the ULMT, we calculated, in an accurate way, the angles and speeds of the movement. These values are important, in order to select the exact time window, that matches with each movement, avoiding to extract features with wrong information. Furthermore, we designed a novel criterion to select the best couple of feature for the classification. Then, we set up a non linear SVM classifier which has as input the selected features. Finally, numerical simulation showed that the proposed scheme performs almost perfectly (99,79%) with a moderate contaminated measurement.

Fig. 1 .

 1 Fig. 1. Distribution of markers in the upper limb kinematic chain.

Fig. 2 .

 2 Fig. 2. Software's interface.

Fig. 3 .

 3 Fig. 3. Examples of missing ULMT Markers.

Fig. 4 .

 4 Fig. 4. Distribution of features for flexion and extension. Red circles and blue squares represent, respectively, flexion and extension features.

Fig. 5 .

 5 Fig. 5. Percentage of classification as function of σ and C.

Fig. 6 .

 6 Fig. 6. Classification results after adding noise for the first subject and trial one.

Table 1 .

 1 Angles and speeds of movements.

	Subj. Trial	Range Angle [ Flex Ext	Flex	Ext
	1	1	057,92 -071,29 1,80	-2,04
		1	097,37 -102,28 1,24	-1,30
	2	2 3	108,69 -117,79 1,93 117,27 -117,87 8,15	-1,76 -6,22
		4	117,27 -117,87 1,49	-1,32
		1	048,54 -038,74 2,72	-1,77
		2	043,18 -039,88 1,71	-1,22
	3	3 4	036,80 -041,40 2,56 046,60 -044,44 2,62	-2,18 -1,52
		5	046,76 -046,56 2,54	-1,84
		6	045,63 -043,73 2,41	-1,49

• ] Speeds [ rad /s]

  Table

		Flexion		Extension
	row	Biceps	Triceps	row	Biceps	Triceps
		Ent MF Ent MF		Ent MF Ent MF
	1 3,3 269,4 3,4 270,2 12 3,7 267,1 2,3 262,6
	2 3,4 270,3 2,0 259,0 13 2,0 259,3 2,2 261,9
	3 3,5 271,0 2,0 259,7 14 2,0 259,3 2,2 262,0
	4 3,2 272,6 2,5 262,7 15 2,5 262,6 2,5 263,8
	5 3,5 269,8 2,1 258,0 16 1,8 257,6 2,4 264,6
	6 4,4 280,6 2,8 266,7 17 2,6 263,4 2,9 269,8
	7 3,0 269,8 2,2 262,1 18 2,3 265,6 2,1 267,1
	8 3,2 272,6 2,5 262,7 19 2,5 262,6 2,5 263,8
	9 3,4 269,5 2,1 260,0 20 2,3 263,8 1,7 260,7
	10 4,3 273,7 2,7 264,4 21 2,6 263,7 3,0 271,2
	11 3,3 269,1 2,3 262,6 22 2,1 261,5 2,2 265,9

This work has been supported by the Université Paris Lumière through the ProMain project. A. Rubiano acknowledges Universidad Militar Nueva Granada, where she is assistant professor.

The open source software will be available soon at http://leme.u-paris10.fr/promain-565200.kjsp?RH=1415865400449