100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102...

17
100 A Geometric Theory for Synthesis and Analysis of Sub-6 DoF Parallel Manipulators Jian Meng, Guanfeng Liu and Zexiang Li Dept of Electrical and Electronic Engineering Hong Kong University of Science and Technology Clearwater Bay, Kowloon, Hong Kong, P.R. China I. Introduction Parallel mechanism design is in general a difficult prob- lem. It consists of interactively solving two tightly coupled problems: (i) mechanism synthesis and (ii) dimensional optimization. Over the last two decades or so, we have witnessed the enormous progresses toward the second prob- lem, namely for a given mechanism the kinematic (forward, inverse and instantaneous)([1],[2],[3]) and singularity ([4], [5], [6], [7]) analysis, the determination and computation of properties such as workspace and stiffness ([8],[9],[10]), and the different approaches for formulating and optimiz- ing the various performance indices ([11],[12],[13]); we have also seen numerous architectures or topological configura- tions being proposed in the literature, but solution to the first problem remains to be ad hoc, it is more of an art than an engineering science. Human experience and intuitions instead of mathematically rigorous and justifiable proce- dures are relied on when a new design problem is called for. The lack of a rigorous and yet precise and complete mathematical approach to the synthesis problem has not only prevented globally optimal solutions in many design cases, but also rendered the mission of automating design solutions, an ultimate objective of design, extremely diffi- cult, if not impossible. Majority of the parallel mechanism architectures be- ing proposed in the literature have six degrees-of-freedom (DoF). Most industrial applications, however, rarely need it, even those for which some of the 6-DoF platforms are designed for. For example, only 3-DoF is needed for any orientation device, 4-DoF is sufficient for most pick-and- place applications, and 5-DoF is adequate for every con- ceivable machine tool application. Having a mechanism with more DoF than necessary is not only wasteful in terms of the hardware resources but also increases the program- ming and maintenance cost. The Delta manipulator ([14], [15]) is perhaps the most famous and successful example of a sub-6 DoF parallel mechanism design. Other examples include the H4 robot by Pierrot [16], [17], the orientation device by Gosselin [18], [19], the haptic devices by T. Sal- cudean [13], the Tsai’s manipulators [1]. More examples are found in Gao [20], Huang [21], and Merlet [22]. Synthesis design of sub-6 DoF parallel mechanisms is in This research is supported in part by Hong Kong RGC grants No. HKUST 6301/03E, HKUST6187/01E and HKUST 6276/04E, and in part by NSFC grant No.50029501. We would like to thank Profs. JH Lu, M. Yan and W.P. Li for some useful discussions. general more difficult than that of their 6-DoF counterpart, for the reasons being that, first of all and most importantly, the set of desired end-effector motions, except for a few special cases, does not admit a so-called canonical or (Lie) subgroup description, a description which is global and free of local coordinates; secondly, the subchains that make up a sub-6 DoF mechanism can have in general much richer and more diversified structures than that of their counterpart; and lastly but not the least, much fewer design cases are available in an area where experiences count the most. A rigorous mathematical approach with a strong geo- metric flavor thus appears to be the only alternative for addressing the immense difficulties encountered in synthe- sis design of parallel mechanisms, especially sub 6-DoF par- allel mechanisms, and for achieving the ultimate design ob- jectives. Herve ([23], [24]) is perhaps the first to initiate such a program. Using group theory, he studied synthesis of several subgroups of the Euclidean group SE(3) with 1- dimensional lower pairs. He also considered generations of the product of the planar subgroup and the rotational sub- group and explained how some of the subchains employed by existing parallel manipulator designs such as the Delta arise. Related effort can also be found in the works J. An- geles [25], and Z. Huang and Herve [26]. Inspired by Herve’s work, the aim of this paper is to de- velop a rigorous and yet precise and complete geometric theory for the synthesis and analysis of sub-6 DoF paral- lel manipulators. The single most important and yet nat- ural mathematical tool we will rely on is the powerful Lie group theory, one that has already found widespread use in kinematic analysis of serial manipulators as well as other branches of robotics and control ([27], [28]). Starting with a review of the basic properties of the Euclidean group SE(3), especially its Lie algebra and the exponential map that connects the Lie algebra with the Lie group, we recall a classic result that classifies, up to a conjugacy class, all subgroups of SE(3). With the low dimensional subgroups providing models for lower pairs or so called primitive gen- erators, the high dimensional subgroups are used as models for some desired set of end-effector motions. We show that, aside from these few special canonical cases, the set of de- sired end-effector motions can also be modelled as regular submanifolds of SE(3), and give two important classes of regular submanifolds that can be expressed globally, and independent of local coordinates. One class is given by

Transcript of 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102...

Page 1: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

100

A Geometric Theory for Synthesis and Analysis ofSub-6 DoF Parallel Manipulators

Jian Meng, Guanfeng Liu and Zexiang LiDept of Electrical and Electronic Engineering

Hong Kong University of Science and TechnologyClearwater Bay, Kowloon, Hong Kong, P.R. China

I. Introduction

Parallel mechanism design is in general a difficult prob-lem. It consists of interactively solving two tightly coupledproblems: (i) mechanism synthesis and (ii) dimensionaloptimization. Over the last two decades or so, we havewitnessed the enormous progresses toward the second prob-lem, namely for a given mechanism the kinematic (forward,inverse and instantaneous)([1],[2],[3]) and singularity ([4],[5], [6], [7]) analysis, the determination and computationof properties such as workspace and stiffness ([8],[9],[10]),and the different approaches for formulating and optimiz-ing the various performance indices ([11],[12],[13]); we havealso seen numerous architectures or topological configura-tions being proposed in the literature, but solution to thefirst problem remains to be ad hoc, it is more of an art thanan engineering science. Human experience and intuitionsinstead of mathematically rigorous and justifiable proce-dures are relied on when a new design problem is calledfor. The lack of a rigorous and yet precise and completemathematical approach to the synthesis problem has notonly prevented globally optimal solutions in many designcases, but also rendered the mission of automating designsolutions, an ultimate objective of design, extremely diffi-cult, if not impossible.

Majority of the parallel mechanism architectures be-ing proposed in the literature have six degrees-of-freedom(DoF). Most industrial applications, however, rarely needit, even those for which some of the 6-DoF platforms aredesigned for. For example, only 3-DoF is needed for anyorientation device, 4-DoF is sufficient for most pick-and-place applications, and 5-DoF is adequate for every con-ceivable machine tool application. Having a mechanismwith more DoF than necessary is not only wasteful in termsof the hardware resources but also increases the program-ming and maintenance cost. The Delta manipulator ([14],[15]) is perhaps the most famous and successful example ofa sub-6 DoF parallel mechanism design. Other examplesinclude the H4 robot by Pierrot [16], [17], the orientationdevice by Gosselin [18], [19], the haptic devices by T. Sal-cudean [13], the Tsai’s manipulators [1]. More examplesare found in Gao [20], Huang [21], and Merlet [22].

Synthesis design of sub-6 DoF parallel mechanisms is in

This research is supported in part by Hong Kong RGC grants No.HKUST 6301/03E, HKUST6187/01E and HKUST 6276/04E, and inpart by NSFC grant No.50029501. We would like to thank Profs. JHLu, M. Yan and W.P. Li for some useful discussions.

general more difficult than that of their 6-DoF counterpart,for the reasons being that, first of all and most importantly,the set of desired end-effector motions, except for a fewspecial cases, does not admit a so-called canonical or (Lie)subgroup description, a description which is global and freeof local coordinates; secondly, the subchains that make up asub-6 DoF mechanism can have in general much richer andmore diversified structures than that of their counterpart;and lastly but not the least, much fewer design cases areavailable in an area where experiences count the most.

A rigorous mathematical approach with a strong geo-metric flavor thus appears to be the only alternative foraddressing the immense difficulties encountered in synthe-sis design of parallel mechanisms, especially sub 6-DoF par-allel mechanisms, and for achieving the ultimate design ob-jectives.

Herve ([23], [24]) is perhaps the first to initiate sucha program. Using group theory, he studied synthesis ofseveral subgroups of the Euclidean group SE(3) with 1-dimensional lower pairs. He also considered generations ofthe product of the planar subgroup and the rotational sub-group and explained how some of the subchains employedby existing parallel manipulator designs such as the Deltaarise. Related effort can also be found in the works J. An-geles [25], and Z. Huang and Herve [26].

Inspired by Herve’s work, the aim of this paper is to de-velop a rigorous and yet precise and complete geometrictheory for the synthesis and analysis of sub-6 DoF paral-lel manipulators. The single most important and yet nat-ural mathematical tool we will rely on is the powerful Liegroup theory, one that has already found widespread use inkinematic analysis of serial manipulators as well as otherbranches of robotics and control ([27], [28]). Starting witha review of the basic properties of the Euclidean groupSE(3), especially its Lie algebra and the exponential mapthat connects the Lie algebra with the Lie group, we recalla classic result that classifies, up to a conjugacy class, allsubgroups of SE(3). With the low dimensional subgroupsproviding models for lower pairs or so called primitive gen-erators, the high dimensional subgroups are used as modelsfor some desired set of end-effector motions. We show that,aside from these few special canonical cases, the set of de-sired end-effector motions can also be modelled as regularsubmanifolds of SE(3), and give two important classes ofregular submanifolds that can be expressed globally, andindependent of local coordinates. One class is given by

Page 2: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

101

the product of two Lie subgroups and another the productof a submanifold of the translational subgroup T (3) withthat of the rotational subgroup SO(3). Starting from agiven list of primitive generators, we give a rigorous de-finition of the synthesis problem for a serial manipulatorsubchain, and develop a general procedure for solving thesynthesis problem when the set of desired end-effector mo-tions is a Lie subgroup or a regular submanifold. In doingso, several important new concepts are introduced, whichsubstantially broaden our understanding of the synthesisproblem. Finally, for the parallel manipulator synthesisproblem, we introduce a general proposition that dictateshow the subchains should be chosen so as to generate thedesired set of end-effector motions for the resulting manip-ulator. We again present a general procedure for solvingthe parallel manipulator synthesis problem for the case ofa Lie subgroup and a regular submanifold.

The paper is organized as follows: In Section II, we de-velop the mathematical preliminaries needed for the paper;In Section III, we study the synthesis problem for serialmanipulator subchains; and in Section IV, we study theparallel manipulator synthesis problem. Finally, in SectionV we conclude the paper with a few comments for futureworks.

II. Mathematical Tool Boxes

A. The Special Euclidean Group SE(3)

We assume the reader is familiar with the basic notionsof differentiable manifolds and Lie groups (See e.g., [29]and [30]). Examples of the former include R

n and Sn, theunit sphere in R

n+1, and of the latter include Rn, SO(n),

the Special Orthogonal group of Rn, and GL(n, R), the set

of n × n nonsingular matrices.Our primary interest lies in the Special Euclidean group

SE(3) ={[

R p0 1

]| p ∈ R

3, R ∈ SO(3)}

It is well known that by attaching a Cartesian coordinateframe to a rigid body, a configuration of the body relativeto a reference configuration can be identified with an ele-ment g of SE(3), and a trajectory of the body can be iden-tified with a curve g(t), t ∈ (−ε, ε) of SE(3). Thus, rigidbody motions can be studied by investigating the geometricproperties of SE(3).

Apparently, SE(3) is a closed linear subgroup ofGL(4, R) as it is defined by polynomial equations. Thus,by Theorem 0.15 [30], SE(3) with its relative topology be-comes a Lie group. The manifold structure of SE(3) isdiffeomorphic to that of R

3 × SO(3), i.e,

Ψ : R3 × SO(3) → SE(3) : (p, R) �→

[R p0 1

]

However, SE(3) with its group operation given by (p1, R1)·(p2, R2) = (R1p2 + p1, R1R2) is not a product in a grouptheoretic sense.

Associated with a Lie group G is its Lie algebra G, de-fined as the tangent space to G at the identity e, i.e,

G � TeG. The Lie algebra of SE(3), denoted se(3), hasthe form

se(3) ={[

ω v0 0

]| ω, v ∈ R

3

}

where for ω ∈ R3

ω =

0 −ω3 ω2

ω3 0 −ω1

−ω2 ω1 0

∈ so(3)

and so(3) is the Lie algebra of the rotation group SO(3).Clearly, se(3) can be identified with R

6 via the map

∧ : R6 → se(3) : ξ = (vT , ωT )T �→ ξ =

[ω v0 0

]∈ se(3)

An element ξ of se(3) is called a twist, with twist coordi-

nates ξ =(

)∈ R

6. The pitch ρ of ξ is defined as

ρ = {ωT v||ω||2 , if ω �= 0∞, if ω = 0

The exponential map

exp : se(3) → SE(3) : ξ �→ eξ (1)

defines a local diffeomorphism taking the zero vector to theidentity element of SE(3). See [27] for an explict formula of(1). Physically, eξ corresponds to a screw motion along theaxis of ξ([27]). Given a basis (v1, · · · , v6) of se(3), there aretwo ways to coordinatize SE(3) around the identity. Let

g = eζ1v1+···+ζ6v6

then ζ = (ζ1, · · · , ζ6) is called the canonical coordinates ofthe first kind. On the other hand, let

g = eη1v1 · · · eη6v6

then η = (η1, · · · , η6) is the canonical coordinates of thesecond kind. Conversion from ζ to η coordinates can bedone via the Baker-Campbell-Hausdorff formula

eξ1eξ2 = eξ1+ξ2+ 12 [ξ1,ξ2]+···

where for ξ1 = (v1, ω1), ξ2 = (v2, ω2), the Lie bracket op-erator

se(3) × se(3) → se(3)(ξ1, ξ2) �→ [ξ1, ξ2] = ξ1ξ2 − ξ2ξ1

= (ω1 × v2 − ω2 × v1, ω1 × ω2)∧

satisfies skew-symmetry and the Jacobi identity.Denote by Lg and Rg, the left and the right translation

map, respectively, and Ig = Lg◦Rg−1 the conjugation map.Let g(t) ∈ SE(3), t ∈ (−ε, ε), be a trajectory of the rigidbody, then

V b = Lg(t)−1∗ · g(t) =[

RT R RT p0 0

]

=[

ω v0 0

]

Page 3: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

102

and V s = Rg−1∗ · g give, respectively, the body and thespatial velocities of the rigid body. These two velocitiesare related by

V s = AdgVb

where for g = (p, R), the Adjoint map

Adg =[

R pR0 R

]

satisfies (Adg)−1 = Adg−1 , Adg1·g2 = Adg1 · Adg2 andAde = I6×6, i.e, Ad : SE(3) → GL(6, R) is a group ho-momorphism.

Motion representation with respective to a coordinateframe displaced by g0 is obtained from the original descrip-tion via the conjugacy map

Ig0 : SE(3) → SE(3) : h �→ g0hg−10 (2)

Differentiating (2) with respective to h yields rela-tions between velocities represented in different coordinateframes

V2 = Adg0 · V1

Note that the pitch of a twist is invariant under change ofcoordinate frames, i.e, ρ(ξ) = ρ(Adgξ). One can also verifythat

Ig0(eξ) = e(Adg0ξ)∧

which means that screw motion about a changed axis Adg0ξis the same as a screw motion viewed from a coordinateframe displaced by g0.

B. Lie Subgroups of SE(3)

Constraint motions between two rigid bodies are oftenmodelled by the level set Q � C−1(0) of a certain function:

C : SE(3) → Rm

The most general structure one can expect Q to have isthat of a regular submanifold of SE(3). However, when Qis also closed under the group operation, it is said to bea Lie subgroup of SE(3). Examples of 1-dimensional Liesubgroups are that generated by the exponential map :

H = {eξθ | θ ∈ R}

with ξ ∈ se(3). Other examples of higher dimensional Liesubgroups are the spatial translational subgroup

T (3) = Ψ(R3 × {0}) ={[

I p0 1

]| p ∈ R

3

}

and the rotational subgroup, also denoted as

SO(3) ={[

R 00 1

]| R ∈ SO(3)

}

Let G be a Lie group. A subgroup H of G is a normalsubgroup if gHg−1 = H for all g ∈ G. The Lie algebrah of H is an ideal of G, i.e, [h,G] ⊂ h. Apparently, T (3)is a normal subgroup of SE(3). Each subgroup H of Gdefines an equivalence relation on G. Two elements g1 andg2 of G are said to be equivalent, g1 ∼ g2, if g1 = hg2 forsome h ∈ H . The equivalent classes are called cosets, andthe space of cosets for such a relation is called the quotientspace of G by H, denoted G/H . G/H has the structureof a differentiable manifold, and is often referred to as ahomogeneous space. When H is a normal subgroup, G/Hbecomes a Lie group. For example, with G = SE(3) andH = T (3), G/H can be identified with SO(3).

Let H be a subgroup of SE(3), then, the conjugate sub-group of H , denoted

Ig(H) = {ghg−1 | h ∈ H}

is also a subgroup. Two subgroups H1 and H2 are saidto be equivalent if ∃g ∈ SE(3) such that H1 = Ig(H2).Clearly, if H1 and H2 are equivalent, then their Lie subal-gebras are related by h1 = Adg(h2).

Example 1: Let H = {eξθ | θ ∈ [0, 2π]} be a one-parameter subgroup of screw motions with a fixed ξ ∈se(3). Then,

Ig(eξθ) = e(Adg0ξ)∧θ

corresponds to screw motions about a displaced twist axis(Adg0ξ)∧ ∈ se(3). Since the pitch of a twist is Adg-invariant, we see that screw motions of the same pitch areequivalent. Let

T (z) ={[

I αz0 1

], α ∈ R

}

then

Ig0(T (z)) ={[

I αR0z0 1

], α ∈ R

}� T (v), v = R0z

represents translations along direction v. For

R(0, z) ={[

ezθ 00 1

], θ ∈ [0, 2π]

},

Ig0 (R(0, z)) ={[

eωθ (I − eωθ)p0

0 1

], θ ∈ [0, 2π]

}

� R(p0, ω), ω = R0z

represents rotations about an axis with direction ω = R0z,and a point p0 on the axis.

As we will see, Lie subgroups of SE(3) play an impor-tant role in kinematic studies of both serial and parallelmanipulators. An interesting problem is to classify, up to aconjugacy class, all Lie subgroups of SE(3). J.M. Selig [28]gave a classification directly at the group level, and Herve([23], [24]) enumerated all subgroups of SE(3). Using the

Page 4: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

103

Fig. 1. A classification of Lie subalgebras and subgroups of SE(3)

Subgroup Nominal Configuration Conjugation Subgroup

SO(2) R(0, z) =½∙

ezθ 00 1

¸, θ ∈ [0, 2π]

¾ R(p, ω) = Ig(R(0, z)) =½∙eωθ (I − eωθ)p0 1

¸, θ ∈ [0, 2π]

¾, ω = Rz

T (1) T (z) =½∙

I αz0 1

¸, α ∈ R

¾T (v) = Ig(T (z)) =

½∙I αv0 1

¸, α ∈ R

¾, v = Rz

SOρ(2)Hρ(0, z) =½∙

eωθ ρωθ0 1

¸, θ ∈ [0, 2π]

¾ Hρ(p, ω) = Ig(Hρ(0, z)) =½∙eωθ (I − eωθ)p + ρωθ0 1

¸, θ ∈ [0, 2π]

¾, ω = Rz

SO(2)⊗T (1)C(0, z) =½∙

ezθ αz0 1

¸, θ ∈ [0, 2π], α ∈ R

¾ C(p, ω) = Ig(C(0, z)) =½∙eωθ (I − eωθ)p + αω0 1

¸, θ ∈ [0, 2π], α ∈ R

¾, ω = Rz

T (2)T2(zn) =½∙

I α1x + α2y0 1

¸, α1, α2 ∈ R

¾ T2(ωn) = Ig(T2(zn)) =½∙I α1v1 + α2v2

0 1

¸, α1, α2 ∈ R

¾,

ω = Rzv1,v2 ⊥ ω

T (3) T (3) =½∙

I q0 1

¸, q ∈ R3

¾T (3) = Ig(T (3)) =

½∙I q0 1

¸, q ∈ R3

¾

SE(2)PL(zn) =½∙

ezθ α1x + α2y0 1

¸,

θ ∈ [0, 2π],α1, α2 ∈ R

¾ PL(ωn) = Ig(PL(zn)) =½∙eωθ α1v1 + α2v2

0 1

¸,

θ ∈ [0, 2π],α1, α2 ∈ R

¾,

ω = Rzv1,v2 ⊥ ω

SO(3) S(0) =½∙

R′ 00 1

¸, R′ ∈ SO(3)

¾S(p) = Ig(S(0)) =

½∙R′ (I − R′)p0 1

¸, R′ ∈ SO(3)

¾

SE(2)⊗T (1)X(z) =½∙

ezθ q0 1

¸, θ ∈ [0, 2π], q ∈ R3

¾ X(ω) = Ig(X(z)) =½∙eωθ q0 1

¸, θ ∈ [0, 2π], q ∈ R3

¾, ω = Rz

TABLE I

Subgroups of SE(3) in a nominal and a general configuration

Page 5: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

104

relation between Lie algebras and Lie groups through theexponential map, we follow [31] to provide here a completeclassification of all Lie subgroups of SE(3).

Let {ei}6i=1 be the canonical basis of R

6, with ei ∈ R6

having an 1 in the ith entry and 0 otherwise. Thus, {ei}6i=1

provides a basis of se(3). Note that ei, i = 1, · · · , 3 repre-sents instantaneous translations about the three principalaxes of the reference frame, and ej, j = 4, · · · , 6 instanta-neous rotations about these axes. Recall that the subalge-bra t(3) = {e1, e2, e3}, i.e., the span of (e1, e2, e3), formsan ideal of se(3). This implies that the quotient se(3)/t(3)is also a Lie algebra. To see this, let ξ, η ∈ se(3)/t(3), anddefine the Lie bracket operation [ξ, η] using that of se(3).If ξ1 = ξ + t1, η1 = η + s1, with t1, s1 ∈ t(3), then

[ξ1, η1] = [ξ + t1, η + s1] = [ξ, η] + t(3).

Thus, the Lie bracket operation on se(3)/t(3) is well de-fined. It is not difficult to see that se(3)/t(3) can be identi-fied with so(3) = {e4, e5, e6}. Consider now the projectionmap

π : se(3) → se(3)/t(3) ∼= so(3). (3)

It is a Lie algebra homomorphism. Thus, the preimagesunder π of all subalgebras of so(3) reveal, up to a conju-gacy class, all subalgebras of se(3), and the exponentials ofwhich provide a complete classification, up to a conjugacyclass, of all connected Lie subgroups of SE(3).

The subalgebras of so(3) are easy to find and are givenby 0 = {0}, so(2) = {e6}, and so(3) = {e4, e5, e6}.π−1(0) consists of {0}, t(1) = {e3}, t(2) = {e1, e2}, andt(3) = {e1, e2, e3}. On the other hand, π−1(so(2)) consistsof, up to a conjugacy class, the following elements:

so(2) = {e6} , so(2) = {e6 + ρe3 | ρ �= 0}so(2) ⊗ t(1) = {e6, e3} , se(2) = {e1, e2, e6}

se(2) ⊗ t(1) = {e6, e1, e2, e3}.

The preimage of so(3) consists of simply so(3) itself andthe whole se(3). Fig. 1 summarizes the various Lie sub-groups of SE(3) obtained by taking the exponentials ofthe above subalgebras. Note that the three 1-dimensionalLie subgroups, namely, SO(2), T (1) and SOρ(2) that rep-resent, screw motions of zero, infinity, and non-zero finitepitches, provide a model for the relative displacements oftwo rigid bodies connected by a revolute, prismatic andhelical joint of pitch ρ, respectively. These joints are col-lectively referred to as lower pairs by Reuleaux. Otherhigher dimensional lower pairs include the cylindrical sub-group SO(2) ⊗ T (1), the planar subgroup SE(2) and therotation subgroup SO(3)(for spherical joints). For prac-tical reasons, we define the set of primitive generators toinclude all these lower pairs except the planar Euclideansubgroup.

Subgroups of dimensions equal or higher than 3 providemodels for the configuration spaces of some common ma-nipulators, e.g, T (3), SO(3), and SE(2)⊗T (1). The latter,which consists of three translations and rotation about a

fixed axis, is also referred to as the Schoenflies group, de-noted X(ω) with ω being the axis of rotation. The popularSCARA robot and the H4 parallel manipulator both haveX(ω) as their configuration spaces.

The descriptions of these subgroups in their nominal con-figurations, the corresponding conjugation subgroups andsome of their associated names to be used in the sequal areshown in Table I.

Another problem to consider is the following : Given twoLie subgroups G1 and G2, determine if they are actuallyequal. This is in general difficult to do at the group level.The problem can be significantly simplified by checking, for

Gi � TeGi = Lg−1∗TgGi, ∀g ∈ Gi, i = 1, 2,

if

G1 = G2

as two subspaces of se(3), and both sets contain the identityelement.

Example 2: As an illustration, we show that the inter-section of the planar subgroup PL(ωn) 1 about a plane withnormal ω, and the set of rotations S(N) about a point Nis equal to the rotational subgroup about the axis ω andN being a point on the axis :

PL(ωn) ∩ S(N) = R(N, ω) (4)

A general representation of PL(ωn) and S(N), as seen fromTable I, is given by

PL(ωn) ={[

eωθ α1v1 + α2v2

0 1

], θ ∈ [0, 2π], α1, α2 ∈ R

}

where v1, v2 ⊥ ω, and

S(N) ={[

R (I − R)N0 1

], R ∈ SO(3)

}

Their Lie algebras are given by

pl(ωn) = {ξ1, ξ2, ξ3}

with ξ1 = (vT1 ,0)T , ξ2 = (vT

2 ,0)T and ξ3 = (0, ωT )T , and

s(N) = {η1, η2, η3}

with η1 = ((N × (1, 0, 0)T )T , (1, 0, 0)T )T , η2 =((N × (0, 1, 0)T )T , (0, 1, 0)T )T , and η3 = ((N ×(0, 0, 1)T )T , (0, 0, 1)T )T . Since the Lie algebra of PL(ωn)∩S(N) is pl(ωn)∩ s(N), and from the equations above, it isobvious that pl(ωn)∩s(N) = {((N×ω)T , ωT )T } = r(N, ω),where r(N, ω) denotes the Lie algebra of R(N, ω). There-fore, PL(ωn) ∩ S(N) = R(N, ω).

C. Submanifolds of SE(3)

In general, for the constraint space Q � C−1(0) to be aLie subgroup is a rather strong requirement. Recall fromFig.1 that there is only one Lie subgroup of dimension 4,and no Lie subgroup of dimension 5 at all. In order to

Page 6: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

105

Fig. 2. Motion of the Parallelogram

Fig. 3. U∗-joint

broaden our scope, we need to look at submanifolds, espe-cially regular submanifolds of SE(3).

The first example of a submanifold that comes into mindis the configuration space of a plane-hinged parallelogramthat is widely utilized in the Delta manipulator design(SeeFig.2). Let ω be the unit vector normal to the parallelo-gram, and v the vector of link 2 or 4 at the home position,then the set of displacements generated by the parallelo-gram has the form

Pa(ω,v) ={[

I (eωθ − I)v0 1

]| θ ∈ (−π

2,π

2)}

It’s interesting to note that Pa(ω,v) is actually isomorphicto an open subset of S1 in R

3, and thus a 1-dimensionalsubmanifold of SE(3). A parallelogram produces linearmotion along an open subset of the unit circle S1.

A U -joint consists of two consecutive R joints with or-thogonally intersecting axes. The configuration space of aU -joint with its axes initially aligned with the x and y axesis given by

U(0, x, y) = R(0, x) · R(0, y)

={[

exαeyβ 00 1

], α, β ∈ [0, 2π]

}

which is a 2-dimensional submanifold of SO(3) and thusSE(3).

1The superscript n indicates that ω is a normal vector.

A generalization of the plane-hinged parallelogram to 2-dimension is the so-called U∗-joint introduced by [25] and[20]. The U∗-joint consists of three identical subchainssymmetrically arranged in parallel as shown in Fig.3. Eachsubchain in turn consists of two U -joints, where the secondand the third R joints and the first and the fourth R jointsare, respectively, parallel to each other. The configurationspace of the U∗-joint has the form

U∗(ω1, ω2,v) = {[

I (eω1αeω2β − I)v0 1

],

α ∈ (0, 2π), β ∈ (−π/2, π/2)}where ω1, ω2 are the direction vectors of the first two axes ofthe subchain, and v is the direction vector of the link thatconnects the two U -joints of the subchain, all at the homeposition. For simplicity, we assume that ω1 ⊥ ω2 ⊥ v.Note that U∗(ω1, , ω2,v) is isomorphic to an open subset ofS2 in R

3, and thus a 2-dimensional submanifold of SE(3).The U∗-joint generates 2 degree-of-freedom (DoF) linearmotions along the unit sphere S2.

For practical reasons, we will include in the list of primi-tive generators the plane-hinged parallelogram and the U∗-joint.

Unlike Lie subgroups, there are in general no canonicalexpressions for submanifolds of SE(3). However, there aretwo special families of regular submanifolds that are of par-ticular importance in our study. These are summarized inthe following Propositions.

Proposition 1: Let H1 and H2 be two closed Lie sub-groups of SE(3), of dimension n1 and n2, respectively. LetH = H1∩H2, and n = dim(H). Then, the product H1 ·H2

is a regular submanifold of SE(3) of dimension n1+n2−n.Proof: See appendix A.

As a regular submanifold, H1 ·H2 possesses preferred co-ordinate systems. For this, let (η1, · · · , ηn) be a basis of h,and complete the basis so that (η1, · · · , ηn, ηn+1, · · · , ηn1)forms a basis of h1, and (η1, · · · , ηn, ηn1+1, · · · , ηn1+n2−n)a basis of h2. Then

(θ1, · · · , θn1+n2−n) �→ eη1θ1 · · · eηn1+n2−nθn1+n2−n ∈ H1 · H2

defines the required coordinate system.If H1 and H2 commute, then H1 ·H2 is a Lie subgroup of

SE(3). For example, the cylindrical subgroup SO(2)⊗T (1)is the product of two commuting Lie subgroups

{[ezα 00 1

] [I zβ0 1

]| α ∈ [0, 2π), β ∈ R

}

and the Schoenflies subgroup is also the product of twocommuting subgroups

X(z) ={[

ezα1 α2x + α3y0 1

] [I α4z0 1

]| α1 ∈ [0, 2π),

α2, α3, α4 ∈ R

}

Using Proposition 1, we see that the configuration spaceof the U -joint is the product of two 1-dimensional Lie sub-groups and thus a 2-dimensional submanifold of SO(3) and

Page 7: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

106

DoF Submanifolds Conjugation Description Applications5 C3

5 = T (2) · SO(3) =T 2(zn) · SO(3)

C15 (ωn, N) = T 2(ωn) ·

S(N)2-DoF translations parallel tothe XY plane, and 3-DoF ro-tations

5 C25 = T (3) · U(0, x, y) C2

5 (ω1, ω2) = T (3) ·U(q, ω1, ω2), ω1 ⊥ ω2

3-DoF translations and 2-DoF rotations about x and yaxis

5-axis machine cen-ter

4 C24 = T (2) · U(0, z, x) C2

4 (q, ωn1 , ω1, ω2) =

T 2(ωn1 ) ·U(q, ω1, ω2), ω1 ⊥

ω2

2-DoF translations parallel tothe XY plane, and 2-DoF ro-tations about z and x-axis

Haptic devices

4 C34 = T (1) · SO(3) =

T (z) · SO(3)C3

4 (ω, N) = T (ω) · S(N) 1-DoF translations along zaxis, and 3-DoF rotations

Flight simulator

3 C23 = T (1) · U(0, z, x) C2

3 (q, ω1, ω2) = T (ω1) ·U(q, ω1, ω2), ω1 ⊥ ω2

1-DoF translations along zaxis and 2-DoF rotationsabout z and x-axis

3 C13 = T (2) · R(0, x) =

T 2(zn) · R(0, x)C4

3 (q, ωn1 , ω2) = T 2(ωn

1 ) ·R(q, ω2), ω1 ⊥ ω2

2-DoF translations parallel tothe XY plane and 1-DoF ro-tations about x- axis

Hana manipulator

TABLE II

Submanifolds of SE(3)

hence SE(3). On the other hand, the product PL(ωn) ·S(N), as seen from (4), is a regular submanifold of dimen-sion 5.

In general, the product of a regular submanifold withanother or a Lie subgroup or the product of three or moresubgroups may not always be a regular submanifold be-cause of possible singularities.

Proposition 2: Let M1 and M2 be, respectively, a reg-ular submanifold of T (3) and SO(3), of dimension n1 andn2. Then, M1 · M2 is a regular submanifold of SE(3), ofdimension n1 + n2.Proof: Since SE(3) is diffeomorphic to T (3) × SO(3),an element m1 · m2 of M1 · M2 corresponds directly to(m1, m2) ∈ T (3)×SO(3). Thus, M1 ·M2 corresponds withM1 × M2, a (n1 + n2)-dimensional regular submanifold ofT (3) × SO(3). Hence, M1 · M2 is a (n1 + n2)-dimensionalregular submanifold of SE(3) by the equivalent manifoldstructure of SE(3) and T (3)× SO(3).

Since the conjugation of a product is equal to the productof conjugations, i.e,

gM1 · M2g−1 = (gM1g

−1) · (gM2g−1),

it is possible, based on the above proposition, to derivemany interesting submanifolds with dimensions rangingfrom 3 to 5. Table II shows the ”canonical forms” of sucha list. The submanifold C2

52 that consists of 3 translations

and 2 rotations about two perpendicular axes, provides amodel for the configuration space of a 5-axes machine tool([32]). C3

4 , that consists of one translation along the z-axisand three rotations provides a model of a flight simula-tor([33]).

2The subscript denotes the total number of DoF and the superscriptthe rotational DoF.

Fig. 4. Equivalent Generators of SE(2)(PL(zn))

Finally, to conclude this section, we remark that the quo-tient space G/H for G a Lie subgroup of SE(3) and H asubgroup of G is a differentiable manifold (of dimension(dim(G) − dim(H))), but not necessarily a submanifoldof SE(3). In certain cases, G/H can be identified with asubmanifold of the latter, e.g., SO(3)/R(0, z) ∼ U(0, x, y).

III. Kinematic Synthesis of Serial Subchains

Using the mathematical tools developed in the previoussection, we present in this section a formal theory for kine-matic synthesis of serial manipulator subchains. This inturn will be applied in the following section to the synthe-sis of parallel manipulators.

We will be mainly concerned with manipulators (parallelor serial) having less than six degrees-of-freedom ( or sub-6 DoF). For this reason, we restrict our attention to thesynthesis of sub-6 DoF serial manipulator subchains.

The synthesis problem starts with a specification of thedesired set Q of end-effector motions for the manipulators.We assume that Q is either a Lie subgroup as specified inTable I, or a regular submanifold of SE(3), as specifiedin Table II, and n = dim(Q). With a pre-specified list ofprimitive generators or allowable joints (e.g., those given inTable III), the problem amounts to finding all possible (ser-ial) arrangements of the primitive generators so that the re-

Page 8: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

107

DoF Description/Notation Remark1 T (v) (T ) Prismatic joint

R(p, ω) (R) Revolute jointHρ(p, ω) (H) Helical jointPa(ω,v) (Pa) Parallelogram

2 C(p, ω) (C) Cylindrical jointU∗(ω1, ω2,v) (U∗) U∗-joint

3 S(N) (S) Spherical joint

TABLE III

Primitive generators

sulting manipulators have the desired end-effector motions.To illustrate this, we consider synthesis of a SE(2) manipu-lator using two primitive generators T (v) and R(p, ω). Welet

M = G1 · G2 · G3 (5)

be a manipulator obtained by cascading in series threeprimitive generators Gi, i = 1, · · · , 3, since dim(SE(2)) =3. Associated with (5) is its forward kinematic map

F : Θ → SE(3) : θ �→ F (θ) (6)

Without loss of generality, we assume that F (0) = e. Theproduct in (6) may or may not be a submanifold. Thisis, however, not important. What is important is if Mcontains an open neighborhood of e in SE(2). In this case,we say that M is a mechanical generator of SE(2).

By an abuse of notation, we also denote by Gi the twistrepresentation of the primitive generator Gi, which cor-responds to a basis of its Lie algebra when Gi is a Liesubgroup, or to ((ω × v)T , 0) when Gi is Pa(ω) and to((ω1 × v)T , 0) and (ω2 × v)T , 0) when Gi is U∗(ω1, ω2, v).Differentiating (5) at the identity or (6) at θ = 0, we seethat M is a mechanical generator of SE(2) if and only ifthe span of Gi, i = 1, · · · , 3, equals to se(2), i.e,

span(G1,G2,G3) = se(2) (7)

Note that the order where the primitive generators appearin the serial arrangement is immaterial. Fig.4 shows allpossible configurations of the SE(2) or PL(ωn) generators.

Generalizing from this example, we let M = G1 ·G2 · · ·Gl, and define DoF (M) to be that of its joint spaceΘ.

Definition 1: M is a mechanical generator of Q,if DoF (M) = n and M contains an open neighborhoodof e in Q. Similarly, we say that the (serial) cascad-ing arrangement of k manipulators M1, · · · , Mk, denotedM = M1 · M2 · · · · · Mk, is a mechanical generator of Q ifDoF (M) = n, and M contains an open neighborhood of ein Q.Note that this definition excludes redundant manipulatorsfrom consideration, since DoF (M) = n ensures the re-sulting manipulator to have the minimum number primi-tive joints. However, a slight modification of this conditioncould handle the latter case.

Fig. 5. Equivalent Generators of C(0, z)

Fig. 6. A Generator of T (2)

Problem 1: Kinematic Synthesis ProblemGiven Q ⊂ SE(3), and a list of primitive generators, findall mechanical generators of Q.

We separate the problem into the case of Q being a Liesubgroup, and a regular submanifold.

A. Subgroup Motion Generators

Let M be the ordered set of twists of its (primitive) gen-erators, and span(M) the subspace spanned by the ele-ments of M .

Proposition 3: M is a mechanical generator of a Liesubgroup Q if and only if DoF (M) = n and span(M) =TeQ.

The synthesis of some of the Lie subgroups given in TableI are discussed in the following.

Fig. 7. A Generator of T (3)

Page 9: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

108

Fig. 8. Realizations of Quotient Manipulaters of SE(2)

1. Synthesis of C(0, z) or C(p, ω) subchainThe Lie algebra of C(0, z) is the subspace spanned by

(zT , 0)T and (0, zT )T . Thus, by Proposition 3, all the serialmechanisms in Fig. 5 generate C(0, z). Also, the order ofthe prismatic, revolute and helical joints in Fig.5 can bearranged freely.

If the direction of the revolute or helical joints in Fig.5 isreplaced by ω, with p being a point on the axis, then C(p, ω)will be generated. Again, the order of the constituting pairscan be changed freely.

2. Synthesis of T (2) and T (3) subchainsIt is easy to see that cascading two prismatic pairs, or a

prismatic pair with a parallelogram, as in Fig.6, generatesT (2). Similarly, cascading three prismatic pairs, or a pris-matic pair with a U∗-pair, as in Fig.7, generates T (3). Theorder in which the constituting pairs appear is immaterial.

3. Synthesis of X(z) or X(ω) subchainSince

X(z) = T (3) · R(p, z) = PL(zn) · T (1) = T2(zn) · C(p, z),

the most direct way to synthesis a X(z) subchain is by cas-cading in series a T (3) chain with a revolute joint R(p, z),a PL(zn) chain with a prismatic joint T (1), or a T2(zn)chain with a C(p, z) chain. Herve and Sparacino [23] gavea complete list of combinations of 1-DoF lower pairs thatgenerate X(z) , as shown in Table IV, where the order ofthe primitive joints can be freely exchanged.

Observe also that any of the prismatic pair T in Table IVfor X(z) can be replaced by the parallelogram Pa withoutaffecting the result. For example, replacing the T by Pa inthe combination R · R · T · R gives rise to the subchain ofthe Delta manipulator.

Replacing the direction of the revolute and the helicaljoints from z to ω in Table IV generates the X(ω) chain.

We summarize the various subgroup motion generatorsin Table IV.

B. Submanifold Motion Generators

First, we consider motion generators for a submanifoldQ given by Q = N1 · N2, with N1 a submanifold of T (3)and N2 a submanifold of SO(3).

Proposition 4: Given a desired submanifold Q = N1 ·N2, with N1 ⊂ T (3) and N2 ⊂ SO(3). Suppose that M1

Fig. 9. Realizations of Product Submanfold T (2) · SO(3)

generates N1 and M2 generates N2, then M = M1 · M2

generates Q = N1 · N2.Proof. Since M1 contains an open neighborhood U of e,M2 an open neighborhood V of e, and U × V is an openneighborhood of (e, e) of N1 × N2, U · V is an open neigh-borhood of e of N1 ·N2 because of the equivalent manifoldstructures of N1 × N2 with N1 · N2. Thus M containsan open neighborhood of e in N1 · N2. Since DoF (M) =DoF (M1) + DoF (M2) = dim(N1) + dim(N2) = dim(Q),we conclude that M generates Q.

Next, we consider motion generators for a submanifoldQ of the form Q = H1 ·H2, with H1 and H2 Lie subgroupsof SE(3). Let G be a Lie subgroup of SE(3) and H a Liesubgroup of G. Denote by MH the mechanical generator ofH, and MG/H the quotient manipulator such that MG/H ·MH generates G, i.e, if span(MH) = h, then

span(MG/H) ⊕ span(MH) = G.

Some examples of quotient manipulators of SE(2) areshown in Fig.8.

Proposition 5: Given a desired regular submanifold ofthe form Q = H1 · H2, with H1 and H2 Lie subgroups ofSE(3). Let H = H1 ∩ H2, and assume that M1 generatesH1 and M2 generates H2. Then, (i) if H = {e}, M =M1 · M2 generates Q; (ii) if H > {e}, M = MH1/H · M2

and N = M1 · MH2/H generate Q.Proof. We only show case (ii) as (i) follows as a spe-cial case. Assume that dim(H1) = m1, dim(H2) = m2 anddim(H) = n. Also assume that M1 = (ζ1, . . . , ζm1), M2 =(η1, . . . , ηm2), MH1/H = (δ1, · · · , δm1−n), MH2/H =(γ1, · · · , γm2−n). Thus, the twist representation of M =MH1/H · MH2 is given by

M = (δ1, · · · , δm1−n, η1, . . . , ηm2)

and the forward kinematic map of the associated manipu-lator has the form

f1 : Rm1+m2−n → SE(3)

: (θ1, · · · , θm1+m2−n) �→ eδ1θ1 · · · eδm1−nθm1−n

·eη1θm1−n+1 · · · eηm2θm1−n+m2

Page 10: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

109

DoF Subgroup Representative generators4 X(z) R(q1, z) · R(q2, z) · T (u) · T (v) , R(q1, z) · Hρ(q2, z) · T (u) · T (v),

Hρ1(q1, z) · Hρ2(q2, z) · T (u) · T (v),Hρ1(q1, z) · Hρ2(q2, z) · Hρ3(q3, z) · T (u) , R(q1, z) · R(q2, z) · R(q3, z) · T (u),R(q1, z) · R(q2, z) · Hρ(q3, z) · T (u) , R(q1, z) · Hρ1(q2, z) · Hρ2(q3, z) · T (u),Hρ1(q1, z) · Hρ2(q2, z) · Hρ3(q3, z) · Hρ4(q4, z) , Hρ1(q1, z) · Hρ2(q2, z) · Hρ3(q3, z) · R(q4, z),Hρ1(q1, z) · Hρ2(q2, z) · R(q3, z) · R(q4, z) , Hρ(q1, z) · R(q2, z) · R(q3, z) · R(q4, z)

3 T (3) T (u) · T (v) · T (w) , T (u) · Pa(z,v) · T (w) , T (u) · U∗(ω1, ω2,v)3 SE(2) T (u) · T (v) · R(q, z) , T (u) · R(q1, z) · R(q2, z) , R(q1, z) · R(q2, z) · R(q3, z)3 SO(3) R(0,u) · R(0,v) · R(0,w)2 C(0, z) T (z) · R(0, z) , T (z) · Hρ(0, z) , Hρ(0, z) · R(0, z) , Hρ1(0, z) · Hρ2(0, z)2 T (2) T (u) · T (v) , T (u) · Pa(z,v)

TABLE IV

Equivalent generators for Lie subgroups of SE(3)

Since eδiθi and eηjθm1−n+j ∈ H2, by the product closure,the image of f1 lies in Q. As Q is a regular submanifold ofSE(3), by [29], f1 defines a smooth map into Q

f1 : Rm1+m2−n → Q

: (θ1, · · · , θm1+m2−n) �→ eδ1θ1 · · · eδm1−nθm1−n

·eη1θm1−n+1 · · · eηm2θm1−n+m2

Since the twists in M are linearly independent, we havethat span(M) = TeQ and f1∗0 is an isomorphism. Thus bythe inverse function theorem, f1 is a local diffeomorphismat 0. Hence, its image contains an open neighborhood of ein Q. Furthermore, as DoF (M) = m1 +m2−n = dim(Q),we see that M generates Q.

A similar argument shows that N also generates Q.

Propositions 5 and 4 provide us with a set of tools neededfor finding the mechanical generators of these special sub-manifolds. These tools can be applied separately or in com-bination when a submanifold is expressed in its canonicalform or its conjugation form. Note that the quotient ma-nipulator is in general not unique, and the order of its prim-itive joints can be changed freely, too. Together with theabundance of subgroup motion generators, they combineto exhibit the diversity of the problem.

We now illustrate the application of these tools by find-ing some representative generators for some of the subman-ifolds given in Table II.

1. Synthesis of T (2) · U(0, z, x) subchainM1 = T (u) · T (v), where u,v are linearly independent

and parallel to the x − y plane, generates T (2), and M2 =R(0, z) ·R(0, x) generates U(0, z, x). According to Proposi-tion 4, M = M1 ·M2 generates T (2) ·U(0, z, x). The twistrepresentation for M is M = (T (u), T (v),R(0, z),R(0, x)).Since span(T (u), T (v),R(0, z)) = se(2), the Lie algebra ofSE(2), so these three twists form a generator of SE(2)and can be equivalently replaced by any set of gener-ators of se(2) as shown in Fig.4. For instance, M =R(q1, z)·R(q2, z)·R(q3, z)·R(0, x) gives another generator ofT (2) ·U(0, z, x). Furthermore, since R(0, x) = MC(0,x)/T (x)

as span(R(0, x))⊕ span(T (x)) equals to the Lie algebra of

Quotient Manipu-lator

Reprensentative generators

MC(0,x)/T (x) R(0, x) , Hρ(0, x)MSE(2)/T (x) T (u) ·R(q, z) , R(q1, z) ·R(q2, z)MC(0,z)/R(0,z) T (z) , Hρ(0, z)MSO(3)/R(0,z) R(0,u) · R(0,v)MSE(2)/R(0,z) T (u) · T (v) , R(q, z) · T (v),

R(q1, z) · R(q2, z)MX(x)/T (3) R(q, x) , H(q, x, ρ)MX(x)/T2(yn) R(q1, x) · R(q2, x),

R(q1, x) · Hρ(q2, x),Hρ1(q1, x) · Hρ2(q2, x)

MPL(yn)/T2(yn) R(q, y)MX(x)/T (y) R(q1, x) · R(q2, x) · T (v),

R(q1, x) · Hρ(q2, x) · T (v),Hρ1(q1, x) · Hρ2(q2, x) · T (v),Hρ1(q1, x)·Hρ2(q2, x)·Hρ3(q3, x),R(q1, x) · R(q2, x) · R(q3, x),R(q1, x) · R(q2, x) · Hρ(q3, x),R(q1, x) · Hρ1(q2, x) · Hρ2(q3, x),

TABLE V

Representative realizations for some quotient manipulators

C(0, x), we see that M = MSE(2) · MC(0,x)/T (x) gives an-other mechanical generator of T (2) · U(0, z, x). By Propo-sition 5, N = MSE(2)/T (x) · MC(0,x) is also an equiva-lent generator of the submanifold. While MC(0,x) canbe replaced by any equivalent C(0, x) generators listedin Fig.5, there are also more than one candidates forMC(0,x)/T (x) and MSE(2)/T (x). For example, Hρ(0, x) canreplace MC(0,x)/T (x) in M instead of R(0, x). We sum-marize all the new submanifold generators discussed herein Table VI and quotient manipulators in Table V, whererealizations for MSE(2) and MC(0,x) can be found in theprevious section.

Remark 1: M and N are generators for both T (2) ·U(0, z, x) and SE(2) · C(0, x). This does not mean thatT (2) · U(0, z, x) and SE(2) · C(0, x) are necessarily equal

Page 11: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

110

Submanifold Reprensentative generatorsMT (2)·U(0,z,x) MSE(2) · MC(0,x)/T (x),= MSE(2)·C(0,x) MSE(2)/T (x) · MC(0,x)

MT (1)·SO(3) MC(0,z)/R(0,z) · MSO(3),= MC(0,z)·SO(3) MC(0,z) · MSO(3)/R(0,z)

MT (2)·SO(3) MSE(2) · MSO(3)/R(0,z),= MSE(2)·SO(3) MSE(2)/R(0,z) · MSO(3),

MT (2)·U(0,z,x) · R(0, y),T (u) · MT (v)·SO(3),R(q, z) · MT (v)·SO(3)

MT (3)·U(0,x,y) MT (3) · MU(0,x,y),= MX(x)·X(y) MX(x) · MX(y)/T (3),= MPL(xn)·PL(yn) MX(x)/T (3) · MX(y),= MX(x)·PL(yn) MPL(xn)/T (z) · MPL(yn),= MX(x)·C(q,y) MPL(xn) · MPL(yn)/T (z),

MX(x)/T2(yn) · MPL(yn),MX(x) · MPL(yn)/T2(yn),MX(x)/T (y) · MC(q,y),MX(x) · MC(q,y)/T (y)

MS(N)·SO(3) MS(N) · MSO(3)/R(0,t),MS(N)/R(0,t) · MSO(3)

TABLE VI

Equivalent generators for some product submanifolds

globally.3 It only means that they are equal in a smallneighborhood of e.

2. Synthesis of T (1) · SO(3) subchainM1 = T (z) generates T (1) and M2 = R(0,u) · R(0,v) ·

R(0,w), where u,v,w are linearly independent, generatesSO(3). By Proposition 4, M = M1 · M2 generates T (1) ·SO(3). Furthermore, it is easy to verify that

M = MC(0,z)/R(0,z) · MSO(3)

= MC(0,z) · MSO(3)/R(0,z)

and the realization of the various quotients are given inTable V.

3. Synthesis of T (2) · SO(3) subchainWith M1 = T (u) · T (v), where u,v are linearly in-

dependent and parallel to the x − y plane, and M2 =R(0, z)·R(0, x)·R(0, y), M = M1 ·M2 provides a realizationof T (2) ·SO(3). Additional realizations of the submanifoldare given by

M = MSE(2) · MSO(3)/R(0,z)

= MSE(2)/R(0,z) · MSO(3)

= MT (2)·U(0,z,x) · R(0, y)= T (u) · MT (v)·SO(3)

= R(q, z) · MT (v)·SO(3)

where realizations for the various factors contained in theabove equations can be either found from the previous dis-cussions or obtained by referring to Table IV and Table V.

3Although in this special case, through algebraic computation,T (2) · U(0, z, x) = SE(2) · C(0, x), but it does not necessarily hold ingeneral.

Fig. 10. Example of SO(3) PM Motion Generator with Hj = PL(ωnj )

Here we have covered Herve’s work [24] into our framework.Some examples are shown in Fig.9.

4. Synthesis of T (3) · U(0, x, y) subchainWith M1 = T (x) ·T (y) ·T (z) and M2 = R(0, x) ·R(0, y),

M = M1 · M2 generates T (3) · U(0, x, y), with its twistrepresentation given by

M = (T (x), T (y), T (z),R(0, x),R(0, y))

Since span(T (x), T (y), T (y),R(0, x)) agrees with the Liealgebra of X(x), and R(0, y) = X(y)/T (3), we have thefollowing equivalent realizations of M ,

M = MT (3) · MU(0,x,y)

= MX(x) · MX(y)/T (3)

= MX(x)/T (3) · MX(y)

Reordering the twist elements of M and applying Propo-sition 5 yield additional realizations of the submanifold asfollows,

M = MPL(xn)/T (z) · MPL(yn)

= MPL(xn) · MPL(yn)/T (z)

= MX(x)/T2(yn) · MPL(yn)

= MX(x) · MPL(yn)/T2(yn)

= MX(x)/T (y) · MC(q,y)

= MX(x) · MC(q,y)/T (y)

Again, realization of the various quotients are given in Ta-ble V, and the subgroup generators can be found in TableIV, with slight modifications when necessary.

IV. Synthesis of Parallel Manipulators

Synthesis of a parallel manipulator (PM) also starts witha set Q of desired end-effector motions, which we assumewill be in the form of either a Lie subgroup, as in TableI, or a regular submanifold of SE(3), as in Table II. Wealso assume that the manipulator under consideration willbe arranged to have a fully parallel configuration, with thek-subchains M1, · · ·Mk all sharing a common base and acommon end-effector. Denote by CMi , i = 1, · · · k the set ofend-effector motions that Mi implements (at least locally),and by M = M1‖ · · · ‖Mk the parallel arrangement of the

Page 12: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

111

Fig. 11. Example of SO(3) PM Motion Generator with Hj = S(Nj)

Fig. 12. Example of SO(3) PM Motion Generator with Hj =C(0, ωj)

M ′is. Conceptually, the set of end-effector motions of the

resulting PM is given by

CM = CM1 ∩ CM2 ∩ · · · ∩ CMk(8)

and the set of permissible velocities at each g ∈ CM by

Rg−1∗TgCM = Rg−1∗TgCM1 ∩ · · · ∩ Rg−1∗TgCMk. (9)

In general, CM is a very complex subset of SE(3), due tothe complex singularities of the PM. If, however, CM agreeswith Q in a neighborhood of e, then we say that M is aparallel motion (PM) generator of Q. More precisely, wehave

Definition 2: Given a desired set Q of end-effector mo-tions, with n = dim(Q), a PM M = M1‖ · · · ‖Mk is a PMgenerator of Q if there exists an open neighborhood U of ein SE(3) such that CM ∩ U = Q ∩ U .

Fig. 13. Example of a New SO(3) PM Motion Generator with Hj =PL(ωn

j )

In order to place only one actuator at the base of each sub-chain, we will assume that k = n. We will also assume,without loss of generality, that all the subchains are iden-tical and thus the C′

Mis differ from each other by only a

conjugation.Because of the complexity of the algebraic set CM (as

well as any attempt to compute it), the PM synthesis prob-lem is in general difficult to solve. This, however, canbe substantially simplified with the following proposition,which is a special case of a more general theorem provedin Appendix B.

Proposition 6: Given Q ⊂ SE(3), k = dim(Q). As-sume that M = M1‖ · · · ‖Mk, and all of the CMj , j =1, · · ·k contains a connected open subset QU of Q arounde,

QU ⊆ CMj , j = 1, · · · , k (10)

and consequently QU ⊆ CM . If the following condition

TeQ = span(M1) ∩ · · · ∩ span(Mk) (11)

or the dual condition

(T ∗e Q)⊥ = (T ∗

e CM1)⊥ + · · · + (T ∗

e CMk)⊥ (12)

holds, where

(T ∗e Q)⊥ = {f ∈ R

6‖〈f, ξ〉 = 0, ∀ξ ∈ TeQ}

denotes the set of constraint forces for TeQ. Then, thereexists a connected open neighborhood Ue of e in SE(3) suchthat Ue ∩Q = Ue ∩CM . Furthermore, if for every g ∈ QU ,

Rg−1∗Tg(C) = Rg−1∗Tg(CM1) ∩ · · · ∩ Rg−1∗Tg(CMk).(13)

(or its dual condition holds), then there exists a connectedopen subset W of SE(3) such that QU = W ∩ CM .

Remark 2: The importance of Proposition 6 lies in thefact that if we choose CMj , j = 1, · · ·k so that Q ⊆ CMj

and hence Q ⊆ CM , and either Condition (11) or (12)holds, then M = M1‖ · · · ‖Mk is a PM generator of Q.Furthermore, if we want to know to what extent M coversQ, i.e., to find the maximal QU such that QU = W ∩CM , with W an open subset of SE(3), we have to checkCondition (13) or its dual for every g ∈ QU .

We will refer to (11) and its dual (12) the velocitymatching condition(VMC) and the force matching condi-tion(FMC), respectively. Computational savings may re-sult by using the FMC when the dimension of the problemis relatively high(≥ 4), otherwise the using of the VMCis preferred. (13) will be referred to as the global VMC(GVMC).

Using Proposition 6, we now study the PM synthesisproblem for Q being, respectively, a Lie subgroup and aregular submanifold of SE(3).

Page 13: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

112

A. Subgroup PM Generators

We will consider PM generators for the Lie subgroupsSO(3), T (3), SE(2), and X(z) only, as these are the mostcommon cases in practice, e.g., the Delta, H4([16], [17])and the Tsai’s manipulators([1]). We will ignore the trivialcase where each subchain generates identical motions asthe end-effector of the resulting parallel manipulator.

1. Synthesis of SO(3) PM GeneratorsBy Proposition 6, we seek 3 subchains MCj , j = 1, · · · , 3,

such that SO(3) ⊆ Cj , j = 1, · · · , 3. From Section II andProposition 1, a solution to this problem is suggested byexpressing

Cj = Hj · SO(3) j = 1, · · · , 3

where Hj is a subgroup of SE(3) to be determined by theVMC or FMC.

First, observe that Hj should not have trivial intersec-tion with SO(3) because, if Hj∩SO(3) = {e}, j = 1, · · · , 3,then the mechanical joints that generate Hj in the subchainwill be dead-locked when the loop or closure constraintsare imposed. Thus, removing these dead joints will not af-fect the final motions of the resulting PM. Taking this intoconsiderations, we are left with the following subgroups(and their conjugate subgroups) for Hj :SE(2), S(N) andC(0, z). Thus, a general form of Cj is

Cj =

PL(wnj ) · SO(3)

S(Nj) · SO(3)C(0, wj) · SO(3)

(14)

Cj is, respectively, a 5- and 4-dimensional submanifold ofSE(3) containing SO(3). Realizations of the various prod-ucts in (14) have been either discussed or obtained usingthe tools from the previous section, see also Table VI. Theconstraint force for a subchain generating PL(wn) · SO(3)at e is given by (wT , 0), and that for S(N)·SO(3) by (tT , 0),where t is the unit direction vector from the origin to N .Thus, if

Cj = PL(ωnj ) · SO(3) j = 1, · · · , 3

and with

(T ∗e Cj)⊥ = {(wT

j , 0)}, j = 1, · · · 3

the FMC shows that if the ω′js, j = 1, · · · , 3 are linearly

independent, then M = MC1‖MC2‖MC3 will be a PM gen-erator for SO(3).

Similarly, if

Cj = S(Nj) · SO(3) j = 1, · · · , 3

then

(T ∗e Cj)⊥ = {(tTj , 0)}, j = 1, · · · 3

andM = MC1‖MC2‖MC3 is a PM generator for SO(3) ifthe tj ’s are linearly independent. Fig.10 and 11 give exam-ples of these two types of PM generators discussed above.

The third type of PM generators for SO(3) is obtainedwhen

Cj = C(0, ωj) · SO(3) j = 1, · · · , 3

Note that

span(MCj ) = {ξj,1, · · · , ξj,4}where

ξj,1 = (ωTj , 0)T , ξj,2 = (0, (1, 0, 0))T

ξj,3 = (0, (0, 1, 0))T , ξj,4 = (0, (0, 0, 1))T

Hence, in order to satisfy the VMC, at least two of ωjs, j =1, · · · , 3 need to be linearly independent. Examples of thistypes of SO(3) PM generators are shown in Fig.12.

We now turn into a few comments regarding realizationsof M = MC1 ||MC2||MC3 with

Cj = Hj · SO(3)

First, since dim(Cj) > dim(SO(3)) = 3, certain motionsof Cj are to be constrained when the loop constraints areimposed, resulting in possibly dead-locking certain jointsof MCj if Cj is not properly realized. More precisely, if Cj

is realized as

MCj = MHj/(Hj∩SO(3)) · MSO(3)

then clearly, motions generated by MHj/(Hj∩SO(3)) will beconstrained and hence MHj/(Hj∩SO(3)) will be dead-locked.If the subchain contains a generator of Hj , then MHj canonly undergo motions in Hj ∩ SO(3), i.e., it is equivalentto a mechanical generator of Hj ∩ SO(3) with the loopconstraints in place. In this case, if MHj contains somejoints that form a Hj∩SO(3) generator, then the remainingjoints will become dead-locked. Consider, for example,

Cj = PL(ωnj ) · SO(3), j = 1, · · · , 3

Two possible realizations of Cj are given by, respectively,MPL(ωn

j )/R(0,ωj) ·MSO(3) and MPL(ωnj ) ·MSO(3)/R(0,ωj). In

the former case, motions generated by MPL(ωnj )/R(0,ωj) will

be fully constrained with loop constraints imposed. Hence,this realization is undesirable and should be avoided. Inthe latter case, with the motions other than R(0, ωj)in MPL(ωn

j ) being constrained, MPL(ωnj ) is equivalent to

MR(0,ωj). As long as the realization of MPL(ωnj ) does not

contain a R(0, ωj) joint, no joints of MPL(ωnj ) will be dead-

locked.Finally, suppose that MCj is composed by n primitive

joints

MCj = Pj1 · · ·Pjm · Pjm+1 · · ·Pjn, j = 1, · · · , 3

where Pj1 · · ·Pjm is a realization of MHj (containingno joints of mechanical generator of Hj ∩ SO(3)), andPjm+1 · · ·Pjn realization of MSO(3)/(Hj∩SO(3)). With

Page 14: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

113

loop constraints imposed, Pj1 · · ·Pjm is equivalent toMHj∩SO(3), and MCj is equivalent to a mechanical gen-erator of SO(3). Thus, changing the order of the joints ofMSO(3)/(Hj∩SO(3)) produces another optional structure ofsubchain which contains an open subset of SO(3) arounde :

Nj = Pjm+1 · Pj1 · · ·Pjm · · · ·Pjn, j = 1, · · · , 3

The FMC is also trivially satisfied. Hence, N = N1||N2||N3

is a variational SO(3) PM generator for M . For example,suppose M is a SO(3) PM generator with subchains

MCj = R(qj1 , ωj) · R(qj2 , ωj) · R(qj3 , ωj) · R(0,u) · R(0,v)j = 1, · · · , 3, qji �= 0

where R(qj1 , ωj) · R(qj2 , ωj) · R(qj3 , ωj) is a realizationof MPL(ωn

j ), and R(0,u) · R(0,v) that of MSO(3)/R(0,ωj).Then N = N1||N2||N3 with

Nj = R(0,u) · R(qj1 , ωj) · R(qj2 , ωj) · R(qj3 , ωj) · R(0,v)j = 1, · · · , 3, qji �= 0

is also a SO(3) PM generator, as in Fig.13 .2. Synthesis of SE(2) PM GeneratorsFollowing the same procedure as in the SO(3) case, we

need to find subchains MCj , j = 1, · · · 3, such that

Cj = SE(2) · Hj j = 1, · · · , 3

where Hj is either S(Nj), C(0, ωj), or any of their conju-gate subgroups. Realizations for each of the product termsin the above form have already been discussed previously.

If

Cj = SE(2) · S(Nj) j = 1, · · · , 3

then the constraint force space of each subchain at e isspanned by fj = (zT , (Nj ×z)T ). Applying the FMC to fj ,we see that M = MC1‖MC2‖MC3 is a SE(2) PM generatorif the Nj ’s are different from each other.

If

Cj = SE(2) · C(0, ωj) j = 1, · · · , 3

then

span(MCj ) = {ξj,1, · · · , ξj,4}with

ξj,1 = ((1, 0, 0),0)T , ξj,2 = ((0, 1, 0),0)T

ξj,3 = (0, (0, 0, 1))T ξj,4 = (0, ωTj )T

and applying the VMC, we see that M is a PM generatorof SE(2) if at least two of the ωj ’s, j = 1, · · · , 3 are linearlyindependent.

3. Synthesis of X(z) PM GeneratorsLet

Cj = X(z) · Hj j = 1, · · · , 4

where Hj is any conjugate subgroups of X(y), PL(yn)and C(q, y). The subchains that generate X(z) · X(ω),X(z) · PL(ωn), and X(z) · C(q, ω) are all equivalent toMT (3)·U(0,z,ω), the generators for which have been stud-ied in the previous section. It is interesting to note thatMSE(2)·MPL(ωn

j ), an equivalent generator of MT (3)·U(0,z,ω),provides another option of subchains of X(z) PM genera-tors.

With

(T ∗e Cj)⊥ = {(0,uj)}

where uj is the normal of the plane determined by z and ωj ,and applying the FMC, we see that M = MC1‖ · · · ‖MC4 isa X(z) PM generator if at least two of the w′

js are linearlyindependent.

Note that in order to avoid joint dead-locking, we needto restrict our realizations of MCj to: MX(z)/T (3) ·MX(ωj),MX(z)/T2(ωn

j ) · MPL(ωnj ) and MX(z)/T (ωj) · MC(q,ωj).

Reordering the joints of MX(z)/T (3), MX(z)/T2(ωNj ), MX(z)/T (ωj)

and MSE(2)/T (uj) will give, amazingly, wide variations onthe structures of the subchains of the X(z) PM generators.

4. Synthesis of T (3) PM GeneratorsSince T (3) is contained in X(z), we can have

Cj = X(ωj), j = 1, · · · 3

Applying the VMC, we see that M = MC1‖MC2‖MC3 is aT (3) PM generator if at least two of the w′

js are linearlyindependent. The Delta manipulator is a good example ofthis type of PM generators.

We can also use for the subchain the following prod-ucts: X(ω1) · X(ω2), X(ω1) · PL(ωn

2 ), X(ω1) · C(q, ω2), orPL(ωn

1 ) · PL(ωn2 ), all of which are in fact equivalent to

MT (3)·U(0,ω1,ω2). Since

(T ∗e Cj)⊥ = {(0,uj)} j = 1, · · · , 3

where uj is the normal of the plane determined by ωj1 andωj2, it is easy to see that uj , j = 1, · · · , 3 must be linearlyindependent in order for M to be a PM generator of X(ω1).

By reordering the twist elements, one can derive theTsai’s manipulators from here.

B. Submanifold PM Generators

Proposition 6 and the synthesis procedure for subgroupPM generators naturally extend to regular submanifolds.For example, Huang’s manipulator([21]) with desired mo-tion T (2) · SO(3) is constructed by connecting five sub-chains, each producing identical motion as the end effectorof the manipulator. It is also straightforward to explainPM generation for other regular submanifolds. Instead ofcontinuing our study along this line, however, we will pur-sue a different application of the proposed theory in com-puting the the global motions of the parallelogram and theU∗-joint. This is in general a problem of considerable dif-ficulties using any local theory.

Page 15: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

114

1. Synthesis of PM Generators for Circular TranslationsLet the set of desired motions be

Q ={[

I (eωθ − I)v0 1

]| θ ∈ [0, 2π]

}

where ω is the axis of rotation for the circle, and v ⊥ ωa vector from the center of the circle to the origin of thespatial coordinate frame. Q is thus S1 embedded in SE(3),and contains e. We now show that the parallelogram is amechanical generator of Q. Let M = M1 · M2, where fori = 1, 2,

Mi = R(qi1, ω) · R(qi2, ω) = R(qi1, ω) · R(qi1 + v, ω)

and q21 = q11 + u, see Fig 2. Notice that∙eωθi1 (I − eωθi1 )qi1

0 1

¸·∙

eωθi2 (I − eωθi2 )qi2

0 1

¸=

∙eω(θi1+θi2) (I − eω(θi1+θi2))qi1

0 1

¸·∙

I (e−ωθi2 − I)v0 1

¸=

∙I (eωθi1 − I)v0 1

¸·∙

eω(θi1+θi2) (I − eω(θi1+θi2))qi2

0 1

¸Hence,

CM1 = R(q11, ω) · Q = Q · R(q12, ω) (15)CM2 = R(q21, ω) · Q = Q · R(q22, ω) (16)

from which one derives that,

Q ⊆ CM1 ∩ CM2 .

If at the home configuration e, v and u do not coincide,then the spatial velocities of the subchains are given by

span(M1) = {(q11 × ω, ω)T , ((ωv)T , 0)T }span(M2) = {(q21 × ω, ω)T , ((ωv)T , 0)T }

with the intersection

{((ωv)T , 0)T } (17)

as long as q11 �= q21. (17) is precisely the tangent space ofQ at e. By the first part of Proposition 6, M generates Q.

Suppose the angle from u to v is φ = ATAN2(ωT (u ×v),uT v) > 0, and define an open subset QU of Q as

QU = {g ∈ Q | θ ∈ (−φ, π − φ)}Then for all g ∈ QU , the spatial velocity spaces of the twosubchains are

Rg−1∗TgCM1 = {(−ω × q11, ω)T , ((eωθωv)T , 0)T }Rg−1∗TgCM2 = {(−ω × q21, ω)T , ((eωθωv)T , 0)T }

where θ = θj1 = −θj2, j = 1, 2, and their intersection is

{((eωθωv)T , 0)T } (18)

which is precisely the velocity space of Q at g. However,one can check that this equality will not hold when θ = −φor π − φ. Therefore, by the second part of Proposition 6,QU is the maximal open subset of Q that M generates.

2. Synthesis of PM Generators for Spherical Transla-tions

Let

Q = {[

I (eω1αeω2β − I)v0 1

],

α ∈ [0, 2π], β ∈ [−π/2, π/2]}where ω1 and ω2 are perpendicular unit vectors represent-ing the rotation axes of the sphere, and v ⊥ ω2 is a vectorfrom the center of the sphere to the origin of the spatialcoordinate frame. Q is actually S2 embedded in SE(3).We can show that the U -pair based prism (Fig.3) whichconsists of three UU subchains is a mechanical generatorof Q. Suppose M = M1 · · · · · M3, where for i = 1, · · · 3,

Mi = R(qi1, ω1) · R(qi1, ω2) · R(qi2, ω2) · R(qi2, ω1)

and qi2 = qi1 + v. Notice that

g =

∙eω1αi1eω2βi1 (I − eω1αi1eω2βi1)qi1

0 1

¸·∙

eω2βi2eω1αi2 (I − eω2βi2eω1αi2 )qi2

0 1

¸=

∙I (eω1αi1eω2βi1 − I)v0 1

¸∈ Q, i = 1, · · · , 3

if αi1 = −αi2, βi1 = −βi2. Thus

Q ⊆ CMi , i = 1, · · · , 3

Moreover, if at the home configuration e, v and ω1 arenot aligned, then the spatial velocity spaces of the threesubchains at e are

span(Mi) =

{[

qi1 × ω1

ω1

],

[qi1 × ω2

ω2

],

[qi2 × ω2

ω2

],

[qi2 × ω1

ω1

]}

= {[

qi1 × ω1

ω1

],

[qi1 × ω2

ω2

],

[ω1v0

],

[ω2v0

]},

The intersection of these three subspaces is

{((ω1v)T , 0)T , ((ω2v)T , 0)T } (19)

Since ω2 ⊥ v, as long as ω1 is not aligned with v in thehome configuration, (19) is precisely the tangent space ofQ at e, and hence M is a mechanical generator of Q.

In a similar manner, assume that the angle from ω1 to vis φ = ATAN2(ωT

2 (ω1×v), ω1T v) > 0, and define an open

subset QU of Q as

QU = {g ∈ Q | α ∈ (−π, π), β ∈ (−φ, π − φ)}Then for all g ∈ QU , the spatial velocity spaces of the threesubchains are

Rg−1∗Tg(CMi =

{[

qi1 × ω1

ω1

],

[qi1 × eω1αω2

eω1αω2

],[

q′i2 × eω1αω2

eω1αω2

],

[q′i2 × ω1

ω1

]} =

{[

qi1 × ω1

ω1

],

[qi1 × eω1αω2

eω1αω2

],[

ω1eω1αeω2βv

0

],

[eω1αeω2βω2v

0

]},

Page 16: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

115

where

q′i2 = qi1 + eω1αi1eω2βi1vα = αi1 = −αi2

β = βi1 = −βi2

i = 1, · · · , 3

The intersection of these three subspaces is

{((ω1eω1αeω2βv)T , 0)T , ((eω1αeω2βω2v)T , 0)T }

which is just the spatial velocity space of Q at g. However,one can check that this equality will not hold when β = −φor π − φ. Therefore, QU is the maximal open subset of Qthat M generates.

V. Conclusion

In this paper, we presented a geometric theory for thesynthesis and analysis of sub-6 DoF manipulators, both se-rial and parallel. Aside from showing the previously knownresults that Lie subgroups can be used to model lower pairsand the desired set of end-effector motions, we also showedthat there are at least two classes of regular submanifoldswhich admit global and coordinates free expressions andcan also be used for similar purposes. This substantiallybroadens the spectrum of manipulators available to designapplications. So we gave a formal definition of the serialsynthesis problem and developed general procedures as wellas technical tools for systematic solutions of the synthesisproblem. In the case of the parallel synthesis problem, wepresented a general result for guiding the selection of thesubchains so that the parallel connection of which gener-ates the desired end-effector motions of the manipulator.

As for future work along this direction, we propose: (1)develop a parametric model of the synthesis problem andintroduce performance measures so that the performanceof each realization can be computed and bench-marked;(2) develop a tolerance (or error ) model of the primitivegenerators and study the error characteristics of the asso-ciated realizations; and (3) introduce a stiffness model ofthe primitive generators, and exam the resulting stiffnessof the various realizations.

Appendix A : Proof of Proposition 1

Proposition 1 : Let H1 and H2 be two closed Lie sub-groups of SE(3), of dimension n1 and n2, respectively. LetH = H1∩H2, and n = dim(H). Then, the product H1 ·H2

is a regular submanifold of SE(3) of dimension n1+n2−n.Proof: First of all, we endow H1 · H2 with the subspacetopology of SE(3). Second, let (η1, · · · , ηn) be a basis of h,and complete the basis so that (η1, · · · , ηn, ηn+1, · · · , ηn1)forms a basis of h1, (η1, · · · , ηn, ηn1+1, · · · , ηn1+n2−n) a ba-sis of h2, and η1, · · · , ηn1+n2−n, · · · , η6 a basis of se(3). LetU , V defined as

U = {eη1θ1 · · · eηn1+n2−nθn1+n2−n ∈ H1 · H2 | |θi| < ε}V = {eη1θ1 · · · eη6θ6 ∈ SE(3) | |θi| < ε}

respectively. Clearly, U is a slice of V : U = {x ∈ V |θn1+n2−n+1 = 0, · · · , θ6 = 0}. For sufficiently small ε, V isan open coordinate neighborhood of e in SE(3), with local

coordinates (θ1, · · · , θ6), and U = V ∩ (H1 · H2). Hence,U is an open coordinate neighorhood of e in H1 · H2, withpreferred local coordinates (θ1, · · · , θn1+n2−n). Using leftand right translation, any point of H1 ·H2, h1 ·h2, has sucha preferred local coordinate neighborhood h1 ·U ·h2. ThusH1 · H2 has the n-submanifold property, together with itssubspace topology, making itself a regular submanifold ofSE(3).

Appendix B : A More General Thoerem Than

Proposition 6

Theorem 1: Suppose C1, · · · , Ck are k connected regu-lar submanifolds of G(G is a manifold), they all contain aconnected regular submanifold C, i.e,

C ⊆ Cj , j = 1, ..., k (20)

and consequently C ⊆ C1 ∩ · · · ∩Ck. Moreover, if for somex ∈ C, the following equation holds :

∆xC = ∆x(C1) ∩ ∆x(C2) ∩ · · · ∩ ∆x(Ck) (21)

where ∆xC denotes the tangent space of C at x, and ∆xCj

the tangent space of Cj at x, j = 1, · · · , k. Then thereexists a connected neigborhood Ux of x, where Ux is anopen subset of G, such that Ux ∩C = Ux ∩ (C1 ∩ · · · ∩Ck).If for every x ∈ C, Equation 21 holds, then there exist aconnected open subset of G, W , such that C = W ∩ (C1 ∩· · · ∩ Ck).Proof : We prove the case for k = 2, similar proof is fork > 2. Suppose dim(G) = m, x ∈ C, and we choose a coor-dinate neigborhood of x of G, (U, φ), such that x1, · · · , xm

are the local coordinates in this neighborhood. Suppose inthis neighborhood, C1 is locally cut out by s functions,

C1 ∩ U = φ−1{(x1, · · · , xm)|h1(x1, · · · , xm) = 0, · · · , hs(x1, · · · , xm) = 0}

where s is the codimention of C1 in G; C2 is locally cutout by l functions, where l is codimension of C2 in G

C2 ∩ U = φ−1{(x1, · · · , xm)|g1(x1, · · · , xm) = 0, · · · , gl(x1, · · · , xm) = 0}

Then in local coordinates

(C1 ∩ C2) ∩ U = φ−1{(x1, · · · , xm)|h1 = 0, · · · , hs = 0, g1 = 0, · · · , gl = 0}

Since we know ∆xC = ∆x(C1) ∩ ∆x(C2) at x ∈ C ⊆C1 ∩ C2, thus

rank

dh1

...dhs

dg1

...dgl

φ(x)

= n

where n is the codimension of C in G. Without loss ofgenerality, we assume that the first n rows of the abovematrix are linearly independent with each other at φ(x) ∈

Page 17: 100 A Geometric Theory for Synthesis and Analysis of Sub-6 ...ai.stanford.edu/~liugf/TPall.pdf102 and Vˆs = R g−1∗ · g˙ give, respectively, the body and the spatial velocities

116

φ(C ∩ U). Thus

rank

dh1

...dhs

dg1

...dgt

φ(x)

= n

where s + t = n. Then by the submersion theorem, thereis an open neighborhood of G around x, U

′ ⊆ U such that

C = φ−1{(x1, · · · , xm) ∈ φ(U′)|h1 = 0, · · · , hs = 0, g1 = 0, · · · , gt = 0}

is an m − n dimmensional regular submanifold of G con-taining x. It’s also obvious that (C1 ∩ C2) ∩ U

′ ⊆ C.Since we know C ⊆ (C1 ∩ C2), we also get C ∩ U

′ ⊆(C1 ∩ C2) ∩ U

′ ⊆ C. Since both C ∩ U′

and C arem − n dimmensional submanifold of G, and the formeris contained in the latter. Thus we know that there ex-ists an open neighborhood of x of G, V ⊆ U

′such that

C ∩ V = (C1 ∩ C2) ∩ V = C ∩ V . V is just the Ux as wewanted. If for every x ∈ C, Equation 21 holds, then everyx will have a Ux. Thus the union of all these Ux’s will bethe W as we wanted, i.e, W = ∪x∈CUx.

Replacing G in Theorem 1 into SE(3) and Cj the desiredend-effector motions of the subchains, we can infer fromthis theorem Proposition 6.

References

[1] L.W. Tsai. Kinematics of a three-DOF platform with three ex-tensible limbs. in Recent Advances in Robot Kinematics: Analy-sis and Control (Lenaric J., Husty M.L. Eds.), Kluwer, pages49–58, 1996.

[2] J.P. Merlet. Direct kinematics of parallel manipulators. IEEETransactions on Robotics and Automation, 9(6):842–846, 1993.

[3] V.J. Kumar. Instantaneous kinematics of parallel-chain roboticmechanisms. ASME J. Mechanical Design, 114, 1992.

[4] C. Gosselin and J. Angeles. Singularity analysis of closed loopkinematic chains. IEEE Transactions on Robotics and Automa-tion, 6:281–290, June 1990.

[5] F.C.Park and J.W. Kim. Singularity analysis of closed kine-matic chains. Transaction of the ASME: Journal of MechanicalDesign, 121(1):32–38, 1999.

[6] J.-P. Merlet. Singular configurations of parallel manipulatorsand grassmann geometry. International Journal of Robotics Re-search, 8:45–56, 1989.

[7] G.F. Liu, Y.J. Lou, and Z.X. Li. Singularities of parallel ma-nipulators: A geometric treatment. To appear in IEEE Trans.Robot. Automat., 19(3), 2003.

[8] C. Gosselin. Determination of the workspace of 6-dof par-allel manipulators. ASME Journal of Mechanical Design,112(3):331–336, 1990.

[9] V. Kumar. Characterization of workspace of parallel manipu-lators. ASME Journal of Mechanical Design, 114(3):368–375,1992.

[10] C. Gosselin. Stiffness mapping for parallel manipulators. IEEETransactions on Robotics and Automation, 6(3):377–382, 1990.

[11] C. Gosselin and J. Angeles. A global performance index for thekinematic optimization of robotic manipulators. ASME Journalof Mechanical Design, 113:220–226, 1991.

[12] F. Park and R. Brockett. Kinematic dexterity of robotic mech-anisms. International Journal of Robotics Research, 13(1):1–15,1994.

[13] S.E. Salcudean L.J. Stocco and F. Sassani. Optimal kinematicdesign of a haptic pen. IEEE/ASME Transactions on Mecha-tronics, 6(3):210–220, 2001.

[14] R. Clavel. Delta, a fast robot with parallel geometry. In Proc.18th International Symposium on Industrial Robots, pages 91–100, 1988.

[15] R. Clavel. Device for the movement and positioning of an ele-ment in space. U.S. Patent No. 4976582, 1990.

[16] F. Pierrot and O. Company. H4: a new family of 4-dof parallelrobots. In Proceedings of the IEEE/ASME International Con-ference on Advanced Intelligent Mechatronics, pages 508–513,1999.

[17] F. Pierrot, F. Marquet, O. Company, and T. Gil. H4 parallelrobot: Modeling, design and preliminary experiments. In Pro-ceedings of the IEEE International Conference on Robotics andAutomation, pages 3256–3261, 2001.

[18] C. Gosselin and J. Angeles. The optimum kinematic design ofa spherical three-dof-of-freedom parallel manipulator. ASMEJournal of mechanisms, Transmissions, and Automation in De-sign, 111, 1989.

[19] C. Gosselin and E. Lavoie. On the kinematic design of sphericalthree-dof-of-freedom parallel manipulator. International Journalof Robotics Research, 12(4), 1993.

[20] F. Gao, W.M. Li, X.C. Zhao, Z.L. Jin, and H. Zhao. New kine-matic structures for 2-, 3-, 4-, and 5-dof parallel manipulatordesigns. Mechanism and Machine Theory, 37:1395–1411, 2002.

[21] Z. Huang and Q.C. Li. On the type synthesis of lower-mobilityparallel manipulators. In Proceedings of the workshop on Funda-mental Issues and Future Research Directions for Parallel Mech-anisms and Manipulators, pages 272–283, 2002.

[22] Jean-Pierre Merlet. Parallel Robots. Kluwer Academic Publish-ers, 2000.

[23] J.M. Herve and F. Sparacino. Structural synthesis of parallelrobots generating spatial translation. In Proceedings of IEEEInternational Conference on Robotics and Automation, pages808–813, 1991.

[24] J.M. Herve. The planar spherical kinematicbond: Implementation in parallel mechanisms. Inwww.parallelmic.org/Reviews/Review013.html, pages 1–19, 2003.

[25] J. Angeles. The qualitative synthesis of parallel manipulators. InProceedings of the workshop on Fundamental Issues and FutureResearch Directions for Parallel Mechanisms and Manipulators,pages 160–169, 2002.

[26] Z. Huang Q.C. Li and J.M. Herve. Type synthesis of 3r2t 5-dofparallel mechanisms using the lie group of displacements. IEEETransactions on Robotics and Automation, 20(2):181–190, 2004.

[27] R. Murray, Z.X. Li, and S. Sastry. A Mathematical Introductionto Robotic Manipulation. CRC Press, 1994.

[28] J.M. Selig. Geometrical Methods in Robotics. Springer-Verlag,1996.

[29] W. Boothby. An Introduction to Differentiable Manifolds andRiemannian Geometry. Academic Press, 2nd edition edition,1986.

[30] A.W. Knapp. Lie groups beyond an introduction. Boston :Birkhauser, 2002.

[31] J. Beckers, J. Patera, M. Perroud, and P. Winternitz. Sub-groups of the euclidean group and symmetry breaking in nonrel-ativistic quantum mechanics. Journal of Mathematical Physics,18(1):72–83, 1977.

[32] H. Zhao F. Gao, B. Peng and W. Li. Analysis of a novel 5-dof fully parallel kinematic machine tool. Submitted to IEEETransactions on Robotics and Automation, 2004.

[33] W.P. Koevermans et al. Design and performance of the four d.o.f.motion system of the nlr research flight simulator. In AGARDconference proceedings No. 198, flight simulation, pages 17/1–17/11, Oct. 1975.