Sébastien Briot
email: sebastien.briot@irccyn.ec-nantes.fr

Wisama Khalil
email: wisama.khalil@irccyn.ec-nantes.fr

Recursive and Symbolic Calculation of the Elastodynamic Model of Flexible Parallel Robots

This paper presents a symbolic and recursive calculation of the elastodynamic model of flexible parallel robots. In order to reduce the computational time required for simulating the elastodynamic behavior of robots, it is necessary to minimize the number of operators in the symbolic expression of the model. Some algorithms have been proposed for the rigid case, for parallel robots with lumped springs or for serial robots with distributed flexibilities. In this paper, we extend the previous works to parallel robots with distributed flexibilities.

The generalized Newton-Euler model is used and combined with the principle of virtual powers to minimize the number of operators and intermediate variables. Recursive calculations are proposed for the computation of the Jacobian matrices defining the kinematic constraints in order to decrease the number of operators. The proposed algorithm is used to compute the elastodynamic model of a prototype of a planar parallel robot developed at IRCCyN: the DualEMPS. The computed model is compared both with simulations done on Adams and with experiments. The validity of the approach in terms of result accuracy and computational time is demonstrated.

Introduction

Many studies have been devoted to the computation of the full dynamic model of rigid parallel robots [START_REF] Khalil | General solution for the dynamic modeling of parallel robots[END_REF][START_REF] Ibrahim | Inverse and direct dynamic models of hybrid robots[END_REF][START_REF] Moon | Applied dynamics[END_REF], however there are still many opened questions concerning the computation of their elastodynamic model. One of them concerns the reduction of the computational time that is generally huge and prevents the use of such models in many applications, such as real-time control, design optimization process, etc. To decrease the computational cost, it is either (i) possible to decrease the number of variables (using model reduction methods [START_REF] Craig | Coupling of substructures for dynamic analysis[END_REF][START_REF] Briot | Reduced elastodynamic modelling of parallel robots for the computation of their natural frequencies[END_REF][START_REF] Craig | Structural dynamics[END_REF] and truncated series of shape functions [START_REF] Blevins | Formulas for natural frequency and mode shape[END_REF]) or (ii) to efficiently compute the symbolic model in order to minimize the number of operators (similarly to what has been done for rigid robots [START_REF] Khalil | Modeling, Identification and Control of Robots[END_REF], robots with lumped springs [START_REF] Khalil | Modeling of mechanical systems with lumped elasticity[END_REF] or for serial robots with distributed flexibilities [START_REF] Boyer | An efficient calculation of the flexible manipulator inverse dynamics[END_REF]). Both methods can obviously be combined. However, this paper only focuses on the efficient symbolic computation for the elastodynamic model of parallel robots.

For the computation of the elastodynamic models of robots, two main approaches are generally proposed (see [START_REF] Dwivedy | Dynamic analysis of flexible manipulators, a litterature review[END_REF] for a large literature review): (i) lumped modeling [START_REF] Khalil | Modeling of mechanical systems with lumped elasticity[END_REF][START_REF] Kruszewski | The rigid finite element method[END_REF][START_REF] Wittbrodt | Dynamics of Flexible Multibody Systems[END_REF]] and (ii) modeling using distributed flexibilities [START_REF] Boyer | An efficient calculation of the flexible manipulator inverse dynamics[END_REF][START_REF] Shabana | Dynamics of Multibody Systems[END_REF][START_REF] Bauchau | Flexible multibody dynamics[END_REF][START_REF] Stachera | Automation and Robotics, chapter 15: Derivation and Calculation of the Dynamics of Elastic Parallel Manipulators[END_REF], Rognant et al., 2010, de Jalon and Bayo]. The lumped modeling is generally simpler to use by non-experts in finite element methods but, to obtain a correct model accuracy, higher number of elements is required, thus increasing the computational time. The most relevant works in lumped modeling methods are probably [START_REF] Khalil | Modeling of mechanical systems with lumped elasticity[END_REF] and [START_REF] Wittbrodt | Dynamics of Flexible Multibody Systems[END_REF]. In [START_REF] Khalil | Modeling of mechanical systems with lumped elasticity[END_REF], the flexibilities are modeled by one degree of freedom (dof ) springs and a systematic procedure for the symbolic computation of the model is proposed. This procedure allows the minimization of the number of operators in the model. In [START_REF] Wittbrodt | Dynamics of Flexible Multibody Systems[END_REF], springs of higher dimension are used, but it is shown that for obtaining good accuracy, the number of elements must be high, thus leading to bigger computational time.

Contrary to lumped modeling, using distributed flexibilities allows the improvement of the model accuracy. However, such methods require highlyskilled users. In [START_REF] Shabana | Dynamics of Multibody Systems[END_REF][START_REF] Bauchau | Flexible multibody dynamics[END_REF], Rognant et al., 2010, de Jalon and Bayo], some general methodologies based on the Lagrange principle that can be applied to any system are proposed. In the case of closed-loop mechanisms, some Jacobian matrices are computed that allow taking into account the kinematic dependencies. The work [START_REF] Stachera | Automation and Robotics, chapter 15: Derivation and Calculation of the Dynamics of Elastic Parallel Manipulators[END_REF] combines the Lagrange principle and the principle of virtual works for computing the elastodynamic model of parallel robots. However, the main drawback of such general methodologies is that they are not specifically designed for parallel robots and that they do not guarantee the minimization of the number of operators for the symbolic computation of the model. A first approach for the systematic computation of the required Jacobian matrices has been proposed in [START_REF] Bouzgarrou | New approach for dynamic modelling of flexible manipulators[END_REF]. However, this approach was not designed so that a minimal number of operators for the model symbolic computation can be obtained. Indeed, to the best of our knowledge, a systematic procedure to compute the elastodynamic model (using distributed flexibilities) of parallel robot with a minimal numbers of operators has never been proposed, even if such models are useful for several different reasons:

• In design optimization processes, optimization algorithms that test thousands of robot parameters are used. If the computational time required for the calculation of one iteration of the the elastodynamic model of the robot is not minimized, several days, and even month, can pass before the results are obtained.

• Symbolic expressions, with a minimized number of variables and operators, are requested for computing the identification model, in order to decrease the risk of error propagation due to the noisy measured data.

The present work aims at filling this gap. In order to minimize the number of operations, a generalized Newton-Euler (NE ) model (which is known to reduce the number of operators [START_REF] Khalil | Modeling, Identification and Control of Robots[END_REF][START_REF] Boyer | An efficient calculation of the flexible manipulator inverse dynamics[END_REF][START_REF] Boyer | Robot Manipulators. Modeling, Performance, Analysis and Control, chapter 7: Modeling and Control of Flexible Robots[END_REF][START_REF] Shabana | Dynamics of flexible bodies using generalized newton-euler equations[END_REF]) is used and combined with the principle of virtual powers (PVP ). The Jacobian matrices defined in the PVP are computed using recursive algorithms that decrease the number of operators. For computing the full elastodynamic model of parallel robots, the approach proposed in [Khalil and[START_REF] Khalil | General solution for the dynamic modeling of parallel robots[END_REF][START_REF] Ibrahim | Inverse and direct dynamic models of hybrid robots[END_REF] for rigid robots and in [START_REF] Stachera | Automation and Robotics, chapter 15: Derivation and Calculation of the Dynamics of Elastic Parallel Manipulators[END_REF] for flexible robots is adapted. This approach proposes to:

1. convert the parallel robot into a virtual system defined by: (i) a treestructure robot composed of the kinematic chains of the actual robot for which all joints (passive and active) are considered actuated and (ii) a free body (the platform which is considered as rigid) (Fig. 1), 2. compute the elastodynamic model of this new virtual system, 3. finally, close the loops by using the PVP.

This method is effective, systematic and can be applied to any parallel robot.

The paper is organized as follows. In Section 2, the computation of the generalized NE model of a flexible free body is recalled. Then, in Section 3, the elastodynamic model of the virtual tree structure is developed. Section 4 shows the computation of the elastodynamic model of the actual parallel robot. In Section 5, the proposed approach is applied for the computation of the elastodynamic model of a prototype of parallel robot designed at the IRCCyN, named the DualEMPS. Finally, in Section 6, conclusions are drawn.

Fixed base

Moving platform joints actuated joints elements A first condensed version of this work has been proposed in [START_REF] Briot | Recursive symbolic calculation of the dynamic model of flexible parallel robots[END_REF]. The present paper contains detailed explanations to enlighten the theoretical understanding of the method, especially in Section 4 in which, contrary to [START_REF] Briot | Recursive symbolic calculation of the dynamic model of flexible parallel robots[END_REF]] that focused on isostatic robots, a general and systematic method for the choice of the generalized coordinates of overconstrained parallel robots is presented. Moreover, this is the first time that experimental validations are shown.

A 1,1 A 2,1 A 3,1 A m1,1 A m1-1,1 A 1,n A 2,n A 3,n A mn,n A mn-1,n A 1,k A 2,k A 3,k A mk,k A mk-1,k A 1,2 A 2,2 A 3,2 A m2,2 A m2-1,2 (

Recall on the Generalized Newton-Euler Model of a Flexible Free Body

This section aims at making some recalls on the way to obtain the generalized NE model of a flexible free body. For further development, the reader is referred to [START_REF] Boyer | An efficient calculation of the flexible manipulator inverse dynamics[END_REF][START_REF] Boyer | Robot Manipulators. Modeling, Performance, Analysis and Control, chapter 7: Modeling and Control of Flexible Robots[END_REF][START_REF] Shabana | Dynamics of flexible bodies using generalized newton-euler equations[END_REF][START_REF] Sharf | Simulation of flexible-link manipulators: basis functions and non-linear terms in the motion equations[END_REF].

Kinematics of a Flexible Free Body

The twist of any free flexible body j at any point M j (Fig. 2(a)) can always be expressed as:

v j (M j ) ω j (M j ) = t j + ω j (A j ) × r j (M j ) 0 + v e j (M j ) ω e j (M j ) (1)
where

t j = v T j (A j ), ω T j (A j )
T is the twist of the local frame fixed on the body j expressed at point A j , v j (A j ) and ω j (A j ) being the translational and rotational velocities, respectively, r j (M j ) is the position vector of the

M j (M 0j ) M 0j B 0j B j (B 0j ) A 0j =A j R g R j (t) v j (A j ) ω j (A j ) Σ Φ dk j (M 0j )q ek j k=1 N j r j (M j ) (a) Parameters of one flexible link j B j =A j+1 B j+1 =A j+2 q j q j+1
(b) Assembly of two flexible links point M j (of the deformed body) with respect to the local frame, v e j (M j ) and ω e j (M j ) are the translational and rotational velocities due to the body elasticity that can be parameterized as truncated series of Rayleigh-Ritz shape functions:

v e j (M j ) ω e j (M j ) = Φ d j (M 0j ) Φ r j (M 0j ) qe j = Φ j (M 0j ) qe j (2)
with Φ d,r j = φ d,r1 j , • • • , φ d,rN j j , φ dk j (M 0j ) and φ rk j (M 0j ) being the kth shape functions for the displacement and the rotation of the flexible body expressed at point M 0j , respectively, and qT e j = qe1 j , • • • , qeN j j , qek j being the k-th elastic generalized velocity of the body and N j the number of considered shape functions. It should be noted that the vector r j (M j ) of (1) can be expressed as:

r j (M j ) = r j (M 0j ) + Φ d j (M 0j )q e j (3)
where r j (M 0 j ) is the position of the point M 0j with respect to the local frame and q T e j = q e1 j , • • • , q eN j j are the elastic generalized coordinates of the body.

Equations ( 1) to (3) define the kinematic model of the flexible free body j. This model is thus parameterized by the following set of variables:

• t j that are the Euler variables characterizing the rigid displacement of the body j at the origin of the local frame,

• q e j that are the Lagrange variables characterizing the elastic displacement of the body j.

Thus, the kinematics model of a flexible free body is parameterized by N j supplementary variables q e j and N j shape functions compared to the free rigid body case.

It should be mentioned that this description can be applied to both robot segments and joints, as along as all the shape functions can be defined.

Matrix Form of the Generalized Newton-Euler Model for a Flexible Free Body

Skipping all mathematical derivations and referring the reader to [START_REF] Boyer | An efficient calculation of the flexible manipulator inverse dynamics[END_REF][START_REF] Boyer | Robot Manipulators. Modeling, Performance, Analysis and Control, chapter 7: Modeling and Control of Flexible Robots[END_REF][START_REF] Shabana | Dynamics of flexible bodies using generalized newton-euler equations[END_REF][START_REF] Sharf | Simulation of flexible-link manipulators: basis functions and non-linear terms in the motion equations[END_REF], the generalized NE model of a flexible free body can be obtained via the application of the PVP. This model takes the form:

  ∆f c j ∆c c j ∆s c j   =    m j I d3 MS T j MS de j MS j I j MS re j MS T de j MS T re j M ee j      γ j (A j ) α j (A j ) qe j   +   f in j c in j s in j   +   0 0 K ee j q e j   +   f g j c g j s g j   = M j ṫj qe j + c j (4)
where

• m j the total mass of the body j

• I dk is the k × k Identity matrix,
• I j is the 3 × 3 total inertia matrix of the body j,

• MS j is the 3 × 3 matrix containing the first moments of inertia of the body j,

• M ee j is the N j × N j elastic mass matrix of the body j,

• MS de j and MS re j are 3 × N j matrices,

• ṫj = γ j (A j ) T , α j (A j ) T T is the acceleration of frame j expressed at point A j with γ j (A j ) and α j (A j ) the translational and rotational accelerations of the local frame fixed on the body j at point A j , respectively,

• f in j and c in j are vectors of the inertial force and torques, respectively,

• s in j is the vector of the generalized elastic forces,

• f g j and c g j are vectors of the gravity force and torques plus the other external forces, respectively,

• s g j is the vector of the generalized elastic forces due to gravity,

• K ee j the stiffness matrix of the body j,

• M j is the global mass matrix of the body j,

• c j is the global vector of the centrifugal, Coriolis, gravity and elastic forces of the body j,

• ∆f c j and ∆c c j are the total sum of forces and torques transmitted by the joints, respectively,

• ∆s c j is the total sum of the elastic generalized forces transmitted by the joints.

The computation of all these terms is detailed in the Appendix. This generalized NE model is known to reduce the number of operators necessary for the computation of the elastodynamics behavior of a flexible link [START_REF] Boyer | An efficient calculation of the flexible manipulator inverse dynamics[END_REF]].

Computation of the Elastodynamic Model for the Virtual System

Let us consider a parallel robot composed of one rigid fixed base (denoted as the element 0), one rigid moving platform and n legs, each leg being a serial kinematic chain composed of m i -1 elements linked by m i joints (revolute, prismatic or even fixed joints -i = 1, ..., n) (Fig. 1(a)). The actuated variables are denoted by q a and the leg passive variables by q p . The platform coordinates are denoted as x p . The size n a of q a must be equal or superior to the number of dof of the parallel robot. The number of shape functions by element is denoted as N ij (j = 1, ..., m i -1). As a result, there are n e = n i=1 m i -1

j=1 N ij elastic variables grouped in the vector q e . All the active, passive and elastic variables are grouped into the vector q T t = q T a , q T p , q T e .

Application of the PVP

Considering the link j of leg i (denoted in the following as the element ij), the PVP states that:

t * T ij q * T e ij ∆f T c ij ∆c T c ij ∆s T c ij T = q * T t τ t ij 0 ne (5)
where τ t ij is the vector of the virtual input torques of the tree structure (Fig. 1(b)) due to the movement of the link ij and 0 ne a null vector of dimension n e .

The twist t * ij and generalized elastic velocities q * e ij are linked to the generalized velocities q * t by the relation:

t ij qe ij = J ij qt (6)
where J ij is the Jacobian matrix of the element ij whose expression will be given in the following section.

Eq. ( 5) can thus be rewritten as:

q * T t J T ij ∆f T c ij ∆c T c ij ∆s T c ij T = q * T t τ t ij 0 ne (7)
which leads to, for any virtual velocity q * t :

τ t ij 0 ne = J T ij ∆f T c ij ∆c T c ij ∆s T c ij T (8)
Thus, now considering all the links of the robot, it comes that

τ t = i,j τ t ij 0 ne = i,j J T ij   ∆f c ij ∆c c ij ∆s c ij   = i,j J T ij M ij ṫij qe ij + c ij (9)
where τ t is the vector of the tree-structure input efforts.

In the next section, recursive algorithms for the computation of the vectors t ij , ṫij and of the Jacobian matrices J ij are developed.

Recursive Computation of the Velocities and Jacobian Matrices

Let us consider the Fig. 2 describing the displacement of the element j.

From (1), it comes that

v j (B j ) ω j (B j ) = t j + ω j (A j ) × r j (B j ) 0 + v e j (B j ) ω e j (B j ) (10)
If an element j + 1 is linked at B j by an actuated joint moving at a velocity qj+1 (Fig. 2(b) -if the joint is a fixed joint, qj+1 = 0), it comes that:

t j+1 = v j (B j ) ω j (B j ) + qj+1 a j+1 (11)
where a j+1 is the unit twist describing the motion of the actuator [START_REF] Khalil | Modeling, Identification and Control of Robots[END_REF].

As a result, for the element ij of the global robot, it can be demonstrated that (in the following expressions, the preceding superscript indicate the frame in which the vector expression is given) [START_REF] Boyer | An efficient calculation of the flexible manipulator inverse dynamics[END_REF]]:

ij t ij = ij T i(j-1) i(j-1) t i(j-1) + ij R i(j-1) Φ i(j-1) (A ij ) qe i(j-1) + qij ij a ij (12)
which can also be written as:

ij t ij = J t ij qt (13) with J t ij = ij T i(j-1) J t i(j-1) + Φ q eij + A ij (14)
where

Φ q eij = 0 • • • ij R i(j-1) Φ i(j-1) (A ij ) • • • 0 A ij = 0 • • • ij a ij • • • 0 (15) In the matrix Φ q eij , the term ij R i(j-1) Φ i(j-1) (A ij
) is located at the columns corresponding to the variables qe i(j-1) and, for the matrix A ij , the term ij a ij is located at the column corresponding to the variable qij .

In the previous expressions, matrix Φ i(j-1) is the matrix containing all shape functions for the element i(j -1) and:

ij R i(j-1) = ij R i(j-1) 0 0 ij R i(j-1) ij T i(j-1) = ij R i(j-1) I d6 - 0 i(j-1) ri(j-1) (A ij ) 0 0 (16)
where ij R i(j-1) is the rotation matrix between frames ij and i(j -1), i(j-1) ri(j-1) (A ij ) is the cross product matrix associated with the vector i(j-1) r i(j-1) (A ij ), i.e the position of point A ij in the frame i(j -1).

Finally, the global Jacobian matrix J ij of ( 6) can be computed as:

J ij = J t ij O q eij (17)
where O q eij is defined such that

qe ij = O q eij qe

Recursive Computation of the Accelerations

Differentiating (10), it can be shown that [START_REF] Boyer | An efficient calculation of the flexible manipulator inverse dynamics[END_REF]:

ij ṫij = ij T i(j-1) i(j-1) ṫi(j-1) + qij ij a ij + ij h ij + ij R i(j-1) Φ i(j-1) (A ij )q e i(j-1) (18)
where:

ij h ij = i(j-1) h lin ij i(j-1) h ang ij ij h lin ij = ij R i(j-1) i(j-1) ω i(j-1) (A i(j-1) )× ij R i(j-1) (2Φ d i(j-1) (A ij ) qe i(j-1) + i(j-1) ω i(j-1) (A i(j-1) ) × i(j-1) r i(j-1) (A ij )) ij h ang ij = ij R i(j-1) ( qij ( i(j-1) ω i(j-1) (A i(j-1) )+ Φ r i(j-1) (A ij ) qe i(j-1) ) × ij a ij + i(j-1) ω i(j-1) (A i(j-1) )× ij R i(j-1) Φ r i(j-1) (A ij ) qe i(j-1) ) (19)
Eq. ( 18) can be then put into the form:

ij ṫij = J t ij qt + ij g ij (20) with ij g ij = ij h ij + ij T i(j-1) i(j-1) g i(j-1) (21)
initialized with i0 g i0 = 0 if the base is fixed. Thus,

ij ṫij qe ij = J t ij O q eij qt + ij g ij 0 = J ij qt + ij g s ij (22)

Elastodynamic model of the virtual system

Introducing ( 22) into (9) leads to:

τ t 0 ne = i,j J T ij M ij J ij qt + c s ij ( 23
)
where

c s ij = J T ij c ij + M ij ij g s ij (24)
The NE equations for the rigid moving platform are given by [START_REF] Ibrahim | Inverse and direct dynamic models of hybrid robots[END_REF]:

f p = M p ṫp + c p (25)
where f p is the platform reaction wrench expressed at the platform local frame origin, M p is the platform mass matrix, ṫp is the platform acceleration screw and c p the centrifugal, Coriolis, gravity effects and external efforts applied on the platform. Finally, the global elastodynamic model of the virtual structure can be put into the form:

  τ t 0 ne f p   = i,j J T ij M ij J ij M p qt ṫp + c s ij c p = M t qt ṫp + c t (26)
Adding the contributions of the motor inertia and friction effects [START_REF] Khalil | Modeling, Identification and Control of Robots[END_REF]:

  τ t 0 ne f p   = M s t qt ṫp + c s t + I t 0 0 0 qt ṫp + F v qt 0 + F s sign ( qt ) 0 = M tot qtot + c tot (27)
where I t is a diagonal matrix whose j-th element corresponds to the value of the inertia of joint j (the j-th element of I t is equal to zero is the joint is passive or if it corresponds to an elastic coordinate) and F v , (F s , resp.) a diagonal matrix of viscous (Coulomb, resp.) friction parameters.

Computation of the Elastodynamic Model of Parallel Robots

The model of the virtual tree structure and of the free moving platform does not consider the closed-loop kinematic chains. As a matter of fact, the n qtot components of the generalized velocity vector qT tot = [ qT t t T p ] are dependent. The independent components are gathered in vector q (dim q = n q < n tot ) and their determination is described thereafter.

Determination of the Generalized Coordinates of the Parallel Robot

For determining one possible subset of generalized coordinates for the parallel robot, let us express the relations between the vector of generalized velocities of the tree structure qt and the twist of the last element m i for each leg i. Using (6) for computing the twist i,m i t i,m i of the extremity of each leg, it comes that:

i,m i t i,m i = J i t i,m i qt i (28)
where J i t i,m i can be obtained from J t i,m i by extracting the columns corresponding to the vector qT t i = q T a i , q T p i , q T e i , i.e. the vector concatenating all active, passive and elastic variables of the leg i.

As the leg extremity is also linked to the rigid platform, its twist can be related to the platform twist t p via the rigid body displacement relation:

i,m i t i,m i = J i p t p , where J i p = i,m i R 0 I 3 -0 pi 0 I 3 (29)
in which J i p is a 6×6 matrix, 0 pi is the cross product matrix of vector 0 p i that characterizes the position of the attachment point A i,m i with respect to the platform center position (Fig. 1(a)) and i,m i R 0 is the 6 × 6 rotation matrix between the global frame and the local frame attached to element i, m i . Thus, expressing the twist i,m i t i,m i for each leg in relation with the platform twist t p and generalized coordinates qt i , the following set of equations is obtained:

   J 1 t 1,m 1 • • • 0 . . . . . . . . . 0 • • • J n tn,m n       qt 1 . . . qtn    -    J 1 p . . . J n p    t p = 0 ⇔J t qt -J p t p = J t -J p qt t p = J tot qtot = 0 (30)
where J tot is a r n × n qtot matrix, n qtot > r n (r = 6 for a spatial robot, r = 3 for a planar robot). This means that a subset qd of r n variables in vector qtot is linked to the others. This subset is not unique. An idea could be to put all passive joints and platform variables in this subset, i.e., q * d = qT p t T p T . However, for over-constrained parallel robots, dim ( q * d ) < r n. As a result, this vector should be completed using some other elastic variables that could be chosen arbitrarily. Meanwhile, it must be mentioned that most of parallel robots have identical legs and that such a methodology will lead to an asymmetrical description of the leg variables, which is not ideal. In order to avoid this problem, we had better put in qd the last r components qf t i of each vector qt i that is now decomposed into two parts: qT t i = q0T t i qfT t i . Thus, variables qf t i are related to the others using (30):

-

    J f 1 t 1,m 1 • • • 0 . . . . . . . . . 0 • • • J f n tn,m n        qf t 1 . . . qf tn    =    J 01 t 1,m 1 • • • 0 -J 1 p . . . . . . . . . . . . 0 • • • J 0n tn,m n -J n p         q0 t 1 . . . q0 tn t p      (31)
which can be written under the form

-J f t    qf t 1 . . . qf tn    = J 0 t -J p      q0 t 1 . . . q0 tn t p      (32)
or also

   qf t 1 . . . qf tn    = qd = -J f t -1 J 0 t -J p      q0 t 1 . . . q0 tn t p      =    J d 1,1 • • • J d 1,n J d 1,n+1 . . . . . . . . . . . . J d n,1 • • • J dn,n J d n,n+1    q = J d q (33)
where

• J 0i t i,m i (J f i t i,m i
, resp.) are the columns of matrix J i t i,m i corresponding to variables q0 t i ( qf t i , resp.);

• J d ij is the matrix that relates the variable qf t i to q0 t j , j = 1, . . . , n;

• J d i,n+1 is the matrix that relates the variable qf t i to t p .

It is noteworthy that the inversion of matrix J f t involves only the inversion of the n r × r matrices J f j t 1,m 1 , which is more efficient in terms of computational time. Moreover, when 3D beam elements are used for leg i, if the coordinates q f t i are the elastic coordinates of l-th element of this leg (denoted as element il), it can be proven that, as the k-th column of matrix J f i t il corresponds to a unit twist that describes the displacement of the leg extremity due to the k-th coordinate of vector q f t i , J f i t il is equal to [START_REF] Khalil | Modeling, Identification and Control of Robots[END_REF]]

J f i t il = i,m i R il -i,m i R il il pil 0 i,m i R il ( 34
)
where i,m i R il is the rotation matrix between the local frame linked at element i, m i and the local frame linked at element il and il pil is the cross product matrix of the vector il p il that characterizes the position of the leg extremity with respect to the frame linked at element il. Thus its inverse is equal to

J f i t il -1 = i,m i R T il pil i,m i R T il 0 i,m i R T il ( 35
)
which does not require much calculation. If 2D beam elements are used, some similar relations can be obtained. Finally, the Jacobian matrix relating all variables qtot to the configuration variables qT = q0T

t 1 • • • q0T tn t p can be obtained as:

qtot =          q0 t 1 qf t 1 . . . q0 tn qf tn t p          =          I dc 1 • • • 0 0 J d 1,1 • • • J d 1,n J d 1,n+1 . . . • • • . . . . . . 0 • • • I dcn 0 J d n,1 • • • J dn,n J d n,n+1 0 • • • 0 I d6               q0 t 1 . . . q0 tn t p      = J q (36)
where I dc i is the c i × c i identity matrix, c i being the size of vector q0 t i .

Computation of the Generalized Accelerations of the Actual Parallel Robot

Expressing the acceleration i,m i ṫi,m i of the extremity of each leg using ( 22) and combining this expression with the time derivative of ( 29), it comes that:

i,m i ṫi,m i = J i t i,m i qt i + i,m i g i,m i = J i p ṫp + Ji p t p (37)
Thus, considering all the robot legs,   

J 1 t 1,m 1 • • • 0 . . . . . . . . . 0 • • • J n tn,m n       qt 1 . . . qtn    -    J 1 p . . . J n p    ṫp +    1,m 1 g 1,m 1 -J1 p t p . . . n,mn g n,mn -Jn p t p    = 0 ⇔J t qt -J p ṫp + b * = J t -J p qt ṫp + b * = 0 (38)
As a result, by analogy with (33), it can be demonstrated that

qd = J d q + J f t il -1 b * = J d q + b d (39)
Finally, similarly to expression (36),

qtot =          q0 t 1 qf t 1 . . . q0 tn qf tn ṫp          = Jq +          0 b d1 . . . 0 b dn 0          = Jq + b (40)
where b di is the part of the vector b d corresponding to the accelerations qf t i .

Elastodynamic Model of the Actual Parallel Robot

Considering the actual robot, the PVP states that:

qT * tot (M tot qtot + c tot ) = qT * r τ 0 n eind (41)
where qr = E q, in which E is a matrix that makes it possible to sort vector q in such a manner that the first n a rows of qr correspond to the vector qa of the actual active variables, τ is the vector of the actual actuator input efforts and 0 n eind is a zero vector of dimension n eind = n q -n a . Introducing ( 36) into (41), it comes that,

qT * r EJ T (M tot qtot + c tot ) = qT * r τ 0 n eind (42)
(42) must be true for any value of qT * r , thus

τ 0 n eind = EJ T (M tot qtot + c tot ) (43)
Finally, introducing (40) into (43) leads to:

τ 0 n eind = EJ T M tot JE T qr + EJ T (M tot b + c tot ) = Mq r + c (44)
which is the full elastodynamic model of the parallel robot, with M its mass matrix and c the global vector of the centrifugal, Coriolis, gravity and elastic forces.

Discussion

In order to finally obtain the symbolic equations for the model with the minimum number of operations, the following method is used. First, the rigid kinematics of each element are modeled using the modified Denavit-Hartenberg notations [START_REF] Khalil | Modeling, Identification and Control of Robots[END_REF]. If the link ij taken into consideration is flexible, N ij supplementary elastic variables q e i j are introduced in combination with N ij shape functions. Then, the previously developed equations are used in the following sequence:

• Step 0: Initialization of the algorithm Variables considered known: q, q Computation of:

-Φ d i(j-1) (A ij ), Φ r i(j-1) (A ij ), Φ i(j-1) (A ij ) from (2); i(j-1) r i(j-1) (A ij ) from (3); -M ij , K ee ij , f g ij , c g ij , s g ij from (4);
-M p , c p from (25);

ij R i(j-1) , ij T i(j-1) from ( 16); ij a ij from (11);

-A ij , Φ q eij from (15);

• Step 1: Forward recurence (computation of the twist and acceleration of each body, and computation of the Jacobian matrices required for applying the PVP on the virtual tree structure) Computation of: of q, q and qa .

-ij t ij from (12); -f in ij , c in ij , s in ij , c ij from (
-Forward dynamic model: computation of q as a function of q, q and τ .

For each computation, the elements of a vector or a matrix containing at least one mathematical operation are replaced by an intermediate variable. This variable is written in an output file which contains the model. The elements that do not contain any operations are not modified. The obtained vectors and matrices are propagated in the subsequent equations. Consequently, at the end, the dynamic model is obtained as a set of intermediate variables. Those that have no effect on the desired output (τ and the n eind last values of qr corresponding to the elastic variables in the case of the inverse model, qr for the direct model) can be eliminated by scanning the intermediate variables from the end to the beginning. With this procedure, it is also possible to know the exact number of operators necessary for the computation of the model. This algorithm has been successfully implemented with Mathematica and is used in the next section for computing the elastodynamic model of a flexible planar parallel robot.

Case Study

The previous equations are used to compute the elastodynamic model of the DualEMPS, a prototype of flexible planar PRRRP robot (Fig. 3 -R stands for a passive revolute joint and P for an active prismatic joint) designed and manufactured at IRCCyN. This robot is actuated by two rotary actuators controlled by a dSPACE card in which simple PD control laws are introduced (the cut-off pulsation is set to 100 rad/s). The actuator movements are transmitted to the prismatic pairs via the use of ball screws (the stroke of the prismatic pairs is of 25cm). The two prismatic pairs are parallel and are linked to the two legs via passive revolute joints. Each leg is designed such that it can be decomposed as a succession of rigid and elastic links (Fig. 4) rigidly attached all together. The elastic links are very thin when compared to the rigid links. Their cross-sections are rectangular with a width of 4mm and an height of 50mm and they are made of Duralumin (AU4G). The two legs are connected via a passive revolute joint.

The modified Denavit-Hartenberg parameters corresponding to the architectural description of the Fig. 4 are given in Table 1, where the parameters d ij and q ij are detailed in Fig. 3. The gravity is directed along z 0 . The a priori rigid dynamic parameters of the links have been extracted from CAD and are described in Table 2. In this table, m ij is the mass of the link ij, mx ij its first moment of inertia around the axes of the plane (y ij Oz ij ), zz ij the second moment of inertia around z ij , f v ij the viscous friction parameter and f s ij the Coulomb inertia parameter. Note that the values of the friction terms have been set by hand so that the obtained results best fit with experimental data. The elastic links are modeled as planar beam finite elements (one element by elastic link, i.e. there are 9 elastic coordinates in total). Their corresponding elastic dynamic parameters are not detailed for reasons of paper compactness but can be easily computed using the formulas given in Section 2 applied to the beam shape functions given in [START_REF] Shabana | Dynamics of Multibody Systems[END_REF].

The model is thus calculated with Mathematica applying the proposed 0.017 0.00 0.00 14 0.396 0.030 0.003 0.00 0.00 15 0.000 0.000 0.000 0.00 0.00 16 0.078 0.005 5.12e -4 0.00 0.00 17 0.177 0.006 2.56e -4 0.00 0.00 21 95.196 0.000 0.000 25 250 22 0.843 0.004 7.06e -4 0.02 0.08 23 0.252 0.057 0.017 0.00 0.00 24 0.190 0.011 9.44e -4 0.00 0.00 25 0.000 0.000 0.000 0.01 0.005 Table 3: Comparison of natural frequencies of the DualEMPS robot computed with the proposed model, computed with Adams and experimentally measured for q 11 = q 21 = 0.

(Hz)

f 1 f 2 f 3 f 4 f 5 f

PD Controller Robot Motion Generator

Low-pass filter Model τ ref q aref , q aref , q aref . .. q a 17 y P .. created. In this model, the elastic links are modeled using discrete flexible elements (after several tests on the Adams model accuracy, it is decided to use 8 discrete flexible element by elastic link). Some first experimental tests are carried out for measuring the natural frequencies of the DualEMPS using the setup presented in Fig. 5. The application of experimental modal testing to the DualEMPS is done through impact hammer excitation, a 3-D accelerometer response and data postprocessing, conducted using the DataBox software developed at IRCCyN and commercialized by MITIS company [MIT]. The impact point is near point P and the directions of excitation are contained in the horizontal plane in order to get the resonance frequencies that involves planar displacements of the robot. Piezoelectric triaxial accelerometers with a sensitivity of 1000 mV/g are used to measure the three acceleration responses. The acquisitions are performed for several robot configurations. However, the natural frequencies of the DualEMPS are near constant anywhere in the workspace, and all tested configurations lead to almost the same results. Therefore, only the results for the nominal configuration q 11 = q 21 = 0 will be presented. Each measurement resolution is equal to 1 Hz as the acquisition time and the sampling time are equal to 1 s and 40 µs, respectively.

The resonance frequencies are obtained with a fast Fourier transform of the signals given by the triaxial accelerometer. As a result, the measured resonance frequencies between 0 and 200 Hz are given in Table 3. It is noteworthy that the resonance frequencies of the DualEMPS amount to its natural frequencies as the damping is considered negligible. The obtained results show that the five first frequencies predicted with our model are very close to the measured ones. However, as the model is made of three beam elements only, the frequency prediction after the fifth mode is not correct anymore. This prediction could be improved by introducing a higher number of elements, but this will increase the computational time. Nevertheless, having a good prediction for all frequencies in the interval [14,110]Hz is already a very good result. Note that the Adams model prediction gives almost the same result as our model for the five first frequencies and is not correct for the sixth frequency (even if it is closer to reality than our model).

The second experimental tests are described thereafter. Some reference trajectories are introduced in the robot controller. During the robot displacements, three types of data are recorded (Fig. 6):

• the value of the input torques reference τ ref given by the controller to the actuators;

• the actuator displacements q a given by the robot encoders;

• the acceleration 17 ÿP of the point P (in the local y direction) measured via the use of a uniaxial accelerometer with a sensitivity of 995mV/g.

Then, to make sure that the models give a correct estimation of the robot input torques and elastic displacements, the real measured actuator displacements are given as the model inputs, as well as the computed actuator velocities and accelerations, estimated from differentiation and low-pass filtering of the encoders data (Fig. 6). Results in terms of end-effector accelerations 17 ÿP est and computed input torques τ est are finally compared with reality.

The first reference trajectory is a square in the joint space (Fig. 7(a)). The resulting displacement of the end-effector is a path following the workspace boundaries (Fig. 8). On each square edge, the velocity profile represented in Fig. 7(b) is applied: the actuator moves during 1.8s and then stops so that the free vibration of the robot can be observed. The measured acceleration 17 ÿP of point P , low-pass filtered at 100Hz in order to suppress high-frequency noise, is plotted at Fig. 9 and compared with the acceleration computed with our model and with Adams. There are very good correlations between the measurements and the simulations (with better results for our model), even if the damping is higher in the simulations which can be due both to solver problems and to too large model approximation for the dissipative terms. For the simulations, Adams gives the result after several hours of computation while our model send the results in 6'05 min (for a Pentium 4 2.70GHz, 8Go of RAM).

The motor torques prediction (in prismatic joint side) is also compared with the measured actuator torques1 in Figs. 10 and11. The torque prediction is better for our model even if there are some problems of noise when the actuator velocity is very low (mainly due to problem of Coulomb friction modeling with the 'sign' function). A second reference trajectory is introduced in the robot controller. This is a circle of radius 0.1m centered in [0.28, 0.90]m along which is applied a constant velocity profile of 0.20m/s (Fig. 8). The predictions of the acceleration 17 ÿP of point P and of the input torques using our model are shown in Figs. 12, 13 and 14. There is still a very good correlation between the measurements and the simulations. Note that for this second simulation, data provided by Adams are not presented as we have just shown that Adams gives similar results and requires much longer computational time.

All these results show the validity and efficiency of our modeling approach.

Conclusions

This paper has presented a symbolic and recursive calculation of the dynamic model of flexible parallel robots. Such models are useful for several different reasons:

• In design optimization processes, optimization algorithms that test thousands of robot parameters are used. If the computational time required for the calculation of one iteration of the the elastodynamic model of the robot is not minimized, several days, and even month, can pass before the results are obtained.

• Symbolic expressions, with a minimized number of variables and operators, are requested for computing the identification model, in order to decrease the risk of error propagation due to the noisy measured data.

In order to reduce the computational time, the number of operators during the symbolic calculation of the model has been minimized. In order to achieve this goal, the Newton-Euler principle was used and combined with the principle of virtual powers. The Jacobian matrices defining the kinematic constraints have been computed using some recursions that decrease the number of operators. Using such a method, both link and joint flexibilities can be taken into account.

The proposed algorithm was used to compute the elastodynamic model of a prototype of a planar parallel robot developed at IRCCyN: the DualEMPS. The obtained model has been compared with a model created in Adams and with experimental measurements. It has been shown that our model gives correct estimations of the robot natural frequencies, end-effector displacements and input torques with a computational time largely inferior to the time required by Adams. All the obtained results have shown the validity of our approach.

It should be finally mentioned that our model computes the solution for a trajectory of 25 s in 6 minutes. This is due to the fact that, for estimating the elastic deformations, velocities and accelerations, a non linear differential equation must be solved. However, for real time control, if the values of the deformations are fed into the model (through the measurements of the deformations via accelerometers or any other sensor), the computational time is compatible with real time applications.

Future works will concern the development of methodologies for the identification of the elastodynamic models of parallel robots and the decrease of the required computational time by the use of model reduction techniques. power due to the reactions at point A j and B j (Fig. 2(a)), where f A j (f B j , resp.) is the force applied at point A j (B j , resp.) and m A j (m B j , resp.) is the moment applied at point A j (B j , resp.). Thus, introducing (2) in the previous expressions,

P * grav = Σ j g dm T v * j (A j )+ Σ j r j (M j ) × g dm T ω * j (A j )+ Σ j g T Φ d j (M 0j )dm q * e j (50)
and

P * reac = f A j -f B j T v * j (A j )+ m A j -m B j -r j (B j ) × f B j T ω * j (A j )- f T B j Φ d j (B 0j ) + m T B j Φ r j (B 0j ) q * e j (51)
Finally, the virtual power due to the internal elastic efforts can be written as [START_REF] Boyer | Robot Manipulators. Modeling, Performance, Analysis and Control, chapter 7: Modeling and Control of Flexible Robots[END_REF]: P * int = -q e j K ee j q * e j (52)

where K ee j is the stiffness matrix of the considered body that can be computed using the expressions presented in [START_REF] Shabana | Dynamics of Multibody Systems[END_REF]. Thus, introducing (47), ( 48), ( 50), ( 51) and ( 52) into (45), developing and simplifying the expressions, and taking into account the fact that the virtual velocities v * j (A j ), ω * j (A j ) and q * ei j are independant, three sets of equilibrium equations can be obtained: ∆f c j = m j (γ j (A j )g) + MS de j qe j -MS j × α j (A j ) + ω j (A j ) × (ω j (A j ) × MS j ) + 2ω j (A j ) × MS de j qe j (53) ∆m c j = MS j × (γ j (A j )g) + MS re j qe j + ω j (A j ) × (I j ω j (A j )) + 2 N j k=1 I re kj ω j (A j ) qek j + 2

N j i,k=1
I ee ikj ω j (A j )q ei j qek j + I j α j (A j ) (54) and ∆s c j | i = MS T de j | i (γ j (A j )g) + MS T re j | i α j (A j ) + M ee j | i qe j + 2

N j k=1 λ ki ω j (A j ) qek j -ω j (A j ) T I T re ij ω j (A j ) -N j k=1 ω j (A j ) T I ee ikj ω j (A j )q ek j + K ee j | i q e j (55)

where the symbol '| i ' denotes the line i of the considered vector or matrix, m j is the mass of the body j and the terms MS j , MS de j , MS re j , I j , I re ij , I ee ikj , ∆f c j , ∆m c j and ∆s c j are defined in the following expressions:

MS j = Σ j r j (M j )dm = Σ j r j (M 0j )dm + Σ j Φ d j (M 0j
)dm q e j =MS r j + MS de j q e j (56)

is the global vector of the first moments of inertia (MS r j is the 3×1 constant vector of the first moments of inertia of the rigid link and MS de j a 3 × N j constant matrix),

MS re j = Σ j rj (M j )Φ d j (M 0j )dm = Σ j rj (M 0j )Φ d j dm + Σ j Φ d j (M 0j )q e j × Φ d j (M 0j )dm = N j k=1   β k + N j i=1 λ ki q ei j   (57)
with rj the cross-product matrix associated with the vector r j and rT j (M 0j ) φdk j (M 0j )q ek j dm

β k =
+ Σ j N j k=1
φT dk j (M 0j )r j (M 0j )q ek j dm

+ Σ j N j i,k=1
φT di j (M 0j ) φdk j (M 0j )q ei j q ek j dm = I rr j + N j k=1 I re kj + I T re kj q ek j + N j i,k=1

I ee ikj q ei j q ek j (60)

is the global matrix of the second moments of inertia (I rr j is the 3 × 3 constant matrix of the second moments of inertia of the rigid link and I re kj and I ee ikj 3 × 3 constant matrices), in which φdi j is the cross-product matrix associated with the vector φ di j , MS de j MS j I j MS re j MS T de j MS T re j

∆f c j = f A j -f B j (
M ee j      γ j (A j ) α j (A j ) qe j   +   f in j c in j s in j   +   0 0 K ee j q e j   +   f g j c g j s g j   = M j ṫj qe j + c j (64)
where f in j = ω j (A j ) × MS T j ω j (A j ) + 2MS de j qe j (65) c in j =ω j (A j ) × (I j ω j (A j )) + 2

N j k=1
I re kj ω j (A j ) qek j + 2

N j i,k=1
I ee ikj ω j (A j )q ei j qek j (66)

s in j | i =2 N j k=1
λ ki ω j (A j ) qek j -ω j (A j ) T I T re ij ω j (A j ) -N j k=1 ω j (A j ) T I ee ikj ω j (A j )q ek j (67)

f g j = -m j g, c g j = -MS j g, s g j = -MS T de j g (68)

Figure 1 :

 1 Figure 1: A general parallel robot.

Figure 2 :

 2 Figure 2: Schematics of the flexible elements into consideration.

-

  Ji p from (37); -b * from (38); b d from (39); b from (40); -M, c from (44); • Step 4: Solving the model -Inverse dynamic model: computation of τ and qe as a function

Figure 3 :

 3 Figure 3: The DualEMPS flexible parallel robot.

Figure 4 :Figure 5 :

 45 Figure 4: Top view of the CAD drawings of the two robot legs.

  17

Figure 6 :

 6 Figure 6: Measured and estimated data for the second experimental tests.

  velocity profile along each square edge

Figure 7 :Figure 8 :

 78 Figure 7: The first reference trajectory.

  Comparison of the measure and Adams

Figure 9 :

 9 Figure 9: Point P acceleration for the first reference trajectory.

Figure 10 :

 10 Figure 10: Input torque of the first actuator for the first reference trajectory.

Figure 11 :Figure 12 :

 1112 Figure 11: Input torque of the second actuator for the first reference trajectory.

Figure 13 :Figure 14 :

 1314 Figure 13: Comparison of the measured and computed actuator 1 input torque for the second reference trajectory.

φ

  dk j (M 0j ) × φ di j (M 0j )

  61) ∆m c j = m A jm B jr j (B j ) × f B j (62) and ∆s c j = f T B j Φ d j (B 0j ) + m T B j Φ r j (B 0j ) (63)Finally, the generalized NE model of a flexible free body can be written under the following matrix form:

Table 1 :

 1 Modified Denavit-Hartenberg parameters of the DualEMPS robot. ij a(ij) µ ij σ ij α ij

	d ij	θ ij r ij

Table 2 :

 2 Rigid dynamic parameters for the links of the DualEMPS robot (SI units).

	ij	m ij	mx ij	zz ij	f s ij f v ij
	11 95.196 0.000	0.000	25	250
	12 0.843 0.004 7.06e -4 0.02 0.08
	13 0.252 0.057

For the Adams model, simulations are run without taking into account the friction effects on the actuated joints which are added by hand after the computation

Acknowledgements

This work was supported by the French ANR ARROW (ANR 2011BS3 006 01).

The authors would like to thank Maxime Gautier and Anthony Jubien for their precious help with the prototype and during the experiments.

Appendix

Computation of the Elastodynamic Model of the Flexible Free Body Using the PVP

In [START_REF] Boyer | Robot Manipulators. Modeling, Performance, Analysis and Control, chapter 7: Modeling and Control of Flexible Robots[END_REF], the PVP is used for computing the elastodynamic model of a free flexible body. This principle can be written as:

where P * acc is the virtual power of due to the accelerations quantities, P * int is the virtual power due to the internal elastic efforts and P * ext is the virtual power of the external efforts. It is to be noticed that, in what follows in the paper, the superscript ′ * ′ stands for a virtual quantity.

By definition, the virtual power of due to the accelerations quantities is equal to [START_REF] Boyer | Robot Manipulators. Modeling, Performance, Analysis and Control, chapter 7: Modeling and Control of Flexible Robots[END_REF],

where Σ j is the body under consideration, dm a small quantity of mass and [START_REF] Boyer | Robot Manipulators. Modeling, Performance, Analysis and Control, chapter 7: Modeling and Control of Flexible Robots[END_REF] γ j (M j ) = γ j (A j ) + Φ d j qe j + 2ω j (A j ) × Φ d j qe j

is the translational acceleration of the point M j with respect to the base frame, with α j (A j ) the rotational acceleration of the considered body at point A j with respect to the base frame. Introducing (2) into (46), it comes that:

The virtual power of the external efforts can be decomposed into two parts

where

T g dm is the virtual power of the gravity field g and P * reac = f T A j v * j (A j ) + m T A j ω * j (A j )f T B j v * j (B j )m T B j ω * j (B j ) the virtual


Sébastien Briot
email: sebastien.briot@ens.insa-rennes.fr

Sylvain Guégan

Eric Courteille

Vigen Arakelian
email: vigen.arakelyan@insa-rennes.fr

G C G M -Ea3913

ON THE DESIGN OF PAMINSA 1 : A NEW CLASS OF PARALLEL MANIPULATORS WITH HIGH-LOAD CARRYING CAPACITY

This paper deals with the new results concerning the topologically decoupled parallel manipulators called PAMINSA. The conceptual design of these manipulators, in which the copying properties of pantograph linkage are used, allows obtaining a large payload capability. A newly synthesized fully decoupled 3 degrees of freedom manipulator is discussed and a systematic approach for motion generation of input point of each limb is presented. It is shown that the conditions of complete static balancing of limbs are not effective in the case of dynamic mode of operation. This is approved by numerical simulations and experiments. A significant contribution of this paper is also the experimental validation of the suggested design concept. It is shown experimentally for the first time that the static loads on the rotating actuators, which displace the platform in the horizontal plane, are cancelled.

INTRODUCTION

A parallel manipulator comprises of several kinematical limbs which connect the fixed base to the moving platform. In this way, each kinematic chain carries only a fraction of the 1 PArallel Manipulator of the I.N.S.A. total load. So it allows creating mechanical structures with higher stiffness, which contain movable links having relatively small masses.

However the parallel manipulators have also some drawbacks, as for example, a limited workspace, more constraining singularity loci or a high coupling of kinematics and dynamics.

This non-linearity of the kinematic and dynamic models of parallel manipulators is not attractive for industrial applications. In order to solve this problem, in the last few years new structures had been developed. The literature review of previous research on decoupling of the kinematic and dynamic input/output relationships of parallel manipulators shows that, in most cases, two approaches are developed: -decoupling between position and orientation [START_REF] Bouzgarrou | Rigidity Analysis of T3R1 Parallel Robot with Uncoupled Kinematics[END_REF][START_REF] Yu | New XY-Theta Positioning Table with Partially Decoupled Parallel Kinematics[END_REF][START_REF] Bernier | A New Parallel Structure with 6 Degrees of Freedom[END_REF][START_REF] Gregorio | A New Decoupled Parallel Manipulator[END_REF][START_REF] Lallemand | The 6-dof 2-DELTA Parallel Robot[END_REF]; -fully-decoupling [START_REF] Carricato | A novel fully decoupled 2-dof parallel wrist[END_REF][START_REF] Carricato | On the topological and geometrical synthesis and classification of translational parallel mechanisms[END_REF][START_REF] Kong | A Class of 3-DOF Translational Parallel Manipulator with Linear Input -Output Equations[END_REF][START_REF] Gosselin | A Fully Decoupled 3-DOF Translational Parallel Mechanism[END_REF][START_REF] Gogu | Singularity-Free Fully-Isotropic Parallel Manipulators with Schönflies Motions[END_REF], i.e. the decoupling of the displacements about all the degrees of freedom of the platform. Despite rather-encouraging results, we would like to note that the fully-decoupled manipulators have drawbacks also, for example, a lack of stiffness or increasing of the joint number. It is obvious that it is not easy to solve the problem of the full decoupling of the movements and to conserve the principal advantages of the parallel structures. That's why we tried to find a compromise between the decoupling of the movements and the architectural particularity of the parallel structures. In other words, we change the statement of the problem: it is not essential that parallel architecture will be fully-decoupled, it can also be partially decoupled. But it is important to obtain a mechanical architecture with high payload.

Let us consider a new conceptual design approach of decoupling in which the displacements of the platform in the horizontal plane are independent from its displacements along the vertical axis.

Why this approach is more effective? To answer this question, it is necessary to take into account the following considerations.

An energetic analysis shows that the work of gravity applied on a body moving in the horizontal plane is equal to zero (the gravitational forces are always perpendicular to the displacements, Fig. 1). But the work of the same force when the body is moving along the vertical axis is other than zero (the gravitational forces are parallel to the displacements). This phenomenon is used in the design of the hand operated manipulators [START_REF] Arakelian | Equilibrage des manipulateurs manuels[END_REF][START_REF] Arakelian | The history of the creation and development of hand-operated balanced manipulators[END_REF], in which the horizontal displacements of the payload are carried out manually and the vertical displacements are actuated. This principle is applied in the design of the new decoupled manipulators mentioned above.

Fig. 1. GRAVITY WORK IN SPACE: MOTIONS IN THE HORIZONTAL PLANE AND ALONG THE VERTICAL AXIS.

Let us consider the mechanical architectures with these properties.

The typical limbs are single-open-chains which are kinematic chains serialized by only binary-joint-links. For the development of new architectures, the pantograph linkage is used as a limb. The pantograph is a mechanical system with two input points A i and B i and one output point C i (Fig. 2). These input points linearly control the displacement of the output point C i . Thus one linear actuator connected with input point B i can control the vertical displacement of the output point C i and the other linear actuator with horizontal axis can control its horizontal displacements. Note please that these motions are completely decoupled, i.e. they can be carried out independently.

Let us suppose that there is a concentrated mass in the point C i . In this case, the load of the gravitational forces on the actuator of the horizontal displacements will be equal to zero (the gravitational forces are always perpendicular to the displacements). With regard to the actuator for the vertical displacements, the load of the gravitational forces is not zero (the gravitational forces are parallel to the displacements). However, the input/output relationships for vertical and horizontal displacements are linear and they are determined by the magnification factor of the pantograph. These properties of the pantograph mechanism are used in the new class of manipulators called PAMINSA. Now let us connect three Scheiner pantograph linkages with the base and the platform as it is shown in Fig. 3. In the obtained structure, one vertical actuator M v controls the vertical displacement of point B i of the pantograph linkages, and as a result, the vertical displacement of pairs C i of the moving platform. The generation of motion in the horizontal plane is achieved by the actuators M 1 , M 2 and M 3 connected through two passive pairs (H i and I i ) with input joint A i . The movement of each chain M i H i I i is planar as well as the displacement of input joint A i . As a result, actuators M i control the horizontal displacements of points C i .

Thus, it is easy to see, that for the suggested architecture, the vertical translation of the platform along z axis is decoupled from its displacements in the horizontal plane (translations along x and y axes and rotation  about z axis).

Among the obvious advantages of the suggested manipulator architecture, we had noted followings points: (i) the decoupling of the control powers in two parts, makes it possible to raise an important payload to a fixed altitude by powerful actuators and then to displace it on the horizontal plane by less powerful actuators; (ii) a great accuracy in the horizontal positioning, because the payload can be locked in the horizontal plane by mechanical architecture of the manipulator (in other words, if the position of the vertical actuator is fixed, the altitude of the platform cannot change); (iii) the cancellation of static loads on the rotating actuators which displace the platform in the horizontal plane; (iv) the simplification of the vertical control based on linear input/output relationships. It should be noted that the motion generation of the input point A i can be carried out by several manners. All architectures shown in appendix have the same properties mentioned above. The different schematics for input motion generation can be easily distinguished by the projection of the structure on the horizontal plane (the pair M ' ior H ' icorresponds to the displacement of both pair M ior H iand pantograph linkage).

Basic structures of PAMINSA

Based on this approach, it is possible to obtain parallel manipulators from 3 to 6 DOF [START_REF] Arakelian | Design and Prototyping of New 4, 5 and 6 Degrees of Freedom Parallel Manipulators Based on the Copying Properties of the Pantograph Linkage[END_REF]. Among several structures, the manipulators for the production of Schoenflies motions (Fig. 3) are more appealing for industrial applications because they allow the positioning of a device at a given point and then its orientation around one given axis.

The next evolution of manipulators PAMINSA showed that it is also possible to create fully-decoupled structures based on the pantograph linkages.

It should be noted that fully-decoupling the three possible translations of a manipulator is an important challenge for many researchers [START_REF] Carricato | On the topological and geometrical synthesis and classification of translational parallel mechanisms[END_REF][START_REF] Kong | A Class of 3-DOF Translational Parallel Manipulator with Linear Input -Output Equations[END_REF][START_REF] Gosselin | A Fully Decoupled 3-DOF Translational Parallel Mechanism[END_REF]. Such manipulators are able to replace the existing serial Cartesian robot (XYZ).

Let us consider for the first time a fully-decoupled PAMINSA manipulator with translatory motions.

Fully-decoupled architecture with 3 translatory DOF

As for the basic version of the PAMINSA with 4-DOF is concerned (Fig. 3), one vertical actuator M v (Fig. 4) controls the vertical displacement of point B i of the pantograph linkages and, as a result, the vertical displacement of pairs C i of the moving platform. The horizontal displacements of the manipulator along x and y axes are allowed by the translations of actuators M 1 and M 3 . Let us now suppose legs 1 and 2 are disconnected from leg 3. Input points A 1 and A 2 are linked to actuator M 1 through the two kinematic chains H 1 I 1 and H 2 I 2 . Thus, if actuators M 1 and M v are fixed, the permitted passive motion of the platform is a pure translation along an axis parallel to joints H 1 and H 2 . Analogically, the passive displacement of point J 3 of the third leg is a pure translation along an axis parallel to H 3 . As a result, the planar projection of the manipulator is equivalent to the decoupled planar parallel manipulator presented at figure 4b. Thus, the three translations of the manipulator are fully decoupled. The kinematics of such a manipulator is very simple. Let q 1 , q 3 and q v respectively be the articular coordinates of actuators M 1 , M 3 and M v . The coordinates of the controlled point of the platform are x, y and z. Thus we have the following relationship:

Jq X  ,              k k k 0 0 0 1 0 0 0 1

J

where X = [x, y, z] T , q = [q 1 , q 2 , q v ] T and k is the magnification factor of the pantograph linkages. Thus, the velocity equation is:

q J X    So, J is the Jacobian matrix of the manipulator. Since J is a constant diagonal matrix with non zero elements, the manipulator does not have any singularities of Type 1, 2 and 3 [START_REF] Gosselin | Singularity analysis of closed-loop kinematic chains[END_REF]. However, please note that only cases of singularities appear with the degeneracy of the parallelograms A i E i D i F i .

Our observations showed that, in the typical fullydecoupled manipulators, the payload is supported by only one limb. In the case of the suggested structure, the distribution of the payload is more efficient because each limb carries only a fraction of the load. As a result, the manipulator based on these properties should have a better stiffness.

INPUT TORQUES MINIMIZATION

In this section, the minimization of input torques of PAMINSA manipulator with 4-DOF is discussed. The optimal results are obtained on the bases of static and dynamic models of the manipulator developed in [START_REF] Arakelian | Static and Dynamic Analysis of the PAMINSA[END_REF].

Reduction of input torques in static mode of operation.

In [START_REF] Arakelian | Static and Dynamic Analysis of the PAMINSA[END_REF], it was shown that the input torques due to the gravitational forces of the pantograph linkage can be cancelled by its optimal redistribution. Thus, by complete static balancing of legs, it should be possible to cancel the loads due to the movable masses of the limbs on the rotating actuators.

Fig. 5 shows the variations of the actuator torques before and after mass balancing. After complete static balancing the potential energy of the manipulator is constant for any configuration and zero actuator torques are required.

FIG. 5. VARIATIONS OF THE ACTUATOR TORQUES FOR z = -0.6 m AND = 0° BEFORE (DARK GREY) AND AFTER (BRIGHT GREY) STATIC BALANCING OF LEGS.

The presented example was calculated using the link parameters of the developed prototype [START_REF] Arakelian | Static and Dynamic Analysis of the PAMINSA[END_REF]. The added masses are located at the axis F i and their values are 2.8 kg (to observe the increase in masses after balancing, it should be noted that the mass of each pantograph linkage before balancing was 3.1 kg).

It is obvious that such a balancing is very useful for static applications of the manipulator. However, in the case of increase in acceleration of the movable masses, the complete static balancing becomes ineffective because the increase in inertia forces leads to the complementary loads. That is why an optimal balancing of limbs is considered below.

Reduction of input torques in dynamic mode of operation

In [START_REF] Arakelian | Static and Dynamic Analysis of the PAMINSA[END_REF], we presented an analytic dynamic model of PAMINSA based on the Lagrange equations:

                  4 1 d d i ij i j j j A Q q L q L t  
where  i are the Lagrange multipliers (i=1,…, 4), q j are the generalized coordinates (j=1,…,8), Q j are the input torques or forces.

Coefficients A ij are obtained by differentiating the closureloop equations of the manipulator with respect to the generalized coordinates. Then the given system of equations is solved as follows: firstly the Lagrange multipliers must be obtained from the first four Lagrange equations (for q j = x, y, , z) and then the input torques/forces Q j can be determined from the last four Lagrange equations.

FIG. 7. ACTUATORS' TORQUES FOR UNBALANCED (FULL LINE) AND STATICALY BALANCED MANIPULATORS (DOTTED LINE).

For a comparative analysis of the unbalanced and statically balanced manipulators in dynamic mode of operation, a prescribed trajectory in horizontal plane is defined (Fig. 6) and, for the manipulator parameters given in [START_REF] Arakelian | Static and Dynamic Analysis of the PAMINSA[END_REF], the input torques are determined (Fig. 7).

Thus, the obtained results showed that in the case of accelerated motions for input torques minimization, it is better to achieve a partial mass balancing.

FIG. 8. ACTUATORS' TORQUES FOR UNBALANCED (FULL LINE) AND PARTIALY BALANCED MANIPULATORS (DOTTED LINE).

The minimization problem can be expressed as the following:

ip ip r m dyn j Q , min max 
i.e. it is necessary to find such a distribution r ip of moving masses m ip which allows the minimization of the maximum values of the input torques.

The calculated values of added masses located at the axis F i of each leg are 1.3 kg. The values of the input torques after complete static balancing and optimal balancing are presented in figure 8.

Thus, the analysis of obtained results showed that such an optimization allows the reduction of the maximal values of the input torques up to 45%.

PROTOTYPE AND EXPERIMENTAL TESTS

In the I.N.S.A. of Rennes, a prototype of PAMINSA for the production of Schoenflies motions was built (Fig. 9) [START_REF] Arakelian | Design and Prototyping of New 4, 5 and 6 Degrees of Freedom Parallel Manipulators Based on the Copying Properties of the Pantograph Linkage[END_REF]. The displacements on the horizontal plane of the developed prototype are obtained by Harmonic Drive motors connected with the legs by means of toothed-belt transmissions.

FIG. 9. PROTOTYPE OF THE PAMINSA WITH 4-DOF.

As an actuator which controls the linear displacement of the vertical axes of the manipulator's legs, the PARVEX motor system was chosen. Considering that the pantograph links are hollow aluminum tubes with a thickness of 1.5 mm, the pantograph linkage has been carried out with double rods in order to improve the stiffness of the manipulator.

Validation of the design concept

In order to validate the suggested design concept, we have measured the input torques/efforts of the actuators with the payload of 200 N (Fig. 9a) and without it (Fig. 9b) for the trajectory given in figure 10. The obtained results are presented in figure 11.

The numerical simulations were validated by experimental tests. The curves with and without payload for the 3 rotating actuators (Fig. 11a,b,c) are superposed. We can see that they are similar, i.e. the loads on these actuators are cancelled. The small differences might result from friction in the joints, manufacturing errors, elasticity of the links and tracking errors.

Regarding vertical actuator (Fig. 11d), it supports the payload and the increase of the input force is significant.

Reduction of input torques in static mode of operation.

The static balancing of the manipulator is experimentally accomplished by adding counterweights of 2.8 kg at the axis F i of the pantograph linkages (Fig. 12).

FIG. 12. COUNTERWEIGHTS ADDED ON PANTOGRAPH LINKAGES.

In order to prove the minimization of input torques before and after balancing, some arbitrary configurations of the manipulator were examined. The tested poses are given in table 1.

For these seven positions of the platform, the maximal absolute values of the input torques of the 3 rotating actuators before and after complete static balancing are measured (table 2). The reduction of the maximal input torques varies from 74% to 85%. For the trajectory given in Fig. 6, we measure the input torques of the three rotating actuators for cases (without any payload and with the payload for dynamic mode of operation).

Figure 13 shows the obtained results. The reduction of the maximal input torques with the added counterweight of 1.3 kg varies from 41% to 55%.

Thus, we can note that the obtained measures prove all numerical simulations presented above.

CONCLUSIONS

PAMINSA is a new family of parallel manipulators designed for high load carrying. In this paper, new results concerning these manipulators are presented. Particularly, a new architecture with 3 fully decoupled translatory motions is disclosed.

FIG. 13. ACTUATORS' TORQUES WITHOUT (FULL LINE) AND WITH (DOTTED LINE) ADDED MASSES FOR DYNAMIC OPTIMIZATION

The reduction of the input torques is also studied. It is shown that, for a dynamic mode of operation, the complete static balancing can not be effective in terms of input torques. In the case of accelerated motions, it is proposed to carry out an optimal redistribution of the movable masses and to achieve a partial mass balancing.

Then, a prototype of PAMINSA and experimental tests are presented. It is shown that the experimental tests prove the validity of the suggested design concept and the numerical simulations.

Finally, it should be noted that the proposed manipulators have been patented [START_REF] Arakelian | Robot Parallèle Comprenant des Moyens de Mise en Mouvement Décomposés en Deux Sous-Ensembles[END_REF] and additional information is available upon request.

FIG. 2 FIG. 3 .

 23 FIG. 2. SCHEINER PANTOGRAPH LINKAGE.

  FIG. 4. FULLY-DECOUPLED PAMINSAWITH 3-DOF.

  FIG. 6. THE PRESCRIBED TRAJECTORY FOR z = -0.7 m and  = 0°.

( a )

 a Torque of the actuator M1 (b) Torque of the actuator M2 (c) Torque of the actuator M3

FIG. 10 .

 10 FIG. 10. POSITION OF THE PLATFORM FOR z = -0.6 m AND  = 0 °.

( a )

 a Torque of the actuator M1 (b) Torque of the actuator M2 (c) Torque of the actuator M3

TABLE 1 THE POSES FOR THE EXPERIMENTAL VALIDATION OF THE STATIC BALANCING.

 1

	Pose	x (m)	y (m)	z (m)	 (deg.)
	1	0.124	0.096	-0.6	34.72
	2	0.015	0.047	-0.615	-20.23
	3	-0.149	0.009	-0.733	4.53
	4	0.072	0.129	-0.497	9.23
	5	-0.053	0.09	-0.540	33.92
	6	-0.134	-0.075	-0.389	-3.5
	7	-0.173	-0.042	-0.687	15.64

TABLE 2 THE ABSOLUTE VALUES OF THE MAXIMAL INPUT TORQUES BEFORE (CASE 1) AND AFTER (CASE 2) STATIC BALANCING Pose

 2

	Reduction

Case 1 (N.m) Case 2 (N.m)

Reduction of input torques in dynamic mode of operation.

APPENDIX EXAMPLES OF MOTION GENERATION OF THE INPUT POINT AI OF PANTOGRAPH LINKAGES