arXiv:1012.2662v1 [cs.RO] 13 Dec 2010 Cusp points in the parameter space of RP R-2PR R parallel manipulators G. Moroz 1 , 2 , D. Chablat 1 , P. Wenger 1 , F. Rouiller 2 1 Institut de Rercheche en Communications et Cybern ́ etique de Nantes, France, e-mail: (Guillaume.Moroz,Damien.Chablat,Philippe.Wenger)@irccyn.ec-nantes.fr 2 Laboratoire d’informatique de Paris, France, e-mail: Fabrice.Rouiller@inria.fr Abstract. This paper investigates the existence conditions of cusp points in the design parameter space of the RP R-2PR R parallel manipulators. Cusp points make possible non-singular assembly- mode changing motion, which can possibly increase the size of the aspect, i.e. the maximum sin- gularity free workspace. The method used is based on the notion of discriminant varieties and Cylindrical Algebraic Decomposition, and resorts to Gr ̈ obner bases for the solutions of systems of equations. Key words: Kinematics, Singularities, Cusp, Parallel manipulator, Symbolic computation 1 Introduction It is well known that the workspace of a parallel manipulator is divided into singularity-free connected regions [2]. These regions are separated by the so-called parallel singular configurations, where the manipulator loses its stiffness and gets out of control. The so-called cuspidal manipulators have the ability to change their assembly-mode without running into a singularity, which thus may increase the size of the singularity-free regions [9, 7]. The word “cuspidal” stems from the notion of cuspidal configuration, defined as one configuration where three direct kinematic solutions coalesce. A cuspidal configuration in the manipulator joint space allows non-singular assembly-mode changing motions. Thus, determining cuspidal config- urations is an important issue that has attracted the attention of several researchers [9, 6, 13, 1]. In particular, [13] (resp. [1]) has analyzed the cuspidal configurations of planar 3-RP R (resp. 3-P RR) manipulators 1 . More recently, [6] studied the RP R- 2PR R, a simpler planar 3-DOF manipulator that lends itself to algebraic calculus [6]. In both papers, the cusp configurations were determined by looking for the triple roots of a univariate polynomial. This approach may yield spurious solutions. In this paper, the cuspidal configuration are determined directly from the Jacobian of the whole set of geometric constraints of the robot, which guaranties that only true solutions are obtained. Then, we classify the parameter space of a family of RP R- 2PR R manipulators according to the number of cuspidal configurations. It is shown that these manipulators have either 0 or 16 cuspidal configurations. The proposed 1 The underlined letter means an actuated joint 1 2 G. Moroz 1 , 2 , D. Chablat 1 , P. Wenger 1 , F. Rouiller 2 method is based on the notion of discriminant varieties and cylindrical algebraic de- composition, and resorts to Gr ̈ obner bases for the solutions of systems of equations. 2 Mechanism under study 2.1 Kinematic equations PSfrag replacements A 1 A 2 A 3 B 1 ( x , y ) B 2 B 3 θ 1 θ 2 θ 3 α ρ 1 ρ 2 ρ 3 a b L 2 L 3 Fig. 1 A RP R-2PR R parallel manipulators with ( a = 1, b = 2, L 2 = 2, L 3 = 2, x = 1 / 2, y = 1, θ = 0 . 2). The actuated joint symbols were filled in gray. A RP R-2PR R parallel manipulator is shown in Fig. 1. This manipulator was an- alyzed in [6]. It has 1 actuated prismatic joint ρ 1 , and 2 passive prismatic joints ρ 2 and ρ 3 . The two revolute joints cen- tered in A 2 and A 3 are actuated while the ones centered in A 1 , B 1 , B 2 and B 3 are passive. The pose of the moving platform is described by the position coordinates ( x , y ) of B 1 and by the orientation α of the moving platform B 1 B 2 . The input vari- ables (actuated joints values) are defined by ρ 1 , θ 2 and θ 3 . The points B 1 , B 2 and B 3 are aligned, a= ( B 1 , B 2 ), b= ( B 1 , B 3 ), L 2 = ( A 2 , B 2 ) and L 3 = ( A 3 , B 3 ) . The geometric constraints can be expressed by the following 5 equations [6]: f 1 : ρ 2 1 = x 2 + y 2 f 2 : x = ρ 2 + L 2 cos ( θ 2 ) − b cos ( α ) f 4 : x = L 3 cos ( θ 3 ) − a cos ( α ) (1) f 3 : y = L 2 sin ( θ 2 ) − b sin ( α ) f 5 : y = ρ 3 + L 3 sin ( θ 3 ) − a sin ( α ) Without loss of generality, we fix a = 1 in the rest of the article. 2.2 An algebraic model The singular and cuspidal equations were previously computed using the three fol- lowing steps [6]: 1. Reduce the equation system to a polynomial equation depending on the articular variables ρ 1 , θ 1 , θ 2 and one pose variable α : g ( ρ 1 , θ 1 , θ 2 , α ) = 0 (this step is done by eliminating variables, either with resultants or with Gr ̈ obner basis ) 2. Add the constraint ∂ g ∂ α = 0 to define the parallel singularities 3. Add the constraint ∂ g ∂ α = 0 and ∂ 2 g ∂ α 2 = 0 to define the cuspidal configurations This approach has the advantage of reducing the problem of computing the cusp configurations, to the problem of analysing the triple roots of a single polynomial. However, this only gives a necessary condition for the manipulator to have cusp configurations. In particular it is possible that 3 configurations of the robot coalesce in one coordinate but not in the others. Cusp points in the parameter space of RP R-2PR R parallel manipulators 3 Let us come back to the theoretical definitions, using Jacobian matrices to define directly the triple roots of the original system of equations in all the input and output variables. If P is a list of polynomials and X a list of variables, let J k ( P , X ) be the union of P = { p 1 , . . . , p m } and of all the k × k minors of the Jacobian matrix of the p i with respect to the X i . For the analysis of the RPR–2PRR manipulator, we introduce: Y : = [ x , y , α , ρ 2 , ρ 3 ] W : = [ b , L 2 , L 3 , ρ 1 , θ 2 , θ 3 ] S : = { f 1 , . . . , f 5 } . Using these notations, the parallel singularities of the manipulator are defined by { v ∈ R 11 , p ( v ) = 0 , q ( v ) > 0 , ∀ p ∈ J 5 ( S , Y ) , ∀ q ∈ { b , L 2 , L 3 , ρ 1 } so that the cuspidal configurations are fully characterized by : S = { v ∈ R 11 , p ( v ) = 0 , q ( v ) > 0 , ∀ p ∈ J 5 ( J 5 ( S , Y ) , Y ) , ∀ q ∈ { b , L 2 , L 3 , ρ 1 }} 3 Main tools from computational algebra The algebraic problem to be solved is basically related to the resolution of polyno- mial parametric systems. More specifically, one needs to solve a system of the following form : E = { v ∈ R n , p 1 ( v ) = 0 , . . . , p m ( v ) = 0 , q 1 ( v ) > 0 , . . . q l ( v ) > 0 } where p 1 , . . . , p m , q 1 , . . . , q l are polynomials with rational coefficients depending on the unknowns X = [ X 1 , . . . , X n ] and on the parameters U = [ U 1 , . . . , U d ] . There are numerous possible ways of solving parametric systems in general. Here we focus on the use of Discriminant Varieties (DV, [8]) and Cylindrical Algebraic Decomposition (CAD, [3]) for two reasons. It provides a formal decomposition of the parameter space through an exactly known algebraic variety (no approximation). It has been already successfully used for similar mathematical classes of problems (see [4]). To reduce the dimension of the parameter space to three so that it can be dis- played, we set L 2 = L 3 . Not that the proposed method can treat the general case L 2 6 = L 3 without any problems. When L 2 = L 3 , the system to solve is S with the unknowns [ x , y , α , ρ 2 , ρ 3 , θ 2 , θ 3 ] and the parameters [ b , L 2 , ρ 1 ] . 3.1 Basic black-boxes First experiments are often performed for specific values of the parameters, espe- cially singular and/or degenerated cases. Here, we mainly use exact computations, namely formal elimination of variables (resultants, Gr ̈ obner bases) and resolution of systems with a finite number of solutions, including univariate polynomials. Let us describe the global solver for zero-dimensional systems. It will be used as a black box in the general algorithm we describe in the sequel. Given any system of equations p 1 = 0 , . . . , p m = 0 of polynomials of Q [ X 1 , . . . , X n ] , one first computes a Gr ̈ obner basis of the ideal < p 1 , . . . , p m > for any ordering. At this stage, one can detect easily if the system has or has not finitely many complex solutions. 4 G. Moroz 1 , 2 , D. Chablat 1 , P. Wenger 1 , F. Rouiller 2 If yes, then compute a so called Rational Univariate Representation or RUR (see [10]) of < p 1 , . . . , p m > , which is, in short, an equivalent system of the form : { f ( T ) = 0 , X 1 = g 1 ( T ) g ( T ) , . . . , X n = g n ( T ) g ( T ) } , T being a new variable that is indepen- dent of X 1 , . . . , X n , equipped with a so called separating element (injective on the solutions of the system) u ∈ Q [ X 1 , . . . , X n ] and such that : V ( 〈 p 1 , . . . , p m 〉 ) u − → V ( f ) u − 1 − − → V ( 〈 p 1 , . . . , p m 〉 ) ( x 1 , . . . , x n ) 7 → β = u ( x 1 , . . . , x n ) 7 → ( g 1 ( β ) g ( β ) , . . . , g n ( β ) g ( β ) ) defines a bijection between the (real) roots of the system (denoted by V ( p 1 , . . . , p m ) ) and the (real) roots of the univariate polynomial (denoted by V ( f ) ). We then solve the univariate polynomial f , computing so called isolating in- tervals for its real roots, say non-overlapping intervals with rational bounds that contain a unique real root of f (see [11]). Finally, interval arithmetic is used for getting isolating boxes of the real roots of the system (say non overlapping products of intervals with rational bounds containing a unique real root of the system), by studying the RUR over the isolating intervals of f . In practice, we use the function RootFinding[Isolate] from Maple software, which performs exactly the computa- tions described above. For example, with ( b = 2, L 2 = 2, L 3 = 3, ρ 1 = 2), the polynomial system S defining the cuspidal configurations has 16 real solutions. One of these solutions is ( ρ 2 = 2 . 30 , ρ 3 = 1 . 86 , φ = − 2 . 36 , x = 1 . 79 , y = 0 . 885 , θ 2 = − 2 . 88 , θ 3 = − 0 . 999 ) . We observe the three coalescing configurations around this root by calculating the direct kinematic solutions with θ 2 = − 2 . 892 and θ 3 = − 1 . 007. These solutions are shown in Figure 2. PSfrag replacements A 1 A 3 A 2 B 1 B 2 B 3 PSfrag replacements A 1 A 1 A 1 A 3 A 3 A 3 A 2 A 2 A 2 B 1 B 1 B 1 B 2 B 2 B 2 B 3 B 3 B 3 Fig. 2 A cuspidal configuration (left), and the three converging configurations (right). 3.2 Discriminant varieties The above method allows one to study instances of the problem and may be used together with a discretization of the parameter space to get a first idea of the com- plexity of the general problem to be solved. But the true issue addressed in this paper is to find criteria on the parameters that allow classifying the configurations to be studied (for example to distinguish the manipulators having cuspidal configurations from the others). This leads to a more general problem since one then has to study non zero-dimensional, semi-algebraic sets. Let p 1 , . . . , p m , q 1 , . . . , q l be polynomials with rational coefficients depending on the unknowns X 1 , . . . , X n and on the parameters U 1 , . . . , U d . Let us consider the con- structible set : Cusp points in the parameter space of RP R-2PR R parallel manipulators 5 C = { v ∈ C n , p 1 ( v ) = 0 , . . . , p m ( v ) = 0 , q 1 ( v ) 6 = 0 , . . . q l ( v ) 6 = 0 } If we assume that C is a finite number of points for almost all the parameter values, a discriminant variety V D of C is a variety in the parameter space C d such that, over each connected open set U satisfying U ∩ V D = / 0, C defines an analytic covering. In particular, the number of points of C over any point of U is constant. Let us now consider the following semi-algebraic set : S = { v ∈ R 11 , p ( v ) = 0 , q ( v ) > 0 , ∀ p ( v ) ∈ J 5 ( J 5 ( S , Y ) , Y ) , ∀ q ( v ) ∈ { b , L 2 , L 3 , ρ 1 }} If we assume that S has a finite number of solutions over at least one real point that does not belong to V D , then V D ∩ R d can be viewed as a real discriminant variety of S , with the same property : over each connected open set U ⊂ R d such that U ∩ V D = / 0, C defines an analytic covering. In particular, the number of points of R over any point of U is constant. Discriminant varieties can be computed using basic and well known tools from computer algebra such as Gr ̈ obner bases (see [8]) and a full package computing such objects in a general framework is available in Maple software through the RootFinding[Parametric] package. Figure 3 represents the discriminant variety of the cuspidal configurations of the RP R-2PR R manipulator. 3.3 The complementary of a discriminant variety At this stage, we know, by construction, that over any simply connected open set that does not intersect the discriminant variety (so-called regions), the system has a constant number of (real) roots. The goal of this part is now to provide a description of the regions for which the number of solutions of the system at hand is constant. For that, we compute an open CAD ([3, 5]). Let P d ⊂ Q [ U 1 , . . . , U d ] be a set of polynomials. For i = d − 1 . . . 0, we introduce a set of polynomials P i ⊂ Q [ U 1 , . . . , U d − i ] defined by a backward recursion: • P d : the polynomials defining the discriminant variety • P i : { Discriminant ( p , U i ) ,LeadingCoefficient ( p , U i ) , Resultant ( p , q , U i ) , p , q ∈ P i + 1 } We can associate to each P i an algebraic variety of dimension at most i − 1 : V i = V ( ∏ p ∈ P i p ) . Figure 3 and 4 represent respectively V 3 and V 2 for the manipulator at hand. The V i are used to define recursively a finite union of simply connected open subsets of R i of dimension i : ∪ n i k = 1 U i , k such that V i ∩ U i , k = / 0, and one point u i , k with rational coordinates in each U i , k . In order to define the U i , k , we introduce the following notations. If p is a univari- ate polynomial with n real roots: Root ( p , l ) =    − ∞ if l ≤ 0 the l th real roots of p if 1 ≤ l ≤ n + ∞ if l > n 6 G. Moroz 1 , 2 , D. Chablat 1 , P. Wenger 1 , F. Rouiller 2 PSfrag replacements ρ 1 L 2 b 0 1 2 3 4 5 6 7 8 10 Fig. 3 Discriminant Variety of the cuspidal configurations PSfrag replacements 0 1 2 3 4 5 6 7 8 10 ρ 1 L 2 b Fig. 4 V 2 for the cuspidal configurations of the manipulator. Moreover, if p is a n -variate polynomial, and v is a n − 1-uplet, then p v denotes the univariate polynomial where the first n − 1 variables have been replaced by v . Roughly speaking, the recursive process defining the U i , k is the following: • For i = 1, let p 1 = ∏ p ∈ P 1 p . Taking U 1 , k =] Root ( p , k ) ; Root ( p , k + 1 )[ for k from 0 to n where n is the number of real roots of p 1 , one gets a partition of R that fits the above definition. Moreover, one can chose arbitrarily one rational point u 1 , k in each U 1 , k . • Then, let p i = ∏ p ∈ P 1 p . The regions U i , k and the points u i , k are of the form: U i , k = { ( v 1 , ..., v i − 1 , v i ) | v : = ( v 1 , ..., v i − 1 ) ∈ U i − 1 , j , v i ∈ ] Root ( p v i , l ) , Root ( p v i , l + 1 )[ } u i , k = ( β 1 , ..., β i − 1 , β i ) , with { ( β 1 , ..., β i − 1 ) = u i − 1 , j β i ∈ ] Root ( p u i − 1 , j i , l ) , Root ( p u i − 1 , j i , l + 1 )[ where j , l are fixed integer. For our example, we get for p 3 a trivariate polynomial of degree 33, for p 2 a bivariate polynomial of degree 113, and for p 1 a univariate polynomial of degree 59. The zero-dimensional solver then provides the positive real roots of p 1 (Table 1), from which we easily deduce the open intervals u 1 , k . We then use the zero- dimensional solver to solve every p 2 ( u 1 , k , U 2 ) and deduce all the tests points of the U 2 , k ′ in each cells of Figure 4. Finally we use the zero-dimensional solver to solve every p 3 ( u 2 , k , U 3 ) and deduce all the tests points of the U 3 , k ′ , describing so the complementary of the discriminant variety. Table 1 Numerical values of the positive roots of p 1 b b 1 b 2 b 3 b 4 b 5 b 6 b 7 b 8 b 9 b 10 b 11 b 12 0.0 0.533 0.564 0.617 0.656 0.707 1.0 1.41 1.52 1.62 1.77 1.88 3.4 Discussing the number of solutions of the parametric system. At this stage, we have a full description of the complementary of the discriminant variety of the system to be solved : a recursive process for the construction of each cell U d , k and a test point (with rational coordinates) in each of these cells. By def- inition of the discriminant variety, we know that the system has a constant finite Cusp points in the parameter space of RP R-2PR R parallel manipulators 7 number of solutions over each of these cells and computing this number for each cell is the only remaining step. This can be done simply by solving all the systems S | U = u d , k , k = 1 . . . n d using the zero-dimensional solver. For our example, the process described in 3.3 returns 344 cells of dimension 3 ( U 3 , 1 , ..., U 3 , 344 ). We solve the system S for each of the 344 associated sample points, and we get always either 0 or 16 solutions. By selecting only the cells where the manipulator has 16 cuspidal configurations, we obtain the 58 cells shown in Fig- ure 5. Table 2 provides the different formula bounding the three dimensional cells U 3 , 1 , ..., U 3 , 344 and Table 3 represents the 58 cells of Figure 5, where the manipula- tor has 16 cuspidal configurations. Table 2 Formula describing the boundaries of the cells in Table 3. b 1 = 0 , b 2 = Root ( 8 b 6 − 11 b 4 + 6 b 2 − 1 , 2 ) L 21 ( b ) = Root (( b 2 + 1 ) 3 L 6 2 − 3 ( b 2 + 3 b + 1 ) ( b 2 − 3 b + 1 ) ( b − 1 ) 2 ( b + 1 ) 2 L 4 2 + b 3 = Root ( 4 b 2 + b 6 − 3 b 4 − 1 , 2 ) , b 4 = Root ( b 8 + 3 b 6 + 3 b 4 + b 2 − 1 , 2 ) 3 ( b 2 + 1 ) ( b − 1 ) 4 ( b + 1 ) 4 L 2 2 − ( b − 1 ) 6 ( b + 1 ) 6 , 2 ) b 5 = Root ( − 2 b 4 + b 6 + 3 b 2 − 1 , 2 ) , b 6 = 1 / √ 2 , b 7 = 1 , b 8 = √ ( 2 ) L 22 ( b ) = 1 − b 2 , L 23 ( b ) = 1 / √ 1 − b 2 , L 24 ( b ) = ( 1 − b 2 ) / b , L 25 ( b ) = ∞ b 9 = Root ( 2 b 2 + b 6 − 3 b 4 − 1 , 2 ) , b 10 = Root ( b 8 − b 6 − 3 b 4 − 3 b 2 − 1 , 2 ) L 26 ( b ) = b 2 / √ 1 − b 2 , L 27 ( b ) = 1 / √ b 2 − 1 , L 28 ( b ) = b 2 / √ b 2 − 1 b 11 = Root ( − 4 b 4 + b 6 + 3 b 2 − 1 , 2 ) L 29 ( b ) = ( b 2 − 1 ) / b , L 210 ( b ) = b 2 − 1 b 12 = Root ( b 6 − 6 b 4 + 11 b 2 − 8 , 2 ) , b 13 = ∞ ρ 11 ( b , L 2 ) = Root ( − ρ 6 1 b 6 + 3 b 4 ( L 2 2 b 2 + 1 − L 2 2 ) ρ 4 1 − 3 b 2 ( − 7 L 2 2 b 2 + 7 L 2 2 + L 4 2 + L 4 2 b 4 − 2 L 4 2 b 2 + 1 ) ρ 2 1 + ( L 2 2 b 2 + 1 − L 2 2 ) 3 , 2 ) ρ 12 ( b , L 2 ) = Root ( ρ 6 1 + ( − 3 b 4 + 3 L 2 2 b 2 − 3 L 2 2 ) ρ 4 1 + ( 21 L 2 2 b 6 + 3 L 4 2 b 4 − 6 L 4 2 b 2 + 3 b 8 − 21 L 2 2 b 4 + 3 L 4 2 ) ρ 2 1 + ( L 2 2 b 2 − b 4 − L 2 2 ) 3 , 2 ) ρ 12 ( b , L 2 ) = b 2 , ρ 13 ( b , L 2 ) = 1 / b Table 3 Cells of R 3 where the manipulator has cuspidal configurations. ] b 1 b 2 [ (] L 21 L 22 [ , ] ρ 11 ρ 12 [) , (] L 22 L 23 [ , ] ρ 13 ρ 12 [) , (] L 23 L 24 [ , ] ρ 13 ρ 12 [) , (] L 24 L 25 [ , ] ρ 13 ρ 14 [) ] b 2 b 3 [ (] L 21 L 26 [ , ] ρ 11 ρ 12 [) , (] L 26 L 22 [ , ] ρ 11 ρ 12 [) , (] L 22 L 23 [ , ] ρ 13 ρ 12 [) , (] L 23 L 24 [ , ] ρ 13 ρ 12 [) , (] L 24 L 25 [ , ] ρ 13 ρ 14 [) ] b 3 b 4 [ (] L 21 L 26 [ , ] ρ 11 ρ 12 [) , (] L 26 L 22 [ , ] ρ 11 ρ 12 [) , (] L 22 L 24 [ , ] ρ 13 ρ 12 [) , (] L 24 L 23 [ , ] ρ 13 ρ 14 [) , (] L 23 L 25 [ , ] ρ 13 ρ 14 [) ] b 4 b 5 [ (] L 21 L 26 [ , ] ρ 11 ρ 12 [) , (] L 26 L 22 [ , ] ρ 11 ρ 12 [) , (] L 22 L 24 [ , ] ρ 13 ρ 12 [) , (] L 24 L 23 [ , ] ρ 13 ρ 14 [) , (] L 23 L 25 [ , ] ρ 13 ρ 14 [) ] b 5 b 6 [ (] L 21 L 22 [ , ] ρ 11 ρ 12 [) , (] L 22 L 26 [ , ] ρ 13 ρ 12 [) , (] L 26 L 24 [ , ] ρ 13 ρ 12 [) , (] L 24 L 23 [ , ] ρ 13 ρ 14 [) , (] L 23 L 25 [ , ] ρ 13 ρ 14 [) ] b 6 b 7 [ (] L 21 L 22 [ , ] ρ 11 ρ 12 [) , (] L 22 L 24 [ , ] ρ 13 ρ 12 [) , (] L 24 L 26 [ , ] ρ 13 ρ 14 [) , (] L 26 L 23 [ , ] ρ 13 ρ 14 [) , (] L 23 L 25 [ , ] ρ 13 ρ 14 [) ] b 7 b 8 [ (] L 21 L 29 [ , ] ρ 12 ρ 11 [) , (] L 29 L 210 [ , ] ρ 14 ρ 11 [) , (] L 210 L 27 [ , ] ρ 14 ρ 13 [) , (] L 27 L 28 [ , ] ρ 14 ρ 13 [) , (] L 28 L 25 [ , ] ρ 14 ρ 13 [) ] b 8 b 9 [ (] L 21 L 29 [ , ] ρ 12 ρ 11 [) , (] L 29 L 27 [ , ] ρ 14 ρ 11 [) , (] L 27 L 210 [ , ] ρ 14 ρ 11 [) , (] L 210 L 28 [ , ] ρ 14 ρ 13 [) , (] L 28 L 25 [ , ] ρ 14 ρ 13 [) ] b 9 b 10 [ (] L 21 L 27 [ , ] ρ 12 ρ 11 [) , (] L 27 L 29 [ , ] ρ 12 ρ 11 [) , (] L 29 L 210 [ , ] ρ 14 ρ 11 [) , (] L 210 L 28 [ , ] ρ 14 ρ 13 [) , (] L 28 L 25 [ , ] ρ 14 ρ 13 [) ] b 10 b 11 [ (] L 21 L 27 [ , ] ρ 12 ρ 11 [) , (] L 27 L 29 [ , ] ρ 12 ρ 11 [) , (] L 29 L 210 [ , ] ρ 14 ρ 11 [) , (] L 210 L 28 [ , ] ρ 14 ρ 13 [) , (] L 28 L 25 [ , ] ρ 14 ρ 13 [) ] b 11 b 12 [ (] L 21 L 27 [ , ] ρ 12 ρ 11 [) , (] L 27 L 29 [ , ] ρ 12 ρ 11 [) , (] L 29 L 28 [ , ] ρ 14 ρ 11 [) , (] L 28 L 210 [ , ] ρ 14 ρ 11 [ , (] L 210 L 25 [ , ] ρ 14 ρ 13 [) ] b 12 b 13 [ (] L 21 L 29 [ , ] ρ 12 ρ 11 [) , (] L 29 L 28 [ , ] ρ 14 ρ 11 [) , (] L 28 L 210 [ , ] ρ 14 ρ 11 [) , (] L 210 L 25 [ , ] ρ 14 ρ 13 [) 4 Conclusion We have proposed a general method to describe rigorously the design parameters for which a manipulator has cuspidal configurations. This method can be applied directly to other mechanisms, such as the ones studied in [4, 12] for example. The tools used to perform the computations were implemented in a Maple library called Siropa 2 . For 3D illustration purposes, we have detailed the main computations to be performed with manipulators satisfying L 2 = L 3 . However, the proposed method allows one directly to solve the general case ( L 2 6 = L 3 ) by computing a discrimi- nant variety of the system with 4 parameters b , L 2 , L 3 , ρ 1 , and by decomposing R 4 with a CAD adapted to the discriminant variety. This description generalizes and 2 http://www.irccyn.ec-nantes.fr/ moroz/siropa/doc 8 G. Moroz 1 , 2 , D. Chablat 1 , P. Wenger 1 , F. Rouiller 2 completes the analyse done in [6]. There is still some limitations though. In particu- lar, when the system that defines the cuspidal configurations has no solution, it may mean that there exists a manipulator with no cuspidal configurations, but it may also mean that no manipulator can be assembled with these design parameters. Thus it is essential to be able to describe precisely the set of design parameter values for which a manipulator can be assembled. PSfrag replacements ρ 1 L 2 b 0 0 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 7 8 PSfrag replacements ρ 1 L 2 b 0 0 1 1 2 2 2 3 3 4 4 4 5 5 6 7 8 Fig. 5 The cells of R 3 where the manipulator admits cuspidal configurations, front view (left) and back view (right). Acknowledgements The research work reported here was made possible by SiRoPa ANR Project. References 1. Bamberger, H., Wolf, A., and Shoham, M. Assembly mode changing in parallel mechanisms. IEEE Transactions on Robotics , 24(4):765–772, 2008. 2. Chablat, D. and Wenger, P. Working modes and aspects in fully parallel manipulators. In IEEE International Conference on Robotics and Automation , pages 1964–1969. INSTITUTE OF ELECTRICAL ENGINEERS INC (IEEE), 1998. 3. Collins, G. E. Quantifier Elimination for Real Closed Fields by Cylindrical Algebraic Decom- position . Springer Verlag, 1975. 4. Corvez, S. and Rouillier, F. Using computer algebra tools to classify serial manipulators. In Automated Deduction in Geometry , pages 31–43, 2002. 5. Dolzmann, A., Seidl, A., and Sturm, T. Efficient projection orders for CAD. In Jaime Gutier- rez, editor, ISSAC , pages 111–118. ACM, 2004. 6. Hernandez, A., Altuzarra, O, Petuya, V., and Macho, E. Defining conditions for nonsingular transitions between assembly modes. IEEE Transactions on Robotics , 25:1438–1447, Dec. 2009. 7. Husty, M. L. . Non-singular assembly mode change in 3-RPR-parallel manipulators. In Computational Kinematics: Proceedings of the 5th International Workshop on Computational Kinematics , page 51. Springer Verlag, 2009. 8. Lazard, D. and Rouillier, F. Solving parametric polynomial systems. J. Symb. Comput. , 42(6):636–667, 2007. 9. McAree, P. R. and Daniel, R. W. An explanation of never-special assembly changing motions for 3-3 parallel manipulators. I. J. Robotic Res , 18(6):556–574, 1999. 10. Rouillier, F. Solving zero-dimensional systems through the rational univariate representation. Appl. Algebra Eng. Commun. Comput , 9(5):433–461, 1999. 11. Rouillier, F. and Zimmermann, P. Efficient isolation of polynomial real roots. Journal of Computational and Applied Mathematics , 162(1):33–50, 2003. 12. Wenger, P. Classification of 3R positioning manipulators. Journal of Mechanical Design , 120:327, 1998. 13. Zein, M., Wenger, P., and Chablat, D.. Singular curves in the joint space and cusp points of 3-rpr parallel manipulators. Robotica , 25(6):717–724, 2007.