Ana Lucia

Cruz Ruiz

Stéphane Caro
email: stephane.caro@irccyn.ec-nantes.fr

Philippe Cardou
email: pcardou@gmc.ulaval.ca

François Guay
email: francois.guay.2@ulaval.ca

Ana Lucia Cruz

Franc ¸ois Guay

ARACHNIS: Analysis of Robots Actuated by Cables with Handy and Neat Interface Software

Keywords: workspace, wrench-feasible workspace, interference, graphical user interface, capacity margin, static equilibrium, cable-driven robot, wire-driven robot 1

come   L'archive ouverte pluridisciplinaire

Introduction

Cable-Driven Parallel Robots (CDPRs) may be seen as Gough-Stewart platforms in which the prismatic actuators are replaced with cables. Hence, the cables are connected between the moving platform and fixed eyelets. The platform moves around by increasing or decreasing the lengths of the different cables in concert while preventing any cable from becoming slack [START_REF] Roberts | On the inverse kinematics, statics, and fault tolerance of cable-suspended robots[END_REF]. This architecture allows for marked advantages over conventional robots, such as the possibility of a larger workspace and higher accelerations, thanks to lighter mechanical components. CPDRs also suffer from important drawbacks, however. First, there is the possibility of interferences among the cables or between a cable and the moving platform. Furthermore, the non-rigid nature of the CPDR links further restrict its workspace, and requires a rigorous study of its force transmission characteristics.

Nevertheless, CDPRs have been used, often with success, in many areas such as robotic cranes, cable-driven cameras, medicine, automatic painting and rescue operations, to name but a few. The reader is referred to a recent literature survey on the topic [START_REF] Gosselin | Cable-driven parallel mechanisms: State of the art and perspectives[END_REF] for a more thorough account of these applications. These CDPRs and others were developed independently, in most cases, meaning that their designers usually started the analysis and design process development "from scratch". As CDPRs become more popular, there is an obvious need to automate their design and analysis, to accelerate their development and to provide a common working ground to the engineers involved.

To partly answer this need, we propose the graphical user interface ARACHNIS, or Analysis of Robots Actuated by Cables with Handy and Neat Interface Software. In short, ARACHNIS is dedicated to the parameter-based analysis and design of CDPRs. It allows the designer to enter the design parameters of the robot, to specify the task that the robot should perform in terms of force and moment ranges, and to assess the performance of the robot through the visualization of its Wrench-Feasible Workspace (WFW) [START_REF] Bouchard | On the ability of a cable-driven robot to generate a prescribed set of wrenches[END_REF][START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF] and its Interference-Free Constant Orientation Workspace (IFCOW) [START_REF] Merlet | Analysis of the influence of wires interference on the workspace of wire robots[END_REF]. ARACHNIS seems to be similar in its functions to a previously developed interface named WireCenter [START_REF] Pott | Large-scale assembly of solar power plants with parallel cable robots[END_REF]. From the little information we could gather on WireCenter, it seems that the two interfaces differ mainly in that WireCenter allows to trace the wrench-closure workspace (WCW), while ARACH-NIS allows to trace the WFW.

This workspace was chosen to analyze the static-equilibrium of the robot because it applies to a wider range of tasks than the WCW [START_REF] Gouttefarde | Analysis of the wrench-closure workspace of planar parallel cable-driven mechanisms[END_REF] or the Static Workspace (SW) [START_REF] Stump | Workspaces of Cable-Actuated Parallel Manipulators[END_REF]. In fact, the WCW and the SW can be shown to be special cases of the WFW. To the knowledge of the author, two methods have been reported to trace the WFW of a spatial parallel robot driven by m cables. Both of these methods are purely numerical, since, as was pointed out in [START_REF] Bosscher | Wrench-feasible workspace generation for cabledriven robots[END_REF], computing symbolic expressions of the WFW-boundaries is too complex to be practical in the general case. This spurred other researchers to simply use a brute-force method [START_REF] Azizian | The dimensional synthesis of spatial cable-driven parallel mechanisms[END_REF] to trace the WFW as a cloud of points. Others resorted to interval arithmetics to trace the WFW as a set of boxes that are either completely inside the workspace or not completely outside of it [START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF]. Both of these methods are relatively slow and generally yield poor renderings of the workspace boundary. In ARACHNIS, we resort to an alternative method that was recently proposed by the authors [START_REF] Guay | Measuring how well a structure supports varying external wrenches[END_REF], and which, if far from perfect, appears be somewhat faster and to yield smoother estimates of the WFW than the two existing ones. The IFCOW, on the other hand, is determined according to the method proposed in [START_REF] Perreault | Geometric determination of the interferencefree constant-orientation workspace of parallel cable-driven mechanisms[END_REF].

The paper is organized as follows: Section 2 describes the kinetostatic model of a cable-driven parallel mechanism. Section 3 introduces the capacity margin as a measure of the robustness of CDPR equilibrium. Section 4 explains how the capacity margin is used to trace the WFW. Section 5 presents the polygons of the IFCOW where interferences occur between the cables and the moving platform. Section 6 describes the ARACHNIS interface. A planar cable-driven parallel mechanism and a spatial cable-driven parallel mechanism are studied in Secs. 7 and 8, respectively. Finally, we present our conclusions and future work in Sec. 9.

Kinetostatic Model of a Cable-Driven Parallel Robot

Formally, a cable-driven parallel robot consists of a moving platform connected to a fixed base by a set of m cables acting in parallel. The winding and unwinding of these cables on fixed spools controls the platform motion in space.

To mathematically model this mechanism, let us attach frame P to the moving platform, and frame F to the fixed frame, as shown in Fig. 1. The origins of these frames are P and O, respectively. The platform pose may thus be represented by the vector p pointing from O to P, and by the rotation matrix Q rotating F onto P. 1 The kinetostatic model of a cable-driven parallel mechanism

c i F O P P R i A i p r i a i Q Fig.
The i th cable is modeled as a straight-line segment from the attachment point onto the moving platform, R i , to the attachment point onto the fixed frame, A i . The positions of these attachment points are respectively given by r i , expressed in frame P, and a i , expressed in frame F . The i th cable may thus be represented by the vector

c i ≡ a i -p -Qr i , (1)
and the corresponding cable length is

c i ≡ c i 2 , i = 1, . . . , m. (2)
Let us now assume that external forces are applied on the moving platform. These forces are equivalent to the resultant force-moment system w e ≡ [f T e (1/r)n T e ] T , the force f e ∈ R 3 being applied at P, the moment being n e ∈ R 3 , and r being a positive length used to render w e dimensionally homogeneous. Here, we define this length quite arbitrarily as

r 2 = (1/m) ∑ m i=1 r i 2 2 .
For the moving platform to remain in equilibrium, there must be a combination of cable tensions t ≡ [t 1 • • • t m ] T that balances the system of external forces. By the application of the Newton-Euler equations to the moving platform, we obtain

Wt + w e = 0 6 , (3)
where 0 6 is the six-dimensional null vector and W is the Jacobian matrix of the mechanism at this particular pose. This matrix may be computed as

W = c 1 /c 1 • • • c m /c m (Qr 1 ) × c 1 /(r c 1 ) • • • (Qr m ) × c m /(r c m ) . (4)
To this standard kinetostatic model of a cable-driven parallel robot, let us add limits to the involved forces and moments. Indeed, for a given application, we may safely assume that the designer of a cable-driven parallel mechanism can define a set of external force-moment systems w e that can be applied on the mobile platform. We further assume that this set is a box W e in R 6 . For reasons that will later become apparent, let us give the vertex representation of this box, namely,

W e = {w e ∈ R 6 : w e = n ∑ j=1 α j w e, j , n ∑ j=1 α j = 1, α j ≥ 0, j = 1, . . . , n}, (5)
where w e, j , j = 1, . . . , 64 are the vertices of W e . The cable tensions t i , i = 1, . . . , m, are also limited by the load capacities of the motors and by the strengths of the cables and spool transmission elements. From the components he/she selected, the designer should thus be able to assess the lower and upper tension bounds, respectively t and t. Formally, these define the m-dimensional box of feasible tensions

T = {t ∈ R m : t ≤ t ≤ t}. ( 6
)
3 The Capacity Margin as a Measure of the Robustness of Equilibrium

According to the model of a cable-driven parallel robot presented above, the moving platform is in equilibrium for every possible external force-moment system w e if and only if, in every case, the Newton-Euler equilibrium, eq. ( 3), can be satisfied by a set of feasible cable tensions t. Such a pose of "complete" equilibrium of the moving platform is often called a "feasible pose" in the scientific literature. The set of all feasible poses is called the "wrench-feasible workspace" (WFW), and is formally expressed in Definition 1.

Definition 1. The wrench-feasible wokspace F is defined as

F = {(p, Q) ∈ R 3 × SO(3) : ∀w e ∈ W e , ∃t ∈ T , Wt + w e = 0 6 }, (7)
where SO(3) is the group of proper rotation matrices, W e is defined in eq. ( 5), T is defined in eq. ( 6), and W is defined in eq. ( 4).

The capacity margin was recently introduced by the same authors in [START_REF] Guay | Measuring how well a structure supports varying external wrenches[END_REF] under the name minimum degree of constraint satisfaction. We believe that the name capacity margin describes better this index, if only for the sake of brevity, but for other reasons that will be made apparent from its definition.

This definition stems from the geometric interpretation of the wrench-feasible workspace, which is represented in Fig. 2. The two sets involved in the definition of F , W e and T , live in different spaces and have different numbers of dimensions. In this paper, we assume the number of dimensions of W e to be six, although the proposed method applies equally well to lower dimensional cases. The number of cables m corresponds to the number of dimensions of T . For the sake of illustration, the dimensions of W e and T in Fig. 2 were chosen to be two and three, respectively. The two sets are connected by eq. ( 3), by which the tensions, t, are linearly mapped onto the wrench space via the transformation -W. Hence, the box T of feasible tensions becomes the zonotope W t in the wrench space.

T W t W e -W w 1 w 2 γ t 1 t 2 t 3
Fig. 2 An analog geometric representation of the capacity margin γ

From the definition of the wrench-feasible workspace, this zonotope should include the set W e of external wrenches. Indeed, for an external wrench w e to be sustained by the moving platform, there must exist a set of tensions in T such that w e = -Wt. Geometrically, this means that the point w e should be contained in W t . Therefore, for any external wrench to be sustained, we should have

W e ⊆ W t , (8)
which gives us a necessary and sufficient condition for a pose (p, Q) to be wrenchfeasible. This binary condition does not tell us how far is a feasible pose from being unfeasible. Such a question is important to the designer, as an answer would indicate the robustness of the equilibrium. This is precisely what the capacity margin represents.

In Fig. 2, the capacity margin is geometrically represented by γ, the signed width of the margin between the boundary of W t and W e . This width is taken positive when the margin is inside W t , and negative when it is outside. It may thus be seen as the degree of inclusion of W e within W t .

Mathematically, we compute γ as follows:

1. Compute the facet representation of W t using the hyperplane shifting method [START_REF] Bouchard | On the ability of a cable-driven robot to generate a prescribed set of wrenches[END_REF].

We thus obtain a l and b l , l = 1, . . . , p in the equation W t = {w ∈ R 6 : a T l w ≤ b l , l = 1, . . . , p}. 2. Compute the coordinate γ j,l of each vertex w e, j of W e with each facet (a l , b l ) of W t . This coordinate is taken from the facet in its normal direction a l , which gives γ i, j = (b l -w T e, j a l )/ a l 2 , j = 1, . . . , n, l = 1, . . . , p. 3. Keep the minimum of all coordinates as a worst case scenario: γ = min j=1,...,n min l=1,...,p γ j,l .

Tracing the Wrench-Feasible Workspace Using the Capacity Margin

The capacity margin γ indicates the degree of inclusion of the set W e of external wrenches into the set W t of feasible wrenches. γ is a greater positive scalar as W e is further inside W t opposed to being a greater negative scalar as at least a part of W e is further outside W t . Consequently, γ is zero when W e ⊆ W t and a point of W e is on the boundary of W t . From definition 1, this latter case corresponds to a pose that is on the limit of feasibility. Hence, the boundary of the wrench-feasible workspace may simply be expressed as

γ(p, Q) = 0. (9)
In this paper, we use this fact to trace the boundary of the wrench-feasible workspace as the zero isosurface or isocontour of the capacity margin. To compute the zero isocontour of a function, one first needs to evaluate it at a grid of points covering its domain. The next step consists in interpolating the between adjacent points of the grid in search of roots of the function. This process is readily implemented in virtually all scientific computation packages. In Matlab, for instance, the functions isosurface and contour can be used to trace the isosurface and isocontour of a function, respectively. In Maple, the analogous functions are implicitplot3d and implicitplot.

Tracing the Interference Polygons

The wrench-feasible workspace alone is not sufficient to design a cable-driven parallel robot. Interferences between the moving parts must also be considered, either by shear intuition or by systematic analysis. A technique for such analysis of the interference-free workspace was proposed in [START_REF] Perreault | Geometric determination of the interferencefree constant-orientation workspace of parallel cable-driven mechanisms[END_REF], and was implemented in ARACH-NIS. Let us note, however, that the technique only applies to a constant orientation of the moving platform. Moreover, it is developed under the assumptions that the cables are line segments and that the moving platform is a convex polyhedron represented by its edges.

In [START_REF] Perreault | Geometric determination of the interferencefree constant-orientation workspace of parallel cable-driven mechanisms[END_REF], it was shown that the region of the Cartesian space where a pair of cables collide is composed of two disjoint polygons in space. Mathematically, the two polygons corresponding to an interference between the i th and j th cables may be expressed as

C i, j = {p ∈ R 3 : p = a j -Qr i + α(a j -a i ) + β Q(r j -r i ), α, β ≥ 0}, (10a)
C j,i = {p ∈ R 3 : p = a i -Qr j + α(a i -a j ) + β Q(r i -r j ), α, β ≥ 0}. ( 10b
)
Interferences can also occur between a cable and the moving platform. The associated interference regions are computed in [START_REF] Perreault | Geometric determination of the interferencefree constant-orientation workspace of parallel cable-driven mechanisms[END_REF]. This is done by tracing the interference region between the i th cable and the edge connecting the j th and k th vertices of the polyhedron-shaped moving-platform. Let the positions of these vertices be represented by v j and v k , respectively, in the mobile frame P. In this case, the interference region E i, j,k takes the form of a polygon in space, that is, [START_REF] Roberts | On the inverse kinematics, statics, and fault tolerance of cable-suspended robots[END_REF] Notice that the regions C i, j and E i, j,k are unbounded in some directions. In ARACHNIS, we assume that the portion of interest of the Cartesian workspace is a box containing all the fixed points A i , i = 1, . . . , m. In the proposed interface, we thus trace the intersections of this box with the interference regions C i, j , i, j = 1, . . . , m, and E i, j,k , i = 1, . . . , m, j, k = 1, . . . , q, where q is the number of vertices of the moving platform.

E i, j,k = {p ∈ R 3 : p = a i -Qr i + ν j Q(v j -b i ) + ν k Q(v k -b i ), ν j , ν k ≤ 0, ν j + ν k ≤ -1}.
6 The ARACHNIS Interface ARACHNIS, or "Analysis of Robots Actuated by Cables with Handy and Neat Interface Software", is a graphical user interface developed in MATLAB to automate the design and the analysis of CDPRs. At the conceptual design stage, this tool aids the designer in choosing the design that best meets two requirements: equilibrium throughout the workspace and interference avoidance.

The interface provides the degree to which these requirements are satisfied for a particular design through the generation of the WFW and the IFCOW. As shown in Fig. 3, it is divided into four main areas: Robot Parameters, Robot Posture, Robot Task and Robot Visualization. The section Robot Parameters is dedicated to the specification of the geometry of the platform and base, cable tension limits and cable arrangement. The geometry of the platform is described through the Cartesian coordinates of the cable anchor points Section specific help data Checkboxes for choosing plot type Fig. 3 ARACHNIS and its main features on the platform (rx, ry and rz) expressed in the platform frame and the geometry of the base is described through the Cartesian coordinates of the cable anchor points on the base (ax, ay and az) expressed in the base frame. The tension limits are specified via the minimum and maximum tensions allowed in each cable.

In the section Robot Posture, the poses required from the platform during a specific task are specified through positions and orientations with respect to the X, Y and Z axes (px, py, pz, phi, theta, psi). The angles phi, theta and psi are the Euler angles specifying the attitude of the platform frame with respect to the fixed frame according to the XY Z convention. Fixed positions and orientations are specified by single numbers, while parameters that vary are specified by intervals and resolutions. Each varying parameter is then assigned to a workspace axis through the pop-up menus.

By allowing any combination and assignation of parameters to the workspace axes, ARACHNIS is able to generate any WFW from two to six dimensions. The WFW above three dimensions cannot be traced in three-dimensional space, of course. In such cases, three of the axes are selected to trace the workspace. The poses contained in the WFW are then the poses for which the full range of poses in the remaining axes are wrench-feasible poses.

The section Robot Task consists in describing the prescribed robot task by specifying intervals of forces and moments along each dimension (Fx, Fy, Fz, Mx, My, Mz) . The forces are assumed to be applied at the origin of the moving-platform frame, but the components of the forces and moments are parallel to the axes of the fixed frame.

The section Robot Visualization consists of a graphical area to visualize the CDPR geometry, its WFW and its IFCOW. This information can be hidden or shown by first clicking the corresponding checkboxes and then clicking the plot button. This section also contains a data button, which generates an Excel spreadsheet containing the information on the interface and the simulation data, a cancel button to stop the workspace computation, and a progress bar to indicate the simulation progress. ARACHNIS also contains Help buttons and error messages customized for each section to guide the user as he or she inputs the parameters.

Case Study 1: A Planar Cable-Driven Parallel Mechanism

This case study demonstrates the capacity of ARACHNIS to generate the wrench feasible workspace (WFW) of planar cable-driven mechanisms. The mechanism under study is the eight-cable robot shown in Fig. 4, which has previously been analyzed in [START_REF] Verhoeven | Analysis of the workspace of tendon-based stewart platforms[END_REF]. As in [START_REF] Verhoeven | Analysis of the workspace of tendon-based stewart platforms[END_REF], the tension limits were set to 10 N and 1000 N and no external wrench was applied. The total orientation workspace in Fig. 4 was computed by displacing the robot in a 1.2 m × 1.2 m × 120 • grid using a resolution of 80 points per axis. The green iso-surface corresponding to γ = 0 represents the frontier of the WFW. Inside this boundary the robot can safely perform the task. We can acquire a more quantitative view of the stability of the robot by slicing the total orientation workspace and generating the constant orientation workspace shown in Fig. 4. Each contour in the figure represents a value of γ. Again, the contour where γ = 0 defines the stability frontier. The higher this value, the greater the robustness of the moving-platform equilibrium. Notice that these results match those obtained in [START_REF] Verhoeven | Analysis of the workspace of tendon-based stewart platforms[END_REF]. Other examples of the workspaces generated by ARACHNIS were done by the same authors in [START_REF] Guay | Measuring how well a structure supports varying external wrenches[END_REF], which match the workspaces in ref. [START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF]. The computation time reported in [START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF] was 51 s, while that obtained with ARACHNIS was 6 s. This time difference is significant, and cannot be attributed only to the different personal computers that were used in the two studies. Notice that all the simulations were done on a Dell Inspiron 15r laptop (Intel Core i7-3537U 2.50 GHz).

Case Study 2: A Spatial Cable-Driven Parallel Mechanism

This case study demonstrates the capacity of ARACHNIS to generate workspaces of spatial cable-driven mechanisms. The mechanism under study is the spatial robot with eight cables displayed in Fig. 5, which has also been previously analyzed in [START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF]. The tension limits for all cables were set to 1 N and 540 N. The externally applied forces along each dimension varied from -10 N to 10 N, while the moments varied from -0.5 N m to 0.5 N m.

The 5D WFW workspace of this robot was generated by translating it along a 1 m×1 m×1 m grid. At each point on this grid, the robot was rotated around the X and Y axes through orientations ranging from -15 • to 15 • , while retaining a fixed orientation with respect to the Z-axis. The capacity margin was then evaluated at each of these poses. A set of values γ was thus obtained for every position on a 3D grid. The minimum value from each set was selected and assigned to its corresponding position on the grid. Finally, the values were interpolated, creating the boundary shown Fig. 5. As in the previous section, we computed the 2D slices of this higher dimensional workspace to assess quantitatively the performance of the robot. A slice along the XZ plane is also shown in Fig. 5. These results also match those obtained in [START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF] by means of interval arithmetics. An argument often made in favor of interval arithmetics is the guarantee of exactness that comes with its results. In the example shown in [START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF], however, the volume occupied by the uncertainty boxes-boxes that have not been determined to be fully inside or outside the WFW-amounts to 60 % of the total workspace volume. In these conditions, there is no guarantee on the boxes of interest, i.e., those that are close to the boundary of the WFW. Hence, for this example, interval arithmetics offers no more guarantee than any other method. This case study also evidences the computational efficiency of ARACHNIS. The workspace was computed in 225 s, outperforming the algorithm presented in [START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF] whose computation time was 1567 s. The interference-free constant orientation workspace was also computed through 6 Interference-Free Constant Orientation Workspace (IFCOW) of a spatial robot the method described in Sec. 5 and is displayed in Fig. 6. The green polygons symbolize the interference regions between cables, while the blue ones represent the interference regions between a cable and a moving-platform edge. The results show that this robot has an interference free workspace within a box of 1 m × 1 m × 1 m.

Conclusions

In this paper, we presented a graphical user interface named ARACHNIS, or Analysis of Robots Actuated by Cables with Handy and Neat Interface Software. ARACHNIS allows the design and analysis of Cable Driven Parallel Robots (CD-PRs). It requires the designer to enter the parameters of the robot, to specify the loads involved in the robot task, and to assess the performance of the robot through the visualization of its Wrench Feasible Workspace (WFW) and its Interference-Free Constant Orientation Workspace (IFCOW). The capacity margin was first defined as a measure of the robustness of the moving-platform equilibrium and was used to trace the wrench-feasible workspace of the CDPRs. Interferences between the moving parts have also been considered. An existing technique for tracing the interference-free workspace of CDPRs was summarized and implemented in ARACHNIS. The WFW and the IFCOW of a planar cable-driven parallel mechanism and of a spatial cable-driven parallel mechanism have been plotted with ARACHNIS. It turns out that ARACHNIS is very competitive in terms of computation time for tracing the WFW and the IFCOW of CDPRs. The use of the proposed capacity margin to compute the wrench-closure workspace, the static workspace and the dynamic workspace of CDPRs and the conversion of ARACHNIS into a stand-alone interface are the subjects of future work.

Fig. 4

 4 Fig. 4 Wrench Feasible Workspace (WFW) of a planar robot

Fig. 5

 5 Fig. 5 Wrench Feasible Workspace (WFW) of a spatial robot

Fig.

  Fig. 6 Interference-Free Constant Orientation Workspace (IFCOW) of a spatial robot


Davide Corradi
email: davide.corradi@iwr.uni-heidelberg.de

Stéphane Caro
email: stephane.caro@irccyn.ec-nantes.fr

Damien Chablat
email: damien.chablat@irccyn.ec-nantes.fr

Philippe Cardou
email: pcardou@gmc.ulaval.ca

Assembly Conditions of Parallel Manipulators Considering Geometric Errors, Joint Clearances, Link Flexibility and Joint Elasticity

published or not. The documents may come   L'archive ouverte pluridisciplinaire

I. INTRODUCTION

Accuracy is one of the key features that favor robotic manipulators for many industrial applications. Superior levels of accuracy are achieved by controlling or measuring all possible sources of errors on the pose of the moving platform of a robotic manipulator. Among the most important sources of errors, we find manufacturing errors, assembly errors, compliance in the mechanical architecture, resolution of the servoactuators, backlash in the reductors, and clearances in the joints. Parallel manipulators are usually assumed to be more accurate than their serial counterparts. However, this accuracy can be affected by the joint clearances required for the assembly of the manipulators. The focus of this paper is the impact of geometric errors, joint clearances, link flexibility and joint elasticity on the assembly conditions of parallel manipulators and on the maximum pose errors of their moving platform.

Geometric errors are caused by the imperfect fabrication and assembly of the elements of the robot. Their effect on accuracy is usually measurable and repeatable, and can therefore be compensated through appropriate calibration.

The relative motions of the two parts of a joint with clearance may cause undesirable effects such as movingplatform pose errors [START_REF] Binaud | The kinematic sensitivity of robotic manipulators to joint clearance[END_REF], [START_REF] Han | Kinematic sensitivity analysis of the 3-UPU parallel mechanism[END_REF], [START_REF] Castelli | Kinetostatic modeling of the clearanceaffected prismatic pair[END_REF], [START_REF] Castelli | Recent techniques for clearance influence analysis in planar and spatial mechanisms[END_REF], [START_REF] Wang | Position errors due to clearance in journal bearings[END_REF], impacts, wear, vibrations and noise [START_REF] Flores | Dynamic behaviour of planar rigid multi-body systems including revolute joints with clearance[END_REF], [START_REF] Flores | Modeling and simulation of wear in revolute clearance joints in multibody systems[END_REF]. Their influence on the behaviour of the manipulator is not repeatable and therefore difficult to model and to calibrate, and reducing them usually leads to high manufacturing costs.

If the stiffness of the links and of the joints is not sufficient, their deformation will be able to cause a notable effect on the accuracy of the manipulator, especially when subjected to heavy loads or at high speeds [START_REF] Gosselin | Stiffness analysis of parallel mechanisms using a lumped model[END_REF], [START_REF] Salisbury | Active stiffness control of a manipulator in Cartesian coordinates[END_REF], [START_REF]Non-linear joint dynamics and control of jointed flexible structures with active and visco-elastic joint actuators[END_REF]. The Virtual Joint Model (VJM) approach is convenient to deal with link flexibility and joint elasticity in robotic manipulators [START_REF] Pashkevich | Stiffness analysis of overconstrained parallel manipulators[END_REF], [START_REF] Pashkevich | Stiffness analysis of parallel manipulators under auxiliary loadings[END_REF], [START_REF] Pashkevich | Stiffness modelling of parallelogram-based parallel manipulators[END_REF].

This paper introduces a methodology to analyse the assembly conditions of parallel manipulators and compute the maximum pose errors of their moving platform, while considering geometric errors, joint clearances, link flexibility and joint elasticity. First, the proposed methodology consists in determining the zone(s) of the manipulator workspace in which the manipulator can be assembled assuming that its links and joints are rigid, while taking into account geometric errors and joint clearances. Then, the minimum energy required to assemble the manipulator in the non-assembly zone(s) is computed, while considering link flexibility and joint elasticity. The maximum pose errors of the movingplatform are also computed throughout the manipulator workspace. By applying the method for different sets of parameters (clearances, maximum geometric errors, stiffness of joints and links) it is possible to choose the best option with regard to accuracy and internal deformations.

The novelty of this method resides in the fact that many sources of inaccuracies are considered at the same time, and in the fact that it provides not only an estimate of the pose error, but also of the internal forces of the manipulator in different configurations. Existing studies mainly focus on one element (joint clearances, geometric errors, or flexibilities) and provide methods only for accuracy analysis or force analysis.

Section II deals with the modeling of geometric errors, joint clearances, link flexibility and joint elasticity. Section III describes the method used to compute the assembly zones, the minimum assembly energy, the reaction wrench on the moving-platform and the maximum pose errors of the moving-platform throughout the manipulator workspace. Section IV provides an illustrative example in order to highlight the contributions of the paper.

II. MODELING GEOMETRIC ERRORS, JOINT CLEARANCES AND FLEXIBILITIES

A. Frame Conventions and Nomenclature

Parallel manipulators with m legs are considered. Each leg comprises n i joints and B i loops. A fixed base frame F 0 , common to all the legs, is arbitrarily defined. A frame F p is attached to the moving-platform of the manipulator. All the other frames, attached to the joints and the end effectors of the legs, are denoted F i,j , j = 1 . . . N i . Each frame has only one antecedent frame, whose index is denoted as ant(i, j). When F i,j is attached to a joint, it is defined according to the Denavit-Hartenberg convention: axis z i,j is along the axis of the joint, and axis x i,j is along the common normal to axes z ant(i,j) and z i,j . The frame attached to the end-effector of leg i is denoted F i,e . When the manipulator is assembled, the frames attached to the end-effectors of the legs coincide with the frame attached to the platform, so that F i,e ≡ F p , i = 1 . . . m. Each loop is cut at a passive joint, and the frames that are attached to the two cut ends of the k-th loop of leg i are denoted F i,ka and F i,k b . These two frames should coincide once the manipulator is assembled, i.e., F i,ka ≡ F i,k b . The transformation matrix from F ant(i,j) to F i,j is denoted T i,j , while the corresponding rotation matrix and translation vector are denoted R i,j and t i,j , respectively.

leg i joint j -1 joint j link j link j + 1 Fi,j F 1 i,j F 2 i,j F 3 i,j F 4 i,j
δli,j δei,j δci,j δbi,j Fig. 1. Effect of geometric errors, link flexibility, joint clearances and joint elasticity on the pose of frame F i,j . F i,j is moved to F 1 i,j by geometric errors, to F 2 i,j by link elasticity, to F 3 i,j by clearances and finally to F 4 i,j by joint elasticity.

B. Geometric Errors

The geometric errors of the jth link of leg i are supposed to be small and measurable. They are represented by the small displacement screw δl i,j as shown in Fig. 1.

C. Joint Clearances

Intuitively, clearances in a joint are best modeled by bounding its associated errors below and above. Clearances in the jth joint of leg i are represented by the small displacement screw δc i,j as shown in Fig. 1. Assuming that the lower and upper bounds are the same, this generally yields six parameters that bound the error screw δc i,j . In the case of a revolute joint, however, we can take advantage of the axisymmetry to reduce the number of parameters to four, grouped in vector c i,j . The elements of δc i,j and of

x i,j x i,j x i,j x i,j y i,j y i,j z i,j z i,j F i,j F i,j x ′ i,j x ′ i,j y ′ i,j z ′ i,j F ′ i,j c RXY i,j c RZi,j c T XY i,j c T Zi,j
Fig. 2. Axisymmetric revolute joint with clearance. Clearance causes a displacement that transforms frame F i,j to frame F ′ i,j .

c i,j are denoted as follows (see Fig. 2):

δc i,j =         δc RXi,j δc RY i,j δc RZi,j δc T Xi,j δc T Y i,j δc T Zi,j         c i,j =     c RXY i,j c RZi,j c T XY i,j c T Zi,j     (1)
The clearance constraints for the jth axisymmetric joint of leg i can be formulated as a set of four inequalities defining a convex set:

(δc T Xi,j ) 2 + (δc T Y i,j ) 2 -(c T XY i,j ) 2 ≤ 0 (2)
(δc T Zi,j ) 2 -(c T Zi,j ) 2 ≤ 0 (3)
(δc RXi,j ) 2 + (δc RY i,j ) 2 -(c RXY i,j ) 2 ≤ 0 (4)
(δc RZi,j ) 2 -(c RZi,j ) 2 ≤ 0 (5)

D. Link Flexibility

The elasticity of the links is modelled by using the Virtual Joint Model (VJM) [START_REF] Pashkevich | Stiffness analysis of overconstrained parallel manipulators[END_REF]. At the end of each elastic link a 6-DoF virtual elastic joint is added, while the link itself is considered rigid. The virtual elastic joint behaves as a 6-DoF spring with elastic properties similar to those of the corresponding link.

It is assumed that the virtual elastic joint coordinates have infinitesimal values, and can therefore be expressed by a 6-dimensional small displacement screw δe i,j as shown in Fig. 1. To a particular value of δe i,j , a virtual elastic joint reaction wrench w Ei,j and a potential energy E Ei,j are associated. Since the deformations of the links are assumed to be small, a linear relation exists between the virtual elastic joint reaction wrench and the virtual elastic joint coordinates, defined by a 6 × 6 stiffness matrix K Ei,j . w Ei,j and E Ei,j are expressed as:

w Ei,j = K Ei,j δe i,j (6)
E Ei,j = 1 2 δe i,j T K Ei,j δe i,j (7)
The stiffness matrix K Ei,j can be evaluated using FEAbased methods, considering the real geometry of the link, or analytically, by approximating the link with a simple shape. Here, all links are approximated by beams with full circular cross-section. The parameters required to compute the stiffness matrix of a link are its radius r, its Young modulus E, and its Poisson's ratio ν.

E. Joint Elasticity

To model the joint elasticity, a virtual 6-DoF elastic joint is added after the virtual joint clearance. The small displacement screw, reaction wrench, potential energy and stiffness matrix associated with the elasticity of the jth joint of leg i are denoted δb i,j , w Bi,j , E Bi,j and K Bi,j .

F. Differential Model of the Legs

Let δx i,e|0 be the pose error of the end-effector of leg i expressed in frame F 0 . δx i,e|0 is a function of δl i,j , δe i,j , δc i,j , δb i,j and is expressed as follows:

δx i,e|0 = M i (δl i + δc i + δe i + δb i ) ( 8
)
δl i = δl T i,1 . . . δl T i,Ni T ( 9
)
δc i = δc T i,1 . . . δc T i,Ni T ( 10
)
δe i = δe T i,1 . . . δe T i,Ni T ( 11
)
δb i = δb T i,1 . . . δb T i,Ni T (12)
M i = M i,1 . . . M i,Ni Ni k=1 (N i,k ) (13)
M i,j = Ni k=1 (N i,k ) j h=Ni (adj (T i,h )) -1 (14)
N i,j = R i,j 0 3×3 0 3×3 R i,j (15)
where (adj

(T i,h )) -1 is the adjoint map of T i,h .
If the ith leg of the manipulator contains closed loop(s) as shown in Fig. 3, Eq. ( 8) will be expressed as:

δx i,e|0 = M (e) i δl (e) i + δc (e) i + δe (e) i + δb (e) i (16)
where the superscript (e) indicates that only the geometric errors and the virtual joint coordinates in the path from the base to the end-effector of leg i must be considered. Moreover, each loop is cut as described in Sec. II-A. The poses of the end-frames of the k-th loop of leg i are denoted x i,ka and x i,k b , respectively. The errors on these poses are:

δx i,ka = M (ka) i δl (ka) i + δe (ka) i + δc (ka) i + δb (ka) i (17) δx i,k b = M (k b ) i δl (k b ) i + δe (k b ) i + δc (k b ) i + δb (k b ) i (18)
The superscripts (k a ) and (k b ) indicate that only the geometric errors and the virtual joint coordinates in the path from the base to the first and second cut ends of the k-th loop must be considered.

G. Assembly Constraints

In order to assemble the manipulator, the end-effectors of the legs must coincide, as well as the cut ends of every loop. It means that the errors in the pose of the corresponding frames must be equal. The following assembly constraints must therefore be satisfied:

δx p|0 = δx i,e|0 , i = 1 . . . m (19) δx i,ka = δx i,kb , i = 1 . . . m, k = 1 . . . B i (20)
δx p|0 denotes the small displacement screw representing the error on the moving-platform pose in F 0 . It is composed of a rotational part δx Rp|0 and of a translational part δx T |0 .

III. COMPUTING THE ASSEMBLY ZONES, THE MINIMUM ASSEMBLY ENERGY AND THE MAXIMUM POSE ERRORS

This section describes the developed methodology to compute the assembly zones, the minimum assembly energy that is necessary to assemble the manipulator outside them, and the errors on the moving platform pose. In this section, the expression clearance constraints refers to the constraints (2) to [START_REF] Wang | Position errors due to clearance in journal bearings[END_REF]. The expression assembly constraints refers to the constraints (19) and (20).

A. Computing the Assembly Zones

The following constraint satisfaction problem (CSP) is formulated in order to compute the assembly zones of parallel manipulators: variables δx p|0 , δc i,j , i = 1 . . . m, j = 1 . . . N i (21) constraints clearance constraints assembly constraints

The constraints form a convex set. Therefore, problem (21) can be solved by convex programming techniques [START_REF] Boyd | Convex Optimization[END_REF].

In the formulation of the assembly constraints only the small displacement screws related to geometric errors δl i,j and joint clearances δc i,j are considered. Solving this problem allows to determine whether it is possible, in a given configuration, to assemble the manipulator by exploiting joint clearances only. This is equivalent to say that the manipulator can be assembled without deforming its links and joints and, therefore, without introducing any internal stress.

B. Computing the Minimum Assembly Energy

The following optimization problem is formulated in order to compute the minimum assembly energy:

minimize E = m i=1 Ni j=1 (E Ei,j + E Bi,j ) (22)
over δx p|0 , δc i,j , δe i,j , δb i,j , i = 1 . . . m, j = 1 . . . N i subject to clearance constraints assembly constraints

The objective function of problem ( 22) is the elastic potential energy of the manipulator. Its minimization makes sense from a physical point of view, since in theory the manipulator should be naturally assembled in a configuration in which the elastic potential energy is a minimum. The objective to be minimized is a convex quadratic function. The constraints of the optimization problem at hand form a convex set. The minimum energy problem is therefore in the most general case a convex second order-cone programming (SOCP) that can be solved by convex optimization techniques [START_REF] Boyd | Convex Optimization[END_REF].

Inside the assembly zones this problem finds a minimum equal to zero, since there is no need to deform links and joints. Outside the assembly zones the limits of the joint clearances are reached, and therefore it is necessary to deform links and joints to assemble the manipulator and the minimum energy required to assemble the parallel manipulator is not null.

C. Elastic Reaction Wrench on the Moving-platform

If the legs of the manipulator are simple serial chains, the elastic reaction wrench on the end-effector of leg i, w i,e , can be computed with the following expression [START_REF] Pashkevich | Stiffness analysis of overconstrained parallel manipulators[END_REF]:

w i,e = w Ei,e + w Bi,e (23)
w Ei,e = M i K -1 Ei M T i -1 M i δe i (24) w Bi,e = M i K -1 Bi M T i -1 M i δb i (25)
w Ei,e and w Bi,e are the reaction wrenches associated to the link and joint deformations, respectively. The values of the screws δe i and δb i are found by solving problem (22).

Once the reaction wrenches applied on the end-effectors of the single legs are known, the total reaction wrench applied on the moving-platform, denoted w p , is computed by summing them, since the end-effectors are coincident:

w p = m p f p = m i=1 w i,e (26)
where m p and f p are the reaction force and moment applied at the geometric center of the moving-platform, respectively. In the case the parallel manipulator has parallelogram joints, the latter can be replaced by single links having equivalent elastic properties as explained in [START_REF] Pashkevich | Stiffness modelling of parallelogram-based parallel manipulators[END_REF].

D. Computing the Maximum Pose Error

Two distinct problems are formulated, one to find the maximum orientation error and one to find the maximum position error of the moving platform:

minimize -r 2 = -δx T Rp|0 δx Rp|0 , or (27)
t 2 = -δx T T p|0 δx T p|0 over δx p|0 , δc i,j , i = 1 . . . m, j = 1 . . . N i subject to clearance constraints assembly constraints

The objective function is the opposite of the square of the orientation error r or of the position error t of the movingplatform expressed in frame F 0 . The link flexibilities δe i,j and joint elasticities δb i,j are not part of the decision variables. However, they appear in the expressions of the assembly constraints. Their values are taken from the solution of the minimum assembly energy problem ( 22). This allows us to determine the maximum pose error of the movingplatform in every point of the manipulator workspace, even outside the assembly zones that are defined assuming that the links and joints are rigid.

The objective to be minimized is a concave quadratic function, while the constraints form a convex set. The maximum error problems is therefore a nonconvex quadratically constrained quadratic programs (QCQPs). To solve them, special techniques are required. Here, a branch and bound algorithm is used [START_REF] Moore | Interval Analysis[END_REF]. The branch and bound algorithm does not provide a single value as a result, but two values that bound the real error from below and above. It is possible to arbitrarily choose the tolerance ǫ representing the maximum distance between these bounds.

IV. CASE STUDY: IRSBOT-2 A. Description of the IRSbot-2

The IRSbot-2 (IRCCyN Spatial Robot with 2 Degrees of Freedom) is a parallel manipulator designed for fast and accurate pick and place operations in a two-dimensional workspace [START_REF] Germain | Singularity-free Design of the Translational Parallel Manipulator IRSBot-2[END_REF]. The IRSbot-2 shown in Fig. 4 is expected to reach an acceleration up to 20 G and an accuracy equal to 20 µm throughout a parallelepiped of 800 mm side length.

The base and the moving-platform are connected by two legs. Each leg is composed of a proximal module and a distal module mounted in series. The proximal module is a parallelogram, made up of four revolute joints of axes perpendicular to the (x 0 , z 0 ) plane. One of the link is fixed with respect to the base frame F 0 , allowing the opposite link, connected to the elbow, to have a constant orientation with respect to it. The distal module is made up of two links connected to the elbow and to the base by universal joints. The universal joints can be represented by two revolute joints whose axes are perpendicular to each other and intersect. The axes of both joints are perpendicular to the link they are connected to. Some of these joints are compliant, and have no clearance but can be deformed elastically. Four planes, parallel to each other, are defined (see Fig. 4): a base plane P 0 , a platform plane P p , and two elbow planes P 1 and P 2 . The IRSBot-2 has two legs (m = 2), each with twelve joints (n 1 = n 2 = 12) and two loops (B 1 = B 2 = 2). Four additional frames are added to each leg of the manipulator in order to simplify its parametrization. In total, N i = 21 frames are defined for each leg. The geometric parameters that are necessary to completely define the architecture of a leg are defined as follows (Fig. 4):

L 1 L 1 L 1 L 2 L 2 L 2 L 2 α α β α d x 0 y 0 z 0 xp yp zp O 0 Op O 1,1 O 1,2 O 1,3 O 1,4 E 11 E 12 F 11 F 12 H b1 H h1 O 2,2 O 2,2 O 2,3 O 2,4 E 21 E 22 F 21 F 22 H b2 H h2
• b is the distance between the first joint of the parallelogram and the origin of the base frame. • d is the length of the fixed side of the parallelogram.

• L 1 is the length of the moving side of the parallelogram.

• f g e T is the vector describing the position of the universal joints with respect to the ends of the parallelogram joints, expressed in the base frame. • L 2 is the length of the links of the distal module.

• p a 0 T is the vector describing the position of the platform with respect to the last universal joints of the links of the distal module, expressed in the base frame. • α is the angle between the platform plane and the link of the parallelogram that is fixed to the base. In the scope of this paper, the proximal modules are considered perfect in order to reduce the computational times. Therefore, all screws δl i,j , δc i,j , δe i,j , and δb i,j are null for j = 1 . . . 4.

The screws δl i,j are null for j = 5, 8, 11, 14, 19, 21 (these frames were added to simplify the robot modeling or do not correspond to real links). The values of the remaining geometric error screws are selected randomly between δl and δl, defined as follows:

δl =         10 -4 rad 10 -4 rad 10 -4 rad 10 -3 mm 10 -3 mm 10 -3 mm         δl =         2 • 10 -2 rad 2 • 10 -2 rad 2 • 10 -2 rad 2 • 10 -1 mm 2 • 10 -1 mm 2 • 10 -1 mm        
All joints are considered axi-symmetric for the determination of the clearance constraints. The screws δc i,j are null for j = 7, 8, 13, 14. These frames are not associated to a joint or are associated to a compliant joint without clearance. The other joint clearance constraints are defined by Eq. ( 1) with vectors c i,j taking the following values:

c i,j =     7.55 • 10 -4 rad 10 rad 29 • 10 -3 mm 29 • 10 -3 mm    
The screws δe i,j are null for j = 8, 14. Only the two long links of the distal modules are assumed to be flexible. The Young modulus is set as E = 6 • 10 10 Pa, the Poisson's ratio as ν = 0.3, and the radius of the links as r = 40 mm.

The screws δb i,j are null for j = 6, 9, 12, 15, as these joints are not compliant. For the other joints the stiffness matrix is defined as follows, according to the technical data of the employed compliant joints: The optimization problems defined in Sec. III are solved over the full half-workspace for y ≤ 0, on points sampled with a step of 25 mm along both the x 0 and z 0 axes. The tolerance for the branch and bound algorithm is set to ǫ = 10 -6 rad for the orientation errors and to ǫ = 10 -3 mm for the position errors.

K B = diag

B. Results

Figure 5 shows the assembly zones, the minimum assembly energy and the upper bounds of the maximum orientation and position errors of the moving-platform for the IRSbot-2. The error plots are given for both the complete case and for a case where only joint clearances are considered (the screws δl i,j , δe i,j , and δb i,j are all set to zero).

For the chosen geometric errors, assembling the manipulator presents many difficulties in many areas of the workspace. The minimum assembly energy is high throughout the whole manipulator workspace, and the components of the wrench associated to the maximum assembly energy point have very large values. In such a case, the manipulator cannot be assembled. Therefore, the dimensional tolerances of the geometric parameters for the real robot should be lower than those selected for this simulation.

When all screws are considered, the error is relatively high, and its distribution does not present any regularity. When only joint clearances are considered, the error has instead a regular and symmetric distribution and reaches lower values. The contribution to the pose error of the clearance displacements usually has a symmetric distribution, because clearance boundaries are symmetric and equal for all joints from one leg to the other one. On the contrary, the contribution to the pose error of the geometric errors is irregular throughout the manipulator workspace because the small displacement screws associated to the geometric errors differ for every frame in the manipulator. Here, the order of magnitude of the geometric errors is larger than the order of magnitude of the clearance boundaries. Therefore, the regular contribution of the clearance displacements is negligible and is masked by the more relevant and irregular contributions of the geometric errors.

V. CONCLUSIONS AND FUTURE WORK

A method to determine the assembly energy, the internal elastic reaction wrenches and the maximum pose error of parallel manipulators subject to geometric errors, joint clearances, link flexibility and joint elasticity has been developed and applied to a two-dof spatial parallel manipulator, named IRSbot-2.

It has been shown that outside the assembly zones, as expected, links are bent and the assembly energy increases smoothly. The maximum error on the moving-platform pose has different contributions due to geometric errors, clearances and flexibilities. The pose error due to joint clearances has a regular and symmetric distribution throughout the manipulator workspace, due to the symmetry of the clearance bounds and of the legs. The pose error due to geometric errors and elasticity displacements, on the contrary, is highly irregular due to the asymmetry of the geometric errors from one leg to the other one.

This research work opens the way to many further developments. First of all, the proposed method can be applied to other manipulators and used to analyse the kinematic behaviour of the manipulators close to their parallel singularities. Secondly, the error on the moving-platform pose can be studied statistically in order to determine the most probable error instead of the worst-case error. The method lacks experimental validations due to the difficulty of taking the necessary measurements on real manipulators. An experimental validation will prove that the results provided by the developed method are realistic and reliable. Finally, it would be relevant to relate the assembly energy to the stress in the links in order to verify that the links do not break with their deformations required for the assembly of the parallel manipulator.

Fig. 3 .

 3 Fig. 3. (a) leg i with a closed loop and the corresponding cut joint; (b) path (in red dashed lines) to consider in order to compute the error on the ith leg end-effector pose; (c) and (d) show the two paths (in red dashed lines) to consider in order to compute the error on poses of the two cut ends of the loop.

Fig. 4 .

 4 Fig. 4. Parameterization of the IRSbot-2.

  • β and α d are the azimuth and altitude angles that describe the orientation of the second revolute joint of each universal joint with respect to the first one. The nominal geometric parameters of the IRSbot2 are the following: a = 50 mm; b = 83 mm; d = 106 mm; e = 3.342 mm; f = 80 mm; g = 166 mm; p = 50 mm; L 1 = 321 mm; L 2 = 452 mm; α = π 6 rad; α d = π 4 rad; β = π 2 rad.

10 8

 10 Nm, 10 8 Nm, 1 Nm, 3.51 × 10 8 N/m, 3.51 × 10 8 N/m, 4.39 × 10 8 N/m

Fig. 5 .

 5 Fig. 5.Assembly zones (top-left). Minimum assembly energy (topright). Upper bounds of the maximum orientation errors (centre-left) and of the maximum position errors (centre-right) of the moving-platform, while considering geometric errors, joint clearances and link flexibilities. Upper bounds of the maximum orientation errors (bottom-left) and of the maximum position errors (bottom-right) of the moving-platform, while considering joint clearances only.

ACKNOWLEDGMENT

The authors would like to acknowledge the financial support of the ANR, France (Project ANR-2011-BS3-006-01-ARROW).

*This work was partially supported by the Agence Nationale de la Recherche (ANR), France (Project ANR-2011-BS3-006-01-ARROW).


Franc ¸ois Guay
email: francois.guay.2@ulaval.ca

Philippe Cardou
email: pcardou@gmc.ulaval.ca

Ana Lucia Cruz Ruiz
email: ana-lucia.cruz-ruiz@eleves.ec-nantes.fr

Stéphane Caro
email: stephane.caro@irccyn.ec-nantes.fr

Measuring How Well a Structure Supports Varying External Wrenches

Keywords: Kinematic index, dexterity, manipulability, kinematic sensitivity, grasping, stability, cable-driven robot, wire-driven robot, Gough-Stewart platform

An index is introduced, the minimum degree of constraint satisfaction, which quantifies the robustness of the equilibrium of an object with a single scalar. This index is defined under the assumptions that the object is supported by forces of known lines of action and bounded amplitudes, and that the external perturbation forces and moments vary within a known set of possibilities. A method is proposed to compute the minimum degree of constraint satisfaction by resorting to the quickhull algorithm. The method is then applied to two examples chosen for their simplicity and diversity, as evidence of the broad spectrum of applications that can benefit from the index. The first example tackles the issue of fastening a workpiece, and the second, the workspace of a cable-driven parallel robot. From these numerical experiments, the minimum degree of constraint satisfaction proves useful in grasping, cable-driven parallel robots, Gough-Stewart platforms and other applications.

Introduction

In mechanism and structure design, the definition of a sound and meaningful performance index that would apply to a wide variety of situations would be of tremendous help. Such a concept would allow the automation of a part of the design process, enabling a systematic scan of the possible solutions. With this objective in mind, several researchers have proposed indices-see the excellent review by Merlet [START_REF] Merlet | Jacobian, manipulability, condition number, and accuracy of parallel robots[END_REF].

Among the most popular indices, we find the manipulability, originally proposed by Yoshikawa [9]. This index represents the volume of the ellipsoid obtained by mapping the unit-sphere through the Jacobian matrix of a robotic manipulator. Hence, the manipulability represents a geometric average of the kinematic sensitivity of the robot. If the kinematic sensitivity is null in one direction of motion, then the ellipsoid becomes flat, and its volume zero. This implies that the robot cannot support an object in this direction of motion. The drawback of this approach is that a manipulator may be very close to instability while retaining a large manipulability if its associated ellipsoid is thin along one dimension and thick along the others.

Another widely used index is the dexterity, as defined by Salisbury and Craig [START_REF] Salisbury | Articulated hands: Force control and kinematic issues[END_REF]. Geometrically, this index measures the distortion of the ellipsoid associated with the Jacobian matrix of a manipulator by taking the ratio of its largest semi-axis to its smallest. The problem with this approach is that it does not account for the size of the ellipsoid. Thus, the concept of capacity is occluded by that of evenness.

Another drawback of dexterity is that it is ill-defined when the Jacobian matrix is not dimensionally-homogeneous, a problem that has been noted by several authors. Workarounds have been proposed [START_REF] Angeles | The design of isotropic manipulator architectures in the presence of redundancies[END_REF][START_REF] Tandirci | Characteristic point and the characteristic length of robotic manipulators[END_REF][START_REF] Khan | The kinetostatic optimization of robotic manipulators: The inverse and the direct problems[END_REF], but all of them entail some arbitrariness, and, perhaps for this reason, have not generally received acceptance from the robotics community. In this paper, we propose a normalisation that is no less arbitrary than those proposed previously, but that has the merit of being simple and straightforward. In any case, as was pointed out by Park and Kim [START_REF] Park | Kinematic manipulability of closed chains[END_REF], "arbitrariness is an unavoidable consequence of the geometry of SE [START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF]."

Most importantly, the dexterity and the manipulability do not account for the varying force and moment capabilities of the actuators, nor for the external forces and moments that the object has to support. In general, the designer can and must evaluate these constraints during the design process.

In this paper, we take into account the actuator capacities, as well as the set of expected external forces and moments, and incorporate them into the definition of our performance index. These assumptions are formally explained in section 2. In section 3, we define the proposed index, various examples of increasing complexities are presented in sections 4 and 5, and a summary is given in section 6.

Mechanical Model of a Structure Supporting an Object

We start from a rigid body in space, whose free-body diagram is shown in Fig. 1. This object is subjected to a system of external forces (e.g., gravity or air friction), which we represent by their resulting force at E and moment, f e and n e . The location of point E generally depends on the application considered, and experience shows that the choice of E is usually straightforward. The external wrench is to be balanced by the forces f i , i = 1, . . . , m, applied by the supporting structure on the object at the corresponding points C i , i = 1, . . . , m. We assume that the directions of these forces are known and given by unit vectors u i , i = 1, . . . , m. When the supporting forces come from physical contacts between the object and the structure, this implies the absence of friction, and vectors u i pointing towards the object. When the object is suspended by a cable, then u i points in the direction opposite to the object.

From Fig. 1, the equations of static equilibrium are

Wf + w e = 0 6 , (1)
where

E n e f e C 1 f 1 • • • C i f i • • • C m f m r i
Fig. 1 Free-body diagram of an object in space

W ≡ u 1 • • • u m 1 r r 1 × u 1 • • • 1 r r m × u m , f ≡    f 1 . . . f m    , w e ≡ f e (1/r)n e ,
f i is the amplitude of the i th force, 0 3 is the three-dimensional zero vector, and

r 2 = (1/m) ∑ m i=1 r i 2
2 is used to render the equations dimensionally homogeneous. One may see a problem occuring when r = 0 m, that is when all points C i , i = 1, . . . , m, are located at E. In such a case, all forces are concurrent at E, so that the rigid body becomes a particle, and a sum of moments is no longer needed.

We assume that the external wrenches w e that could be applied on the object by its environment form a known polytope, the set of task wrenches T , or

T = {w e ∈ R 6 : w e = n ∑ j=1 α j w e, j , n ∑ j=1 α j = 1, α j ≥ 0, j = 1, . . . , n}. (2)
The designer generally has an approximate idea of the wrenches that will be applied by the environment, which he or she can approximate with the polytope T . We also work under the assumption that the structure can only withstand forces f i within given ranges, e.g., the limited resistance of the contact surface, the inability of cables to push, or the limited capacities of actuators. These ranges of forces form the set F of feasible forces, a box (a.k.a. orthotope) in m-dimensional space, namely,

F = {f ∈ R m : f ≤ f ≤ f}, (3)
where f and f are the lower and upper bounds on the force array f.

A Measure of the Structure Capacity

For the object to remain in equilibrium, it must not only satisfy the static equilibrium equations ( 1), but also have supporting forces f within the allowed ranges for any of the task wrenches w e . These conditions can be symbolically expressed as

∀w ∈ T , ∃f ∈ F : w e = -Wf. (4)
This condition can also be understood graphically. The two sets F and T are defined in different spaces, which are connected through the linear relationship of the equation of static equilibrium. In Fig. 2, the box F of allowed forces is mapped onto the wrench space through the linear transformation w = -Wf. The resulting set is labelled W , and is a special type of polytope called a zonotope [START_REF] Bouchard | On the ability of a cable-driven robot to generate a prescribed set of wrenches[END_REF]. From the feasibility condition (4), we conclude that the system is in equilibrium if and only if Our measure should be a function indicating how far set T is from being partly outside of W . It should be positive when the structure can support the task wrenches, and negative otherwise. It should be as smooth as possible to ease its optimisation.

T ⊆ W . (5)
As an indicator of the degree of inclusion of T within W , we propose an index that we call the minimum degree of constraint satisfaction, and which we define as s = min j=1,...,n ( min l=1,...,p s j,l ),

where the degree of constraint satisfaction s j,l is the signed distance from vertex w e, j of T to the l th face of W . We take s j,l to be positive when the constraint is satisfied, and negative otherwise. With this definition, the minimum degree of constraint satisfaction s remains negative as long as at least one of the vertices of T remains outside of W ; becomes zero whenever T ⊆ W and a vertex of T lies on the boundary of W ; and is positive when T is in the interior of W . The computation of the proposed indicator function is performed in five steps:

(i) Compute the vertices of F , f k , k = 1, . . . , q, q = 2 m , through the formula f k = (1 m×m -diag(β k ))f + diag(β k )f
, where β k is the array of m bits giving the binary representation of k.

(ii) Map the vertices onto the wrench space as w k = -Wf k , k = 1, . . . , q.

(iii) Compute the convex hull of W from w k , k = 1, . . . , q. Fortunately, several routines are readily-available for this purpose. Here, we use the quickhull algorithm implemented in the qhull package for Matlab. This returns the polytope W in the form W = {w ∈ R 6 : a T l w ≤ b l , l = 1, . . . , p}.

(iv) Compute the degree of constraint satisfaction s j,l associated with the j th vertex of T , w e, j , and the l th face of W , a T l w = b l . This is done by projecting a vector from w e, j to the hyperplane of the l th face of W onto its normal a l / a l 2 , which gives s j,l = (b l -w T e, j a l )/ a l 2 . (v) Compute the closeness of T to being completely included in W as the minimum s of the degrees of constraint satisfaction, as per eq. ( 6).

Example: Holding a Workpiece

In this example, we consider the problem of clamping a metal block having dimensions 150 mm × 100 mm for a polishing run. The polisher consists of a rotating circular brush following a strip pattern, applying a moment of 500 N•mm, and a force of 100 N in the direction of the brush motion. We are to determine the optimal four-contact-point pattern that provides the most robust equilibrium.

A free-body diagram of our metal block is shown in Fig. 3. We assume that each contact point is on a distinct edge of the rectangle and that friction is negligible. We parameterise the positions of the forces f 1 and f 2 with x and y and assume that the remaining forces are symmetric to f 1 and f 2 with respect to the origin.

The weight of the metal block is ignored, so that the task wrench set T is solely determined by the forces and moments applied by the tool. The force-moment system (f e , n e ) equivalent to each possible position and direction of motion of the brush is computed as The minimum degree of constraint satisfaction s is computed for all possible positions of f 1 and f 2 , which results in the graph of Fig. 4. In this figure, recall that the x-axis represents the positions of f 1 on the upper edge, while the y-axis represents that of f 2 on the right edge. Figure 4 shows that the metal block is best held in place by choosing the contact points at x = 100 mm and y = 95 mm. Interestingly, the contour s = 0 N corresponds to the stability frontier, so that we must have |x| ≥ 40 mm and |y| ≥ 40 mm for the workpiece to be stable. Let us use the index s to trace the WFW of a cable-driven parallel robot CDPR.

T = {f e ∈ R 2 , n e ∈ R : f e ∞ ≤ 100 N, |n e | ≤ 15 N m}.
A cable-driven parallel robot is a parallel robot that utilizes cables instead of rigid links. This particular characteristic provides CDPRs with advantages such as high dynamics and a large workspace, however their workspace is greatly reduced by the fact that eq. ( 4) can only be satisfied with non-negative forces or feasible cable tensions (the cables can pull but not push). For such robots, the set of feasible forces F defined in eq. ( 3) becomes the set of feasible cable tensions. The sets W and T in Fig. 2 define the available and required wrench sets of the robot. The available wrench set represents the ability of the cables to generate forces and moments on the moving platform, while the required wrench set represents the forces and moments that are applied by the environment on the platform for a specific task.

The WFW is the set of mobile platform poses for which the required wrench set is contained in the available wrench set. This implies that a pose belonging to the WFW must satisfy eq. ( 5) and that the tensions along each cable should be nonnegative and respect a tension range subject to the capabilities of the actuators. This workspace can be traced along a given area by using the minimum degree of constraint satisfaction to measure the degree of inclusion of the required wrench set polytope in the available wrench set polytope for each pose. The condition s = 0 defines the stability frontier, that is, the boundary of the WFW of the CDPR, and the positive values of s correspond to poses inside the WFW.

We used this observation to revisit the example of Fig. 5 of Gouttefarde et al. [START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF]. In this example, the geometry of the CDPR is as illustrated in Fig. 5,

F = {f ∈ R 4 :
f ∞ ≤ 50 N}, and T = {f e ∈ R 2 , n e ∈ R : f e ∞ ≤ 10 N, |n e | ≤ 0.5 N m}. We compute the minimum degree of constraint satisfaction s for each pose along a three dimensional grid. The robot is displaced along the XY plane and rotated through a range of orientations from -36 • to 36 • . The top and 3D views of the resulting WFW are shown in Fig. 5, and correspond to those obtained in [START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF]. The computed surface defines the stability frontier, therefore the platform must be kept within this boundary in order to remain stable. In order to obtain a more quantitative view of the capacity of the robot to withstand the required wrench set, the minimum degree of constraint satisfaction was also used to compute the constant orientation WFW. Figure 6 shows the resulting workspaces for fixed orientations of 0 • and 45 • , which also correspond to those obtained in [START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF]. The contour where s = 0 defines the stability frontier. We note that the workspace is contained inside the convex hull formed by the base anchor points and that its shape and size are altered by the 45 • rotation of the platform. We also note that in both cases the CDPR has a higher capacity to balance the required wrench set at the center of the workspace, and that this capacity is gradually reduced as the platform is shifted away from the center. In summary, we have defined a new kinetostatic index that is quite general, as demonstrated by the variety of the presented examples. In short, this index informs the designer of the closeness to instability, in Newtons. A negative value of the index indicates an unstable design, and a positive value, a stable one. We believe the index to be an interesting alternative to the manipulability and the dexterity, as it takes into account not only the geometry of the device, but also the forces and moments required by the task or allowed by the actuators or support members. Moreover, the minimum degree of constraint satisfaction represents the worst-case scenario, unlike manipulability and dexterity, which is thought more useful to the designer. The index is not flawless, however, and we are currently exploring alternative solutions to the dimensional homogeneity problem and to the associated computational burden.

Fig. 2

 2 Fig. 2 An analog representation of the mapping of F onto the wrench space

Fig. 3

 3 Fig. 3 Free-body diagram of the workpiece

Fig. 4

 4 Fig. 4 Isocontours of the proposed index s in Newtons as a function of the contact-point positions

Fig. 5

 5 Fig.5Boundary of the total-orientation WFW for the example proposed by Gouttefarde et al.[START_REF] Gouttefarde | Interval-analysis-based determination of the wrenchfeasible workspace of parallel cable-driven robots[END_REF]

Fig. 6

 6 Fig. 6 Isocontours of the proposed index s in Newtons as a function of the pose