J-P Merlet

On the robustness of cable configurations of suspended cable-driven parallel robots

Keywords: cable-driven parallel robots, cable configurations, kinematics, statics 124567 124567

Cable-driven parallel robot (CDPR) are parallel robots that use coilable cables as legs. We are interested here in suspended CDPR for which there is no cable that exert a downward force on the platform. If we assume that the cables are mass-less and not elastic it has been shown that at a given pose whatever is the number m > 6 of cables there will always be at most 6 cables under tension simultaneously. A cable configuration (CC) at a given pose is the set of cables number that are under tension and usually there are several possible CC for the same pose. These CC are not equivalent in terms of cable tensions, sensitivity to measurement errors and therefore it make sense from a control viewpoint to enforce the "best" CC to obtain the optimal robot configuration, which can be done by controlling the length of the cables that are not members of the CC so that we are sure that they are slack. Hence we are interested in ranking the different CC in term of robustness. We propose several ranking indices for a CC and algorithms to calculate these indices at a pose, on a trajectory or when the robot moves on a surface and we show examples for a CDPR with 8 cables.

I. Introduction

Cable-driven parallel robot (CDPR) are robots whose platform are connected to the ground by a set of cables that can be uncoiled or coiled. The study of CDPR has started about 30 years ago with the pioneering work of Albus [START_REF] Albus | The NIST SPIDER, a robot crane[END_REF] and Landsberger [START_REF] Landsberger | A new design for parallel link manipulator[END_REF] but there has been recently a renewed interest in such a robot, both from a theoretical and application viewpoint. For example kinematics analysis of CDPR is much more complex than the one of parallel robot with rigid legs as static equilibrium has to be taken into account [START_REF] Bruckman | Parallel manipulators, New Developments, chapter Wire robot part I, kinematics, analysis and design[END_REF], [START_REF] Jiang | The inverse kinematics of 3-d towing[END_REF], [START_REF] Verhoeven | Analysis of the workspace of tendon-based Stewart platforms[END_REF] and is still an open issue especially as not all cables of a robot with m cables may be under tension [START_REF] Abbasnejad | Real solutions of the direct geometrico-static problem of underconstrained cable-driven parallel robot with 3 cables: a numerical investigation[END_REF], [START_REF] Merlet | Solving the direct geometrico-static problem of the 3-3 cable-driven parallel robots by interval analysis: preliminary results[END_REF], [START_REF] Carricato | Direct geometrico-static problem of under-constrained cable-driven parallel robots with three cables[END_REF], [START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF], [START_REF] Pott | An algorithm for real-time forward kinematics of cabledriven parallel robots[END_REF] and that only stable solutions have to be determined [START_REF] Carricato | Stability analysis of underconstrained cable-driven parallel robots[END_REF]. Numerous applications of CDPRs have been mentioned e.g. large scale maintenance studied in the European project Cablebot [START_REF] Pott | IPAnema: a family of cable-driven parallel robots for industrial applications[END_REF], rescue robot [START_REF] Tadokoro | A portable parallel manipulator for search and rescue at large-scale urban earthquakes and an identification algorithm for the installation in unstructured environments[END_REF], [START_REF] Merlet | A portable, modular parallel wire crane for rescue operations[END_REF] and transfer robot for elderly people [START_REF] Merlet | a family of modular wire-driven parallel robots[END_REF] to name a few.

The output point of the coiling mechanism for cable i * Jean-Pierre.Merlet@inria.fr will be denoted A i while this cable is attached at point B i on the platform. We define an absolute frame (O, x, y, z) and we assume that the coordinates of A i in this frame are known. In the same manner we define a mobile frame (C, x r , y r , z r ) that is attached to the platform (figure 1). Without lack of generality C will be assumed to be the center of mass of the platform with coordinates (x c , y c , z c ). We assume that the coordinates of B i in the mobile frame are known. The proprioceptive measurement on such a robot is usually the cable lengths as other physical quantities such as orientation of the cables or their tensions are difficult to measure and are very noisy. The kinematic analysis of such robot is drastically influenced by the cable model that is used. We will assume here that the cables are mass-less and non deformable (which is a realistic assumption for some synthetic cables as soon as the size of the CDPR is not too large). We will also assume that the number of cables is larger than 6 in order, for example, to enlarge the size of the CDPR workspace. In this paper we consider a specific class of CDPR: suspended CDPR for which there is no cable that can exert a downward force, gravity being used as a virtual wire that is pushing the platform downward. In that case it has been shown that there will be at most 6 cables under tension at the same time [START_REF] Merlet | Checking the cable configuration of cable-driven parallel robots on a trajectory[END_REF]. The length of the cable will be denoted ρ i and if it is not slack its positive tension will be τ i . We will assume that the platform is submitted to gravity only so that the wrench F applied on the platform is {0, 0, -mg, 0, 0, 0} where m is the mass of the platform. Let S be a sextuplet of cables that may support the platform at a given pose X. The inverse jacobian matrix of the robot for this sextuplet will be denoted J -1 while τ will be the vector of the cable tensions. The sextuplet will support the platform if

ρ i = ||A i B i || ∀ i ∈ S ρ i > ||A i B i || ∀ i ∈ S (1)
which indicates that the length of the cables under tension shall be exactly the distance between A i , B i while for the slack cables this length should be larger than this distance.

At the same time the sextuplet should satisfy the mechanical equilibrium condition

F = J -T τ (2)
with τ having only positive components. In this equation J -T is the transpose of the inverse jacobian matrix whose i-th column is

(( A i B i ρ i CB i × A i B i ρ i ))
where C is the center of mass of the platform. For a given pose there will be usually several sextuplets of cables that satisfy equations (1,2), that will be called valid cable configurations (CC). Each of the valid cable configuration exhibits a different set of tensions in the cables together with different kinematics capabilities. Note that even a perfect knowledge of the cable lengths it is impossible to determine what is the current cable configuration as it depends on the history of the system [START_REF] Merlet | Checking the cable configuration of cable-driven parallel robots on a trajectory[END_REF] and that a cable configuration may have from 1 to 6 cables.

From a control viewpoint the concept of cable configuration is usually ignored although it has a high influence on the behavior of the robot. An alternative for a trajectory has been proposed in [START_REF] Ramadour | Grasping objects with a cable-driven parallel robot designed for transfer operation by visual servoing[END_REF]: instead of being passive with respect to the cable configuration the trajectory is split in several parts for each of which a specific cable configuration is chosen and is guaranteed to be reached by imposing on the cables that are not part of the cable configuration to be slack, this being obtained by choosing as desired length value ||A i B i || + ∆ρ where ∆ρ is large enough to ensure that in spite of the control and model errors the cable length ρ will be larger than ||A i B i ||. Clearly whenever possible the selected CC should have 6 cables under tension to ensure full controlability of the robot.

The purpose of this paper is to propose criterion to determine the best CC with 6 cables under tension. The purpose of these criterion will be basically to state how much we may disturb the robot (in different meanings) while keeping it in the same CC. However these criterion do neither take into account the mechanical stability of the platform which is another topic [START_REF] Bosscher | Disturbance robustness measures for underconstrained cable-driven robots[END_REF], [START_REF] Carricato | Stability analysis of underconstrained cable-driven parallel robots[END_REF] or its dynamics [START_REF] Gosselin | Dynamic trajectory planning of a two-dof cable-suspended parallel robot[END_REF], [START_REF] Zoso | Point-to-point motion planning of a parallel 3-dof underconstrained cable-suspended robot[END_REF].

II. Ranking criteria for cable configuration

A. Determining the valid cable configurations

For a given pose it is easy to determine all valid CC with 6 cables: we consider each possible CC, solve the linear system (2) and store as valid CC only the one with positive tensions for all cables. For a time-dependent trajectory which is described by time functions we have exhibited an algorithm that allow to determine time intervals (and therefore part of the trajectory) for which a given CC is valid [START_REF] Merlet | On the redundancy of cable-driven parallel robots[END_REF]. As an example we consider a circular trajectory for the robot that will be presented in section IV-A and figure 2 shows the circular arcs for which the various CC are valid.

B. First criteria for selecting the CC

Possible criterion for selecting the best CC may be based on kinematic properties. For example we may consider both for a pose, a trajectory or a surface:

• the minimum of the maximum of the cable tensions • the minimum of the maximum positioning error. Assuming bounded errors ∆ρ on the measurements of the ρ we may evaluate their effects on the positioning errors ∆X by using the relation ∆ρ = J -1 ∆X However we may adopt another point of view which is more related to the size of the disturbance that we may apply on the robot at a nominal pose with the CC being still valid.

B.1 For a pose

For a pose we propose as ranking criteria for the robustness of a CC the minimal radius of the singularity-free sphere centered at the pose X 0 for which the CC is valid for any point included in the sphere under the assumption that the platform orientation is constant. This ranking criteria clearly characterize how much it is possible to move away from the current pose while keeping the same CC.

We define a pose on the sphere as

X = X 0 + ru
where r is the sphere radius and u an arbitrary unit vector. The tension of cable i is established with Cramer's theorem as

τ i = |J -T i | |J -T |
where J -T i is the matrix obtained by substituting column i of J -T by the wrench F . Consequently a pose will lie on the sphere with maximal radius if one of the two following condition hold:

1. |J -T i | = 0 2. |J -T | = 0
These conditions may be simplified. Indeed consider the matrix M that is obtained by removing the ρ in the denominator of the elements of J -T . It is easy to show that |J -T | = |M|/ j=6 j=1 ρ j . Therefore the determinant of J -T cancels at the same place than the determinant of M and both determinants have the same sign as the ρ are positive. Hence this matrix can be used in place of J -T . A similar reasoning may be used for |J -T i |. With this simplification and under our constant orientation assumption an analytic form may be obtained both for |J -T i | and |J -T |. We will consider each condition separately. For the first condition we have to determine in turn for each cable the maximum of r under the constraints |J -T i | = 0 and ||u|| = 1. To solve this optimization problem we define the Lagrangian function

H H = r + α|J -T i | + β(||u|| -1) (3)
If the components of u are (X 1 , X 2 , X 3 ) the maximum of r will be obtained if

∂H ∂r = 0 ∂H ∂α = 0 ∂H ∂β = 0 ∂H ∂X i = 0 ∀i ∈ [1, 3] (4)
which is a square system of 6 equations. We have

∂H ∂r = 1 + α ∂|J -T i | ∂r = 0
hence α cannot be 0 as usually ∂|J -T i |/∂r will is not 0. However as this quantity has usually have a relatively large value any α will be small. We have also

∂H ∂X i = α ∂|J -T i | ∂X i + 2βX i = 0
As α is small it may be assumed that β will also be small. The other unknown of the system are the X i 's that have to lie in the range [-1,1] and r that can also be bounded (e.g.

r cannot be such that all B i points are outside the vertically lifted convex hull of the A). Hence all the unknowns of the problem may be bounded and the system (4) may be solved in a guaranteed manner with interval analysis. We may proceed in the same way if we are looking at the singularity free condition by substituting J -T i by J -T (this has to be done only once as the denominator of τ i is identical for all cables).

Note that it is possible to remove the constraint ||u|| -1 = 0 by choosing u = (sin(β 1 ) cos(β 2 ), sin(β 1 ) sin(β 2 ), cos(β 1 ))

with β 1 ∈ [0, π] and β 2 ∈ [0, 2π] that will lead to a system of 5 equations. However our trials have shown that this system is more difficult to solve than the one we have chosen.

B.2 For a trajectory with a constant orientation

We assume that the translation parameters of the pose (i.e. the coordinates of C) are analytical functions of the bounded time t i.e.

x c = f 1 (t), y c = f 2 (t), z c = f 3 (t).
The coordinates of B i in the absolute frame are

OB i = OC + CB i
as the orientation is assumed to be constant CB i is a constant vector and consequently the coordinates of B i can be expressed as time functions. Our ranking criteria will be the minimal radius of a sphere centered at any pose on the trajectory so that the given CC is valid.

A preliminary check is to use the algorithm described in [START_REF] Merlet | On the redundancy of cable-driven parallel robots[END_REF] for verifying if the trajectory may be completed with the same CC. To solve this optimization problem we use the same approach than for a pose except that we consider now time as an additional unknown. Hence we end up with a system of 7 equations in the 7 unknowns r, X 1 , X 2 , X 3 , α, β, t. However we have to consider that:

• the system may not have a solution and the minimal radius is obtained for one of the extreme value of t

• the system may provide a solution that lead to the maximal radius while the minimal one of is obtained at one of the end point of the trajectory Hence to obtain the minimal radius it is necessary to use the algorithm described in the previous section for both endpoint of the trajectory.

Note that as for the pose case all the unknowns may be bounded and interval analysis is an appropriate tool to find the roots of the system.

B.3 For a surface with a constant orientation

We assume that the translation parameters of the pose (i.e. the coordinates of C) are analytical functions of two bounded parameters t 1 , t 2 , i.e.

x c = f 1 (t 1 , t 2 ), y c = f 2 (t 1 , t 2 ), z c = f 3 (t 1 , t 2 )
i.e. the robot moves on a surface. The coordinates of B i in the absolute frame are

OB i = OC + CB i
as the orientation is assumed to be constant CB i is a constant vector and consequently the coordinates of B i can be expressed as functions of the two parameters. Our ranking criteria will be the minimal radius of a sphere centered at any pose on the surface so that the given CC is valid for any pose within the sphere.

To solve this optimization problem we use the same approach than for a pose except that we consider now the parameters t 1 , t 2 as additional unknowns. Hence we end up with a system of 8 equations in the 8 unknowns r, X 1 , X 2 , X 3 , α, β, t 1 , t 2 . As in the previous section the system may not have a solution or one that leads to the maximal radius. Hence it is necessary to use the algorithms described in the previous sections with t 1 and/or t 2 set to one of their extreme values.

Note that as for the pose case all the unknowns may be bounded and interval analysis is an appropriate tool to find the roots of the system.

C. Second criteria for selecting the CC

The previous criteria quantify the validity domain of a given cable configuration CC 1 with 6 cables. However it does not prove that for any trajectory included in the validity domain the robot will always have the cable configuration CC 1 . Indeed the CC at a given time depends upon the control law, its discrete-time implementation and the time response of the coiling mechanism. For example we have shown that these elements may lead to CC changes when performing a trajectory that was theoretically feasible with a given CC both for non deformable cables [START_REF] Merlet | Checking the cable configuration of cable-driven parallel robots on a trajectory[END_REF] or for elastic cables [START_REF] Merlet | The influence of discrete-time control on the kinematicostatic behavior of cable-driven parallel robot with elastic cables[END_REF] and such changes were experimentally observed. The previous criteria just allow to state that the robot may not change instantaneously from a CC with 6 cables to another one with also 6 cables because this situation is possible only at a singularity. But we have also to ensure that for given ρ, a given pose X and a 6 cable configuration CC 1 there is no other CC CC 2 with less than 6 cables that is close enough from X so that a small disturbance may lead the robot from CC 1 to CC 2 . Our ranking criteria will be a yes/no answer to the question: for a nominal pose X is there a solution to the forward kinematics of any cable configuration with 1 to 5 cables derived from the current CC in a ball centered at X with a fixed radius ?

For a given pose this amounts to show that all forward kinematics (FK) for any combination of less than 6 cables have no solution in a known neighborhood of X. Although fully solving these FK problems is difficult and still not a settled issue we benefit here from the fact that we are looking only for pose within a bounded region and interval analysis will be appropriate.

D. Ranking criteria for uncertainty management

Real CDPR are submitted to uncertainties, namely in the the location of the A and B points and on the real cable lengths. We will assume in this section that these uncertainties are all bounded. To reach a given pose X the controller assume a knowledge of the location of the A, B and calculate the corresponding cable lengths ρ that are executed so that the cable reach the lengths ρ r that differs from ρ by at most ∆ρ. For the real robot the location of the i-th base attachment point is A r i which differs from A i by at most ∆A. Similarly the real B i will be denoted by B r i and differ from B i by at most ∆B r . We will also assume that a CC has been chosen and that the cable lengths of the cables not part of the CC have a length that ensure their slackness. When the cable control is executed the platform moves toward a pose X r that is a FK solution of the robot whose parameters are A r , B r , ρ r . We will also assume that when moving toward X the robot starts with the CC and that there is no change of CC during the motion so that X r is close to X. The problem we address is to determine if CC is still valid at the pose X r whatever are the A r , B r , ρ r in their respective ranges.

A first problem is that X r is not known and must only be such that

ρ r j = ||A r j B r j || (5)
where B r j is a function of X r . In the same manner the matrices J -T i , J -T are no more scalar matrices. Furthermore when expressed as functions of the unknowns their determinants are very large expressions that cannot be used. As we want to check if the tensions in the cables of the CC are always positive whatever are the values of A r , B r , ρ r the problem amounts to verify if for any cable in the CC the following condition does not hold:

∃A r ∈ Âr , B r ∈ Br , ρ r ∈ ρr such that |J -T i ||J -T | ≤ 0
where the hated quantities indicates intervals. Using the minimal parametrization of X this problem has 48 unknowns (6 for X r , 18 for the A r i , 18 for the B r i and 6 for the ρ r i ) with only a single inequality to verify but we don't have to determine all the poses that may satisfy the inequality as finding a a single one will be sufficient. We will detail in section IV-D how interval analysis may be used to check the inequality.

Theoretically the proposed approach may be extended to trajectory or surface but has not be implemented.

III. Implementations

A. Interval analysis

Solving the system that result from the optimization problem is performed by using our interval analysis library ALIAS. This library allows to calculate exactly (i.e. with an arbitrary accuracy) all solutions of a system of equations that lie within a bounded region, called the search space. Without going into the details (that may be found in [START_REF] Hansen | Global optimization using interval analysis[END_REF], [START_REF] Jaulin | Applied Interval Analysis[END_REF], [START_REF] Moore | Methods and Applications of Interval Analysis[END_REF], [START_REF] Neumaier | Interval methods for systems of equations[END_REF]) the solving principle is first based on the 14th World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015 IMD-123 interval evaluation of the equations: being given intervals for the unknowns W (which define a box in the unknowns space) and a function of these unknowns f (W) the interval evaluation of f is an interval [U, V ] that is guaranteed to satisfy that for all vectors W whose components all lie in the corresponding intervals we have U ≤ f (W) ≤ V . There are several methods for computing such an interval evaluation, all having the drawback that U may be underestimated (i.e. the minimum of f over the intervals is larger than U ) and/or V may be overestimated (i.e. the maximum of f over the intervals is larger than V ). However the differences between U, V and the minimum, maximum decrease with the size of the input intervals. Such an overestimation occurs when there are several occurrences of the same variable in f . A typical example of overestimation is to consider f

= x -x when x ∈ [-1, 1] as f ([-1, 1]) = [-1, 1] -[-1, 1] = [-2, 2]
that indeed include the solution 0 but with a large overestimation.

Clearly if U > 0 or V < 0, then f cannot cancel for any point in the box. The second component of an interval analysis algorithm is the branch and bound scheme. In this scheme we have a list L of box(es) which has, at the start of the algorithm, a single element, the search space and an index i initialized to 1. The algorithm look at the i-th box in the list and calculate the interval evaluation of each equation of the system for this box. If for each of these evaluations we have U < 0 and V > 0, then we bisect the box in two by selecting one of the unknowns and splitting its current interval at the mid-point. This process creates two new boxes that are stored at the end of L and the index i is incremented. If U > 0 or V < 0 then the index i is incremented. After each bisection the size of the box decreases so that we may use the third tool of interval analysis which is the Kantorovitch theorem. It states that if some conditions, that may be calculated with interval analysis, are fulfilled, then the box includes a single solution of the system and that this solution may be obtained by using the Newton-Raphson scheme with as initial guess the center of the box. If this theorem is fulfilled for a given box we have determined a solution of the system and the index i is incremented. The algorithm completes when the index i is larger than the number of elements in L. Such an algorithm cannot miss a solution and will usually provide all the solutions in the search space unless the numerical accuracy is not high enough (in this case it is necessary to extend the floating point arithmetic and numerous packages allow to do it). This principle may be extended to deal with inequality. For example if the problem is to check if f (W) ≤ 0 a box will be deleted from the list L if U > 0 and a solution will be found if V ≤ 0.

IV. Examples

A. The robot

As test example we consider a CDPR with 8 cables. The coordinates of the A, B points are provided in tables I,II and are derived from the robot presented in [START_REF] Gouttefarde | Simplified static analysis of largedimension parallel cable-driven robots[END_REF].

A 1 A 2 A 3 A 4 x -

B. First and second criteria

In this section the orientation of the platform is assumed to be such that the axis vectors of the reference and mobile frame coincide.

B.1 For a pose

We consider the pose (0,1,2) and (1,0,2) for this robot. For (0,1,2) the following CC are valid: [START_REF] Abbasnejad | Real solutions of the direct geometrico-static problem of underconstrained cable-driven parallel robot with 3 cables: a numerical investigation[END_REF][START_REF] Albus | The NIST SPIDER, a robot crane[END_REF][START_REF] Merlet | Solving the direct geometrico-static problem of the 3-3 cable-driven parallel robots by interval analysis: preliminary results[END_REF][START_REF] Bosscher | Disturbance robustness measures for underconstrained cable-driven robots[END_REF][START_REF] Bruckman | Parallel manipulators, New Developments, chapter Wire robot part I, kinematics, analysis and design[END_REF][START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF], [START_REF] Abbasnejad | Real solutions of the direct geometrico-static problem of underconstrained cable-driven parallel robot with 3 cables: a numerical investigation[END_REF][START_REF] Merlet | Solving the direct geometrico-static problem of the 3-3 cable-driven parallel robots by interval analysis: preliminary results[END_REF][START_REF] Bosscher | Disturbance robustness measures for underconstrained cable-driven robots[END_REF][START_REF] Bruckman | Parallel manipulators, New Developments, chapter Wire robot part I, kinematics, analysis and design[END_REF][START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF][START_REF] Carricato | Direct geometrico-static problem of under-constrained cable-driven parallel robots with three cables[END_REF], [START_REF] Albus | The NIST SPIDER, a robot crane[END_REF][START_REF] Merlet | Solving the direct geometrico-static problem of the 3-3 cable-driven parallel robots by interval analysis: preliminary results[END_REF][START_REF] Bosscher | Disturbance robustness measures for underconstrained cable-driven robots[END_REF][START_REF] Bruckman | Parallel manipulators, New Developments, chapter Wire robot part I, kinematics, analysis and design[END_REF][START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF][START_REF] Carricato | Stability analysis of underconstrained cable-driven parallel robots[END_REF], [START_REF] Merlet | Solving the direct geometrico-static problem of the 3-3 cable-driven parallel robots by interval analysis: preliminary results[END_REF][START_REF] Bosscher | Disturbance robustness measures for underconstrained cable-driven robots[END_REF][START_REF] Bruckman | Parallel manipulators, New Developments, chapter Wire robot part I, kinematics, analysis and design[END_REF][START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF][START_REF] Carricato | Stability analysis of underconstrained cable-driven parallel robots[END_REF][START_REF] Carricato | Direct geometrico-static problem of under-constrained cable-driven parallel robots with three cables[END_REF]. For the first criteria we look at each cable of the CC in turn to determine the minimal distance between the current pose and a pose such that the tension in the cable become 0 (|J -T i | = 0). We then look at the minimal distance between the current pose and and a singular pose (|J -T | = 0). The ranking for this first criteria will be the minimum of all these minima for all cables, The solving of the optimization problem provide the following solutions for the minimal r, r min (the number in parenthesis indicates the cable number, d being the singular condition):

. For the first criteria the solving of the optimization problem provides the following solutions for the minimal r, r min : The total computation time is 8mn and 26 seconds but note however that the implementation is not optimal. Indeed as soon as a possible value for r min is found it may be used in the remaining computation to eliminate boxes that may contain solution (s) but will lead to a larger value than the current estimation of r min . We have just tried this method for the configuration [START_REF] Abbasnejad | Real solutions of the direct geometrico-static problem of underconstrained cable-driven parallel robot with 3 cables: a numerical investigation[END_REF][START_REF] Albus | The NIST SPIDER, a robot crane[END_REF][START_REF] Bruckman | Parallel manipulators, New Developments, chapter Wire robot part I, kinematics, analysis and design[END_REF][START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF][START_REF] Carricato | Stability analysis of underconstrained cable-driven parallel robots[END_REF][START_REF] Carricato | Direct geometrico-static problem of under-constrained cable-driven parallel robots with three cables[END_REF] where we have first the cables before considering the singularity condition: we have noted that after solving for cable 6 the calculation time for cable 7 decreases and even decreases much more significantly for cable 8. As for the singularity condition the algorithm exit almost immediatly. According to this experiment we believe that we may reduce the total computation by a factor of at least 10.

CC [1, 2 , 5, 6, 7, 8] [1, 4, 5, 6, 7, 8] r 2
For both poses we have then considered the second criteria and we have shown that there is no CC with less than 6 cables that may lead to a pose that belong to a ball of radius 0.03 centered at the pose.

C. Trajectories and surfaces

We consider now the circular arc of radius 1 described by x c = cos(t), y c = sin(t), z c = 2 when t is restricted to lie in the range [0, π/2]. The start point and end point of this trajectory being (1,0,2) and (0,1,2) we deduce from the previous paragraph that only [START_REF] Merlet | Solving the direct geometrico-static problem of the 3-3 cable-driven parallel robots by interval analysis: preliminary results[END_REF][START_REF] Bosscher | Disturbance robustness measures for underconstrained cable-driven robots[END_REF][START_REF] Bruckman | Parallel manipulators, New Developments, chapter Wire robot part I, kinematics, analysis and design[END_REF][START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF][START_REF] Carricato | Stability analysis of underconstrained cable-driven parallel robots[END_REF][START_REF] Carricato | Direct geometrico-static problem of under-constrained cable-driven parallel robots with three cables[END_REF] is a valid CC for the whole trajectory. The solving algorithm regarding the first criteria provides the solution: cable 5 cable 6 cable 7 |J -T | = 0 r 0.94811 0.9722 4.4942 3.0085 For the start and end point the minimal r were respectively 0.759563273849347 and 0.532477175518869. Hence we deduce that the solving provide the maximal r and therefore the ranking criteria for this CC is 0.532477175518869. Now if we look at the planar circle centered at (1,0,2) and radius 0.4 the solving algorithm provides: cable 5 cable 6 cable 8 r 0.1324778 0.16064 4.6332 0.932476 0.960643 and hence the index is 0.132477813874347.

D. Uncertainty criteria

The purpose of the criteria is to check if a given CC is valid for a nominal pose X for which the nominal cable lengths are ρ, assuming a given model for the A, B points. For the real robot the coordinates of the A, B points may have any value in the known intervals Âr , Br while the real cable lengths lie in the known intervals ρr . For testing the validity of the CC we will check is there is any values of A r , B r , ρ r in their respective ranges that verify

|J -T i ||J -T | ≤ 0 (6)
for all cables involved in the CC. If this inequality hold for at least one cable the mechanical equilibrium condition (2) hold only for a negative tension the cable and therefore CC is no more valid. As unknown for this problem apart of A r , B r , ρ r we have the coordinates CB m of the B in the mobile frame. To parametrize the pose of the platform we use a redundant parametrization with the coordinates of all B in the reference frame together with the coordinates of C in this frame. This leads to a problem with 63 unknowns (18 for the A, 18 for CB m , 18 for the B, 3 for C, 6 for the ρ).

The motivation of this parametrization is the assumption that the FK solution for any A r , B r , ρ r will be close to X and this allow us to bound the values of these unknowns. Furthermore we have the following constraints:

||A r j B r j || 2 = ||OB j + OA j || 2 = (ρ r j ) 2 (7)
||CB j || 2 = ||OC + OB j || 2 = ||CB m j || 2 (8
) for all cable j in the CC. We have also for all pairs of cables (i, j):

||B i B j || 2 = ||OB j -OB i || 2 = ||CB m j -CB m i || 2 (9) CB i .CB j = CB m i .CB m j ( 10
)
14th World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015

IMD-123

Hence we get 42 constraint equations together with inequality [START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF].

Another motivation to use this parametrization is that it allows one to use a classical technique of interval analysis whose purpose if to reduce the interval for the unknowns without resorting to a bisection. For example consider the relation ||A r j B r j || 2 = (ρ r j ) 2 . If x a , y a , z a and x b , y b , z b denote respectively the coordinates of A j , B j in the reference frame the constraint may be written as

(x b -x a ) 2 + (y b -y a ) 2 + (z b -z a ) 2 = (ρ r j ) 2
which may be written as

(x b -x a ) 2 = (ρ r j ) 2 -(y b -y a ) 2 -(z b -z a ) 2
We proceed to the interval evaluation of the right hand-side of this constraint to get the interval

[U, V ]. If V is negative the constraint cannot be satisfied. If U < 0, V > 0 then (x b -x a ) 2 must lie in the range [0, V ]. We deduce that (x b -x a ) ∈ [0, √ V ] or (x b -x a ) ∈ [- √ V , 0] or x b ∈ x a + [0, √ V ] or x b ∈ x a + [- √ V , 0]
Consequently if the interval for x b is xb the only valid part of this interval with respect to the constraint is

( xb ∩ ( xa + [0, √ V ])) ∪ ( xb ∩ ( xa + [- √ V , 0]))
which may allow to reduce the size of xb . As for the determinant of the matrices we just proceed to the interval evaluation of their elements. Then classical methods of determinant expansion are used to calculate the interval evaluation of the determinant with the drawback that we have a large overestimation of the interval evaluation. But we use another approach based on the test for checking the regularity of an interval matrix (i.e. determining if there is at least one singular matrix among the all the matrices of the set) [START_REF] Rex | Sufficient conditions for regularity and singularity of interval matrices[END_REF]. Basically this test amounts to calculate the sign of the determinant of a finite number of scalar matrices which are obtained by taking as elements the extreme values of the elements of the interval matrix: if the sign is the same for all determinants, then the interval matrix does not include singular matrices. If this is the case, then it is sufficient to select a scalar matrix in the set of interval matrix and to calculate the sign of its determinant that will be the sign of the determinant of any matrix in the set. This algorithm has been used to check the robustness of the CC [START_REF] Merlet | Solving the direct geometrico-static problem of the 3-3 cable-driven parallel robots by interval analysis: preliminary results[END_REF][START_REF] Bosscher | Disturbance robustness measures for underconstrained cable-driven robots[END_REF][START_REF] Bruckman | Parallel manipulators, New Developments, chapter Wire robot part I, kinematics, analysis and design[END_REF][START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF][START_REF] Carricato | Stability analysis of underconstrained cable-driven parallel robots[END_REF][START_REF] Carricato | Direct geometrico-static problem of under-constrained cable-driven parallel robots with three cables[END_REF] at the pose (0,1,2) for a possible error on the location of the A of ± 5mm, an uncertainty on the ρ of ± 5 mm and an uncertainty of ± 1 mm for the location of the B. It was assumed that the B and C that may be solution of the FK where located in a ball centered on their nominal location with radius 5 cm. It was found that the CC was always valid in a computation time of 9mn58s.

Theoretically this algorithm may be extended to deal with a trajectory or a surface. For a trajectory the nominal pose will be a time function and we will add the time as additional unknown. For a given time interval we will be able to calculate ranges X for the nominal pose and B for the nominal B that will allow us to determine ranges ρ for the nominal ρ. For the other unknowns the ranges on CB m , A will remain the same while the ranges for ρ r will become ρ + ∆ρ and the ranges for B, C will become B, X that will be expanded by a value W = KMax(w(ρ + ∆ρ), w( X)) where w denote the width of an interval and K is a safety factor that can be conservatively chosen as 10. For example if X = [p, q] the range for C will be chosen as [p -W, q + W ]. A similar method may used for a surface.

V. Conclusions

Determining the cable configuration of a suspended CDPR is crucial for their command and safety as the CC influences drastically the cable tensions and positioning accuracy of the robot. A possible control strategy is to enforce a selected cable configuration (by setting the lengths of the cables not member of the CC so that they will be slack) to avoid the disturbances due to CC changes. But the choice of the CC shall take into account how robust is the CC. We have defined as robustness indices:

• how far away the robot may move from its nominal pose while keeping the same CC

• a binary index that is set to unsafe if there is in the vicinity of the nominal pose a pose that may be reached with less than 6 cables under tension

• a binary index that is set to unsafe if the CC is no more valid when uncertainties on the geometry and control of the robot are taken into account We have then provided algorithms that allow one to calculate all these indices. As possible extension we should mention that the two first indices have been calculated by assuming that the orientation of the platform remains constant. This has allowed us to define the index as a length but is not appropriate if the orientation of the platform may change. For the robustness of the CC with respect to uncertainties we have only implemented the algorithm for a pose but shall investigate the case of a trajectory or a surface. A similar work may be done for elastic cables that may present as well slack cables. For large scale robot the sagging of the cable may have to be taken into account. The concept of cable configuration here shall be different has such a cable is never slack (in the sense that it is always submitted to a tension) but may contribute negatively to the support of the platform (i.e. pulling downward). For such a cable we may expect an even higher complexity as both the inverse and forward kinematics are not yet mastered [START_REF] Gouttefarde | Kinetostatics analysis of cable-driven parallel robots with consideration of sagging and pulleys[END_REF], [START_REF] Kozak | Static analysis of cable-driven manipulators with non-negligible cable mass[END_REF], [START_REF] Merlet | The forward kinematics of cable-driven parallel robots with sagging cables[END_REF], [START_REF] Such | An approach based on the catenary equation to deal with static analysis of three dimensional cable structures[END_REF], [START_REF] Riehl | Effects of non-negligible cable mass on the static behavior of large workspace cable-driven parallel mechanisms[END_REF]. Clearly the proposed indices should be completed by other one that address the mechanical sta-

Fig. 1 .

 1 Fig. 1. A suspended CDPR

Fig. 2 .

 2 Fig. 2. The possible CC on a circular trajectory. The arc have the same radius but have been enlarged in order to show the different CC

14th

  World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October,

TABLE I .

 I Coordinates of the A points (in meter)

	B 1	B 2	B 3	B 4
	x 0.503210 -0.509740 -0.503210 0.496070
	y -0.492830 0.350900 -0.269900 0.355620
	z 0.000000 0.997530 0.000000 0.999540
	B 5	B 6	B 7	B 8
	x -0.503210 0.499640 0.502090 -0.504540
	y 0.492830 -0.340280 0.274900 -0.346290
	z 0.000000 0.999180 -0.000620 0.997520

TABLE II .

 II Coordinates of the B points in the mobile frame (in meter)

14th World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015 IMD-123

14th World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015 IMD-123 bility of the CC.


J-P Merlet

On the real-time calculation of the forward kinematics of suspended cable-driven parallel robots

Keywords: clear, cable-driven parallel robots, forward kinematics, cable configurations, real-time

This paper addresses the problem of the forward kinematics of cable-driven parallel robots (CDPR) having elastic or non elastic cables under the assumption that the cables are submitted to small changes in their lengths compared to an initial situation at which the pose is known, a situation that is typical of a real-time forward kinematics used for control purposes. We show that at the initial point it is necessary to have not only the pose but also the cable configuration, i.e. having the knowledge of which cables are under tension and that the result of the forward kinematics should be both the pose and the cable configuration after the change in cable lengths. We exhibit a first algorithm that allows one to determine all possible final poses and cable configurations. Then a second algorithm is proposed to determine all possible cable configurations also during the coiling process which is an important point as the CDPR state, including the cable tensions, may drastically change at this point. The last algorithm assumes a model of the coiling process and is able to determine the unique final pose and cable configuration. These algorithms provide safer real-time forward kinematics which will improve the CDPR control

I. Introduction

Cable-driven parallel robot (CDPR) are robots whose platform are connected to the ground by a set of cables that can be uncoiled or coiled. The study of CDPR has started about 30 years ago with the pioneering work of Albus [START_REF] Albus | The NIST SPIDER, a robot crane[END_REF] and Landsberger [START_REF] Landsberger | A new design for parallel link manipulator[END_REF] but there has been recently a renewed interest in such a robot, both from a theoretical and application viewpoint. The kinematics analysis of CDPR is much more complex than the one of parallel robot with rigid legs as static equilibrium has to be taken into account [START_REF] Bruckman | Parallel manipulators, New Developments, chapter Wire robot part I, kinematics, analysis and design[END_REF], [START_REF] Jiang | The inverse kinematics of 3-d towing[END_REF], [START_REF] Roberts | On the inverse kinematics, statics and fault tolerance of cable-suspended robots[END_REF], [START_REF] Verhoeven | Analysis of the workspace of tendon-based Stewart platforms[END_REF] and is still an open issue especially as not all cables of a robot with m cables may be under tension [START_REF] Abbasnejad | Real solutions of the direct geometrico-static problem of underconstrained cable-driven parallel robot with 3 cables: a numerical investigation[END_REF], [START_REF] Merlet | Solving the direct geometrico-static problem of the 3-3 cable-driven parallel robots by interval analysis: preliminary results[END_REF], [START_REF] Carricato | Direct geometrico-static problem of under-constrained cable-driven parallel robots with three cables[END_REF], [START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF], [START_REF] Pott | An algorithm for real-time forward kinematics of cabledriven parallel robots[END_REF] and that only stable solutions have to be determined [START_REF] Carricato | Stability analysis of underconstrained cable-driven parallel robots[END_REF]. Numerous applications of CDPRs have been mentioned e.g. large scale maintenance studied in the European project Cablebot [START_REF] Pott | IPAnema: a family of cable-driven parallel robots for industrial applications[END_REF], rescue robots [START_REF] Tadokoro | A portable parallel manipulator for search and rescue at large-scale urban earthquakes and an identification algorithm for the installation in unstructured environments[END_REF], [START_REF] Merlet | A portable, modular parallel wire crane for rescue operations[END_REF], large telescope [START_REF] Su | Development of a large parallel-cable manipulator for the feed-supporting system of a next-generation large radio telescope[END_REF], rehabilitation [START_REF] Harshe | A multi-sensors system for human motion measurement: Preliminary setup[END_REF], [START_REF] Rosati | implementation and clinical test of a wire-based robot for neurorehabilitation[END_REF] and transfer robot for elderly people [START_REF] Merlet | a family of modular wire-driven parallel robots[END_REF] to name a few. * Jean-Pierre.Merlet@inria.fr

The proprioceptive measurement on such a robot is usually the cable lengths as other physical quantities such as orientation of the cables or their tensions are difficult to measure. The kinematic analysis of such robot is drastically influenced by the cable model that is used. For example a cable may be supposed mass-less and non elastic, mass-less but elastic or deformable and elastic. In this paper we consider only mass-less cables and a specific class of CDPR: suspended CDPR. In this class there is no cable that can exert a downward force that is larger than its own weight (figure 1).

Before going on we will introduce some notation. The output point of the coiling mechanism for cable i will be denoted A i while this cable is attached at point B i on the platform. We define an absolute frame (O, x, y, z) and we assume that the coordinates of A i in this frame are known. In the same manner we define a mobile frame (C, x r , y r , z r ) that is attached to the platform (figure 1). Without lack of generality C will be assumed to be the center of mass of the platform with coordinates (x c , y c , z c ). We assume that the coordinates of B i in the mobile frame are known. Our cable model assume that the cable profile is directed along the line going through the points A, B as soon as the cable is under tension. For non elastic cables the length of a cable will be denoted ρ while for elastic cable ρ will denote its real length while l 0 will denote its length at rest.

A major problem with CDPR is that they have usually several solutions to the forward kinematic (FK) problem 14th World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015 IMD-123 (i.e. being given the cable lengths determine the pose of the platform). This is usually the case for parallel robots but the situation is even worse for CDPR and is still yet not fully understood. A major point is that each solution of the FK leads to a specific set of cable tensions together to a specific pose. As determining the pose and the tensions are key factors for safety and control it is essential to be able to determine the current state of the robot. This problem may stated as follows: being given a state of the robot (ρ, X) for non elastic cables or (l 0 , X) for elastic cables, where X denotes the pose of the platform, determine the pose X 1 of the robot when the components of ρ (l 0 ) are changed to ρ+∆ρ (l 0 + ∆l 0 ), where ∆ρ(l 0 ) is a vector of "small" amount of changes in the cable lengths that occurs after a "small" amount of time ∆t. This is typically the problem we have to solve for the real-time calculation of the FK: after the calculation of the current pose based on the cable lengths measurement a control law will calculate a command for the actuators that will not be changed during the sampling time of the controller (we do not consider here other control schemes that do not use the measurements of the cable lengths, for example the one using the visual observation of the direction of the cables [START_REF] Dallej | Towards a generic imagebased visual servoing of parallel robots using legs observation[END_REF]).

For robot with rigid legs we have exhibited an algorithm that first check if ∆ρ is small enough so that there is an unique X 1 that can be reached starting from X and if this is the case is able to compute X 1 with an arbitrary accuracy [START_REF] Merlet | Solving the forward kinematics of a Gough-type parallel manipulator with interval analysis[END_REF].

Unfortunately we will see that such scheme will not work for CDPR. But first we may summarize the known result about the FK of CDPR as follow:

• for mass-less and not elastic cables (case 1) for a CDPR with m cables the FK always amounts to solve a set of square systems of equations. Indeed we cannot assume that in the current pose all m cables are under tension and to find all FK solutions we have to consider all possible combinations of cables under tension. Note that if m > 6 there cannot be more than 6 cables under tension simultaneously. Still for a given number of cables the minimal FK equations will be square with 6 equations for 6 cables and m + 6 for m < 6 cables (6 parameters for the pose and m cable tensions). But even with this complexity all the solutions found by solving the different sets of equations may not all be valid. Indeed for a given solution X s we have to examine first the tensions of the cables that must all be positive. Then we have to consider the lengths of the cables that are supposed to be slack: for each of them this length must be greater than the distance between the A, B points for the pose X s . Hence this differs from the FK of parallel robots with rigid legs where a single square system has to be solved and all solutions are valid.

• for mass-less but linearly elastic cables (case 2) all cables may be under tension even if m > 6 but it may also happen that we have slack cables. The tension τ in the cable is written as τ = k(ρl 0 ) where k is the linear stiffness, ρ is the real length of the cable and l 0 its length at rest that are supposed to be known. Hence the minimal FK has m + 6 unknowns (6 parameters for the pose and mρ) and m + 6 equations (6 from the statics equilibrium and m equations that state that the distance between A, B should be ρ). Still one or more of the cables may be slack (i.e. ρ < l 0 ) and as in case 1 we have thus to consider all combinations of cables under tension

• for deformable and elastic cables (case 3) the FK amounts to solve a single square system of equations that has usually several solutions [START_REF] Merlet | The forward kinematics of cable-driven parallel robots with sagging cables[END_REF]. In case 3 the algorithm presented in [START_REF] Merlet | Solving the forward kinematics of a Gough-type parallel manipulator with interval analysis[END_REF] may be applied to solve the real-time FK but cannot for case 1 and 2. Indeed at X we know which cables are under tension and which one are slack (if any). Unfortunately at X 1 the set of cables under tension may be different from the one at X and therefore the system of equations of which X 1 is a solution is different from the one at X. This paper addresses the following topics for CDPR in case 1 and 2:

• determine if a change (or more than one) in the set of cables under tension may occur when changing the cable lengths by ∆ρ(l 0 )

• if yes determine the new set(s) of cable under tension • determine the pose X 1

II. Solving the real-time FK

A. The statics equations

A suspended CDPR is usually submitted only to gravity (and possibly to small disturbances that we will neglect). The wrench applied on the platform will be denoted F and the equations relating this wrench to the tension τ in the cables are:

F = J -T τ (1)
where J -T is the 6 × m jacobian matrix (where m is the number of cable under tension) whose i-th column is

(( A i B i ρ i CB i ∧ A i B i ρ i ))

B. The cable configuration concept

A cable will be denoted dominant if it exerts an force on the platform and non dominant if it is slack. A cables configuration (CC) for a CDPR with m cables is a set of m booleans whose i-th member is set to 1 if the i-th cable is dominant and set to 0 otherwise. This concept is quite important because at a given pose the CDPR may have different cable configurations. For example we have considered a specific robot with 8 cables that has to move along an horizontal circle while keeping constant the orientation of its platform. Figure 2 shows the circular arcs for which the various CC with 6 cables are valid (the arcs have been offsetted to make them visible). It may be noticed that this trajectory cannot be fully completed with the same CC and Fig. 2. The possible CC on a circular trajectory. The arc have the same radius but have been enlarged in order to show the different CC that there may be up to 4 different CC's for a pose. The cable configuration allow to determine what are the cable tensions (which differ from one CC to another one) but also the performances of the CDPR at this pose. For example it is well known that an error ∆ρ on the cable lengths ρ leads to an error in the platform positioning ∆X such that

∆X = J∆ρ

As J is dependent upon the CC so will be the positioning accuracy.

C. First algorithm

This algorithm will simply try to determine all the valid CC to which may lead the change from ρ to ρ + ∆ρ i.e. to solve the FK for each CC. For non elastic cables and a CDPR with a total of m cables, n of which are under tension we have the following equations and inequalities under the assumption that the numbering of the cables is such that the cables from 1 to n are under tension:

||A i B i || 2 = (ρ i + ∆ρ i ) 2 i ∈ [1, n] (2) ||A i B i || 2 -(ρ i + ∆ρ i ) 2 ≤ 0 i ∈ [n + 1, m] (3) τ = {τ 1 , . . . , τ n } τ i > 0 ∀i ∈ [1, n] F = J -T τ (4
> 3 B 1 B m = β 1 B1B2 + β 2 B1B3 + β 3 (B 1 B2 × B 1 B 3 )
where the β are known constants.

• if n = 2: C, B 1 , B 2 all lie in the same vertical plane that includes A 1 , A 2 and the location of C may be deduced from the location of B 1 , B 2 with 2 possible solutions (one below the line B 1 B 2 , one over it). Hence we choose the coordinates of B 1 , B 2 as unknowns

• if n = 1: A 1 , B 1 , C
lie on the same vertical line with C having two possible locations (over or below B 1 ). The z coordinates of B 1 is chosen as unknown The motivation for using this parametrization will be explained later on. We will not consider the case n ≤ 2 that can be trivially solved. Now let us look at the equation

F = J -T τ τ = {τ 1 , . . . , τ n }
that is used for the FK solving if n < 6 with the components of τ as unknowns. At the opposite of the pose parameters there is no a-priori rules that allows one to establish bounds for the elements of τ . However we may extract from these equations a linear system in τ of size n × n. After solving this system we may report the result in the remaining 6n equations. Hence we always end up with a system constituted of:

• n equations from the linear system • 6 equations (n from (2) plus 6n remaining after the solving of the linear system)

• mn inequalities (3) In terms of unknowns we have • the pose parameters (12 if 4 ≥ n ≤ 6, 9 if n = 3)

• the n elements of τ As we may see we have always more unknowns than equations. However the parametrization always allow us to end up with a square system by adding equations stating that the distance between the reference points B i , B j is a known constant. We will no more mention this additional equations in the remaining of the paper but they are required to get a square FK system.

For elastic cables the change in cable lengths affect l 0 which will become l 0 + ∆l 0 . The equations are:

||A i B i || 2 = ρ 2 i (5) F = J -T τ τ = {k(ρ i -l 0 i -∆l 0 i )} (6)
which are valid for all i ∈ [1, n]. We have also the inequalities

l 0 i + ∆l 0 i -ρ i ≤ 0 ∀i ∈ [1, n] (7) ||A i B i || 2 -l 0 i -∆l 0 i ≤ 0 ∀i ∈ [n + 1, m] (8)
but here we have to consider all combination with n ≤ m.

In terms of unknowns we have 14th World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015 IMD-123

• the pose parameters (12 if 4 ≥ n ≤ m, 9 if n = 3) • the ρ i with i ∈ [1, n]
For this first algorithm we will assume that we may bound the pose parameters e.g. by assigning a maximal velocity to the platform from which we will deduce a cartesian box that will include the final position of the reference points. Under that assumption we have bounded variables (the pose parameters) and unbounded unknowns (the τ i for the non elastic case and the ρ i for the elastic case). The presence of bounded variables lead us to propose an interval analysis solving method (that requests bounded unknowns) and we will see later on that the presence of unbounded unknowns is not a problem, We will now describe our generic FK solving method.

C.1 Solving with interval analysis

Interval analysis allows to calculate exactly (i.e. with an arbitrary accuracy) all solutions of a system of equations that lie within a bounded region, called the search space. Without going into the details (that may be found in [START_REF] Hansen | Global optimization using interval analysis[END_REF], [START_REF] Jaulin | Applied Interval Analysis[END_REF], [START_REF] Moore | Methods and Applications of Interval Analysis[END_REF], [START_REF] Neumaier | Interval methods for systems of equations[END_REF]) the solving principle is first based on the interval evaluation of the equations: being given intervals for the unknowns W (which define a box in the unknowns space) and a function of these unknowns f (W) the interval evaluation of f is an interval [U, V ] that is guaranteed to satisfy that for all vectors W whose components all lie in the corresponding intervals we have U ≤ f (W) ≤ V . There are several methods for computing such an interval evaluation, all having the drawback that U may be underestimated (i.e. the minimum of f over the intervals is larger than U ) and/or V may be overestimated (i.e. the maximum of f over the intervals is larger than V ). However the differences between U, V and the minimum, maximum decrease with the size of the input intervals. Such an overestimation occurs when there are several occurrences of the same variable in f . A typical example of overestimation is to consider f

= x -x when x ∈ [-1, 1] as f ([-1, 1]) = [-1, 1] -[-1, 1] = [-2, 2]
that indeed include the solution 0 but with a large overestimation.

Clearly if U > 0 or V < 0, then f cannot cancel for any point in the box. The second component of an interval analysis algorithm is the branch and bound scheme. In this scheme we have a list L of box(es) which has, at the start of the algorithm, a single element, the search space and an index i initialized to 1. The algorithm look at the i-th box in the list and calculate the interval evaluation of each equation of the system for this box. If for each of these evaluations we have U < 0 and V > 0, then we bisect the box in two by selecting one of the unknowns and splitting its current interval at the mid-point. This process creates two new boxes that are stored at the end of L and the index i is incremented. If U > 0 or V < 0 then the index i is incremented. After each bisection the size of the box decreases so that we may use the third tool of interval analysis which is the Kantorovitch theorem. It states that if some conditions, that may be calculated with interval analysis, are fulfilled, then the box includes a single solution of the system and that this solution may be obtained by using the Newton-Raphson scheme with as initial guess the center of the box (see section V). If this theorem is fulfilled for a given box we have determined a solution of the system and the index i is incremented. The algorithm completes when the index i is larger than the number of elements in L. Such an algorithm cannot miss a solution and will usually provide all the solutions in the search space unless the numerical accuracy is not high enough (in this case it is necessary to extend the floating point arithmetic and numerous packages allow to do it).

This principle may be extended to deal with inequality. For example if the problem is to check if f (W) ≤ 0 a box will be deleted from the list L if U > 0 and the inequalities will always be satisfied for any point of the box if V ≤ 0.

For non elastic cables an objection to the use of interval analysis for n < 6 is that we don't have bounds for the components of τ . However they are not necessary. Indeed let us consider the linear system extracted from the statics equations. As the matrix J -T is pose dependent and as the pose parameters are intervals we have a so-called linear interval system. Interval analysis allows one to solve such system i.e. provide ranges for the components of τ that include all the solutions of all scalar linear system included in the linear interval system. Without going into the details this solving may fail for a given box especially because the linear interval system includes one or several singular system, in which case the box will be bisected and as we may assume that the robot is not in a singular pose a sufficient number of bisections will always guarantee that the interval linear system may be solved.

For elastic cables we will distinguish two cases:

• n ≤ 6: we use the interval solving for the linear system that may be extracted from ( 6) to bound the unknowns ρ i together with the interval evaluation of (5) that provide another mean to evaluate these bounds

• n > 6: we use the interval evaluation of (5) to determine bounds for the ρ i

C.2 Solving the FK

As seen previously the unknowns of our FK problems are just the pose parameters whose intervals are described by a box. We now describe the processing of a given box of the list L for non elastic cables: (c) interval evaluation of the 6 equations [START_REF] Verhoeven | Analysis of the workspace of tendon-based Stewart platforms[END_REF]. If one of this evaluation has a strictly negative upper bound or a strictly positive lower bound moves to the next box in the list 3. apply Kantorovitch theorem on the full system with X 0 being the center of the box:

(a) if this test succeeds calculate the solution and substitute the box by this solution 4. interval evaluation of the inequalities [START_REF] Abbasnejad | Real solutions of the direct geometrico-static problem of underconstrained cable-driven parallel robot with 3 cables: a numerical investigation[END_REF][START_REF] Merlet | Solving the direct geometrico-static problem of the 3-3 cable-driven parallel robots by interval analysis: preliminary results[END_REF] (a) if the lower bound of one evaluation is strictly positive moves to the next box in the list 5. if the box has been reduced to a solution, then store the solution and moves to the next box in the list 6. bisect the box Note that if n > 6 we may possible refine the interval for the ρ i . Indeed (6) may be seen as a linear system in 6 arbitrary ρ i . The solving of this system will provide bounds for these ρ i that may used to refine the bounds determined by using [START_REF] Roberts | On the inverse kinematics, statics and fault tolerance of cable-suspended robots[END_REF]. The specific parametrization of the platform pose that we have used may be explained here. Indeed all the equations involved in the FK are algebraic and of second order in terms of the unknowns. This implies that the Hessian matrix of the system will be a constant matrix whose norm can thus be computed beforehand. As this norm is used in the Kantorovich theorem having a constant norm allows one to speed up the Kantorovitch test.

Using this process we are able to find all the solutions of all FK problems under the assumption that there is no dras-tic change in the pose of the parameters during the coiling. If there is a single solution we may have determined the pose of the platform together with its CC after the change in the cable lengths. If we have multiple solutions we cannot determine the current pose and CC.

We will now describe a safe real-time FK method that takes into account possible CC change during the coiling process.

D. Second algorithm

In our previous algorithm we have assumed no drastic change in the platform pose. But unfortunately this assumption may not always hold. For example figure 3 shows changes of CC for infinitesimal changes of cable lengths that leads to a significant change in the platform pose. On the first image the robot has 6 cables under tension and its pose correspond to one solution of its FK. On the second image the CDPR moves suddenly to a CC with 4 cables under tension but one which is mechanically unstable which explain why (third image) it moves to a new pose with 6 cables under tension but on another kinematic branch of the FK than the one from which it started, thereby exhibiting a very different orientation.

Such situation cannot be detected with our first algorithm and requires to consider not only the final cable lengths but how these lengths change with respect to time. We will now consider the CC under the assumption that the cables lengths may have any value in their ranges [ρ, ρ + ∆ρ] for non elastic cables or that their lengths at rest may have any value in [l 0 , l 0 + ∆l 0 ] for elastic cables. Our purpose will be to determine what are the possible CC of the CDPR under that assumption. We still use the assumption that the pose of the platform may be bounded and we will check what are the possible CC in the neighborhood of X. As the motion of the platform are continuous we will look at specific time at which the initial CC may co-exist with another CC. For non elastic cables such a situation may occur if 1. the tension in a dominant cable (or in several cables) part of the initial CC goes to 0 2. the length of a non dominant cable (or of several cables) not part of the initial CC becomes exactly the distance between the A, B For elastic cables the situation may occur if 1. the real length ρ of one (or several) cable is exactly its length at rest We will assume that the initial CC is such that 6 cables are under tension for non elastic cables and that all cables are under tension for elastic cables. We consider the full scale FK equations of the CDPR i.e. equations [START_REF] Landsberger | A new design for parallel link manipulator[END_REF][START_REF] Jiang | The inverse kinematics of 3-d towing[END_REF] for non elastic cables and (5, 6) for elastic cables. For fixed values of ρ or l 0 we have a square system of equations but here we assume that ρ, l 0 may have interval values i.e. that these constraints describe a family of square systems of equations. Note however that the Kantorovitch theorem (section V) • the Jacobian matrix of the system at X 0 is still a scalar matrix

• F(X 0 ) will have now interval values, leading to intervals for Γ 0 F(X 0 ) but whose norm will still be bounded In consequence the interval values of ρ, l 0 will prohibit us to calculate the solutions but if the Kantorovitch conditions are fulfilled, then we are sure that there will be a single solution for any system in the family.

We will now consider separately the non elastic and elastic cables cases.

D.1 Non elastic cables

We will consider as unknowns the pose parameters, the ρ and the τ of the dominant cables and hence all the unknowns are bounded (the bounds for the τ being obtained with the method described in the first algorithm).

We will consider in sequence all combinations of cases where 1. one or several cables is (are) such that τ j = 0 2. the length of a cable (or of several cables) not part of the initial CC becomes exactly the distance between the A, B 3. the length of a cable (or of several cables) part of the initial CC becomes larger than the distance between the A, B For the first case we will set k τ j = 0 into equations ( 4) and use as unknowns for an interval analysis algorithm the pose parameters, the ρ and the remaining components of τ but only the pose parameters and the ρ will be bisected. Note that as the ρ have interval values we have a family of square system of equations. The processing of a given box of the algorithm is as follows:

1. for all cables in the initial CC interval evaluate the equation

||A i B i || 2 -ρ 2
i . If one of the interval evaluation does not include 0 move to the next box 2. interval evaluate (3) for the cable not part of the CC. If one of these inequality has a positive lower bound move to the next box 3. extract an interval linear system of size 6k from ( 4) and solve it in the 6k elements of τ :

• if the solving fails bisect the box and move to the next box in the list

• if one of the τ j has a negative upper bound move to the next box 4. plug the τ in the remaining k equations from (4), interval evaluate them and if one of the interval evaluation does not include 0 move to the next box 5. if one of the τ j has a negative lower bound then bisect the box and move to the next box in the list 6. we check if the Kantorovitch conditions hold

• if no we bisect the box and move to the next box in the list

• if yes we have determined that a new solution CC may be reached by the CDPR In the second and third case we will assume that any number k, with k ∈ [START_REF] Albus | The NIST SPIDER, a robot crane[END_REF][START_REF] Verhoeven | Analysis of the workspace of tendon-based Stewart platforms[END_REF], of cables may be such that

||A i B i || 2 = ρ 2
i . The full FK system will still be square. We will use as unknowns for an interval analysis algorithm the pose parameters and the kρ.

For a given box we use the following steps:

1. for all k cables interval evaluate the equation

||A i B i || 2 - ρ 2 i .
If one of the interval evaluation does not include 0 move to the next box 2. interval evaluate (3) for the mk cables not part of the k cables. If one of these inequalities has a positive lower bound move to the next box 3. solve the interval linear system of size k extracted from (4) in the τ :

• if the solving fails we bisect the box and move to the next box in the list

• if one of the τ has a negative upper bound, then move to the next box 4. if k < 6 plug the τ in the remaining 6k equations from (4), interval evaluate them and if one of the interval evaluation does not include 0, then move to the next box 14th World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015 IMD-123

check if the Kantorovitch conditions hold

• if no we bisect the box and move to the next box in the list

• if yes we have determined that a new solution CC may be reached by the CDPR If solution CC's are found then there will be set of ρ's for which the CDPR may be submitted to a change of CC.

D.2 Elastic cables

We will consider as unknowns the pose parameters, the components of ρ and the components of l 0 and hence all the unknowns are bounded (the bounds for the components of the ρ being obtained with the method described in the first algorithm).

We will consider in sequence all combinations of cases where one or several cables is (are) such that ρ j = l 0 j and use an interval analysis algorithm in each case after having removed from the equations (5,6) the equation(s) involving cable(s) j. As we remove as many equations as unknowns we still end up with a square system. For a given box of the algorithm:

• we interval evaluate the equations of the new system. If one interval evaluation does not include 0 we move to the next box

• if for a cable k the upper bound of ||A k B k || is lower than the lower bound of l 0
k , then we move to the next box • we check if the Kantorovitch conditions hold if no we bisect the box if yes we have determined that a new CC may be reached by the CDPR After completing the algorithm for all cases we will have determined all possible CC of the CDPR during the cable lengths change that are different from the initial CC. If there is no such CC then the initial CC will be kept during the cable lengths changes and the possible final pose(s) will be determined using the first algorithm. If more than one solution is found, then we cannot solve properly the FK problem.

E. Real time FK with a coiling model

The first FK algorithm is just able to determine if a CC different from the initial one may be valid at the end of the cable motion and thus is not completely safe. The second FK algorithm will detect if a change of CC may occur during the cable motion and is therefore fully safe from the CC view point. However both algorithms are not fully safe for finding the pose at the end of the cable motion because they both assume small motion of the platform and still may provide not a single solution. Furthermore from the CC viewpoint the second algorithm is "worst case": although a change in CC may occur the real coiling process may be such that this change will not occur. To take into account the real coiling we will assume a model for this process.

E.1 Coiling model

A typical coiling model will provide the ρ or l 0 as functions of time. Being given the state S of the actuator at time t 0 the cable length at time t > t 0 will be obtained as:

ρ(t) = G(S, t) (9)
For example assume that an electrical motor is used to turn the drum of a winch. If at time t 0 the velocity of the motor is V 0 and a control law imposes a desired velocity V c , then the velocity of the motor is

V (t) = V c + (V 0 -V c )e -t-t 0 U
where U is a known constant. If θ 0 is the rotation angle of the motor at time t 0 , then the angle at time t is obtained as:

θ(t) = V c t-(V 0 -V c ) U e -t-t 0 U + (V 0 -V c )U -V c t 0 + θ 0
If ρ 0 is the cable length at time t 0 , then the cable length at time t will be:

ρ(t) = ρ 0 + K(θ(t) -θ 0 )
where K is a constant that depends upon the reduction gear of the motor and the drum radius.

E.2 FK for non elastic cables

We will assume that at time t 0 the CDPR is in the initial CC at pose X with cable lengths ρ 0 and that we are interested in determining the robot pose and CC at time t 0 +∆T . If n is the number of cables under tension at time t 0 and if we assume the CDPR will stay in the same CC the governing equations of the system are:

||A i B i || 2 = ρ i (t) i ∈ [1, n] (10)
||A i B i || 2 -ρ i (t) 2 ≤ 0 i ∈ [n + 1, m] (11) τ = {τ 1 , . . . , τ n } τ i > 0 ∀i ∈ [1, n] F = J -T τ (12)
Let us choose a time increment ∆t < ∆T . The coiling model allows us to determine an interval value for each of the ρ i that will include all possible values of ρ i for any time in the range [t 0 + ∆t]. We then apply Kantorovitch theorem on the 6 equations ( 10) if n = 6 or on the equations [START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF][START_REF] Carricato | Stability analysis of underconstrained cable-driven parallel robots[END_REF] if n < 6. If the Kantorovitch conditions do no hold we divide ∆t by 2 and repeat the process. If they hold we are able to calculate the robot pose at time t 0 + ∆t together with the cable tensions. If the cable tensions are all positive and the inequalities (11) are verified we have a new starting pose and we repeat the process from this point until the time reaches t 0 + ∆T . But it may perfectly happen that in the time interval [t 0 , t 0 + ∆t] there is a time such one of the inequalities [START_REF] Pott | An algorithm for real-time forward kinematics of cabledriven parallel robots[END_REF] are not satisfied or one of the cable tensions becomes negative. To determine if one such configuration exists we will consider the two following problems:

14th World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015 IMD-123

• for each cable j not in the CC find a time t 1 in [t 0 , t 0 + ∆t] such that equations [START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF] are verified together with ||A j B j || 2 = ρ j (t). For each j we add an equation and the unknown t 1 and therefore we have a square system of equations. Interval analysis is used to solve this problem in t 1

• for each cable j in the CC find a time t 1 in [t 0 , t 0 + ∆t] such that the solving of equations ( 12) leads to τ j = 0. For this purpose we set τ j = 0 and we solve the system [START_REF] Carricato | Direct geometrico-static analysis of under-constrained cable-driven parallel robots with 4 cables[END_REF][START_REF] Carricato | Stability analysis of underconstrained cable-driven parallel robots[END_REF] which is still square as we have removed the unknown τ j but have added the unknown t 1 .

Let define T = {t 1 1 , t 2 1 , . . . t p 1 } be the set of times t 1 ordered by increasing value. At any of the time in this set two different CC coexist: the initial one CC 0 and a new one CC 1 . We consider each of the time t 1 in the set by increasing value and consider the situation at time t j 1 + ǫ where ǫ is a small quantity such that t j 1 + ǫ < t j+1 1 . At this time the CC of the CDPR may be either CC 0 or CC 1 . In the first case at time t j 1 CC 0 and CC 1 were equivalent but the coiling moves the CDPR back to CC 0 . In the later case the CDPR has moved to the new CC CC 1 : a cable configuration change has occurred. We solve the FK system for both cable configurations and as the CDPR must be in an unique CC only one of the two FK systems has a valid solution (i.e. verifying the inequalities [START_REF] Pott | An algorithm for real-time forward kinematics of cabledriven parallel robots[END_REF] and having positive τ ). If the valid CC is CC 0 we move to the time t j+1 1 and repeat the process until either we have exhausted the time of T or we have found a time t 1 at which a change of CC occurs. In the former case we have determined the pose at time t 0 + ∆t together with the CDPR CC and in the later case we have determined the pose at time t j 1 + ǫ together with the CC at this pose. Hence in both cases we have a new starting state for the robot with known pose and CC and we may repeat the algorithm until the time reaches t 0 + ∆T .

E.3 FK for elastic cables

Basically the same algorithm than for non elastic cables may be applied. The only difference is that a change in CC will occur only if for a cable j we have at some time t 1 ρ j = l 0 j (t 1 ). This constraint adds an equation to the FK system but t 1 is an additional unknown so that we still have a square system. Solving this system for all j leads to a set of time T that is used to determine if a CC change occurs with the same strategy than for non elastic cables.

F. Implementation

The three presented algorithm have been implemented in C++. All interval calculations are performed using the PROFIL/BIAS package [START_REF] Knppel | Profil/biasa fast interval library[END_REF] while the interval analysis solving algorithms are based on our interval analysis library ALIAS [START_REF] Merlet | ALIAS: an interval analysis based library for solving and analyzing system of equations[END_REF]. The Maple interface of this library allows us to produce part of the C++ code automatically (e.g. the code for the equations, the Jacobian and Hessian matrices). With this implementation all numerical round-off errors are taken into account. However we have noticed that in some case the required accuracy from completing the FK algorithms may be higher than the extended floating point accuracy. Currently we deal with this problem by using specific Maple procedures (for example a Newton scheme that allows one to calculate the roots of a system with an arbitrary number of digits). Clearly this is not compatible with a real-time algorithm but extended accuracy package such as MPFR [START_REF] Laurent | Mpfr: A multiple-precision binary floating-point library with correct rounding[END_REF] may be used for these special cases.

III. Examples

We have considered a CDPR with 8 cables. The coordinates of the A, B points are provided in tables I,II and are derived from the robot presented in [START_REF] Gouttefarde | Simplified static analysis of largedimension parallel cable-driven robots[END_REF]. We have used the third algorithm to fully simulate the motion of the robot along a horizontal circle centered at (0,0,2) with radius 1 with an orientation such that the vectors of the reference and mobile frame were identical. The velocity of the robot was set to 0.1m/s. It was supposed that the starting point of the trajectory was (1,0,2) with the configuration 345678. On this trajectory 11 changes of cable configurations were detected: 2 with only 5 cables under tension (34678, 13478 that occurred both twice on the trajectory) and 9 with 6 cables under tension (345678,234567,134678,134568,125678,124578,123678,123478,123456). The CC with only 5 cables under tension occur only for a small amount of time, typically less than 1 ms. Figure 4 shows the tension of cable 3 during the trajectory while figure 5 shows the tension of cable 8. In both figures we can see the large influence of CC changes on the cable tensions. We have timed the first and second algorithms for a maximal changes of 2mm in the ρ, l 0 on this trajectory and the computation time is usually less than 1ms which is satisfactory from a real-time point of view.

A 1 A 2 A 3 A 4 x -

IV. Conclusions

This paper has addressed the real-time forward kinematic problem of CDPR i..e determining the pose of the robot after a small change in its cable lengths, under the assumption that the cables have no mass but may or not have elasticity. This problem is more complex than the forward kinematics of parallel robots with rigid legs as the inverse kinematics equations that are used to solve the forward kinematics depends upon the cable configuration. Hence a forward kinematic solver should take into account the point that the cable configuration at the final pose may be different from the one at the initial pose, thereby leading to different equations and consequently to a different final pose. We have proposed 3 algorithms for that purpose. one compute all possible pose and cable configurations after completion of the change in the cable lengths. The second one performs the same job but also compute changes in cable configurations during the coiling. The last algorithm assumes a model for the coiling process and determine the unique pose and cable configuration at the end of the coiling. All three algorithms are basically real time in the sense that they complete within a sampling period of the controller. The results of the FK solver show that drastic changes in the cable tensions may occur due to CC changes. As classical simulation tools will ignore these changes they may underestimate positioning errors and cable tensions.

An interesting problem will be to determine if the third algorithm is able to deal with the sequence presented in figure 3: during the large motion that leads from the CC with 4 cables under tension to a new stable CC with 6 cables under tension there is most probably no solution to the FK equations that respect the mechanical equilibrium. In that case it will be necessary to take into account the dynamics of the CDPR.

The presented algorithm do not deal with cables having significant mass and submitted to sagging. However in that case there is a single set of FK equations and the method described in [START_REF] Merlet | Solving the forward kinematics of a Gough-type parallel manipulator with interval analysis[END_REF] may be used after an adaptation to the sagging equations with either a simplified model [START_REF] Gouttefarde | Simplified static analysis of largedimension parallel cable-driven robots[END_REF], a mixed model [START_REF] Miermeister | An elastic cable model for cable-driven parallel robots including hysteresis effect[END_REF] or a full model [START_REF] Merlet | The forward kinematics of cable-driven parallel robots with sagging cables[END_REF]. Surprisingly the real-time inverse kinematics may be more difficult for CDPR with sagging cables as our preliminary experiments have shown, but that has to be confirmed, that in some cases this problem may not have an exact solution, in which case it will be necessary to determine a solution that is the "closest" in some sense to the desired pose.

Another extension that has to be considered is toward non suspended CDPR. Here the downward pulling cables may be controlled in tension to ensure that all cables are under tension using strategies that have been exposed in numerous works [START_REF] Bruckmann | Calculating force distributions for redundantly actuated tendon-based Stewart platforms[END_REF], [START_REF] Diao | Force closure analysis of 6 dof cable manipulators with seven or more cables[END_REF], [START_REF] Hassan | Minimum-norm solution for the actuator forces in cable-based parallel manipulators based on convex optimization[END_REF], [START_REF] Lamaury | Design and control of a redundant suspended cable-driven parallel robot[END_REF] but we believe that still there will be poses in the workspace for which cables may become slack. Finally it may also be necesseray to incorporate interference detection in the real-time FK [START_REF] Blanchet | Interference detection for cable-driven parallel robots (CDPRs)[END_REF], [START_REF] Merlet | Analysis of the influence of wire interference on the workspace of wire robots[END_REF], [START_REF] Wischnitzer | Wire-driven parallel robot: permitting collisions between wires[END_REF].

V. Annex: Kantorovitch theorem

Assume that we have a square system of n equations F in the n unknowns x 1 , . . . , x n :

F = {F i (x 1 , . . . , x n ) = 0, i ∈ [1, n]}
Let X 0 = {x 0 1 , . . . , x 0 n } be a vector of specific values for the unknowns and define a ball U centered at X 0 with radius B 0 . We denote ||G|| the norm of a vector or a matrix G of dimension p or p × p. This norm may be arbitrary but we will use here Max(|G i |)∀i ∈ [1, p]

Fig. 1 .

 1 Fig. 1. A suspended CDPR

Fig. 3 .

 3 Fig. 3. An experiment showing changes of cable configuration for an infinitesimal change in the cable lengths leading to very different poses

14thFig. 4 .Fig. 5 .

 45 Fig. 4. The tension in cable 3 along the circular trajectory

  for vectors and Max(j=p j=1 |G ij |)∀i ∈ [1, p].Let's assume that the following conditions hold: 1. the Jacobian matrix of the system has an inverse Γ 0 atX 0 such that ||Γ 0 || ≤ A 0 2. ||Γ 0 F(X 0 )|| ≤ 2B 0 3. n k=1 | ∂ 2 Fi(X ∂xj ∂x k | ≤ C for i, j=1, . . . , n and ∀X ∈ U

  we use as parameters the coordinates of 4 of the B says the coordinates of OB 1 , . . . , OB 4 that are called the reference points. It follows that we have ∀j > 4 OB j = m=4 m=1 α m OB m where the α m are known constants. At the pose X the coordinates of the reference points B s j are known. • if n = 3: we choose B 1 , B 2 , B 3 as references points and we have ∀m

	)
	the statics equations being used in the FK solving only if
	n < 6 (if n = 6 only the equations (2) are used and the
	statics equations are used only a posteriori to eliminate so-
	lutions leading to at least one negative τ i ). To model the
	pose of the platform we use a parametrization that depends
	upon the number n:

• if 4 ≥ n ≤ 6:

  World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015 IMD-123 3. apply Kantorovitch theorem with X 0 being the center of the box: (a) if this test succeed calculate the solution and substitute the box by this solution 4. interval evaluation of the inequalities (3) for the non dominant cable(s) (a) if the lower bound of one evaluation is strictly positive moves to the next box in the list 5. if the box has been reduced to a solution, then store the solution and moves to the next box in the list 6. bisect the box For elastic cables the processing of a given box of the list L is: 1. if n ≤ 6 (a) solve the linear interval system in ρ i derived from (6) (b) if the solving fails bisect the box (c) if the upper bound of one ρ i is lower than l 0 i + ∆l 0

	1. if n < 6
	(a) solve the linear interval system
	(b) if the solving fails bisect the box
	(c) if one component of τ has a negative upper bound
	moves to the next box in the list
	2.

interval evaluation of the 6 equations (

2

) and the one remaining from

[START_REF] Albus | The NIST SPIDER, a robot crane[END_REF]

. If one of this evaluation has a strictly negative upper bound or a strictly positive lower bound moves to the next box in the list 14th i moves to the next box in the list (d) interval evaluation of the equations (

5

) and of the mn remaining equations of

[START_REF] Verhoeven | Analysis of the workspace of tendon-based Stewart platforms[END_REF]

. If one of this evaluation has a strictly negative upper bound or a strictly positive lower bound moves to the next box in the list 2. if n > 6 determine bounds for the ρ i by the interval evaluation of (5) (a) if the upper bound of one ρ i is lower than l 0 i + ∆l 0 i moves to the next box in the list (b) if the lower bound of one ρ i is lower than l 0 i + ∆l 0 i set this bound to l 0 i + ∆l 0 i

TABLE I .

 I Coordinates of the A points (in meter)

	B 1	B 2	B 3	B 4
	x 0.503210 -0.509740 -0.503210 0.496070
	y -0.492830 0.350900 -0.269900 0.355620
	z 0.000000 0.997530 0.000000 0.999540
	B 5	B 6	B 7	B 8
	x -0.503210 0.499640 0.502090 -0.504540
	y 0.492830 -0.340280 0.274900 -0.346290
	z 0.000000 0.999180 -0.000620 0.997520

TABLE II .

 II Coordinates of the B points in the mobile frame (in meter)

14th World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015 IMD-123

14th World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015 IMD-123 then if 2nA 0 B 0 C ≤ 1 there is an unique solution of F in U and the Newton method used with X 0 as initial estimate of the solution will converge toward this solution.

Note that the last condition may be verified with interval analysis as soon as the unknowns are all bounded.