You are on page 1of 14

Mechanism and Machine Theory 46 (2011) 83–96

Contents lists available at ScienceDirect

Mechanism and Machine Theory


j o u r n a l h o m e p a g e : w w w. e l s ev i e r. c o m / l o c a t e / m e c h m t

Synthesis of a special RPSPR spatial linkage function generator for six


precision points
J. Jesús Cervantes-Sánchez a,⁎, Luis Gracia b,1, Eduardo Alba-Ruiz a, José M. Rico-Martínez a
a
Universidad de Guanajuato, DICIS, Departamento de Ingeniería Mecánica, Comunidad de Palo Blanco, Salamanca, Gto., México
b
Instituto IDF, Universidad Politécnica de Valencia, Camino de Vera s/n, 46022, Valencia, Spain

a r t i c l e i n f o a b s t r a c t

Article history: A closed form approach to kinematic synthesis of function generation is formulated for a special
Received 5 May 2010 RPSPR spatial linkage for six precision points. Several illustrative examples showing the
Received in revised form 13 October 2010 applicability of the proposed approach are discussed and presented in detail. To the best of our
Accepted 14 October 2010
knowledge, this paper is the first to consider a RPSPR spatial linkage as a function generator.
© 2010 Elsevier Ltd. All rights reserved.
Keywords:
RPSPR spatial linkage
Exact kinematic synthesis
Function generation

1. Introduction

Function generation using planar [1–3], spherical [4–6], and spatial linkages [7–11] has been a topic of great interest to
kinematicians over the past decades. Like the inverse process of kinematic analysis, synthesis of function generators seeks to
provide mechanisms for the implementation of certain mechanical tasks which could be of interest for practical machine design.2
In this context, we propose a special RPSPR spatial linkage as a mechanical device for function generation. Displacement analysis of
this linkage has been presented in [13], and mobility analysis has been conducted in [14,15].
The aim of this paper is to introduce an exact3 kinematic synthesis process of a special RPSPR spatial linkage for six precision
points, intended for function generation. The proposed approach is mainly based on elimination theories—based on resultants—in
order to obtain symbolically two fundamental design equations in the form of 7th and 4th degree univariate polynomials, which
are numerically solved. To the best of our knowledge, this paper is the first to consider a RPSPR spatial linkage as a function
generator. The feasibility of the proposed approach is demonstrated by including several numerical examples for six precision
points.
It is worthy to mention that, while the detailed derivations for the synthesis of a specific mechanism (like the ones presented in
this work) can be useful, such results are becoming less of interest as more general approaches, such as polynomial continuation,
are now available that can be applied to specific problems. However, a particular formulation can be more efficient than a general
algorithm, and thus it becomes useful if one wishes to repeat the computation many times inside some automated design search. It
is far from clear that the problem at hand needs this special treatment.

⁎ Corresponding author. Tel./fax: + 52 464 6479940.


E-mail addresses: jecer@salamanca.ugto.mx (J.J. Cervantes-Sánchez), luigraca@isa.upv.es (L. Gracia).
1
Tel.: + 34 963879770; fax: + 34 963879579.
2
Although a theoretical framework is considered in this paper, practical applications may arise, for example, in the design of machines with intersecting shafts
[11,12].
3
That is, the solutions are exact up to round-off errors.

0094-114X/$ – see front matter © 2010 Elsevier Ltd. All rights reserved.
doi:10.1016/j.mechmachtheory.2010.10.006
84 J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96

3
2

0
4 1

Fig. 1. Layout of the RPSPR spatial linkage.

2. RPSPR spatial linkage

Fig. 1 depicts a 3D layout of the RPSPR spatial linkage, which is composed of five links (link 1 is the input link, link 4 is the output
link) connected by two revolute joints (R-type joints), two prismatic joints (P-type joints), and one spherical joint (S-type joint). In
the special4 configuration considered in this work for this RPSPR linkage, see Fig. 2, the revolute, prismatic and spherical joints are
located at points O, D, A, C and B, respectively. Moreover, the link that connects both revolute joints is considered fixed, namely the
fixed link. Furthermore, the lengths of the fixed, input and output links are denoted by a1, a2 and a3, respectively. Additionally,
angle γ denotes the angle that physically exists between the joint axes associated with the revolute joints.
Fig. 3 completes the definition of the linkage with the representation of auxiliary frames and the remaining linkage parameters
and variables. The input angle, i.e., the angle between the input and fixed links, is denoted by θ, whereas the output angle, i.e., the
angle between the output and fixed links, is denoted by ϕ. Moreover, α1 and α2 are the twist angles between the motion axis of the
R and P joints associated with the input and output links, respectively. Finally, s1 and s2 are the displacements of the prismatic
joints. Note that, in Fig. 3, it has been represented for both parameters {a2, a3, α1, α2, γ} and variables {θ, ϕ, s1, s2} the positive sense
of the corresponding linear or angular value.

3. Input–output equation

There is an intrinsic function associated with RPSPR linkage which defines the relationship between the input and output
angles. Next, a displacement analysis of the special RPSPR linkage is conducted based on its geometry to obtain the corresponding
input–output equation.
For an arbitrary configuration, all the links of the special RPSPR linkage form a closed loop that can be mathematically
expressed by:

0 0 0 0 0
r B=A + r A=O = r B=C + r C=D + r D=O ð1Þ

where r W
U/V is the position vector from point V to point U expressed in terms of frame W.
From Fig. 3, we obtain the following position vectors (r) and rotation matrices (R):

2 3 2 3 2 3
0 s1 Sα1 0
0 6 7 3 6 7 0 6 7
r A=O = 4 a2 Cθ 5 r B=A = 4 −s1 Cα1 5 r D=O = 4 −a1 5
a2 Sθ 0 0
2 3 2 3 ð2Þ
0 s2 Sα2
1 6 7 2 6 7
r C=D = 4 a3 Cϕ 5 r B=C = 4 s2 Cα2 5
a3 Sϕ 0

4
The RPSPR spatial linkage considered in this work is not the most general RPSPR linkage as, for example, the common perpendicular to the axes of both
revolute joints passes through point D and point O.
J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96 85

Fig. 2. Schematic representation of a special RPSPR spatial linkage.

2 3 2 3 2 3
Cγ 0 −Sγ 1 0 0 1 0 0
0 6 7 1 6 7 0 6 7
R1 =4 0 1 0 5 R2 = 40 Sϕ Cϕ 5 R3 = 40 Sθ Cθ 5
Sγ 0 Cγ 0 −Cϕ Sϕ 0 −Cθ Sθ
2 3 ð3Þ
Cγ CϕSγ −SγSϕ
0 0 1 6 7
R2 = R1 R2 = 4 0 Sϕ Cϕ 5
Sγ −CγCϕ CγSϕ

where the compact trigonometric notation Cx ≡ cos(x) and Sx ≡ sin(x) is used hereinafter.
Using the rotation matrices in Eq. (3), all the position vectors in Eq. (2) can expressed in terms of frame 0:

2 3 2 3
Sα1 −SγSϕ
0 0 3 6 7 0 0 1 6 7
r B=A = R 3 rB=A = s1 4 −Cα1 Sθ 5 rC=D = R 1 rC=D = a3 4 Cϕ 5
Cα1 Cθ CγSϕ
2 3 ð4Þ
CγSα2 + SγCα2 Cϕ
6 7
r 0B=C = R02 r2B=C = s2 4 Cα2 Sϕ 5
SγSα2 −CγCα2 Cϕ

Z1 Z1 Z2 Z0 Z3
Z0 γ
φ θ Y0
Y1
X1 Y0,Y1 φ θ
γ X1, X2 Y2 X0 , X3 Y3
X0
C Y2 A
Z0 a2 A Z1 a3 C
α2 α1 Y3
s2 B
θ Y0 φ Y B s1
1
X2 X3
O D
Fig. 3. Definition of auxiliary frames, parameters and variables.
86 J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96

Substituting the position vectors of Eqs. (2) and (4) into Eq. (1) yields the following three scalar equations:

−s1 Sα1 + s2 CγSα2 + s2 Cα2 CϕSγ−a3 SγSϕ = 0 ð5Þ

−a1 −a2 Cθ + a3 Cϕ + s1 Cα1 Sθ + s2 Cα2 Sϕ = 0 ð6Þ

−s1 Cα1 Cθ−s2 Cα2 CγCϕ + s2 Sα2 Sγ−a2 Sθ + a3 CγSϕ = 0 ð7Þ

which are known as position constraint equations.


Solving simultaneously Eqs. (5) and (7) for s1 and s2, we obtain:

a2 CγSα2 Sθ + a2 SγCα2 SθCϕ−a3 Sα2 Sϕ


s1 = − ð8Þ
CγSα1 Cα2 Cϕ + CγCα1 Sα2 Cθ + SγCα1 Cα2 CθCϕ−SγSα1 Sα2

a2 Sα1 Sθ−a3 CγSα1 Sϕ−a3 SγCα1 CθSϕ


s2 = − ð9Þ
CγSα1 Cα2 Cϕ + CγCα1 Sα2 Cθ + SγCα1 Cα2 CθCϕ−SγSα1 Sα2

Substituting Eqs. (8) and (9) into Eq. (6) leads to the following input–output equation:

μ 1 SθSϕ + μ 2 CθCϕ + μ 3 Cθ + μ 4 Cϕ + μ 5 = 0 ð10Þ

where:

μ 1 ≡a2 τ1 −a3 τ2
μ 2 ≡a1 Sγ + a2 τ1 Cγ−a3 τ2 Cγ
μ 3 ≡−a3 Sγ + a1 τ2 Cγ−a2 τ1 τ2 Sγ
μ 4 ≡a2 Sγ + a1 τ1 Cγ + a3 τ1 τ2 Sγ
μ 5 ≡a2 τ2 Cγ−a3 τ1 Cγ−a1 τ1 τ2 Sγ
τ1 ≡tanðα1 Þ
τ2 ≡tanðα2 Þ

4. Prescribed function

The kinematic synthesis of a linkage function generator attempts to reproduce an arbitrary function:

ϕ = f ðθÞ ð11Þ

for a finite number of points, namely, (θi, ϕi), for i = 1, 2, ⋯, n, which are known as precision points. In this context, an arbitrary
function given by Eq. (11) is referred to as the prescribed function.

5. Synthesis problem

The problem of kinematic synthesis at hand can be formulated as follows. Given a finite set of precision points or desired angles,
θi and ϕi, for i = 1, 2, ⋯, n, obtained from a prescribed function, ϕ = f(θ), find the design parameters (relevant dimensions) of
the linkage in order to produce an input–output relationship that coincides with function f at the given discrete set {(θi, ϕi)} n1
of precision points. Note that the notation {xi} m
j is used throughout the paper equivalently to {xj, xj + 1, ⋯, xm}.

5.1. Function generation design equations for six precision points

At this point it is important to consider the following rationale. Firstly, it should be noted that the input–output Eq. (10)
involves six design parameters associated with the kinematic structure of the special RPSPR linkage shown in Fig. 2, namely, a1, a2,
a3, α1, α2, and γ. Secondly, it is well known that the number of precision points that a function generator can visit is equal to the
number of independent design parameters involved in the synthesis process [7,10,16]. In this regard, only four of the previous six
design parameters are independent in Eq. (10) and, therefore, two of them can be fixed arbitrarily without loss of generality.
Moreover, the main objective when designing a function generator is to visit the maximum possible number of precision points.
We, therefore, increase the number of precision points from four to six by considering two more design parameters: the initial
orientation angle of the input link with respect to the fixed link, angle θ0, and the initial orientation angle of the output link with
respect to the fixed link, angle ϕ0.
J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96 87

Thus, writing Eq. (10) for six pairs of values {(θi, ϕi)} 61 and substituting θi → θi + θ0 and ϕi → ϕi + ϕ0, the following synthesis
equations are obtained:

ðλ1 λ2 λ3 + 1Þbi + ðλ1 λ2 + λ3 Þci + ðλ1 −λ2 λ3 Þdi + ðλ2 −λ1 λ3 Þei
ð12Þ
−ðλ2 λ4 Þfi + λ4 gi −ðλ1 λ5 Þhi + λ5 ji + λ6 = 0; for i = 1; 2; ⋯; 6

where the {λi} 61 design coefficients are given by:

λ1 ≡tanðϕ0 Þ
λ2 ≡tanðθ0 Þ
μ
λ3 ≡ 2
μ1
μ3
λ4 ≡
μ1 Cϕ0
μ4
λ5 ≡
μ1 Cθ0
μ5
λ6 ≡
μ1 Cθ0 Cϕ0

and the following expressions:

bi ≡Sθi Sϕi
ci ≡Cθi Cϕi
di ≡Sθi Cϕi
ei ≡Cθi Sϕi
fi ≡Sθi
gi ≡Cθi
hi ≡Sϕi
ji ≡Cϕi

depend on the {(θi, ϕi)} 61 set of desired input and output angles. Eq. (12) is called design equation because it involves the {λi} 61
design coefficients.

5.2. Computation of the design coefficients

Eq. (12) constitutes a system of six scalar equations in the six unknowns {λi} 61, which can be written in the following form:

2 3
λ1 λ2 λ3 + 1
2 36 λ1 λ2 + λ3 7 2 3
b1 c1 d1 e1 f1 g1 h1 j1 1 66 λ1 −λ2 λ3 7
7 0
6 b2 c2 d2 e2 f2 g2 h2 j2 17 6 7 607
6 76 λ2 −λ1 λ3 7 6 7
6 b3 c3 d3 e3 f3 g3 h3 j3 17 6 7 607
6 76 −λ2 λ4 7 = 6 7=0 ð13Þ
6b c4 d4 e4 f4 g4 h4 j4 17 6 7 607
6 4 76 λ4 7 6 7
4b c5 d5 e5 f5 g5 h5 j5 1 56 7 405
5 6 −λ λ 7
b6 c6 d6 e6 f6 g6 h6 j6 1 64
1 5 7
5 0
λ5
λ6

Associating the columns of elements appearing in Eq. (13) with vectors, it is possible to obtain the following matrix form:

½b c d e f g h j 1 λ = 0; ½ L h j 1 λ = 0 ð14Þ
88 J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96

Premultiplying both sides of Eq. (14) by the inverse L− 1 of the (6 × 6) matrix L≡½ b c d e f g  gives5:
2 3
1 0 0 0 0 0 t1 u1 v1
60 1 0 0 0 0 t1 u2 v2 7
6 7
60 0 1 0 0 0 t1 u3 v3 7
6 7λ = 0
60 0 0 1 0 0 t1 u4 v4 7
6 7 ð15Þ
40 0 0 0 1 0 t1 u5 v5 5
0 0 0 0 0 1 t1 u6 v6

½ I66 t u v λ = 0

where I6 × 6 is the (6 × 6) identity matrix, t ≡ L− 1h, u ≡ L− 1j, and v ≡ L− 11.


From Eq. (15) we obtain the following six scalar equations:

0 = −t1 λ1 λ5 + u1 λ5 + v1 λ6 + λ1 λ2 λ3 + 1 ð16Þ

0 = −t2 λ1 λ5 + u2 λ5 + v2 λ6 + λ1 λ2 + λ3 ð17Þ

0 = −t3 λ1 λ5 + u3 λ5 + v3 λ6 + λ1 −λ2 λ3 ð18Þ

0 = −t4 λ1 λ5 + u4 λ5 + v4 λ6 + λ2 −λ1 λ3 ð19Þ

0 = −t5 λ1 λ5 + u5 λ5 + v5 λ6 −λ2 λ4 ð20Þ

0 = −t6 λ1 λ5 + u6 λ5 + v6 λ6 + λ4 ð21Þ

Thus, the synthesis process requires solving Eqs. (16)–(21) for {λi} 61. To this end, Eqs. (17)–(19) and (21) are simultaneously
solved for {λi} 63:

ð 2 2
λ3 = −u2 v4 λ1 −t4 v2 λ2 + t2 v4 λ1 −u3 v2 λ2 + u2 v3 λ2 + t3 v2 λ1 λ2 −t2 v3 λ1 λ2
ð22Þ
+ u3 v4 λ1 λ2 +
2 2
t4 v3 λ1 λ2 −t3 v4 λ1 λ2 Þ
+ u4 λ1 ðv2 −v3 λ2 Þ = q

ð
λ4 = − −t6 v4 λ21 + t4 v6 λ21 −u2 v6 λ21 −t6 v2 λ31 + t2 v6 λ31 + u3 v6 λ2 + t6 v3 λ1 λ2 −t3 v6 λ1 λ2 + u3 v6 λ21 λ2

+ t6 v3 λ31 λ2 −t3 v6 λ31 λ2 + u2 v6 λ22 + t6 v2 λ1 λ22 −t2 v6 λ1 λ22 −t6 v4 λ21 λ22 + ð23Þ

        
2 2 2 2 2 2 2
+ t4 v6 λ1 λ2 −u4 v6 λ1 1 + λ2 + u6 −v3 1 + λ1 λ2 + v2 λ1 −λ2 + v4 λ1 1 + λ2 =q Þ
      
2 2 2 2
λ5 = − v3 λ2 1 + λ1 −v4 λ1 1 + λ2 + v2 λ2 −λ1 = q ð24Þ

    
λ6 = − u2 λ21 −t2 λ31 −u3 λ2 + t3 λ1 λ2 −u3 λ21 λ2 + t3 λ31 λ2 + u4 λ1 λ22 + 1 −t4 λ21 λ22 + 1 = q ð25Þ

where:

q ≡−t4 v3 λ1 + u2 v3 λ1 + t3 v4 λ1 + t3 v2 λ21 −t2 v3 −u3 ðv4 + v2 λ1 Þλ21

−u2 v4 λ2 −t4 v2 λ1 λ2 + t2 v4 λ1 λ2 + u4 ðv3 + v2 λ2 Þ:

Substituting (22)–(25) into Eqs. (16) and (20) and, after some algebraic manipulation, the following equations are
obtained:

2
β2 λ2 + β1 λ2 + β0 = 0 ð26Þ

3 2
δ3 λ2 + δ2 λ2 + δ1 λ2 + δ0 = 0 ð27Þ

5
The same result can be obtained by resorting to the Gaussian elimination of Eq. (13).
J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96 89

where:

ð
β2 = u2 ðv1 + v3 λ1 Þ + u1 ð−v2 + v4 λ1 Þ−λ1 u4 v1 −t1 v2 + u3 v2 −t4 v1 λ1 −t3 v2 λ1 + u4 v3 λ1

+ t1 v4 λ1 −u3 v4 λ1 −t4 v3 λ21 + t3 v4 λ21 Þ


+ t2 ðv1 + v3 λ1 Þ
 
β1 = 1 + λ21 ðu3 v1 + u4 v2 −u1 v3 −u2 v4 −t3 v1 λ1 −t4 v2 λ1 + t1 v3 λ1 + t2 v4 λ1 Þ

ð
β0 = u4 ðv3 −v1 λ1 Þ−u3 ðv4 + v2 λ1 Þ + λ1 −t4 v3 + u2 v3 + t3 v4 + u1 v4 + t4 v1 λ1 −u2 v1 λ1

+ t3 v2 λ1 + u1 v2 λ1 −t2 v3 λ1 −t1 v4 λ1 + t2 v1 λ21 −t1 v2 λ21 Þ


δ3 = u2 v6 + u6 ð−v2 + v4 λ1 Þ−λ1 ðv6 ðt2 + u4 −t4 λ1 Þ + t6 ð−v2 + v4 λ1 ÞÞ

δ2 = u2 v5 + u3 v6 + t5 v2 λ1 + t6 v3 λ1 −t2 v5 λ1 −u4 v5 λ1 −t3 v6 λ1 −t5 v4 λ21 + t4 v5 λ21 + u3 v6 λ21


 
+ t6 v3 λ31 −t3 v6 λ31 + u5 ð−v2 + v4 λ1 Þ−u6 v3 1 + λ21
   

 
ð
δ1 = −u5 v3 1 + λ21 + u3 v5 1 + λ21 + λ1 u6 v4 −t3 v5 −u4 v6 + u6 v2 λ1 −t6 v4 λ1 + t4 v6 λ1

−u2 v6 λ1 −t6 v2 λ21 −t3 v5 λ21 + t2 v6 λ21 + t5 v3 1 + λ21 Þ


δ0 = λ1 ð−u4 v5 + u5 ðv4 + v2 λ1 Þ−λ1 ð−v5 ðt4 −u2 + t2 λ1 Þ + t5 ðv4 + v2 λ1 ÞÞÞ

Next, dialytic elimination method is used to solve Eqs. (26) and (27). For the case at hand, Sylvester's elimination procedure [17]
leads to:
8 49
2 > λ2 >
3> > 8 9
β2 β1 β0 0 0 > >
>
> 3>
>
>
> >
> 0>>
6 0 > 2>
> λ > >0>
> >
6 β2 β1 β0 0 77< = < =
6 0 0 β2 β1 7
β0 7 λ2 =
2 0 ð28Þ
6 > > > >
4 δ3 δ2 δ1 δ0 0 5>> 1>
> >
>
>
>0>
> >
>
> λ2 > : ;
0 δ3 δ2 δ1 δ0 >> >
> >
> 0
: ;
1

After reduction of matrix associated with Eq. (28) to its echelon form, it is obtained that:
2
δ0 β2 −β0 δ2 β2 + β0 β1 δ3
λ2 = − ð29Þ
δ1 β22 −β0 β2 δ3 −β1 β2 δ2 + β21 δ3

which is a common root for Eqs. (26) and (27).


The vanishing of the determinant of the (5 × 5) Sylvester's matrix appearing in Eq. (28) yields a 15th degree univariate
polynomial in λ1 that can be factorized into three polynomials:
   
2 2 4 3 2
1 + λ1 ζ4 λ1 + ζ3 λ1 + ζ2 λ1 + ζ1 λ1 + ζ0
ð30Þ
 
ρ7 λ71 + ρ6 λ61 + ρ5 λ51 + ρ4 λ41 + ρ3 λ31 + ρ2 λ21 + ρ1 λ1 + ρ0 = 0

where the symbolic expressions for coefficients {ζi} 40 and {ρi} 70 are omitted for the sake of brevity. It is important to mention that all
coefficients {ζi} 40 and {ρi} 70 depend on the given values of {θi, ϕi} 61.
The first polynomial appearing in Eq. (30), namely, (1 + λ21)2 = 0, leads to the roots λ1 = + ı, λ1 = + ı, λ1 = − ı and λ1 = − ı.
These roots must be disregarded because they are complex roots. Moreover, the roots for λ1 computed from the second 4th degree
polynomial appearing in Eq. (30), namely, ζ4λ41 + ζ3λ31 + ζ2λ21 + ζ1λ1 + ζ0 = 0, must also be disregarded because they yield the
indeterminate value 0/0 for {λi} 63 in Eqs. (22)–(25) and therefore, Eqs. (16)–(21) are not satisfied. The previous four solutions for
λ1 are usually referred to as extraneous roots because they do not satisfy the original equation set and they were introduced during
the elimination process. Therefore, the only valid solutions for λ1 are given by the remaining 7th degree polynomial appearing in
Eq. (30):

7 6 5 4 3 2
ρ7 λ1 + ρ6 λ1 + ρ5 λ1 + ρ4 λ1 + ρ3 λ1 + ρ2 λ1 + ρ1 λ1 + ρ0 = 0 ð31Þ

which we call first fundamental design equation.


90 J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96

Every real root for λ1, computed from Eq. (31) (complex roots have no physical meaning and therefore they are discarded), can
be substituted back in Eqs. (22)–(25) and (29) to find the remaining design coefficients {λi} 62. Hence, in what follows it will be
assumed that all {λi} 61 design coefficients are already known.

5.3. Computation of the design parameters

After computing {λi} 61 design coefficients, design parameters a2, a3, τ1, τ2, θ0, and ϕ0 must be computed. To this end, the
definition of {λi} 61 design coefficients and {μi} 51 intermediate parameters yields the following system of six equations in the six
unknowns a2, a3, τ1, τ2, θ0, and ϕ0:

λ1 = tanðϕ0 Þ ð32Þ

λ2 = tanðθ0 Þ ð33Þ

0 = a1 Sγ + a2 τ1 Cγ−a3 τ2 Cγ−λ3 ða2 τ1 −a3 τ2 Þ ð34Þ

0 = a1 τ2 Cγ−a2 τ1 τ2 Sγ−a3 Sγ−λ4 ða2 τ1 −a3 τ2 ÞCϕ0 ð35Þ

0 = a1 τ1 Cγ + a2 Sγ + a3 τ1 τ2 Sγ−λ5 ða2 τ1 −a3 τ2 ÞCθ0 ð36Þ

0 = −a1 τ1 τ2 Sγ + a2 τ2 Cγ−a3 τ1 Cγ−λ6 ða2 τ1 −a3 τ2 ÞCθ0 Cϕ0 ð37Þ

where the remaining design parameters a1 and γ are chosen arbitrarily without loss of generality.
From Eqs. (32) and (33) the output and input reference angles are computed as follows:

−1
ϕ0 = tan ðλ1 Þ ð38Þ

−1
θ0 = tan ðλ2 Þ ð39Þ

Solving simultaneously Eqs. (35) and (36) for a2 and a3, we obtain:

   
2 2
a1 λ5 τ2 Cθ0 + τ1 τ2 + 1 Sγ−λ4 τ2 Cϕ0 cot ðγÞ
a2 =       ð40Þ
λ5 τ1 τ22 + 1 Cθ0 + λ4 τ2 τ21 + 1 Cϕ0 + τ22 τ21 −1 Sγ

   
a1 λ4 τ21 Cϕ0 + τ2 τ21 + 1 Sγ−λ5 τ1 Cθ0 cot ðγÞ
a3 = −       ð41Þ
λ5 τ1 τ22 + 1 Cθ0 + λ4 τ2 τ21 + 1 Cϕ0 + τ22 τ21 −1 Sγ

Substituting (40) and (41) into Eqs. (34) and (37) and rearranging yields:

2
η2 τ1 + η1 τ1 + η0 = 0 ð42Þ

3 2
κ3 τ1 + κ2 τ1 + κ1 τ1 + κ0 = 0 ð43Þ

where:
    
η2 = λ4 τ2 Cϕ0 Cγ + Cγ 1 + 3τ22 −λ3 1 + 2τ22 Sγ
 
η1 = λ5 1 + τ22 Cθ0 Cγ
  
η0 = λ4 τ2 Cϕ0 Cγ + τ22 −1 Cγ−λ3 τ22 Sγ
1 2

2
 
κ3 = − 1−τ2 + 1 + τ2 C ð2γÞ ðλ4 Cϕ0 + τ2 SγÞ
2
      
κ2 = λ6 1 + 2τ22 Cϕ0 Sγ + λ5 τ2 Cγ Cγ + λ5 τ2 1 + τ22 Sγ2 Cθ0
   
κ1 = τ2 λ4 τ2 Cϕ0 − 2 + τ22 Sγ Cγ2 + τ2 ðλ4 τ2 Cϕ0 −SγÞSγ2

κ0 = τ22 ðλ6 Cϕ0 Sγ−λ5 τ2 CγÞCγCθ0


J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96
Table 1
Numerical results obtained for three prescribed functions.

Prescribed function ϕ = sin θ θ = (0.1)t cos t, ϕ = (0.1)t sin t θ = 2 − (5/t)sin t, ϕ = 2 + (5/t)cos t

Precision points (θi, ϕi)


1 (−0.3927, −0.3827) (−0.2970, 0.0423) (2.7160, 0.8539)
2 (0.1100, 0.1097) (−0.3179, −0.1814) (3.0832, 1.6739)
3 (0.6126, 0.5750) (−0.1652, −0.3992) (2.8852, 2.4034)
4 (1.1153, 0.8980) (0.1317, −0.4803) (2.3504, 2.7780)
5 (1.6179, 0.9989) (0.4513, −0.3383) (1.7778, 2.7267)
6 (2.1206, 0.8526) (0.6299, 0.0106) (1.4175, 2.3603)

Computed design coefficients


λ1 −0.1136 1.2166 −1.1049 0.0493 −0.7005 −0.2929
λ2 −0.1312 −0.7933 16.6470 −0.1524 −4.7420 −0.2528
λ3 −0.0087 0.3767 0.0946 −7.5137 0.1904 −0.3205
λ4 0.0962 1.3319 0.0135 13.9707 1.1999 −0.4888
λ5 1.9009 1.1293 −12.1162 15.5471 2.1703 −0.1792
λ6 −2.0013 −1.8672 28.6036 −21.3673 −5.4538 −0.8248

Computed design parameters


θ0 −0.1305 −0.6707 1.5108 −0.1512 −1.3630 −0.2476
ϕ0 −0.1131 0.8828 −0.8352 0.0492 −0.6111 −0.2849
a2 −1.96 −2.01 0.16 0.03 −0.90 −2.39 0.83 −0.49 −0.50 −0.32 −1.29 −2.06 0.27 −0.39 −0.62 −1.53 0.95 0.08 −0.29 −0.75 0.89 0.41
a3 −0.96 −0.93 0.90 1.03 −0.85 0.46 0.87 2.34 0.72 0.90 −0.34 0.33 1.22 1.95 −0.64 0.25 0.97 1.94 −1.01 −0.54 0.16 0.64
α1 −0.01 0.01 −0.62 −0.58 −0.19 0.30 −0.75 −0.30 0.44 0.37 −0.17 0.09 −0.68 −0.45 0.01 0.34 −0.53 −0.21 0.14 0.31 −0.27 −0.09
α2 −0.37 −0.36 0.27 0.32 −0.74 −0.29 −0.18 0.31 0.23 0.30 −0.67 −0.42 −0.14 0.12 −0.62 −0.31 −0.10 0.22 −0.22 −0.06 0.18 0.35

91
92 J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96

As before, Sylvester's elimination procedure yields:


8 49
2 > τ1 >
3> > 8 9
η2 η1 η0 0 0 > >
>
> 3>
>
> > 0>
>
> τ1 >
>
>
>
>
>
>
>
6 0
6 η2 η1 η0 0 77< = <0> =
6 0 0 η2 η1 7
η0 7 τ1 =
2 0 ð44Þ
6 > > > >
4 κ3 κ2 κ1 κ0 0 5>> 1>
> >
>
>
>0>
> >
>
> τ1 > : ;
0 κ3 κ2 κ1 κ0 >>
>
>
> 0
: > ;
1

After reducing the matrix appearing in Eq. (44) to its echelon form, it is easy to solve for the unknown τ1:

2
η2 κ0 −η0 η2 κ2 + η0 η1 κ3
τ1 = − ð45Þ
η2 κ1 −η0 η2 κ3 −η1 η2 κ2 + η21 κ3
2

which is a common root for Eqs. (42) and (43).


The vanishing of the determinant of the (5 × 5) Sylvester's matrix shown in Eq. (44) yields a 12th degree univariate polynomial
in τ2, which can be factorized into three 4th degree polynomials:
    
2 2 4 3 2 4 3 2
1 + τ2 ν4 τ2 + ν3 τ2 + ν2 τ2 + ν1 τ2 + ν0 σ4 τ2 + σ3 τ2 + σ2 τ2 + σ1 τ2 + σ0 = 0 ð46Þ

where the value of coefficients {νi} 40 and {σi} 40 are omitted for the sake of brevity.
The first 4th degree polynomial appearing in Eq. (46), namely, (1+ τ22)2, yields the roots τ2 = + ı, τ2 = + ı, τ2 = − ı, and τ2 = − ı.
These roots must be disregarded because they are complex. Moreover, the roots for τ2 computed from the second 4th degree
polynomial appearing in Eq. (46), namely, ν4τ42 + ν3τ32 + ν2τ22 + ν1τ2 + ν0 = 0, must also be disregarded because they are extraneous
roots, i.e., they yield the indeterminate value 0/0 for {a2, a3} in Eqs. (40) and (41) and therefore, Eqs. (34)–(37) are not satisfied.
Therefore, the valid solutions for τ2 are given by the remaining 4th degree polynomial:

4 3 2
σ4 τ2 + σ3 τ2 + σ2 τ2 + σ1 τ2 + σ0 = 0 ð47Þ

which we call second fundamental design equation.


Every real root of τ2 in Eq. (47) (complex roots have no physical meaning and therefore they are discarded) can be substituted
back in Eqs. (45), (40) and (41) to find the remaining parameters τ1, a2, and a3, respectively. Finally, the values of design
parameters α1 and α2 can be easily computed as follows:

−1 −1
α1 = tan ðτ1 Þ; α2 = tan ðτ2 Þ ð48Þ

thus completing the computation of the design parameters.

6. Additional remarks

6.1. On the number of solutions

The proposed approach is based on solving a 7th and 4th degree univariate polynomials, see Eqs. (31) and (47). Therefore, it
can be obtained up to 28 (= 7 × 4) valid design solutions. However, the computation of Eqs. (38), (39) and (48) yields two

φ (rad) φ (rad)

1 1

0 θ (rad) 0 θ (rad)

-1 -1
Prescribed Function Prescribed Function

-2 Precision Points -2 Precision Points

Input-Output Function Input-Output Function

-3 -3
-2 -1 0 1 2 3 -2 -1 0 1 2 3

Fig. 4. Plots associated with the function generation of ϕ = sin θ.


J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96 93

φ (rad) φ (rad)
1.5 1.5
Prescribed Function Prescribed Function

1.0 Precision Points 1.0 Precision Points

Input-Output Function Input-Output Function


0.5 0.5

0.0 θ (rad) 0.0 θ (rad)

-0.5 -0.5

-1.0 -1.0

-1.0 -0.5 0.0 0.5 1.0 -1.0 -0.5 0.0 0.5 1.0

Fig. 5. Plots associated with the function generation of {θ = (0.1)t cos t, ϕ = (0.1)t sin t}.

symmetric solutions for each of the angular design parameters, namely {ϕ0, θ0, α1, α2}. Thus, it may be considered that we can
obtain up to 448 (= 28 × 16 = 28 × 2 × 2 × 2 × 2) valid solutions, where 420 (= 448 − 28) of these are the antipodal counterparts of
the other 28. However, all these 16 sets of solutions are equivalent since they are physically represented by the same mechanism
and will, therefore, be considered in this work as the same design solution.

6.2. About negative values for link lengths

Some design solutions may have negative values for link lengths a2 and/or a3, which physically means that the link must be
assembled in the opposite sense to that shown in Fig. 3. Alternatively, the sign of a2 and/or a3 can be flipped to avoid negative link
lengths if coordinate θ and/or ϕ are offset by π radians, that is:

If a2 b0→θnew = θold + π
ð49Þ
If a3 b0→ϕnew = ϕold + π

Anyway, both alternatives are equivalent since they are physically represented by the same mechanism.

7. Numerical examples

The approach proposed here for the synthesis of a special RPSPR linkage for six precision points has been implemented in
Mathematica® 7.0, running on a PC with P8800 Intel® processor at 2.67 GHz, 4 GB of RAM, and Windows 7® operating system.
Computational time is around 0.28 s.
Besides, the freely accessible software Bertini [18], which is a general-purpose package to solve polynomial systems via homotopy
continuation methods, has been also used by the authors for a double purpose. Firstly, this homotopy continuation software has been
used to double check the results obtained with the proposed elimination procedure. Secondly, it has also been used to improve the
proposed method by the realization that the second design Eq. (47) can be reduced from 8th degree to 4th degree.

φ (rad) φ (rad)
3 3

2 2

1 1

0 θ (rad) 0 θ (rad)
PrescribedFunction PrescribedFunction

-1 PrecisionPoints -1 PrecisionPoints

Input-OutputFunction Input-OutputFunction

-2 -2
-1 0 1 2 3 -1 0 1 2 3

Fig. 6. Plots associated with the function generation of {θ = 2 − (5/t)sin t, ϕ = 2 + (5/t)cos t}.
94 J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96

0.0
X0
-0.15 0
0.0
Y0
-0.5 -0.5
Y0 A
-1.0 B
B
-1.5 C
-1.0
0.8

0.6 O
2

Z0 0.4
Z0 O

1 0.2
A
D
C 0.0
-0.2 D
0 -0.1
X0 0.0

Fig. 7. Schematic representation of the linkages designed for the function generation of ϕ = sin θ.

The computational time required by Bertini package to solve the system of synthesis equations given by (12) is around 70 min
using the PC described above. Therefore, the proposed approach runs about 15000 times faster than this general-purpose
continuation solver, which backs up the claim made in the introduction about the efficiency of a particular formulation.
To illustrate the synthesis process, Table 1 lists the numerical results for three different prescribed functions. All of them are
continuous and smooth and have a uniform spacing of the precision points: the first with respect to the input angle, θ, and the last
two with respect to the parameter t. The value of the linkage parameters a1 and γ used in all the examples is 1 and π/9 radians,
respectively.
The plots shown in Figs. 4–6 provide a pictorial description of the mathematical process of kinematic synthesis proposed in this
work. They illustrate how the special RPSPR linkage accommodates its input–output function (thin continuous line) according to
the precision points (filled circles) in order to satisfy the prescribed functions (thick continuous line), regardless of their intricate
shape. It should be noted that two different sets of design coefficients are obtained for each function, see Table 1. Moreover, one set

0.0 0.0
O

Y0 -0.5
-0.5
Y0

O
-1.0
A
-1.0 D
0.0 A
B

-0.2 C 0.4
Z0
Z0 B
0.2 D
-0.4
C
0.000.05 0.0
0.100.15 -0.020.04
X0 X0

Fig. 8. Schematic representation of the linkages designed for the function generation of {θ = (0.1)t cos t, ϕ = (0.1)t sin t}.
J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96 95

0.0 0.0
O
O A
-0.5
Y0
Y0 -0.5 -1.0
D
-1.5

0.0
-1.0
0.0 A
D
-0.5
C
-0.2 B
Z0
Z0 -1.0
-0.4
C B
-1.5
-0.6
0.00
0.050.10 0.0 0.1
0.2 0.3
0.15 0.20 X0
X0

Fig. 9. Schematic representation of the linkages designed for the function generation of {θ = 2 − (5/t)sin t, ϕ = 2 + (5/t)cos t}.

of design coefficients has two solutions for the design parameters and the remaining five sets of design coefficients have four
solutions for the design parameters.
Summarizing, the numerical results in Table 1 and their pictorial description in Figs. 4–6, show that the proposed methodology
is relatively simple, requires a small number of mathematical computations and leads to acceptable designs of a special RPSPR
linkage. For further details about the nature of the solutions, see Appendix A.
Note that, for example, in the first two solutions reported in Table 1, the values of a2 and a3 turn into positive, i.e., {a2, a3} =
{1.96, 0.96} and {a2, a3} = {2.01, 0.93}, if both coordinates of the precision points for the first prescribed function are offset by π (see
Subsection 6.2):

6
fðθi ; ϕi Þg1 = fð2:7489; 2:7589Þ; ð3:2516; 3:2513Þ; ð3:7542; 3:7166Þ;
ð50Þ
ð4:2569; 4:0396Þ; ð4:7595; 4:1405Þ; ð5:2622; 3:9942Þg

Finally, Figs. 7–9 show the schematic representation of the linkages designed for the function generation of the three
prescribed functions in Table 1. Only one diagram has been depicted for each solution of design coefficients, where it has been used
the first set of design parameters shown in Table 1 and the configuration corresponding to the first precision point, i.e., θ = θ1 + θ0.

8. Conclusions

The approach proposed here not only has intuitive simplicity and theoretical appeal, but can also be a computationally effective
tool for the kinematic synthesis of a special RPSPR spatial linkage function generator for six precision points. The method reported
here leads to two fundamental design equations in the form of 7th and 4th degree univariate polynomials.
To the best of our knowledge, until now no successful numerical examples have been presented for the exact kinematic
synthesis of a RPSPR spatial linkage function generator for six precision points. Three challenging examples have been presented to
illustrate the applicability of the proposed method.

Acknowledgements

The first, third and fourth authors acknowledge the support of the Consejo Nacional de Ciencia y Tecnología (National Council
of Science and Technology, CONACYT), of México, through SNI (National Network of Researchers) fellowships and CONACYT
scholarship. The authors would like to thank the anonymous reviewers for their time and valuable comments that helped us to
improve the quality of this paper.
96 J.J. Cervantes-Sánchez et al. / Mechanism and Machine Theory 46 (2011) 83–96

Appendix A

This appendix presents in Table 2 all the roots associated with the examples presented in Section 7. Numerical values for λ1
were computed from Eq. (31) and numerical values for τ2 were computed from Eq. (47). Since we are not interested in solving
branch, order and circuit defects, we simply select solutions with real values for λ1 and τ2. The solutions that were used in the
examples appear in boldface numbers in Table 2.

Table 2
Numerical values of λ1 and τ2.

Prescribed function

ϕ = sin θ θ = ð0:1Þt cos t θ = 2−ð5 = t Þsin t


ϕ = ð0:1Þt sin t ϕ = 2 + ð5 = t Þcos t

λ1 τ2 λ1 τ2 λ1 τ2

− 1.64 − 0.41 ± 0.02ı − 1. 10 − 0.29 ± 0.03ı − 0. 70 − 0. 71


− 0.04 ± 0.02ı 0. 24 − 0. 32
0. 31 − 0. 10
0. 23
− 0. 11 − 0. 39 − 0. 05 − 0. 79 − 0. 29 − 0. 23
− 0. 37 − 0. 45 − 0. 06
0. 28 − 0. 15 0. 18
0. 33 0. 12 0. 36
0.11 ± 1.19ı — 0.15 − 0.36 ± 0.01ı 0.71 0.01 ± 0.01ı
− 0.01 ± 0.01ı 0.36 ± 0.01ı
0.12 ± 0.83ı — 0.42 ± 0.06ı — 0.98 ± 0.25ı —
1. 22 − 0. 91 0.45 ± 0.34ı — 1.49 0.01 ± 0.02ı
− 0. 30 0.32 ± 0.02ı
− 0. 18
0. 32
5.18 − 0.30 ± 0.19ı
0.10 ± 0.18ı

References

[1] F. Freudenstein, Approximate synthesis of four-bar linkages, Transactions of the American Society of Mechanical Engineers 77 (1955) 853–861.
[2] K.C. Gupta, A general theory for synthesizing crank-type four-bar function generators with transmission angle control, Transactions of the American Society
of Mechanical Engineers, Journal of Applied Mechanics 45 (2) (1978) 415–421.
[3] P.A. Simionescu, D. Beale, Optimum synthesis of the four-bar function generator in its symmetric embodiment: the Ackermann steering linkage, Mechanism
and Machine Theory 37 (12) (2002) 1487–1504.
[4] C.H. Chiang, Synthesis of spherical four-bar function generators by means of three relative poles, Mechanism and Machine Theory 11 (1976) 285–294.
[5] R.I. Alizade, O. Kilit, Analytic synthesis of function generating spherical four-bar mechanism for the five precision points, Mechanism and Machine Theory 40
(7) (2005) 863–878.
[6] J.J. Cervantes-Sánchez, L. Gracia, J.M. Rico-Martínez, H.I. Medellín-Castillo, E.J. González-Galván, A novel and efficient kinematic synthesis approach of the
spherical 4R function generator for five and six precision points, Mechanism and Machine Theory 44 (2009) 2020–2037.
[7] A.V.M. Rao, G.N. Sandor, D. Kohli, A.H. Soni, Closed form synthesis of spatial function generating mechanism for the maximum number of precision points,
Transactions of the American Society of Mechanical Engineers, Journal of Engineering for Industry 95 (1973) 725–736.
[8] T.M. Wu, C.K. Chen, Closed form synthesis of planar and spatial linkages function generation with symbolic representation, Mathematics and Computers in
Simulation 44 (2) (1997) 155–162.
[9] R.S. Hartenberg, J. Denavit, Kinematic synthesis of linkages, McGraw-Hill Book Company, 1964.
[10] R.V. Dukkipati, Spatial mechanisms: analysis and synthesis, CRC Press, 2001.
[11] R. Sancibrian, A. de Juan, P. García, A. Fernández, F. Viadero, Optimal synthesis of function generating spherical and RSSR mechanisms, Proc. 12th IFToMM
World Congress, Besancon, France, June 18–21, 2007.
[12] C. Bagci, Synthesis of RSSR four-link mechanisms for motion generation on skewed and intersecting shafts; part 1: the RSSR skewed four-bar mechanisms,
Proc. ASME Conf., Paper No. 86-DET-148, 1986.
[13] R.V. Dukkipati, A.H. Soni, Displacement analysis of R-P-S-P-R and R-P-S-R-R spatial mechanisms, Proc. Third World Congress for the Theory of Machines and
Mechanisms, Kupari, Yugoslavia, Paper No. D-4, 1971, pp. 49–61.
[14] A. Dasgupta, Mobility analysis of certain geometries of a RPSPR kinematic chain, Mechanism and Machine Theory 37 (2002) 1287–1306.
[15] A. Dasgupta, Mobility analysis of a class of RPSPR kinematic chains, Transactions of the American Society of Mechanical Engineers, Journal of Mechanical
Design 126 (2004) 71–78.
[16] J. Angeles, Spatial kinematic chains: analysis, synthesis, optimization, Springer-Verlag, 1982.
[17] A. Ghosal, Robotics: fundamental concepts and analysis, Oxford University Press, 2006.
[18] D.J. Bates, J.D. Hauenstein, A.J. Sommese, C.W. Wampler, Bertini: software for numerical algebraic geometryAvailable at, http://www.nd.edu/sommese/
bertini.

You might also like