Open access

Wire Robots Part I: Kinematics, Analysis & Design

Written By

Tobias Bruckmann, Lars Mikelsons, Thorsten Brandt, Manfred Hiller and Dieter Schramm

Published: April 1st, 2008

DOI: 10.5772/5365

Chapter metrics overview

5,940 Chapter Downloads

View Full Metrics

1. Introduction

One drawback of classical parallel robots is their limited workspace, mainly due to the limitation of the stroke of linear actuators. Parallel wire robots (also known as Tendon-based Steward platforms or cable robots) face this problem through substitution of the actuators by wires (or tendons, cables,... ). Tendon-based Steward platforms have been proposed in (Landsberger and Sheridan, 1985). Although these robots share the basic concepts of classical parallel robots, there are some major differences:

Figure 1.

(a) Conventional parallel manipulator (b) Parallel Wire Robot.

  • The flexibility of wires allows large changes in the length of the kinematic chain, for example by coiling the tendons onto a drum. This allows to overcome the purely geometric workspace limitation factor of classical robots.

  • Wires can be coiled by very fast drums while the moving mass of the robot is extremely low, which allows the robot to reach very high end effector speeds and accelerations.

  • Wires are modeled as unilateral constraints, i.e. wires can only transmit pulling forces.

  • The number of wires m can be increased to modify the workspace, to carry higher loads or to increase safety due to redundancy. Thus, having an end effector (in the following called platform) with n degrees-of-freedom (d.o.f.) more than n parallel links are used to connect the platform to the base frame.

This contribution is organized as follows: The section 2 the classification of wire robots, based on several approaches is presented. Furthermore, the kinematic calculations for wire robots are described which is followed by the description of the force equilibrium in section 3. Based on the force equilibrium, methods for workspace analysis and robot design are proposed in section 4 and 5, respectively. This contribution is extended in Part 2 (Bruckmann et al., 2008a) by the description of dynamics, control methods and application examples. Within this and the next chapter, the following abbreviations are used:

Br vector r denoted in coordinate system n ri i-th component of vector r

A matrix A

BRPtransformation matrix from coordinate system to AT shorthand for the transpose of A

A−T shorthand for (A−1)T

x˙derivation of x with resprect to time, x˙=dxdt

2. Kinematics

2.1. Classification

For wire robots, different classifications based on the difference between the number

of wires m and the number d.o.f. n have been proposed. Further on, this difference is called the redundancy r = m − n. According to (Ming and Higuchi, 1994) wire robots can be categorized based on the redundancy as follows:

  • CRPM (Completely Restrained Parallel Manipulator): The pose of the robot is completely determined by the unilateral kinematic constraints defined by the tensed wires. For a CRPM at least m = n + 1 wires are needed.

  • IRPM (Incompletely Restrained Parallel Manipulator): In addition to the unilateral constraints induced by the tensed wires at least one dynamical equation is required to describe the pose of the end effector.

In (Verhoeven, 2004) the category of CRPMs is further divided into two categories. The class of the CRPMs is restricted to robots with m = n+1 wires. Wire robots with m > n + 1 are called RRPMs (Redundantly Restrained Parallel Manipulator). Note that within this definition CRPM and RRPM robots can convert into IRPM robots if they are used at poses where external wrenches (inertia and generalized forces and torques applied onto the platform) are necessary to find completely positive wire forces. Therefore in (Verhoeven, 2004) another classification is proposed based on the number of controlled d.o.f. and is listed below.

  • 1T: linear motion of a point

  • 2T: planar motion of a point

  • 1R2T: planar motion of a body

  • 3T: spatial motion of a point

  • 2R3T: spatial motion of a beam

  • 3R3T: spatial motion of a body

Figure 2.

Here T stands for translational and R for rotational d.o.f.. It is notable that this definition is complete and covers all wire robots. The classification of (Fang, 2005) is similar to Verhoeven’s approach. Here, three classes are defined as:

  • IKRM (Incompletely Kinematic Restrained Manipulators), where m < n

  • CKRM (Completely Kinematic Restrained Manipulators), where m = n

  • RAMP (Redundantly Actuated Manipulators), where m n + 1

This chapter as well as the next one focuses on CRPM and RRPM robots. For IRPM see e.g. Maier (2004).

2.2. Inverse kinematics

Inverse kinematics refers to the problem of calculating the joint variables for a given end-effector pose. For the class of robots under consideration those are the lengths of the wires, comparable to the strokes of linear actuators. Therefore, the kinematical description of a wire robot resembles the kinematic structure of a Stewart-Gough platform, presuming the wires are always tensed and can thus be treated as line segments representing bilateral constraints. Modeling a wire robot as a platform, which is connected to m points on the base by m bilateral constraints, it is reasonable to denote the platform pose x =[ B r T φϑψ] and the base points Bb i, i = 1 i m, referenced in the inertial frame . Besides that, the platform connection points pi are referenced in the platform-fixed coordinate frame . The orientation of the platform in the base frame is represented by the rotation matrix BRP. Note that throughout this chapter roll-pitch-yaw angles are used. Assuming the wires are led by point-shaped guidances (e.g. small ceramic eyes) from the winches to the platform, the base vectors Bbi are constant. Now the vector chain pictured in fig. 3 delivers


immediately. Hence, the length of the ith wire can be calculated by


Figure 3.

Kinematics of a wire robot.

Based on the relatively simple inverse kinematics, a position control in joint space can be designed for a wire robot which already may deliver satisfying results. Note, this simple calculation only holds for the described simple guidance. While it may be sufficient for simple prototypes, it suffers from a very high wear and abrasion. Thus it is not feasible for practical applications. An alternative concept is the roller-based guidance which is e.g. widely used in theatre and stage technology, see fig. 4. As a drawback, the kinematical description becomes more difficult due to to the posedependent exit points points Bs i of the wires. The roller with radius ρis mounted onto a pivot arm. To calculate the exit points B s i, two angles have to be known: the pivoting angle θi and the wrap angle αi(see fig. 4). The pivoting angle can be calculated using a projection onto the plane D whose normal vector is the rotation axis (without loss of generality the z-axis of the inertial frame) of the pivoting angle as:

Figure 4.

Roller-based guidance.


Here Bbi denotes the vector to the point, at which the wire enters the roller. With this knowledge the vector Bmi to the midpoint of the i−th roller can be constructed

where RzB,Θi is a rotation matrix for angle Θi around the z-axis of the inertial frame. Note that without loss of generality the projection of BbiBmi onto the x − z-axis of is parallel to the x-axis in the reference orientation of the roller. Then the wrap angle αi is according to fig. 4 given by




In a projection onto the plane D, αi,1 describes the angle between the x-y-plane of the inertial frame and the vector q from Bmi to the platform connection point Bpi. The angle αi,2 is the angle between the vector from Bmi to the exit point and vector q. Furthermore the exit point Bsi of the i-th wire can be found as


Therefore the wire length can be calculated by


Analog to the Stewart-Gough platform, the forward kinematics is much more complicated, in particular for the case of roller guidances.

2.3. Forward kinematics

In opposite to the inverse kinematics, where the equations are decoupled and therefore straight forward to solve, the forward kinematics problem is more involved. In general the forward kinematics are not analytically solveable. However, in some cases a geometrical approach allows a closed solution. To be more precise, a setup with three base points connected to one platform connection points leads to the task of finding the intersection points of three spheres where the radii of the spheres represent the measured lengths of the wires and the centers of the spheres are the base points bi. Hence, the spheres represent possible positions of the endpoints of the wires. Note, that a point-shaped wire guidance is presumed. More details can be found in (Williams et al., 2004). Nevertheless, in general no analytical solution is at hand. Thus, numerical approaches have to be employed to find the solution, which is disadvantageous in terms of computation time, especially when the computation has to be done in real-time. The forward kinematics problem is generally described by m nonlinear equations in n unknown variables.


If point-shaped wire guidances are used, becomes zero. In case of m = n, (Fang, 2005) proposes to apply a Newton-Raphson solver while for CRPMs and RRPMs, one has to consider an overdetermined system. A standard approach to this class of problems is the use of a least square method which minimizes the influence of measurement errors. However, the Newton-Raphson approach can also be used for the case of m n + 1 as shown in the following, denoting the vector of wire lengths l = [ l1... lm]T (Fang, 2005):


Since in kinematics positive wire tensions are assumed, the wires are modeled as bilateral constraints, already six constraints fix the platform, i.e. r rows of the inverse Jacobian Jinv can be removed, resulting in J˜inv. Assuming Jinv having full rank, in case of a CRPM, any arbitrary choice of a row leads to full ranked J˜inv. In case of a RRPM, this does not hold in general. Thus, one has to test for a feasible choice of r rows which allows to calculate the reduced Jacobian of the forward kinematics J˜forw =J˜inv1. Without loss of generality, let n wire lengths l1,..., ln be chosen. Thus,


holds. The position at the time t1 can be calculated by forward integration in time


Taylor expansion of the second term around t0 delivers


Neglecting terms of second order and higher leads to


Approximating the differential quotient by the difference quotient gives




Using these simplified expressions, the platform pose x can be approximated by xapp:


For xapp (t), the inverse kinematics and the pose estimation error Δx(t) can be calculated, delivering the wire lengths lapp for the approximated pose. Now the difference Δl(t) between the measured and approximated wire lengths can be calculated, giving a measure for the pose error:


Once again using the approximations


it follows


where lapp(t) is calculated by the inverse kinematics for xapp(t). Noteworthy, this approach works only for small pose displacements. When displacements become larger, an iteration can improve the precision of the calculated pose by using x(t) as the estimate xapp(t) for the next step (Merlet, 2000). In (Williams et al., 2004), the authors show an iterative algorithm for a roller-based wire guidance neglecting the pivoting angle.


3. Force equilibirum

The end effector of wire robots is guided along desired trajectories by tensed wires. This design is superior to classical parallel kinematic designs in terms of workspace size - due to the practically unlimited actuator stroke creating potentially large workspaces - and mechanical simplicity. On the other hand and caused by the unilateral constraints of the wires, the workspace of wire robots is primarily limited by the forces which may be exerted by the wires. The unilateral constraints necessitate positive forces. Practically, long wires will sag at low tensions which makes kinematical computations more complicated and may lead to vibration problems. Hence, the minimum allowed forces in the wires should never fall below a predefined positive value. Against, high forces lead to increased wear and elastic deformations. Therefore the working load of wires is bounded between predefined values fmin m and fmax m and wire forces must remain between these limits. Thus, a description of the force distribution in the wires for given end effector poses and wrenches is needed. Here a convenient description of the force distribution will be presented, while in (Bruckmann et al., 2008a) three different methods for the force calculation are shown. The force and torque equilibrium at the end effector gives according to figure 5

Figure 5.

Forces for a wire robot.


The force vectors fi can be written as


since the forces act along the wires. Hence, the force and torque equilibrium can be written in matrix form




or in a more compact form as


In the following the matrix AT is called structure matrix. It is noteworthy that the structure matrix can also be derived as the transpose of the Jacobian of the inverse kinematics, but generally, it is easier to construct it based on the force approach (Verhoeven, 2004).


4. Workspace analysis

In practical applications knowledge of the workspace of the robot under consideration is essential. In contrast to conventional parallel manipulators using rigid links, the workspace of a wire robot is not mainly limited by the actuator strokes, since the length of the wires is not the main limiting factor, just restricted by the drum capacity. In fact, the workspace of a wire robot is limited anyway by the wire force limits fmin and fmax. A pose r is said to be part of the workspace if a wire force distribution f exists, such that fmin f fmax holds. Additionally further criteria, like stiffness or wire collisions, can be taken into account. Different methods to calculate the workspace of a wire robot are available. Here discrete methods as well as a continuous method using interval analysis are discussed. Further methods exist as for example presented in (Bosscher and Ebert-Uphoff, 2004), where the workspace boundaries are computed.

4.1. Discrete analysis

In order to perform a discrete workspace analysis at first an assumed superset of the workspace is discretized. Mostly an equidistant discretization is desired. This leads to a set of points, which is then tested with respect to the chosen workspace requirements. This is a widely used approach, but nevertheless, some considerations should be taken into account:

  • The calculation of the workspace conditions for the grid points generally requires the verification of a valid wire force distribution. Since it is sufficient to identify any valid distribution, fast calculation methods as presented in section (Bruckmann et al., 2008a) can be employed.

  • For some parallel kinematic mechanisms, typically symmetrical configurations are singular, leading to uncontrollable d.o.f. of the end effector. Thus, it is recommended to explicitly test at symmetrical poses of the end effector.

  • Generally, it is desired to rule out gaps in the workspace. Using a discrete approach, this is intrinsically impossible, but for practical usage, one may try to increase the grid resolution. Clearly this leads to a dramatical increase of the number of points to be checked and thus to extremely long computation times. To come up against this, parallelisation of the calculation by partitioning the workspace and allocation to different processing units is helpful and especially for this problem very efficient due to the independency of the workspace parts. Nevertheless, up from a specific resolution, continuous methods as presented in the next section should be considered.

4.2. Continuous analysis

In this section a method to compute the workspace of a wire robot, formulating this task as a constraint satisfaction problem (CSP), is shown. The CSP can be solved using interval analysis. However, other solving algorithms are also conceivable. The presented formulation can also be used for design just by interchanging the roles of the variables (Bruckmann et al., 2007), (Bruckmann et al., 2008b). This fact simplifies the generally complicated and complex task of robot design. For details see section 5. In (Gouttefarde et al., 2007) also interval analysis is used to determine the workspace of a wire robot. A criteria for the solvability of the interval formulation of eqn. 24 is given. In particular, the interval formulation is reduced to 2n n × m systems of linear inequalities in the form of eqn. 24. The solvability of those 2n systems of linear inequalities guarantees the existance of at least one valid wire force distribution. Based on this criteria a bisection algorithm is presented. This approach is beneficial in terms of the number of variables on which bisections are performed since no verification or existance variables are required. Here, however the CSP approach is presented due to its straight forward transferability to robot design.

4.2.1. Constraint satisfaction problems (CSP)

A constraint satisfaction problem (CSP) is the problem of determining all c_ Xc such that


where Φ is a system of real functions defined on a real domain representing the constraints. It will be shown later that for a description of the workspace, this problem can to be extended to


Within this definition

  • c is the vector of the calculation variables,

  • v is the vector of the verification and,

  • e is the vector of the existance variables.

The solution set for calculaton variables of a CSP is called XS i.e.


where X c is the so-called search domain, i.e. the range of the calculation variables wherein for solutions is searched.

4.2.2. Workspace analysis as CSP

Examining eqn. 25, the structure matrix AT needs to be inverted to calculate the wire forces f from a given platform pose and given external forces w. Since AT has a non-squared shape, this is usually done using the Moore-Penrose pseudo inverse. Thus, the calculated forces will be a least squares solution. In fact, not a least squares result but a force distribution within predefined tensions is demanded. To overcome this problem, the structure matrix is divided into a squared n × n matrix ApriTand a second matrix AsecTwith r = m − n columns. Now, the resulting force distribution can be calculated as


In this equation, fsec is unknown. Every point and wrench satisfying


Figure 6.

Force equilibrium workspace of plain manipulator, 2 translational d.o.f., wT = (0, 0)N, fmin = 10N, fmax = 90N.

and leading to primary wire forces


belongs to the workspace. Hence eqns. 31 and 32 represent a CSP of the form of eqn. 28 with f sec as existence an variable. To calculate a workspace for a specific robot, the following variable set for the CSP is used:

  • The platform coordinates are the calculation variables.

  • The wire forces fsec are the existence variables.

  • Optionally, the exerted external wrench w and desired platform orientations can be set as verification variables. The workspace for a fix orientation of the platform is called constant orientation workspace according to (Merlet, 2000). On the other hand, sometimes free orientation of the platform within given ranges must be possible within the whole workspace. The resulting workspace is called the total orientation workspace.

In fig. 6, the workspace of a simple plain manipulator is shown, based on the force equilibrium condition. In fig. 7, the workspace under a possible external load range is shown. Fig. 8(b) shows an example of the workspace of a spatial CRPM robot prototype while fig. 9(b) is the same protoype in a RRPM configuration with 8 wires. Additionally, the RRPM workspace was calculated with a verification range of ±3o for φ and θ, i.e. φ = θ = [−3, 3] o.

Figure 7.

Force equilibrium workspace of plain manipulator, 2 translational d.o.f., wT = ([−20, 20]N, [−20, 20]N), fmin = 10N, fmax = 90N.

4.2.3. Interval analysis

Interval Analysis is a powerful tool to solve CSPs. Therefore a short introduction is given in the following section. For two real numbers a, b an interval I = [a, b] is defined as follows




Then b is called the supremum and a the infimum of I. A n-tupel of intervals is called box or interval vector. It is possible to define every operation on on the set of intervals I = {[a, b] | a, b , a b}, such that the following holds:

Let I0, I1 I be two intervals. Then






where < occurs if one variable appears more than once. This phenomenon is called overestimation and causes additional numerical effort to get sharp boundaries. For sure the same holds for min and Inf. Thus for input intervals I0,..., In interval analysis delivers evaluations for the domain I0 × I1 ×... × In. This evaluation is guaranteed to include all possible solutions, e.g.

Figure 8.

(a) SEGESTA prototype with 7 wires (b)Workspace of the SEGESTA prototype with 7 wires.

[1,3] + [1,3]·[2,1] = [5,6]E38


[1,3]·(+ [2,1]) = [3,6]E39

As shown in detail in (Pott, 2007), a CSP can be solved using interval analysis which guarantees reliable solutions (Hansen, 1992),(Merlet, 2004b),(Merlet, 2001). Solving the CSP with interval analysis delivers a list of boxes LS representing an inner approximation of XS. According to eqn. 29, the solutions in LS hold for total Xv and a subset of Xe. Additionally, available implementations for interval analysis computations are robust against rounding effects. The following CSP solving algorithms have been proposed in (Pott, 2007) and (Bruckmann et al., 2008b). To use it for the special problem of analyzing wire robots, they have been extended. Details are described in the next sections.

Figure 9.

(a) SEGESTA prototype with 8 wires (b)Workspace of the SEGESTA prototype with 8 wires.

Algorithm Verify

Verify is called with a box c_^and checks whether


is valid for the given box c_^. Here the domain Xv is represented by the list of boxes LTv. Thus, the result can be valid, invalid, undefined or finite. If at least one box is invalid, the whole search domain does not fulfill the required properties and is therefore invalid. Algorithm Verify

  1. Define a search domain in the list LTv. In the simplest case, LTvcontains one search box.

  2. LTv
  3. Take the next box v_^from the list LTv.

  4. If the diameter of the box v_^is smaller than a predefined value vreturn with finite.

  5. If existence variables are present, call Existence with c_^and v_^. If the result is valid, goto (2). If the box is invalid, return with invalid. If the box is finite, goto (10).

  6. Evaluate h_^= Φ_(c_^, v_^).

  7. If Inf h_^> 0, the infimum of h_^ is greater than 0 in all its components. Thus, the box is valid. Goto (2).

  8. If Sup h_^< 0, the supremum of h_^ is smaller than 0 in at least one component. Thus, the box is invalid. Return with invalid.

  9. If Inf h_^< 0 < Sup h_^, h_^is rated as undefined.

  10. Divide the box on a verification variable and add the parts to LTv. Goto (2).

Algorithm Existence

Existence is a modification of Verify. It is called with the boxes c_^, v_^and checks whether


is valid. Here the domain Xe is represented by the list of boxes LTeThe result can be valid, invalid or finite. If at least one box is valid, the whole search domain fulfills the required properties and is therefore valid. Algorithm Existence

  1. Define a search domain in the list LTe. In the simplest case, LTecontains one search box.

  2. If LTeis empty, the algorithm is finished with invalid.

  3. Take the next box e_^from the list LTe.

  4. If the diameter of the box e_^is smaller than a predefined value e, return with finite.

  5. Evaluate h_^= Φ_ (c_^,v_^, e_^).

  6. If Inf h_^> 0, the infimum of h_^greater than 0 in all its components. Thus, the box is valid. Return with valid.

  7. If Sup h_^< 0, the supremum of h_^smaller than 0 in at least one component. Goto (2).

  8. If Inf h_^< 0 < Sup h_^, h_^is rated as undefined. Divide the box on an existence variable and add the parts to LTe. Goto (2).

Algorithm Calculate

Calculate is called with a search domain for c_represented by a list of boxesLTc. It uses Existence or Verify to identify valid boxes within the search domain. Thus, the result is a list Lsof valid boxes (and optionally the lists LIfor invalid boxes and LFfor finite boxes, respectively). Algorithm Calculate

  1. Define a search domain in the list LTc. In the simplest case, LTccontains one search box.

  2. Create the lists

    1. Ls for solution boxes,

    2. LI for invalid boxes,

    3. LF for finite boxes.

  3. LTc
  4. Take the next box c_^from the list LTc.

  5. If the diameter of the box c_^is smaller than a predefined value cthe box is treated as finite and thus moved to the list LF. Goto (3).

  6. If verification variables are present, call Verify withc^. Otherwise call Existence with c^and an empty box for v^.

  7. If the result of Verify is valid, move the box to the solution list Ls. Goto (3).

  8. If the result of Verify is invalid, move the box to the invalid list LI. Goto (3).

  9. If the result of Verify is finite, move the box to the finite list LF. Goto (3).

Calling Sequence

Let Xc,Xv,Xe 0 be given and represented as lists of boxes LTc,LTv,LTe. In order to determine Ls, Calculate is called with the search domain LTc. Within Calculate, Verify is called. Since existence variables are present, Existence is called in order to validate the current calculation box (Otherwise in Verify the CSP would be directly evaluated). In the Existence algorithm the CSP is evaluated and the result is rated. In case that the result is undefined, the current box is divided on an existence variable. In case that the Existence algorithm returns with finite, the calling algorithm divides on its own variables and calls Existence again. If the result is valid or invalid, the result is directly returned to the calling algorithm. If valid is returned, the result is valid for all values within c_^and v_^. The same calling sequence and return behaviour is used in Calculate calling Verify. For an effective CSP solver the return scheme should be more advanced in the way that not one variable is bisected until the box under consideration is finite, but a more sophisticated bisection distribution is used. It is noteworthy that the calculation time increases considerably with the number of variables and decreasing i, i {c, v, e}.

Preliminary Checks

Since solving the force equilibrium is a computationally expensive task, favorable prechecks are demanded to reduce computation time. An effective check is to examine the interval evaluation of τcheck := AT fcheck + w for fcheck being the box with infimum fmin and supremum fmax. If


one can conclude that the poses under consideration do not belong to the workspace under the given load w due to the non-existance of valid wire force distributions. The resulting preliminary workspace is an outer estimate and excludes poses which are not treated furthermore. Another possibility to reduce the computation time is to take symmetries into account. If symmetry axes as well as a symmectrical load range are present it is sufficient to compute only one part of the workspace and to complete the workspace by proper mirroring.

4.3. Further criteria

4.3.1. Stiffness

Besides the force equilibrium, additional workspace conditions can be applied. Due to the high elasticity of the wires (using plastic material, e.g. polyethylene), the stiffness may be low in parts of the workspace. Thus, for practical applications, especially if a predefined precision is required, it may be necessary to guarantee a given stiffness for the whole workspace. Otherwise, the compensation of elasticity effects by control may be required. Generally, this should be avoided as far as possible by an appropriate design. As shown in (Verhoeven, 2004), the so-called passive stiffness can be described as the reaction of a mechanical system onto a small pertubation, described by a linear equation:




Here, L is the diagonal matrix of the wire lengths and k ' is the proportionality factor (force per relative elongation), treating the wires as linear springs. For the calculation, the inverse problem


is solved and evaluated where only domains having a position pertubation within the predefined limits δxmin and δxmax under predefined loads between +wmin and +wmax are considered as workspace. This equation can again be treated as a CSP. However, stiffness can also be checked performing a discrete workspace analysis. The stiffness workspace for a simple plain manipulator with 2 translational d.o.f. is shown in fig. 10(a). The parameters k' = 1000N, fmin = 10N and fmax = 90N were set. For a given load of +w = ([−20, 20]N, [−20, 20]N) the platform was allowed to sag elastically in the ranges +x = ([−0.015, 0.015]N, [−0.015, 0.015]N).

Figure 10.

(a) Stiffness workspace of plain, (b) Combined force equilibrium and manipulator stiffness workspace of plain manipulator.

4.3.2. Singularities

A pose of a wire robot is said to be singular if and only if


Therefore all wire robots with pure translational d.o.f. are singularity free except those, which are always singular (Verhoeven, 2004). For a wire robot with rotational and translational d.o.f. the workspace certainly has be to checked for singularities. Since within the workspace analysis (discrete or continuous) typically a system of linear equations is solved, the singularity criteria eqn.46 can be checked implicitly. Mechanically, at singular poses certain d.o.f. become uncontrollable (overmobility). Often this happens in symmetrical configurations.

4.3.3. Wire collision

In analogy to the problem of link collisions for conventional parallel manipulators, wire collisions have to be avoided. Due to their normally small diameter one possibility is to consider the wires as lines. In (Merlet, 2004a) an algorithm is proposed to determine the regions in which collisions between wires as well as the collisions between wires and the end-effector occur. Practically, wires have certain diameter and thus, a predefined minimum distance (at least the wire diameter) should be always ensured. Therefore, the well-known problem of determining the smallest distance between two lines arises. Since the lines are known after solving the inverse kinematics this is a very basic task but may be computational expensive. Clearly, the distance condition has to be formulated as a inequality. Hence, this criteria can be easily included in the CSP formulation.


5. Robot design

While workspace analysis examines the properties of already parametrized manipulators which allows to determine the applicable use cases, robot design describes the opposite task of finding the optimal robot for a given task. Generally, the task is abstracted e.g. as a desired workspace or a desired path or trajectory. To identify the optimal robot, usually different designs have to be compared with respect to the desired properties which makes the design process generally a computationally expensive task. Finally, one or more designs turn out as most favourable. In parallel to the analysis methods, again both discrete as well as continuous methods are available and show differences in the analysis quality and the calculation effort. For the continuous approach the CSP formulation can be used again which is amongst others advantageous in terms of implementation effort. The interchanging of the roles of the variables turns the workspace analysis just into a design task. According to (Merlet, 2005), the design (or synthesis) task can be divided into two separated subtasks:

  • structure synthesis: This step includes the determination of the topology of the mechanical structure. In particular, the number and type of d.o.f. of the joints and their interconnection is identified.

  • dimensional synthesis: Here position and orientation of the joints as well as the length of the links is specified.

For the special case of a wire robot, the structure synthesis covers different aspects: While the link topology itself is fixed, one has to choose the number of wires wisely.

Additionally, the concurrence of at least two (in the planar case) or three (in the spatial case) platform connection points may be prudential:

  • Forward kinematic calculations become much easier (see section 2.3).

  • The number of design parameters is reduced, which is beneficial in terms of computation time.

  • The occurence of wire collisions is reduced since wires can intersect in at most one point.

  • The workspace is comparably large (Fang, 2005).

After completion of the structure synthesis a dimensional synthesis can be performed. For a wire robot this is nothing but the identification of feasible base points. This section is addressed to dimensional synthesis mainly.

5.1. Discrete synthesis

Discrete methods are widely used for wire robot design. In (Fattah and Agrawal, 2005) and (Pusey et al., 2004) both the parameter set and an assumed superset of the workspace are discretized. Then for every point on the resulting parameter grid the discretized workspace is computed and its volume is determined by counting the points on the grid fulfilling all workspace conditions. The approaches share the same concept:

  1. Build up an equidistant Grid of the design variables and loop through all parameter sets.

  2. For every parameter set, specify a superset of the workspace and discretize it by an equidistant grid.

  3. Loop through all grid points of step 2. For every point, determine if a valid wire force distribution according to eqn. 25 and 26 exists.

  4. Count all points belonging to the workspace and store the number for every parameter set.

  5. Obtain the maximum volume workspace, i.e., the maximum of all workspace volumes that are counted in step 4, and the associated optimized design variables.

Instead of the volume of the workspace a different optimization criterion can be employed. To increase the practical usability and the robustness of the design, a dexterity criterion is proposed, which uses the condition number of the structure matrix AT. These approaches have two drawbacks. Since the design variables are discretized, every combination of parameters is checked. Hence, this method is computationally intensive. Furthermore, no desired workspace can be guaranteed by the obtained design. Hay and Snyman use a special optimizer instead of a grid of the design variables (Hay and Snyman, 2004), (Hay and Snyman, 2005). Again, in this approach a desired workspace is not guaranteed by the obtained optimal design.

5.2. Continuous synthesis (Design-To-Workspace)

Examining eqn.28, eqn.31 and eqn.32, the roles of the variables can arbitrary be assigned. An imaginable choice is

  • The winch poses and platform fixation points are the calculation variables. Thus, the calculation delivers robot designs solving the CSP.

  • The platform coordinates are verification variables. Hence, the workspaces of all resulting robot designs will cover the set given in Xv for the platform coordinates for sure.

  • Optionally, the exerted external wrench w and desired platform orientations can be set as verification variables to extend the applicability of the emerged designs for certain process wrenches and tasks.

  • The wire forces fsec are the existence variables.

The suggested choice of variables leads to a CSP, whose solutions are robot designs. Furthermore, each obtained robot can reach every point given in Xv for the platform coordinates with every orientation and wrench given in Xv. Generally, the design task is deemed to be more complicated than the analysis. Here, the methods and formulations are inherited and just adapted to the design problem. Nevertheless, robot design is a computationally intensive task. The use of parallel computations is strongly advised. Solving the CSP is advantageous due to the following reasons:

  • The workspaces of the resulting designs are guaranteed to have no holes or singularities.

  • The design process can be extended by a global optimization step.

  • The interval CSP solver can be effectively parallelized.

5.3. Continuous optimization

Optimization is always performed with respect to a cost function. In industrial application usually the term optimal is used with respect to economic aspects, i.e. costs. In the case of wire robots, the most cost-driving factor are the wire winch units. However, optimizing the number of winches is part of the structure synthesis. Thus, here another cost function has to be chosen. This choice is generally arbitrary. Nevertheless, a reasonable choice is the volume expansion. On one hand, reducing the expansion of the robot saves space within a production facility which reduces costs, on the other hand, the required wire lengths are minimized. In literature, usually the optimization is performed with respect to the size (or volume) of the workspace or the integral of workspace indices over the workspace. This gives finally the robot with optimal (e.g. largest) workspace with respect to some criterion, but it says nothing about its shape and its usability for applications. Thus, here another approach is used (Pott, 2007): Not a maximum size of the workspace is demanded, but the guaranteed enclosure of a predefined domain is desired. The optimization is performed using interval analysis. Let a list L of n boxes of robot designs,e.g. a solution of the according CSP be given. The following algorithm performs the required steps for a minimization (maximization is performed analogously):

  1. Set i = 0 and Fopt = [0,0].

  2. Set i = i + 1. If i > n the algorithm finishes.

  3. Take the i-th element li of L and compute its cost function F(li).

  4. If Sup(F(li)) < Sup(Fopt), set Fopt = F(li).

    • If Sup(F(li)) < Inf(Fopt) delete all elements of the solution list and initialize it with li. Goto 2.

    • Store li in the solution list. Goto 2.

  5. If Inf(F(li)) < Sup(Fopt) store li in the solution list.

  6. Discard li and goto 2

For performance reasons the optimization can be included in the CSP Solver. This will reduce computation time drastically since non-optimal designs are discarded at an early stage. An example for the optimization of an 1R2T robot is shown in fig. 11(b). For the upper winches, y-positions are free, for the lower ones, the x-positions are the free optimization parameters.

Figure 11.

(a) 1R2T example (b) 1R2T robot optimized for shown desired quadratic workspace.

5.4. Design-To-Task

The Design-to-Workspace method results in manipulators, guaranteed to have a desired workspace. Thus, the manipulator is able to perform every task within this workspace. Nevertheless, from the economic point of view, there is a need for manipulators which perform a specific task in minimum time, with minimum energy consumption or with lowest possible power. A typical industrial application is e.g. the pick-and-place task, moving a load from one point to another. Usually, this task is performed within series production, i.e. it is repeated many times. In such an application the optimal manipulator for sure finishes the job in minimal time with respect to the technical constraints (here, the term optimal is used with respect to minimal time without loss of generality). Thus, the set-up of a specialized (i.e. taskoptimized) manipulator can be profitable. When using classical industrial robots, the freedom to modify the mechanical setup of the robot is very limited. Thus, only the trajectories can be modified and optimized with respect to the task. Due to the modular design of a wire robot, the task-specific optimization can be seperated into two tasks:

  • Optimization of the robot: within all suitable designs, the robot which performs the task in shortest time is chosen.

  • Optimization of the trajectory: within all possible trajectories, the trajectory which connects the points in shortest time is chosen. The concepts needed for this step are partly explained in (Bianco and Piazzi, 2001b),(Bianco and Piazzi, 2001a) and (Merlet, 1994).

By treating this task as a CSP, both claims can be optimized at the same time. In particular, the final result contains the robot which is able to perform the task quickest and the corresponding trajectory description. To perform an optimization of the wire robot and the trajectory simultaneously, the latter is planned first. Afterwards it is checked whether the complete trajectory belongs to the workspace. The robot designer may provide a predefined trajectory or leave this up to the optimizer. The parameters of the trajectory are therefore either fixed or calculation variables. Hence, the CSP looks the same as in eqn.31 and eqn.32 except the previous trajectory generation. For integrated optimization, the variables are assigned as follows. Note, that also a separate optimization of robot and trajectory is possible:

  • Robot optimization

    • The robot base is described by the positions of the winches. To optimize the robot, the winches can be moved. Therefore, bi are calculation variables

    • The end effector is described by the positions of the platform anchor points pi. To optimize the robot, these points can be moved on the platform. Therefore, pi are calculation variables

  • Trajectory optimization

    • The path is described by a polynomial of fourth order without loss of generality. Besides the start and end poses, also the velocities are predefined. This leaves one free parameter, e.g. the start acceleration for translational d.o.f. or the orientation at half travel time for rotational d.o.f.. These can be set as calculation variables.

    • To describe the trajectory, additionally the travel time T has to be defined. To calculate the minimum time, T is a calculation variable.

    • For the whole trajectory, a path parameter t is assigned. Usually, it is normalized between zero and one. Since the whole trajectory shall betraced for validity, t is a verification variable

Optionally, the exerted external wrenches w can be set as verification variables. Note, that within the trajectory verification the dynamics of the robot are taken into account by adding the inertia loads resulting from the calculated accelerations to the platform loads w. The example in fig. 12(b) shows the result of an optimization for a point-to-point (PTP) movement. A n = 3 d.o.f. wire robot with m = 4 wires is considered (see fig. 12(a)). It consists of a bar-shaped platform of 0.1m length, connected by four winches to the base frame. Free optimization parameters were the y-position of the upper right winch, the travel time and the intermediate acceleration of the rotation angle at T = 0.5.

Figure 12.

(a) 1R2T example (b) 1R2T robot optimized for shown desired PTP trajectory


6. Conclusion

In this chapter, the analysis and design of wire robots was discussed. The required basics like kinematics and the force equilibrium - which is the one of the main workspace criteria - were introduced as well as serveral classification approaches. The analysis of wire robots was described as a CSP task which can be solved by interval analysis. Besides reliable results, the same CSP can be used for robot design by a variable exchange, which is generally a challenging problem. In addition to this continuous approach, also the more straightforward discrete methods are shortly introduced. The next chapter is dedicated to the application and control of wire robots. Therefore, the dynamical description as well as different methods to calculate a force distribution for a given pose and platform wrench are presented. Based on this, some control concepts are described. The use of wire robots for several fields of application is demonstrated by a number of examples.



This work is supported by the German Research Council (Deutsche Forschungsgemeinschaft) under HI370/24-1, HI370/19-3 and SCHR1176/1-2. The authors would like to thank Martin Langhammer for contributing the figure design.


  1. 1. BiancoC. G. L.PiazziA. 2001a A hybrid algorithm for infinitely constrained optimization. International Journal of Systems Science, 32 1 91102 .
  2. 2. BiancoC. G. L.PiazziA. 2001b A semi-infinite optimization approach to optimal spline trajectory planning of mechanical manipulators. In Goberna, M. A. and Lopez, M. A., editors, Semi-Infinite Programming: Recent Advances, chapter 13, 271297 . Kluwer Academic Publisher.
  3. 3. BosscherP.Ebert-UphoffI. 2004 Wrench-based analysis of cable-driven robots. Proceedings of the 2004 IEEE International Conference on Robotics & Automation, 49504955 .
  4. 4. BruckmannT.MikelsonsL.BrandtT.HillerM.SchrammD. 2008a Wire robots part II- dynamics, control & application. In Lazinica, A., editor, Parallel Manipulators, ARS Robotic Books. I-Tech Education and Publishing, Vienna, Austria. 978-3-90261-320-2
  5. 5. BruckmannT.MikelsonsL.HillerM.(January 9-11, 2008b). A design-to-task approach for wire robots. In Kecskeméthy, A., editor, Conference on Interdisciplinary Applications of Kinematics 2008 , Lima, Peru.
  6. 6. BruckmannT.MikelsonsL.SchrammD.HillerM. 2007 Continuous workspace analysis for parallel cable-driven stewart-gough platforms. to appear in Proceedings in Applied Mathematics and Mechanics .
  7. 7. FangS. 2005 Design, Modeling and Motion Control of Tendon-based Parallel Manipulators. Ph. D. dissertation, Gerhard-Mercator-University, Duisburg, Germany. Fortschritt-Berichte VDI, Reihe 8, Nr. 1076, Düsseldorf.
  8. 8. FattahA.AgrawalS. K. 2005 On the design of cable-suspended planar parallel robots. ASME Transactions, Journal of Mechanical Design, 127 5 10211028 .
  9. 9. GouttefardeM.MerletJ.P.DaneyD. 2007 Wrench-feasible workspace of parallel cable-driven mechanisms. 2007 IEEE International Conference on Robotics and Automation, ICRA 2007, 10-14 April 2007, Roma, Italy, 14921497 .
  10. 10. HansenE. 1992 Global Optimization using Interval Analysis. Marcal Dekker, Inc.
  11. 11. HayA.SnymanJ. 2004 Analysis and optimization of a planar tendon-driven parallel manipulator. In Lenarcic, J. and Galetti, C., editors, Advances in Robot Kinematics, 303312 , Sestri Levante.
  12. 12. HayA.SnymanJ. 2005 Optimization of a planar tendon-driven parallel manipulator for a maximal dextrous workspace. In Engineering Optimization, 37 of 20, 217236 .
  13. 13. LandsbergerS.SheridanT. 1985 A new design for parallel link manipulator. In International Conference on Cybernetics and Society, 812814 „ Tucson, Arizona.
  14. 14. MaierT. 2004 Bahnsteuerung eines seilgeführten Handhabungssystems- Modellbildung, Simulation und Experiment. PhD thesis, Universität Rostock, Brandenburg. Fortschritt-Berichte VDI, Reihe 8, Nr. 1047, Düsseldorf.
  15. 15. MerletJ.P. 1994 Trajectory verification in the workspace for parallel manipulators. The International Journal of Robotics Research, 13 4 326333 .
  16. 16. MerletJ.-P. 2000 Parallel Robots. Kluwer Academic Publishers, Norwell, MA, USA.
  17. 17. MerletJ.-P. 2001 A generic trajectory verifier for the motion planning of parallel robots. Journal of Mechanical Design, 123 510515 .
  18. 18. MerletJ.-P. 2004a Analysis of the influence of wires interference on the workspace of wire robots. On Advances in Robot Kinematics, 211218 .
  19. 19. MerletJ.-P. 2004b Solving the forward kinematics of a gough-type parallel manipulator with interval analysis. Int. J. of Robotics Research, 23 3 221236 .
  20. 20. MerletJ.-P. 2005 Optimal design of robots. In Robotics: Science and Systems, Boston.
  21. 21. MingA.HiguchiT. 1994 Study on multiple degree of freedom positioning mechanisms using wires, part 1- concept, design and control. International Journal of the Japan Society for Precision Engineering, 28 131138 .
  22. 22. PottA. 2007 Analyse und Synthese von Parallelkinematik-Werkzeugmaschinen. Ph. D. dissertation, Gerhard-Mercator-University, Duisburg, Germany. Fortschritt-Berichte VDI, Reihe 20, Nr. 409, Düsseldorf.
  23. 23. PuseyJ.FattahA.AgrawalS. K.MessinaE. 2004 Design and workspace analysis of a 6-6 cable-suspended parallel robot. Mechanism and Machine Theory. 39 7 761778 .
  24. 24. VerhoevenR. 2004 Analysis of the Workspace of Tendon-based Stewart Platforms. PhD thesis, University of Duisburg-Essen.
  25. 25. WilliamsR. L.AlbusJ. S.BostelmanR. V. 2004 3d cable-based cartesian metrology system. Journal of Robotic Systems, 21 5 237257 .

Written By

Tobias Bruckmann, Lars Mikelsons, Thorsten Brandt, Manfred Hiller and Dieter Schramm

Published: April 1st, 2008