Keywords

1 Introduction

Cable-driven parallel robot (CDPR) have the mechanical structure of the Gough platform with rigid legs except that the legs are cables whose length may be controlled. Numerous applications of CDPRs have been mentioned e.g. large scale maintenance studied in the European project Cablebot [7], rescue robot [6, 9] and transfer robot for elderly people [4] to name a few. We will assume that the output of the coiling system for cable i is a single point \(A_i\), while the cable is connected at point \(B_i\) on the platform. A cable may be assumed to be mass-less and non-deformable i.e. the cable shape is the linear segment going from A to B and its length does not change whatever is the tension in the cable or may be deformable i.e. the previous assumptions on the cable shape and/or its lengths do not hold. For example Fig. 1 presents a robot with sagging cables. In this paper we will consider the inverse kinematics problem (IK) for CDPR having 6 cables. If we assume that the cables are non-deformable, then being given the pose of the platform the lengths of the cables are obtained directly as the 2-norm of the vector \(\mathbf{A_iB_i}\) that is obtained directly from the platform pose. But as the cable may exert only a positive tension we have to consider the static equation obtained as

$$\begin{aligned} {\mathscr {F}} = \mathbf{J^{-T}}\tau \end{aligned}$$
(1)
Fig. 1
figure 1

Cable driven parallel robots with sagging cables

where \({\mathscr {F}}\) is the external wrench applied on the platform, \(\tau \) is the vector of the cable tensions and \(\mathbf{J^{-T}}\) is the transpose of the inverse kinematic jacobian of the robot, that is fully determined as soon as the pose of the platform is known. Equation (1) is a 6 dimensional linear system that may easily be solved to provide the cable tensions. If all these tensions are positive, then we have got a solution for the IK, otherwise the IK has no solution. If the cable are deformable there has been very few works addressing the IK solving: Riehl [8] and Hui [1] assume both Irvine sagging model [2] for the cable but their numerical solver provides only a single solution, if any. Using the same cable model we have exhibited a solving algorithm that allows one to calculate all the solutions [5] (and exhibit a case for which a CDPR has 3 solutions) but the solving algorithm is computer intensive. Simple linear elasticity model has been used to study the kinematics of a special configuration of CDPR [3]. But to the best of the author knowledge no upper bound on the number of solutions of the IK has even been provided and no other cable model has been studied. The purpose of this paper is to provide a generic solving approach that can be used whatever is the cable model and possibly allow to provide a (probably largely overestimated) bound on the number of solutions. An essential issue is the concept of cable model that is addressed in the next section.

2 Cable Model

We denote by \(L_0\) the length of a cable before it is submitted to any deformation and by \({\mathscr {P}}\) a set of parameters that allows one to describe the physical properties of the cable with respect to deformation under tension. A cable model is a set of relations \( \mathbf{T}(A, B, L_0, \tau , {\mathscr {P}})=0 \) that allows one to determine the cable force action \(\tau \) at point B according to the values of \(A, B, L_0\).

For using our IK solving approach the following assumptions on the cable model will be required:

  1. 1.

    the set \(\mathbf{T}\) is constituted of continuous and differentiable functions,

  2. 2.

    the writing of \(\mathbf{T}\) may involve new unknowns but the number of equations in \(\mathbf{T}\) is such that for given \(A, B, L_0, {\mathscr {P}}\) the system has only a discrete number of solutions

  3. 3.

    for each parameter in \({\mathscr {P}}\) there is a limit value such that the cable model will be asymptotically identical to the non-deformable cable model

As example of cable model we may mention the Irvine sagging cable model that is valid for elastic cable with mass. In this model we consider the vertical plane that includes the cable and assume that the cable is attached at point A with coordinates (0, 0) while the other extremity is attached at point B with coordinates \((x_b\ge 0, z_b)\). The vertical and horizontal forces \(F_z, F_x\) are exerted on the cable at point B and the cable length at rest is \(L_0\). With this notation the coordinates of B are related to the forces \(F_x, F_z\) [2] by the \(C^n\) functions:

$$\begin{aligned} x_b = F_x\left( \frac{L_0}{EA_0}+\frac{sinh^{-1}(F_z)-sinh^{-1}((F_z -\frac{\mu g L_0}{F_x})}{\mu g}\right) \end{aligned}$$
(2)
$$\begin{aligned} z_b= \frac{\sqrt{F_x^2+F_z^2}- \sqrt{F_x^2+(F_z-\mu g L_0)^2}}{\mu g} +\frac{F_z L_0}{E A_0}-\frac{\mu g L_0^2}{2 E A_0}\nonumber \end{aligned}$$

where E is the Young modulus of the cable material, \(\mu \) its linear density, \(A_0\) the surface of the cable cross-section and \(F_x>0\). For the IK problem the coordinates \(x_b, z_b\) are known, the \(L_0\) have to be determined and two new unknowns are introduced, \(F_x, F_z\), while this cable model provide two relations. Consequently this model satisfies assumption 1 and 2. Assume now that E goes to infinity and \(\mu \) to 0. The limit values \(x_b^l, z_b^l\) of \(x_b, z_b\) are then

$$\begin{aligned} x_b^l= \frac{L_0 F_x}{\sqrt{F_x^2+F_z^2}}~~~~~~z_b^l=\frac{L_0 F_z}{\sqrt{F_x^2+F_z^2}} \end{aligned}$$
(3)

which corresponds to a cable directed along the line AB and exerting a force of amplitude \(\sqrt{F_x^2+F_z^2}\). Therefore this cable model also satisfies assumption 3.

3 The Continuity Model

Let us consider a CDPR with n cables and a cable model that involves p unknowns: consequently the IK has n (the cable lengths) plus np unknowns. As for the equations we have 6 equations coming from (1) and np equations coming from the cable model for a total of \(6+np\) equations. The system of IK equations is therefore square if \(n=6\) which is the case we are considering in this paper.

3.1 The Inverse Model

Assume that a cable model has been decided and a solving algorithm has allowed us to determine the IK solution(s) for a given pose and for given values of the cable model parameters \({\mathscr {P}}_d\). The cable model and IK equations being \(C^1\) we know that for a “small” perturbation on \({\mathscr {P}}\) we will get IK solutions that are close to the initial one. Furthermore for a given IK solution \(\mathbf{S}\) (i.e. a set of length for the 6 cables) with the initial \({\mathscr {P}}\) we also know that the Newton-Raphson algorithm with \(\mathbf{S}\) as initial guess may converge toward the solution of the IK with the new values of \({\mathscr {P}}\), the convergence being ensured as soon as the perturbation is small enough provided that the system is not singular at \(\mathbf{S}\). The Kantorovitch theorem [10] allows one to determine the meaning of a small perturbation: provided that the jacobian of the new system has an inverse at \(\mathbf{S}\) and that some conditions are satisfied for the norm of the equations at \(\mathbf{S}\), for the norm of the jacobian inverse and for the norm of the Hessian matrix of the system, then the theorem ensures that there is a single solution of the new system in a ball centered at \(\mathbf{S}\) and guarantees that the Newton-Raphson scheme will converge toward this solution. Let \({\mathscr {P}}_s\) be the cable model parameters limit values and a linear iterative interpolation scheme defined by

$$ {\mathscr {P}}_{k+1}= {\mathscr {P}}_k+\alpha ({\mathscr {P}}_s-{\mathscr {P}}_k) $$

initialized with \({\mathscr {P}}_0= {\mathscr {P}}_d\). For the values \({\mathscr {P}}_d\) we assume that we know a set of n solutions \({\mathscr {S}}_0=\{S_1,S_2,\ldots ,S_n\}\). We will choose the positive \(\alpha \) in such a way that the IK system obtained with the parameters \({\mathscr {P}}_{k+1}\) satisfies the conditions of the Kantorovitch theorem for the solutions obtained for the system whose parameter values are \({\mathscr {P}}_k)\). If the conditions does not hold we divide \(\alpha \) by 2. For example starting from \({\mathscr {P}}_0\) we set \(\alpha \) to an arbitrary small value and test the condition of the Kantorovitch theorem for \({\mathscr {P}}_1\) and decrease \(\alpha \) until they hold. At this stage we will use Newton to calculate the set \({\mathscr {S}}_1\) of the n solutions for the parameter set \({\mathscr {P}}_1\). We will stop this scheme when \(\alpha \) is close to 1. To determine how \(\alpha \) should be close to 1 to stop the process we look at the cable tensions and lengths for all solutions in \({\mathscr {S}}_k\) to determine what will be the non-deformable case to which will lead the parameters going to their limit values. Namely we compare all cable lengths \(L_0^i\) to the distance \(d_i\) between the \(A_i, B_i\) points and if \(L_0^i > d_i\), then the i-th cable is slack otherwise it is under tension. This provide us a system of equations for each solution of \({\mathscr {S}}_k\) which should have as approximate solution the corresponding element in \({\mathscr {S}}_k\). If the Kantorovitch conditions hold for the system, then we will be able to determine the non-deformable configuration to which the deformable solution will lead, otherwise we increase \(\alpha \).

3.2 The Direct Model

As we have shown in the inverse model the manipulator ends up close to a configuration with non-deformable cables for which the platform is at the desired pose with some cables that are possibly slack. We may now revert the process to obtain the IK solutions for the deformable cables . We will consider all combinations of cables under tension in the set of 6 cables, assuming that they are non-deformable. We then solve their IK, retaining only the solutions for which the non slack cable have a positive tension.

There is clearly at most one solution when considering that all 6 cables are under tension. This can be checked by solving equation (1) that is a six-dimensional linear system in the 6 cable tensions. For the combinations with less than 6 cables under tension we will assume that the slack cable have 0 tension or a minimal one depending on the cable model. Hence if the CDPR has m cables under tension the system (1) is still a linear system, possible overconstrained, that may have a positive solution in terms of the tensions in the m cables.

After this processing we get feasible configurations for the non-deformable case. For each of them we have a set of valid lengths \(L_0\) for the cables. \({\mathscr {P}}\) is set to a value \({\mathscr {P}}_i\) close to \({\mathscr {P}}_s\) and then we change the parameter using the iterative scheme:

$$\begin{aligned} {\mathscr {P}}_{k+1}= {\mathscr {P}}_k+\beta ({\mathscr {P}}_d-{\mathscr {P}}_k) \end{aligned}$$
(4)

with \({\mathscr {P}}_0= {\mathscr {P}}_i\). As in the inverse scheme we choose \(\beta \) small enough so that the Kantorovitch conditions are fulfilled for \({\mathscr {P}}={\mathscr {P}}_{k+1}\). We then stop the process when \({\mathscr {P}}_{k+1}={\mathscr {P}}_d\) and at this stage we have obtained the IK solution(s) for the CDPR with deformable cables.

Note that this scheme starts with a non-deformable cables state with possibly some slack cables. However during the iterations it may perfectly happen that an initially slack cable, which therefore does not support the platform, becomes supportive and vice-versa.

3.3 Maximum Number of Solutions

The inverse scheme shows that the IK solutions originates from an IK solution with non-deformable cables. Being given a distribution of slack and under tension cables there is always at most a single solution to the IK problem and hence the total number of solutions of the IK with deformable cables cannot exceed the total number of slack/under tension combinations. This number may be established as 1 (6 cables under tension) \(+\)6 (5 cables under tension) \(+\)15 (4 cables under tension) \(+\)20 (3 cables under tension) \(+\)15 (2 cables under tension) \(+\)6 (1 cable under tension) which amounts to a maximum of 63 solutions. However this number will be the real bound under some assumptions on singularities.

3.4 The Singularity Case and Workspace Calculation

Both the inverse and direct scheme assume that the jacobian of the system does not become singular. Such a case may occur if the cable model equations are singular or a singularity will occur if (1) become singular. If the unit vector \(\mathbf{n_i}\) denotes the direction of action of cable i at point \(B_i\) (\(\mathbf{n_i}\) may differ from the unit vector of the line going through \(A_i, B_i\) because of the cable deformation) and \(\tau _i\) the tension in the cable at \(B_i\) then we define the interaction matrix \(\mathbf{G}\) whose i-th row \(\mathbf{G_i}\) is defined by \( \mathbf{G_i} = ( \mathbf{n_i}~~~~\mathbf{CB_i} \times \mathbf{n_i})^T \) so that the static of the CDPR may be written as

$$\begin{aligned} {\mathscr {F}} = \mathbf{G} \tau \end{aligned}$$
(5)

A singularity will occur if the Plücker vectors \(\mathbf{G_i}\) are dependent, a well known problem for the analysis of parallel robots. Such a singularity may be detected through an increase in the tension of some cables. Open issues regarding this aspect are:

  • can we avoid a singularity by modifying the iterative scheme (4)?

  • in the inverse scheme can we encounter a singularity that will prohibit us to converge toward a solution with non-deformable cables? If this is the case, then the approach may miss IK solutions. Should we consider complex values for the unknowns in order to avoid singularities?

  • is possible to have IK solutions with deformable cables for which the inverse continuation problem does not lead to a non deformable cable IK configuration?

All these issues are quite complex and will be the subject of another paper(s). Our conjecture is that in general we will have only isolated singular points so that by using bifurcation theory at the singular point so that all IK solutions will originate from (possibly multiple) non-deformable configuration. If this conjecture is true it has an important practical consequence: the reachable workspace of a CDPR with deformable cables, whatever the cable model, is identical to the reachable workspace of the same CDPR that has non-deformable cable.

4 Example

We consider as example our large scale robot MARIONET-CRANE [6], probably the largest CDPR ever deployed, for which we will assume Irvine sagging cables. The IK problem has already been studied in [5] but we will correct some mistakes of this paper. We assume here that the external wrench applied on the platform is only the gravity. This robot is a suspended CDPR (i.e. there is no cable having a B point under the platform) with 6 cables, whose \(A_i, B_i\) coordinates are given in Table 1.

Table 1 Coordinates of the \(A_i\) and \(B_i\) points on the base and on the platform (in cm, by rows)

The cables characteristics are \(E= 100^9\,\mathrm{N/m}^2\), \(\mu =\) 0.079 kg/m and their diameter is 4 mm. For finding the IK solutions for the non deformable case we assume that the slack cables act along the vertical with a tension equal to \(\mu g L_0/2\), where \(\mu \) has a very low value. With that assumption equation (1) is 6 dimensional linear system in the tensions of the cables that are supposed to be under tension and in the \(L_0\) for the slack cables. We keep as potential IK solution the one for which the tensions and the \(L_0\) are positive.

We are basically finding the same IK solution as in [5] except that for the pose \(x=400, y=700, z= 200\) and a platform mass of 69 kg our new IK algorithm provides a solution although we have claimed that there was none. This can be explained as the IK solution leads to \(F_X\) values that are not included in the intervals we have provided in our previous algorithm. However we confirm that for \(x=y=0\), \(z=200\) there is no IK solution. It must also be noted that we have found cases with a singular configuration for the direct scheme but it appears when the \(F_x\) of cable(s) are close to 0 (corresponding to a singularity of the cable model). In that case we use a simplified model: we rewrite the equations with \(F_x=0\), \(F_z= \mu g L_0/2\) (corresponding to a cable that acts vertically on the platform) and we remove the Irvine equations for the corresponding cable(s) so that this system is still square. Then we use the Newton scheme to solve the simplified system and go on decreasing E and increasing \(\mu \). After eachg successfull solving step of the simplified model we use Kantorovitch and Newton to get a solution of the full system, using the solution obtained for the simplified system and setting a small positive value for the \(F_x\) of the singular cables. If we succeed, then we switch to the full model.

The previous paper have shown an example with up to 3 solutions but our new algorithm has allowed to find examples with 5 solution, for example for \(x=96.733\), \(y= 1138.33\), \(z=165\), \(\mu =\) 0.004 kg/m and a mass of 10 kg,the platform being horizontal. We get 5 IK solutions for non-deformable cables with the following cables that are not under tension: none, [3], [6], [3, 5], [4, 6] but 4 of them have an unreasonable cable lengths (for all of them one cable has a length over 105 m and may reach 4103 m). Note that if we increase \(\mu \) to 0.079, then the branches none and [3] meet the same point for \(\mu =\) 0.0042 and apparently no solution can be found for larger values of \(\mu \) so that we end up with only 3 solutions. This shows that apparently there may be a limit on the value of \(\mu \) that may lead two branches to collapse and not generating an IN solution.

However a more rigourous singularity analysis has to be performed in order to guarantee that will not miss one of the IK solution. An extensive search on the xyz using a grid and a fixed orientation has provided at most 5 potential IK solutions for the non-deformable case. During this search the only singularity we have found were cable model singularity with one \(F_x\) going to 0. For a grid of over 150 000 points we get 1, 2, 3, 4, 5 potential solutions respectively in 76, 19, 5, 0.01 and 0.05% of the cases.

5 Conclusion

Finding all IK solutions of CDPR with deformable cables may be complex according to the used cable model. We propose in this paper a generic approach that allow to manage all cable models that satisfy minimal assumptions, while providing for the first time an upper bound for the maximal number of solutions, provided that our conjecture on singularity hold. Although it has be proven to be efficient even for a complex cable model, the issue of the crossing of singularity remains to be addressed. If the CDPR has more than 6 cables the IK equations have more unknowns than equations but we may still apply the method after having chosen specific tensions for the non-deformable case. At each step we may choose a close but different set of tensions that satisfy some optimality criterion and then solve the IK equations for the current values of the parameters. If the CDPR has less than 6 cables the procedure may also be used provided that we choose which dof of the platform has to be controlled.