You are on page 1of 30

Sheth–Uicker convention revisited

Bertold Bongardt ⁎
Robotics Innovation Center, DFKI, Robert-Hooke-Straße 5, 28359 Bremen, Germany
a r t i c l e i n f o a b s t r a c t
Article history:
Received 22 October 2012
Received in revised form 14 May 2013
Accepted 17 May 2013
Available online 2 July 2013
In this article, different conventions for specifying kinematics of mechanisms and their properties
are reviewed with emphasis on the convention developed by Sheth and Uicker in 1971. This
convention partitions displacements in joint and link displacements and decomposes these
displacements into three axial screw displacements. Because of this systematic construction, the
convention features several practical and theoretical preferences which are reflected in this
article. To do so, two comparisons are made: first, the Sheth–Uicker convention is compared to
other kinematic conventions. Second, the convention – as the Dual Euler Angle representation of
finite spatial displacements – is placed into the context of three other popular displacement
representations. To enable these comparisons in a consistent manner, notations of necessary
entities are assembled, adapted, or newly defined. In general, this article is intended as a
contribution to the development of a commonly accepted normal form for kinematics of
mechanisms.
© 2013 Elsevier Ltd. All rights reserved.
Keywords:
Kinematic modeling
Parallel mechanisms
Graph theory
Representation theory
Screw theory
Euler angles
1. Introduction
Motivation. This overview of ‘normal forms of kinematics’ emphasizes the convention developed by Sheth and Uicker
in 1971 [1]. It points out the practical and theoretical preferences that this convention features for computational and
comparative purposes, since this has not been provided for systematically by literature to the author's knowledge.
Instead, the Sheth–Uicker convention was sometimes considered as a ‘complicated niche-convention’ that is only
useful for dealing with parallel mechanisms. However, as explained here, the convention features the right degree of
complexity to represent arbitrary mechanisms conveniently. This main result is worked out by contrasting Sheth–
Uicker's convention to the popular Denavit–Hartenberg convention as well as to the Finite Twist representation of
spatial displacement in Section 4. In the two preceding sections, the necessary material is prepared to conduct these
comparisons. This paper is an abridged version of a technical report [2] that contains further remarks, relationships and
figures.
Notation. Throughout this article, several conventions for notation are used. They are briefly introduced here. A vector is
denoted by a small bold letter, e.g. a, a matrix by a capital bold letter, e.g. M. Sets are represented by calligraphic letters, like S.
Lines, screws, displacements, links, joints, and frames are denoted by capital letters. Names of methods are set in typewriter font,
Mechanism and Machine Theory 69 (2013) 200–229
⁎ Tel.: +49 421 178 45 4137; fax: +49 421 178 45 6613.
E-mail address: bertold.bongardt@dfki.de.
0094-114X/$ – see front matter © 2013 Elsevier Ltd. All rights reserved.
http://dx.doi.org/10.1016/j.mechmachtheory.2013.05.008
Contents lists available at ScienceDirect
Mechanism and Machine Theory
j our nal homepage: www. el sevi er . com/ l ocat e/ mechmt
e.g. f. An entity that is normalized is attached with a hat, such as ^: ð Þ. The imaginary unit is denoted by i ¼
ffiffiffiffiffiffiffiffi
−1
p
. The vector i = (i,
j, k)
T
denotes the vector containing the three imaginary units i, j, k for which i
2
= j
2
= k
2
= ijk = −1 hold. The dual unit is
designated¼
ffiffiffi
0
p
, a dual entity is equipped with a tilde as ~: ð Þ. The dual part of a dual entity is indicated by a ring :
°
_ _
. Time-variant
entities are marked as : ð Þ, time-invariant entities as : ð Þ. The vectors on the standard axes are denoted as e
x
, e
y
, e
z
. The notation for
transposing (.)
T
is not used for vectors: instead of writing a
T
·b, a shorter notation is used with the symbol ∗ to indicate the sum of
element-wise multiplications, such that a ∗ b = ∑a
i
·b
i
. Two orthogonal projections are used in this article. First, the orthogonal
projection of a vector b ∈R
d
onto some vector a ∈R
d
is denoted as π
a
(b), and second, the orthogonal projection of a vector b∈R
d
into the orthogonal complement a

⊂R
d
of some vector a is denoted as τ
a
(b),
π
a
b ð Þ ¼
b à a
a à a
· a; τ
a
b ð Þ ¼ bÀ
π
a
b ð Þ: ð1Þ
The sign · indicates a scalar, vector, or matrix multiplication. Multiplications of dual entities are marked with a ring,
such as O. The operator (.)

creates the skew-symmetric matrix that corresponds to a vector; in the other direction,
the operator (.)

extracts the axis vector from a skew-symmetric matrix. The operator (.)

, swaps the primal and dual
part of a dual entity. Scalar products are denoted with 〈.,.〉, the brackets [.,.] denote Lie brackets, a generalization of the
cross product ×. Used with a single entity a, this type of brackets is used to denote a corresponding equivalence class
[a].
Structure. This document is structured as follows: In Section 2, prerequisites of different disciplines are compiled. In
Section 3, the central Sheth–Uicker (SU) convention is introduced, next to the two-frame, the classic and the modified
Denavit–Hartenberg (DH) convention. The preparations from Section 2 are used here. Each of the four conventions is
introduced, first, in matrix form, second, in terms of a frame-placing procedure, and, third, if possible, by means of finite
twists. In Section 3.6, an example is provided for illustration: it shows the usage of the augmented convention in comparison
to classic and modified DH conventions. The exemplary mechanism features a link whose joint axes define a ‘skew line
geometry’. Section 4 is the central section of this article: first, the augmented convention is compared amongst other
kinematic conventions, and second, the augmented convention is compared as a displacement representation (with regard to
Section 2.5). In doing so, the properties of the Sheth–Uicker convention are worked out. Finally, a comprehensive overview is
provided in Section 5.
2. Prerequsites
The structure of this section is as follows: In Section 2.1, definitions for frames and their poses are compiled: there, a frame-based
and graph-based notation is prepared for the succeeding sections. In Section 2.2, a set of definitions is introduced for dealing with
mechanisms. In particular, in Section 2.2, the problem of the kinematic specification of a mechanism (Problem A) is established and
discussed. In Section 2.3, basic facts about the geometry of lines and screws are compiled. Finally, in Section 2.5, four types of
representations of displacements are presented. The terms homogeneous-linear, vectorial, symmetric, and sequential are used to
describe these types. All of these four popular representations are used in the final comparison section (Section 4).
2.1. Frames and poses
A frame F is a simple term for local coordinate system. Here, a frame ‘remains the same’ if it moves over time. Therefore,
additionally the term ‘pose’ is introduced which is only valid for a certain timestep.
Pose. A pose P ∈ SE(3) describes the rotation and the translation relative to the origin. If a frame is associated with some frame,
it is marked as P = P
F
. In matrix notation, a pose is given as
P ¼
x y z p
0 0 0 1
_ _
: ð2Þ
In general, the pose of a frame P
F
is a function of time (this can be indicated by the overline notationP) and of the mechanism(its
links and joints, the design parameters and configuration variables) P
F
¼ P
FM
t ð Þ. We omit the pose and only speak about the frame
F ¼ F
M
, if (i) the concrete pose is not needed, or (ii) the initial pose (at timestep t = 1) of the frame is meant.
Poses via lines. The pose P of a frame F can alternately be denoted by the set of the lines X, Y, Z of the axes of the frame,
so that simply P = {X, Y, Z}. In Section 2.3, lines are formally introduced. The location p of the frame F can be determined
as p = X ∩ Y ∩ Z.
201 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
Frame Axes Principle. In kinematics, the axes of frames are ordered and interpreted according to a common principle: Let F be a
(posed) frame as defined in Eq. (2). Optionally, let F be attached to some simple joint J.
1. The z axis is the major axis of F. It indicates the dominant direction of a frame. In the case that F is attached to J, the line Z of the z
axis coincides with the joint axis.
1
2. The x axis is the minor axis of F. It indicates the secondary direction of a frame. In the case that F is attached to J, the
configuration of J is indicated by the line X of the x axis.
3. The y axis is the redundant axis of F. Its direction follows from the right-hand rule, i.e. y = z × x.
Definition 1. Pose sets and frame sets.
Let F ¼ F
1
; F
2
; …; F
k
ð Þ be some set of frames of cardinality F j j ¼ k, thenP ¼ P F ð Þ denotes the set of poses of these frames, with
P ∈ SE 3 ð Þ
k
, as
P F ð Þ ¼ P
1
; P
2
; …; P
k
ð Þ ¼ P F
1
ð Þ; P F
2
ð Þ; …; P F
k
ð Þ ð Þ:
As for single poses, the following additional notation is convenient also for sets of poses: 1). If the initial pose at timestep t = 1
is meant, then instead of using the symbol P, simplyF can be used. 2). If the time variance of a pose shall be indicated the overline
notation is used: P ¼ P t ð Þ ¼ P F t ð Þ ð Þ.
Definition 2. Link covers and minimal link covers.
Let F
L
denote the set of the frames that are attached to some link L ∈F.
2
Then, a frameset F is called covering if
F
L
j j > 0 ∀ L ∈L. A covering frameset is denoted as
^
F. A frameset F is called minimal if F
L
j j > 1 ∀ L ∈L.
2.2. Mechanisms
Definition 3. Mechanism (type), links and joints.
A (type of a) mechanism
3
M is defined as the tuple M ¼ L; J ð Þ where L denotes the set of sorted links and J the set of sorted
joints as
L ¼ L
1
; L
2
; …; L
n
f g J ¼ J
i
1
;j
1
; J
i
2
;j
2
; …; J
i
m
;j
m
_ _
: ð3Þ
Thereby, a joint
4
J
i
k
;j
k
∈J physically connects a link L
i
k
∈L with a link L
j
k
∈L.
Definition 4. Variables and parameters.
The vector of configuration variables is denoted as q ∈ Q where Q is the configuration space of M. The vector of design
parameters is denoted as d ∈ D where D is the design space of M.
Definition 5. (Euclidean) mechanism.
A (Euclidean) mechanism
5
M is defined as the tuple of mechanism type and the vector of design parameters M ¼ M; d ð Þ.
Definition 6. Mechanism with a configuration.
Given a Euclidean mechanism M, and a configuration vector q = q(t) of some timestep t, the ‘mechanisms in that
configuration’ can formally be denoted as
M q t ð Þ ð Þ ¼ L; J ð Þ; d; q t ð Þ ð Þ ð Þ:
1
For example the rotation, translation, or spindle axis.
2
The overall frame set F can be partitioned as F ¼ F
L1
; ∪F
L1
∪⋯∪F
Ln
.
3
Or M is the topology or the combinatorics of a mechanism.
4
Or often called a pair.
5
Or M is a realization of the mechanism type M .
202 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
Definition 7. Mechanism with unique posture.
Given a Euclidean mechanismM, and a covering frame set
^
F together with the set of poses of these frames at some timestep t,
^
P ¼ P
^
F; t
_ _
. Then, this covering pose set defines a unique posture, such that ‘the mechanism in that unique posture’
^
P can
formally be denoted as
M
^
P t ð Þ
_ _
¼ L; J;
^
P t ð Þ
_ _
:
If the time is not important (in most of the cases treated), but the (Euclidean) mechanism shall be described in its initial
posture at timestep t = 1, (thus, for short
^
P ¼
^
P 1 ð Þ) the former equation simplifies to
^
M ¼ L; J
^
; F
_ _
; ð4Þ
hereby, L denotes the set of links and J denotes the set of joints, as introduced in Eq. (3). Therefore, the unique posture can be
denoted as
^
P ¼
^
P
M
¼ P
^
F
M
_ _
.
Problem A. Kinematic specification of mechanism.
Given an arbitrary, physical mechanism M, a specification of M is needed that enables to create
(i) a physical copy of the mechanism featuring the same kinematic properties,
(ii) a software model of the mechanism featuring the same kinematic properties,
without knowing the original mechanism. Additionally, as indicated in the introduction, the specification should be human-
readable, compact, and should reflect topology and geometry of the mechanism.
Specification by frames. By means of using frames (i.e. by Definitions 2 and 7) the Problemof Kinematic Specification (ProblemA)
boils down to the following two questions:
1. What frames shall be selected to describe the posture of the links?
2. How shall a displacement between a pair of frames be represented?
Purposes and properties of kinematic notation conventions. As of today, the problem of kinematic specification has not yet
been solved. With regard to that, Thomas et al. resumed “till now, (…) a common notation for parallel manipulators has not
been accepted” [3], and Roth stated that “essentially what remains is largely a question of notation.” [4]. It is about choosing
an appropriate convention: since each notation convention has different characteristics, it may not be the best for all
purposes. In [3] and [2] different properties to judge about kinematic conventions are provided: conventions for kinematic
modeling have to deal with a ‘trade-off’ between compactness on the one hand, and generality and intuitiveness on the other
hand.
a b
Fig. 1. Visualization of a line
~
G a; b ð Þ and a twist $, with screw axis S
0
¼
~
G. (a) A line
~
G a; b ð Þ ¼ b Àa; a Âb ½ Š ¼ ω; v
0
½ Š with direction ω and orthogonal moment v
0
.
(b) A twist $
F
D
,
F
A
= (ω, v) = (ω, ω × r + h · ω) with direction ω and moment v depending on pitch h.
203 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
2.3. Geometry of lines, screws and twists
Lines are one-dimensional affine-linear subspaces of R
3
(see Fig. 1(a)). Algebraically, lines can be represented in the
parametric and in the homogeneous form. Let G be a line passing through two points a and b. Define ω
L
:= b − a. Then the
parametric form of the line reads as
G ¼ G a
L
; ω
L
ð Þ ¼ a
L
þλ
L
· ω
L
whereby a
L
denotes an anchor point of the line, and ω
L
denotes the direction vector. Again, let G be a line passing through two
points a = (a
0
, a) and b = (b
0
, b). Then the homogeneous form of the line reads
G ¼ G a; b ð Þ ¼ a
0
; a ð Þ∧ b
0
; b ð Þ ¼ a
0
b Àb
0
a; a Âb ð Þ ¼ ω; v
0
ð Þ:
The coordinates of the homogeneous form are also called Plücker coordinates. In this article, vector ω is referred to as the
direction, and v
0
as the orthogonal moment of the line.
In Table 1, the four possible poses of a pair of lines are compared. By means of homogeneous coordinates and their scalar
product, these four poses can be conveniently analyzed: Two lines
~
G
1 ð Þ
and
~
G
2 ð Þ
are coplanar (coincident, parallel, or intersecting)
if and only if
~
G
1 ð Þ
;
~
G
1 ð Þ
_ _

¼
1
2
· ω
1 ð Þ
à v
2 ð Þ
0
þv
1 ð Þ
0
à ω
2 ð Þ
_ _
¼ 0:
The translational and the rotational distance of two lines
~
G
1 ð Þ
,
~
G
2 ð Þ
can be computed together via the dual scalar product as
~
G
1 ð Þ
;
~
G
2 ð Þ
_ _
~
G
¼ cos ϕ− Á dÁ sin ϕ:
See, for example [5] and [6, Section 11.7.1], for further details about the analysis by homogeneous coordinates. See, for example
[7], for numerically stable computations. See, for example [8,9], for robotic modeling with respect to Grassmann–Cayley algebras.
Closest points and common perpendicular. Given two lines, the closest points and the common perpendicular of this pair of lines
can be determined. Therefore, one has to distinguish the skew and the coplanar cases. In the case of two given lines G and H that
are skew, for each line, one can find a point that has closest distance to the other line. For example, the closest point on G to H will
be denoted by π
G
(H) via the orthogonal projections for lines
6
as
π
G
H ð Þ ¼ argmin
p∈G
dist p; H ð Þ:
If two lines G and H are skew, then there is a unique line GH that connects the lines L and G with a minimal length. This line is
called ‘the common perpendicular’ GH = ⊥(G, H) and defined as
GH ¼ ⊥ G; H ð Þ ¼ π
G
H ð Þ þλ
GH
· ω
GH
:
The distance of two lines can be computed via the closest points π
G
(H) and π
H
(G) as d = dist(G, H) = Nπ
G
(H) − π
H
(G)N.
Table 1
Four relative poses (coincident, parallel, intersecting, skew) of two lines together with some characteristic entities.
Configuration Symbol Common points Directions Distance Special points
Coincident Infinite Linear dependent d = 0 Anchor midpoint
Parallel None Linear dependent d > 0 Anchor midpoint projections
Intersecting One
Linear independent
d = 0 Intersection point
Skew None Linear independent d > 0 Closest points
6
In accordance with orthogonal projections for vectors, see Eq. (1), that is π
x
y ð Þ ¼ argmin
κ

x; κ∈R
dist κ

x; y ð Þ.
204 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
In the case of two given lines G and H that are coplanar, the definitions of closest points and common perpendicular need to be
adjusted by ‘generalized variants’. For the case of intersecting lines, the closest points π
G
(L) and π
L
(G) coincide with the
intersection point L ∩ G. The distance of intersecting lines is dist(P, H) = 0. In the case of coincident and parallel lines, neither
π
G
(H) nor π
H
(G) can be determined from the geometry, since all points provide the same (minimal) distance to the other line.
However, if an anchor point of the line is defined (which happens in kinematics applications in the following sections), the
following ‘trick’ can be used: given the anchor points a
G
and a
H
of the lines, the midpoint m
GH
of those two m
GH
¼
1
2
a
G
þa
H
ð Þ is
determined. Then, the closest points of G to this midpoint m
GH
is determined as π
G
(m
DH
) and defined to be ‘the’ closest point
π
G
(m
H
) on G to H. For the other line H, the computation works analogously.
Definition 8. Generalized closest points.
Given two lines G
ij
and G
jk
with anchor points p
ij
, p
jk
, the generalized closest point π

G
ij
G
jk
_ _
on G
ij
to G
jk
is defined as
π

G
ij
G
jk
_ _
¼
π
G
ij
G
jk
_ _
if lines G
ij
; G
jk
are intersecting or skew;
1
2
· π
G
ij
p
ij
þp
jk
_ _
if lines G
ij
; G
jk
are coincident or parallel:
_
_
_
The generalized closest point π

G
ij
G
jk
_ _
on G
ij
equals (i) the closest point on line G
ij
in case of skew lines, (ii) the intersection point
in case of intersecting lines, (iii) the midpoint of the anchor points in case of coincident lines, and (iv) the projection midpoint of the
anchor points in case of parallel lines, see Table 1.
Definition 9. Generalized perpendicular direction.
Given two lines G
ij
and G
jk
with directions ω
ij
and ω
jk
and anchor points p
ij
and p
jk
, the generalized perpendicular direction
ω
(ij),(jk)

is defined as
ω

ij ð Þ; jk ð Þ
¼ ⊥

ω
ij
; ω
jk
_ _
¼
ω
ij
Âω
jk
if lines G
ij
; G
jk
are intersecting or skew;
τ
ω
ij
p
jk
−p
ij
_ _
if lines G
ij
; G
jk
are coincident or parallel:
_
Based on the preceding two definitions, the generalized common perpendicular ⊥

(G, H) is defined as follows.
Definition 10. Generalized common orthogonal.
Given two lines G
ij
and G
jk
and with directions ω
ij
, and ω
jk
and anchor points p
ij
, and p
jk
, the line that passes through
generalized closest points π

G
ij
G
jk
_ _
and π

G
jk
G
ij
_ _
has a direction ω
(ij),(jk)

and reads in parametric form as
G

ij ð Þ; jk ð Þ
¼ ⊥

G
ij
; G
jk
_ _
¼ π

G
ij
G
jk
_ _
þλ
GH
· ω

ij ð Þ; jk ð Þ
:
By means of the last three definitions, it is possible to determine a ‘shortest connection’ between two lines with given anchors,
independent of how these are opposed to each other. For the remainder of this article, two additional properties of lines are
needed. Namely, these are orthogonality and linearity of lines, screws, and twists.
Orthogonality. Two lines G
ij
and G
jk
, two screws S
ij
and S
jk
, or two twists $
ij
and $
jk
are orthogonal if their directions ω
ij
and ω
jk
are orthogonal; in particular, if the equality ω
ij
∗ ω
jk
= 0 is fulfilled.
Linearity. A line G, screwS, or twist $ that fulfills the property ∥r∥ = 0 is called linear, otherwise it is called affine. A line G, screwS, or
twist $ that is linear and its direction is aligned to one of the standard axes e
x
, e
y
, or e
z
is called axial. In particular, in the remainder of this
article, an axial twist is marked as $
x
, $
y
, or $
z
. In [10], the efficient algorithmic treatment of axial twists is described.
2.4. The passive interpretation of displacements
A matrix M can be used as a linear operator in two basic ways: either, it is used with right-multiplication M∙ r, so that it acts as
r ↦ Mr, or it is used with left-multiplication l
T
∙M, so that it acts as l ↦ l
T
M. For rigid body displacements, thus for a matrix with shape
M ¼
R t
0 1
_ _
as in Eq. (6), this corresponds to the active and the passive interpretation of a displacement (see, for example [11]).
In this article, the passive interpretation is always used. To make the notation explicit, the term ‘spatial displacement’ is
introduced to describe the ‘relative, finite, spatial offset’ between two poses at the same timestep: The term spatial displacement is
used as a synonym for a proper rigid body transformation in its passive interpretation. Let t be a fixed and arbitrary timestep, let
F
D
and F
A
be two frames in the same global coordinate system. Let P
D
(t)
and P
A
(t)
be the matrices (see Section 2.5.1) that describe the
205 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
poses of these frames at this timestep t. Then, the spatial displacement D
t ð Þ
D;A ð Þ
and its matrix M
t ð Þ
D;A ð Þ
between the two frames from
F
D
to F
A
is expressed via
D
t ð Þ
D;A ð Þ
: F
t ð Þ
D

p
F
t ð Þ
A
M
t ð Þ
D;A ð Þ
¼ P
t ð Þ
D
_ _
−1
⋅P
t ð Þ
A
: ð5Þ
The passive interpretation is indicated by the usage of the symbol ↦
p
. This notation is chosen so that it matches the notation in
classic robotics textbooks (e.g., [12]): The forward kinematics map of a kinematic chain is computed by composition from left to
right as M
(0,n)
= M
(0,1)
∙ M
(1,2)
∙ …. ∙ M
(n − 1,n)
.
In other words, a ‘passive map from frame F
D
to frame F
A
’, is equivalent to a basis change transform from basis F
A
to basis F
D
.
According to this definition, poses (introduced in Section 2.1) can be interpreted as certain spatial displacements: a pose of a
frame F
X
describes a ‘spatial displacement relative to the global coordinate frame F
O
' so that P
X
¼ M
O;X
¼ P
t ð Þ
O
_ _
−1
⋅P
t ð Þ
X
¼ P
t ð Þ
X
. In
[2], spatial displacements are opposed to temporal displacements.
2.5. Representations for finite displacements
In the following sections, four representations are briefly introduced. These are the homogeneous-linear representation in
Section 2.5.1, the vectorial representation in Section 2.5.2, the symmetric representation in Section 2.5.3, and the sequential
representation in Section 2.5.4.
2.5.1. Homogeneous-linear representation
The homogeneous-linear representation describes rotations and displacements by means of quadratic matrices from GL(3)
and GL(3), respectively, and is the most popular form.
Rotation matrix. A rotation matrix R ∈ GL(3) represents a linear map which has the properties that R·R
T
= I
3
and det R = 1.
In particular, the first property expresses the orthogonality of a matrix, i.e. the three columns of R are a set of orthogonal unit
vectors. From this follows that a rotation preserves absolute values of angles. From the second property follows it that a rotation
preserves volume and orientation. These two features are expressed by the conditions |det R| = 1 and det R > 0.
Homogeneous matrix. The homogeneous matrix of a displacement is an element of GL(4); for such a matrix, the symbol M is
used here. A homogeneous matrix M incorporates a linear rotation (via rotation matrix R ∈ GL(3)) and an affine linear translation
(via the translation vector t ∈R
3
that is linearized by the addition of the fourth dimension), denoted as
M ¼
R t
0 1
_ _
: ð6Þ
Any finite spatial displacement D
(a,b)
can be represented by means of a homogeneous matrix. This homogeneous-linear type
representation is characterized as
7
:
}Homogeneous Matrix :¼ Rotation Matrix þTranslation Vector}: ðAÞ
2.5.2. Vectorial representations
Vectorial representations of a rotation and of a displacement are based on Euler's Rotation Theorem(1775), and Chasles' Twist
Theorem (1830). Proofs of both theorems are provided in [13]. For the topic of vectorial representation, also see the excellent
articles [14] and [15].
Theorem 1. Euler's rotation theorem.
Any displacement of a rigid body such that a point on the rigid body, say O, remains fixed, is equivalent to a rotation about a fixed
axis ω through the point O [16].
The vector ω
#
that lies on the rotation axis together with its length ∥ω
#
∥ can be computed as
ω
#
¼ R−R
T
_ _

‖ω
#
‖ ¼ 2 · sin ϕ; ð7Þ
and the rotation angle ϕ and the unit vector ω of the rotation axis can be derived as
ϕ ¼ acos
tr R ð Þ−1
2
_ _
^
ω ¼
ω
#
= ‖ω
#
‖ if sin ϕ ≠0
0 if sin ϕ ¼ 0
:
_
ð8Þ
7
This type of characterization appears frequently in this survey.
206 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
The tuple of angle and direction (ϕ, ω̂ ) provides a representation for any spatial rotational displacement, like this:
}Rotation :¼ Rotation Angle þRotation Axis}: ðBÞ
With regard to this characterization, it is important to note that the orientation of the rotation axis determines the direction of
rotation.
8
As for planar rotations, the angle value of a rotationis made unique, if a modulo operationto anhalf-openinterval, e.g. (0, 2π),
is applied.
The following famous Chasles Theorem is a generalization both of the theorem concerning the rotation axis of spatial rotations
(Theorem 1) and of the theorem concerning the rotation pole of planar displacements (Theorem 3).
Theorem 2. Chasles' Displacement Theorem.
The most general rigid body displacement can be produced by a translation along a line followed (or preceded) by a rotation about
that line [16].
In particular, the theorem states that an affine line (that generalizes the rotation pole and the (linear) rotation axis) together
with a translation and a rotation, in short, a twist, can be found. In this article, the “translation along a line” is referred to as
absolute translation
9
and denoted by s. The length of the absolute translation is referred to as shift s = NsN. The “rotation about
that line” is shortly referred to as spin and denoted by ϕ. Since a line with six homogeneous coordinates only contains four
‘effective’ parameters, a version that is scaled by a certain factor can be used to describe a twist along that line. In other words,
with a finite spin ϕ and a finite shift s = NsN we can write:
$
G
ϕ; s ð Þ ¼ $
G
ð
~
ϕÞ≅ ϕ;
^
ω; s;
^
v
0
ð Þ: ð9Þ
We reach the following external characterization of a twist: a screw displacement can be interpreted as a segment with angle
(spin) ϕ and height (shift) s of a cylinder with radius r, aligned along (the axis G of) a screw. In Fig. 1(b), this cylinder segment is
also indicated.
}Twist :¼ Line þSpin þShift}: ðCÞ
Given a displacement in terms of a rotation matrix R and a translation vector t, Eq. (8) provides the way to compute axis
direction ω
#
and spin ϕ. The computation of absolute translation s and orthogonal translation t
0
can be conducted via the
orthogonal decomposition of the translation vector t. The translation vector t (see Eq. (6)) can be decomposed into absolute
translation s along the screw axis, and orthogonal translation t
0
that lies in the plane orthogonal to the screw axis as
t ¼ π
S
0 t ð Þ þτ
S
0 t ð Þ ¼ s þt
0
: ð10Þ
2.5.3. Symmetric representation
Quaternions. A quaternion q ∈H is a generalized complex number and can be denoted in Gaussian form as q = q
0
+ i ∗ q. In
polar form, it reads as q ¼ ‖q‖⋅ cos
ϕ
2
þ sin
ϕ
2
⋅i Ã
^
ω
_ _
, where next to absolute value q and argument
ϕ
2
a rotation axis
^
ω needs to be
defined. Like lines, quaternions are elements of a projective space, so that the rotation encoded in the quaternion is invariant to
the quaternion norm (modulo a volume scaling). Therefore, for a finite rotational displacement R ∈ SO(3), the corresponding
quaternion is normalized to the unit quaternion
^
q ¼ q=‖q‖ with ‖
^
q‖ ¼ 1.
^
q ¼ cos
ϕ
2
þ sin
ϕ
2
· i Ã
^
ω: ð11Þ
Essentially, unit quaternions contain the angle and axis of the rotation R (see Section 2.5.2) in a ‘renormalized’ manner, such
that the vector is an element of a sphere element
^
q ∈S 3 ð Þ⊂R
4
. A simple characterization is stated:
}Unit Quaternion :¼ Rotation Angle þRotation Axis}: ðDÞ
Dual quaternions. Generally, a dual quaternion q̃ consists of the sum of a primal quaternion q and a dual quaternion q
°
, so that it
can be denoted in Gaussian form as q̃ = q + · q
°
= q
0
+ i ∗ q + ·(q
°
0
+ i ∗ q
°
). For a finite spatial displacement D ∈ SE(3), the
corresponding dual quaternion is normalized to the dual unit quaternion
^
~
q ¼
~
q=‖
~
q‖ with ‖
^
~
q‖ ¼ 1. The dual unit quaternion
^
~
q can
8
In the considered use case of mechanism kinematics, the orientation of the rotation axis is defined by the way the joints are assembled within the overall
mechanisms.
9
For the term ‘Rodrigues’ absolute translation' see [17].
207 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
be determined by means of the dual angle
~
ϕ ¼ ϕ; s ð Þ and the dual vector
^
G ¼
^
ω;
^
v
0
ð Þ. In particular, the following description, as a
generalization of Eq. (11), is possible
10
:
^
~
q ¼ cos
~
ϕ
2
þsin
~
ϕ
2
·
^
G ð12Þ
A third alternative to represent a dual unit quaternion by means of setting q
R
= q̂ from Eq. (11), and q
T
¼ 0 þ Á i Ã
t
2
, reads
like
^
~
q ¼ q
R
þ q
R
q
T
ð Þ. From Eq. (12), an interpretation of a quaternion displacement can be derived that consists of the four
geometric entities ϕ;
^
ω; s;
^
v
0
ð Þ which specify a twist displacement independently of the screw type that was chosen, see Eq. (9):
dual unit quaternions renormalize this information such that
^
~
q∈
~
S 3 ð Þ⊂R
4
þ Á R
4
. Essentially, the interpretation
}Dual Unit Quaternion :¼ Rotation Angle þRotation Axis þShift þMoment}: ðEÞ
is deduced. A dual unit quaternion
^
~
q as representations of a finite displacement D ∈ SE(3) stands in context with other dual and
complex constructions, see [2]. For more information about dual quaternions, see, for example [18, Section 9.3], [19, Appendix],
etc. See, for example [20] for dual complex number algebra.
2.5.4. Sequential representations
‘Passive’ Euler angles in Bunge convention. One classic set of Euler angles is the usage in the z − x′ − z″ order (the so-called Euler
angle sequence for orbits [21, Section 4.5.1] or Bunge convention [22]). In this sequence, the combination of three angles (γ, β, α) is
applied. In the passive interpretation this means: first, a basis change from F
D
to F
C
about degree γ is performed, then, from F
C
to F
B
about the degree β, finally, from F
B
to F
A
about α.
R γ; β; α ð Þ :¼ R
p ð Þ
dyn
γ; β; α ð Þ ¼ R
p ð Þ
sta
α; β; γ ð Þ ¼
c
γ
c
α
−s
γ
c
β
s
α
−c
γ
s
α
−s
γ
c
β
c
α
s
γ
s
β
s
γ
c
α
þc
γ
c
β
s
α
−s
γ
s
α
þc
γ
c
β
c
α
−c
γ
s
β
s
β
s
α
s
β
c
α
c
β
_
_
_
_
ð13Þ
For the sake of brevity, for some angle θ the common abbreviations s
θ
= sin θ and c
θ
= cos θ are used in the equation
above.
R γ; β; α ð Þ :¼ R
p ð Þ
dyn
γ; β; α ð Þ ¼ R
z
γ ð Þ∘R
x′
β ð Þ∘R
z″
α ð Þ
Characterization:
}EulerÀBungeRotation :¼ z‐Rotation þx

‐Rotation þz

‐Rotation”: ðFÞ
Dual ‘passive’ Euler angles in Bunge convention. The concept of Euler angles can be generalized by dualization, so that given a
displacement D
(D,A)
(Eq. (5)) between frames a ‘sequential representation’ can be derived. The term ‘Dual Euler Angles’ was first
used in applied kinematics by Yang for the dynamic study of spatial five-link mechanisms [23], and for the dynamic study offset
unsymmetric gyroscope [24]. In particular, in [23, Fig. 1] the representation of spatial displacements by Dual Euler Angles is
explained. In those papers, computations are performed by means of 3 × 3 dual transformation matrices M
˜
∈ GL
˜
(3) within the
active interpretation.
The dual Euler parameters in Bunge convention are the ‘Yang–Sheth–Uicker’ sequence ũ = (γ̃ , β
̃
, α̃ ) = ((γ, c), (β, b), (α, a)).
In function form, by means of axial twists (that were introduced in Section 2.3), this reads as

~
γ
~
; β ~ ; αÞ ¼ D
p ð Þ
dyn
ð
~
γ
~
; β ~ ; αÞ ¼ $
z
~
γ ð Þ

$
x
′ ð
~
βÞ

$
z

~ α ð Þ ¼ $
˜
γ ∘
$
˜ β ∘
$
˜ α
:
In a more verbal form, the following characterization is possible:
}Euler−Yang Displacement :¼ Linear‐z‐Twist þLinear‐x

‐Twist þLinear‐z

‐Twist”: ðGÞ
The geometry of this convention is described in more detail in Section 3.3 regarding the Sheth–Uicker convention.
10
Eq. (12) can be derived via the exponential map:
^
~ q ¼ exp
~
ϕ⋅
^
G
2
_ _
¼ cos
~
ϕ
2
þ sin
~
ϕ
2

^
G, see [18, p.214].
208 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
Given the Dual Euler Angles γ̃ , (γ, c), β
̃ = (β, b) and α̃ = (α, a), the matrix form of the displacement is computed via rotation
matrix R and translation vector t. The translation vector t can be computed as
t ¼ t
~
γ
~
; β ~ ; α
_ _
¼ c ·
0
0
1
_
_
_
_
þb · R γ; 0; 0 ð Þ ·
1
0
0
_
_
_
_
þa · R γ; β; 0 ð Þ ·
0
0
1
_
_
_
_
: ð14Þ
Concluding, the homogeneous matrix representation of the displacement D
(D,A)
reads
M ¼ M
~
γ
~
; β ~ ; α
_ _
¼
R t
0 1
_ _
:
with rotation matrix R as defined in Eq. (13) and translation vector t as defined in Eq. (14).
3. Kinematic modeling conventions
In Sections 3.1–3.4, (i) the classic, (ii) the modified Denavit–Hartenberg, (iii) the two-frame Sheth–Uicker, and (iv) the
augmented Sheth–Uicker convention are presented in a unified notation in the following. The link-covering frame set
^
F enables
to determine the unique posture (Definition 7) of a mechanism, and thus to solve Problem A, since each frame is specified by
(at least) one frame. Eq. (4) reads as
^
M ¼ L; J
^
; F
_ _
so that a mechanismwith a link-covering frame set F can be determined in its
unique posture like
^
P t ð Þ ¼ P
^
F
M
t ð Þ
_ _
. So, for each of the four conventions, a certain link-covering frame set will be introduced. At
the end of this section, four additional kinematic modeling conventions are briefly reviewed in Section 3.5.
3.1. Prerequisites
Short notation. In this article, links are enumerated with simple indices, while joints and their axes are enumerated with
double indices to achieve a notation that reflects the topology of the mechanism (see Definition 3). In this section, pairs of lines
(of joint axes) and frames located on these are considered. For this purpose, a short notation is introduced. Let Z
ij
and Z
jk
be two
joint axes that share one index j because the two joints connect with the same link L
j
. Then, the definitions
c
ij
^
k
¼ π

Z
ij
Z
jk
_ _
c
^
i
jk ¼ π

Z
jk
Z
ij
_ _
X
ijk
¼ ⊥

Z
ij
; Z
jk
_ _
shorten notation by canceling redundancy, but still reflect the necessary combinatorics.
11
Frames of the augmented convention are enumerated with triple indices for the same reason. To order to allow intuitive
comparisons of the conventions, let an arbitrary chain of links which are connected by joints be fixed by Li–L
j
–L
k
passing link L
j
. Let
F
ij ð Þ
i
; F
ij ð Þ
j
; F
ij
^
k
; F
^
i
jk; F
jk ð Þ
j
and F
jk ð Þ
k
be the consecutive frames in F
A
associated the chain of links. Then, for the frames that are
attached to link L
j
, the following short notation is defined
F
D
j
:¼ F
ij ð Þ
j
F
C
j
:¼ F
ij
^
k
F
B
j
:¼ F
^
i jk
F
A
j
:¼ F
jk ð Þ
j
: ð15Þ
Parametric and variable poses and displacements. In Definition 1, the overline notation for indicating time variance is introduced
for poses. Similarly, if a displacement D ∈ SE(3) is time variant (it depends on the configuration variables q), the notation D is
used. By contrast, if the displacement D is time invariant (it does not depend on q, but only on the design variables d and the
frames are attached to the same link) then the notation D is used.
3.2. Classic and modified Denavit–Hartenberg conventions
Idea. For the classic DH and the modified convention with frame sets F
C
and F
M
, Eq. (4) reads as
M
C
¼ L; J; F
C
_ _
; M
M
¼ L; J; F
M
_ _
:
11
The ‘hat’ in the used triple index ij
^
k
_ _
can be read as a ‘not’. For example: “the point c
ij
^
k ð Þ
belongs to the line tuple (Z
ij
, Z
jk
). It is that closest point of the line
pair that does not lie on the line which contains the index k in its name”.
209 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
Classic and modified DH convention define minimal link-covering frame sets (see Definition 2), thus F
C
¸
¸
¸
¸
¼ F
M
¸
¸
¸
¸
¼ L j j The
classic DH convention (see [25], and, for instance [12,26]) and its modified variant (see, for example [27,28], [11, p.219])
represent the most popular standard for specifying a kinematic chain. Classic and modified DH convention use a set of four
parameters, namely the quadruple (θ, t), (β, b). Generally, a spatial displacement (defined by two different frames) can be
specified by minimally six parameters (see the twist displacement in Section 2.5.2) — the ‘trick’ of the DH convention is to place
the frames such that the displacement between them can be described via the four parameters θ, t, β, b. The geometric meaning is
described in Tables 3 and 4. Therefore, a distinction has to be made between the four possible cases of line configurations (see
Section 2.3): in the case of coincident and intersecting axes lines, everything ‘is nice’. In the cases of parallel and skew lines, the
frames have to be ‘moved’ according to certain rules (this is also further discussed in Section 4.1.1).
Proximal and distal. The classic DH convention is a distal convention in the sense that a frame j (that is attached to link L
j
) is
located at the end of the common perpendicular X
ijk
= ⊥

(Z
ij
, Z
jk
) on joint axis Z
jk
(see Definition 10). The modified DH
convention is a proximal convention in the sense that a frame j (that is attached to link L
j
) is located at the beginning of the
common perpendicular X
ijk
= ⊥

(Z
ij
, Z
jk
) on joint axes Z
ij
.
12
For a better overview of this frame alignment, see Fig. 2 for classic DH, and Fig. 3 for modified DH conventions. Their drawing
style is adapted from [26]. It is important to note that in contrast to the preceding two-frame convention, generally neither F
B
i
and
F
B
j
(classic) nor F
C
j
and F
C
k
(modified) correspond to the anchor points of the joints.
12
When using, such as for chains, simple joint indices, the classic convention has the unsatisfactory property that a frame j is placed on joint axis j + 1. To
facilitate this situation, the modified version was introduced. In this article, this issue does not occur since tuple indices instead of simple indices are used to
identify joints.
Fig. 2. Classic DH parameters for a displacement between frames F
B
i
and F
B
j
.
Fig. 3. Modified DH parameters for a displacement between F
C
j
and F
C
k
.
210 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
Decomposition into two axial twists. More specifically, each displacement can be decomposed into two screw displacements. By
means of the frame names that were introduced in Eq. (15), the displacements read for the classic convention, and for the
modified convention, resp. as
D
C
ij
: F
B
i

p
F
B
j
D
C
ij
¼ $
z
ðθ
ij
; t
ij
Þ

$
x
ðβ
ijk
; b
ijk
Þ; D
M
jk
: F
C
j

p
F
C
k
D
M
jk
¼ $
x
ðβ
ijk
; b
ijk
Þ

$
z
ðθ
ij
; t
ij
Þ :
Method I. TWO-SU. Frame placings for two-frame convention
(In) A simple joint J
ij
(with anchor point a
ij
joint axis z
ij
) that connects a link L
i
with a link L
j
.
(Out) Frames F
A
i
= F
(ij)
i
and F
D
j
= F
(ij)
j
that are associated to that joint and attached to link L
i
and L
j
.
(p) The locations p
A
i
and p
D
i
frames F
A
i
and F
D
i
are located at the anchor point a
ij
of joint J
ij
.
(z) The z axes z
A
i
and z
D
j
of frames F
A
i
and F
D
j
are aligned along the joint axis z
ij
of joint J
ij
.
(x) The x axes x
A
i
and x
D
j
of frames F
A
i
and F
D
j
are chosen conveniently (e.g. in accordance with the local geometry of
the link they are attached to).
(y) The y axes y
A
i
and y
D
j
of frames F
A
i
and F
D
j
are aligned so that they complete right-hand systems
Discussion. Each DH displacement is expressed by only four parameters. This is achieved by special placements of frames inF
C
,
and F
M
. However, this has the consequence that “in certain circumstances, this will require placing the origin of frame i in a
location that may not be intuitively satisfying, but typically this will not be the case” as Spong and Hutchinson describe in [26].
The aforementioned ‘certain circumstances’ describe the case of skew line geometry; this is illustrated in the exemplary
mechanism in Section 3.6 further analyzed in Section 4.2.1. Many real mechanisms feature skew line geometry. And furthermore,
if one assumes a ‘probabilistic mechanism’ (that might arise from or for a simulation), with randomly defined joint axes, skew
geometries of these appear with probability one.
The property of minimal DH that the x axes of the frames need to be adjusted to so that they intersect with the ‘other’ joint
axis, leads to another disadvantage: since a minimal frame set is chosen and therefore the poses of the frames are influenced by
both, design parameters and configuration variables, the zero posture of the mechanism is implicitly defined by the geometries of
the joint axes pairs and cannot be chosen freely. In particular, it is not possible to adjust the zero configuration to the poses of the
integrated physical joints or to the specific wishes of the modelers.
3.3. Two-frame and augmented Sheth–Uicker conventions
3.3.1. Two-frame
Idea. The idea of the two-frame convention is to achieve a partition of displacement into link and joint displacements. The
practical advantages of such a partition are explained in [29]. Since there are exactly two frames at each joint the convention, in
total, a frame set of size F

j j ¼ 2⋅ J j j is defined. Since for each joint-link pair there is exactly one frame defined, to each link there
are F

L
¸
¸
¸
¸
¼ J
L
j j≥1 frames attached to it, so that the two-frame convention is not minimal (Definition 2). Sheth and Uicker
mention in [1] that this redundancy can be reduced by re-unifying link- and joint displacements for purposes of efficient
computation. For the two-frame convention with frame set F

Eq. (4) becomes
M

¼ L; J; F

_ _
:
Procedure. Method I contains a description of the frame placement routine for the Sheth–Uicker two-frame convention,
TWO-SU.
Decomposition into joint and link displacements. The combined joint-link displacement D
ijk
is decomposed into joint
displacement D
ij
and link displacement D

ijk
like
D
ijk
: F
ij ð Þ
i

p
F
jk ð Þ
j
D
ijk
¼ D
ij ∘
D

ijk
ð16Þ
such that the link displacement D

ijk
is an arbitrary displacement in SE(3) that maps from joint frame F
ij ð Þ
j
to joint frame F
jk ð Þ
j
passively: D

ijk
: F
ij ð Þ
j

p
F
jk ð Þ
j
. It is further decomposed by the augmented convention (Section 3.3).
211 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
The displacement D
ij
is the short notation for D
ij ð Þ
i
; ij ð Þ
j
that expresses the time-dependent displacement between the frames F
ij ð Þ
i
and F
ij ð Þ
j
at joint J
ij
. In the passive interpretation, it can be computed as a spatial displacement as
D
ij
: F
ij ð Þ
i

p
F
ij ð Þ
j
D
ij
¼ F
ij ð Þ
i
_ _
−1

F
ij ð Þ
j
:
In the case of a simple joint, this displacement can be expressed via one finite twist as
D
ij ð Þ
¼ $
~
d
ij
¼ $
z
δ
ij
; d
ij
_ _
:
The handling of other complex joint types is described in the original work by Sheth and Uicker [1].
Computation of forward kinematics. By means of the two-frame convention, the forward kinematics map of a kinematic chain is
computed as
D
1;n ð Þ
¼ D
1;2 ∘
D

1;2;3

D
2;3∘
D

2;3;4



D
n−2;n−1 ð Þ∘
D

n−2;n−1;n ð Þ
¼ D
1;2;3 ð Þ∘
D
2;3;4 ð Þ∘


D
n−3;n−2;n−1 ð Þ∘
D
n−2;n−1;n ð Þ
:
ð17Þ
In [29], it is discussed how the forward kinematics map for kinematic trees can be computed and how kinematic loop
computations can be integrated into that by means of the two-frame convention.
3.3.2. Augmented
Idea. The frames of the minimal DH conventions are located in such a manner that a displacement between the consecutive
frames can be expressed by four parameters: the displacements between two successive frames in F
C
and F
M
may differ by two
screw displacements. In contrast, the frames of the two-frame convention are freely located at the joint positions. Therefore, the
arbitrary spatial displacement between them can be minimally described by six parameters (see vectorial representation in
Section 2.5.2, and sequential representation in Section 2.5.4). The augmented Sheth–Uicker convention uses the latter sequential
Fig. 4. Augmented parameters for a displacement between frames F
D
j
and F
A
j
. These frames may define a pair of skew lines by their z-axes.
212 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
representation and consists of a sequence of three linear screw displacements, or of three Dual Euler Angles. In this section, this
idea is more formalized by introducing the augmented frame set F
A
. Two consecutive frames of this frame set may differ by at least
one screw displacement and can be described by two parameters (that together make a dual angle). Then, for the augmented
convention with frame set F
A
Eq. (4) reads as
M
A
¼ L; J; F
A
_ _
:
Decomposition into three axial twists. Decompose the link displacement D

ijk
from Eq. (16) into three twists D
~ c
ijk
; D
~
b
ijk
; D
~ a
ijk
_ _
. A
sketch of these twists is given in Fig. 4. Then, the decomposition of D

ijk
can be written as
D

ijk
¼ D
~ c
ijk

D
~
b
ijk

D
~ a
ijk
: ð18Þ
Each of the screws is made up by two parameters, thus we have six major parameters, namely the tuple ((γ, c), (β, b), (α, a)).
The geometric meaning of these six parameters is described in Table 5. For further details, see [2].
Procedure. The frame-placing procedure is described in detail in Method II. It describes the frame-placing routine AUG-SU for
augmented convention for a given pair of frames F
ij ð Þ
j
; F
jk ð Þ
j
∈F

; thus after Method I has been executed.
Discussion. The joint frames are aligned according to the Frame Axes Principle from Section 2.1: Z lines indicate the joint axes.
The decomposition takes place along these lines, thus preserving them. This is discussed in Section 4. Table 2 depicts howthe pose
of the line pair of joint axes can be read off from a Sheth–Uicker table. In [30], for example, the Sheth–Uicker convention was
applied.
Table 2
Deducing the mutual line pose from Sheth–Uicker parameters: In coincident and parallel cases, the generalized common orthogonal (Definition 10) is placed in
between the frames so that the twists along the Z-line and the Z″-line have identical twist parameters ~ ς=2 ð Þ. In the other two cases, these are arbitrary (.). The
distribution of the zeros (−) and non-zeros (

) of the parameters β and b of β̃-twist along the X′-line allows a unique interpretation of the mutual pose of the
lines.
Symbol Pose of Lines ⇐ γ c β b α a
Coincident ς/2 s/2 – – ς/2 s/2
Parallel ς/2 s/2 –

ς/2
s/2
Intersecting . .


. .
Skew . .
⁎ ⁎
. .
Method II. AUG-SU. Frame placings for augmented SU convention
(In) Two frames F
D
j
= F
(ij)
j
and F
A
j
= F
(jk)
j
at joints J
ij
and J
jk
and attached to link L
j
.
(Out) Two augmenting frames F
C
j
¼ F
ij
^
k
and F
B
j
¼ F
^
i
jk attached to link L
j
.
(⊥) The common perpendicular X
ijk

= ⊥

(Z
ij
, Z
jk
) = (ω
ijk

, v
ijk

) of lines Z
ij
and Z
jk
is computed.
(p) The locations p
C
j
and p
B
j
of frames F
C
j
and F
B
j
are fixed to the closest points c

ij
^
k
andc

^
ijk
of lines z
ij
and z
jk
. The closest points
are determined by c

ij
^
k
¼ x

ijk
∩z
ij
and c

^
ijk
¼ x

ijk
∩z
jk
.
(z) The z axes z
C
j
and z
B
j
of frames F
C
j
and F
B
j
are aligned along the z axes z
D
j
and z
A
j
of frames F
D
j
and F
A
j
.
(x) Do the lines z
D
j
= z
ij
and z
A
j
= z
jk
of frames F
D
j
and F
A
j
share (at least) one common point?
Yes. (in case of coincident and intersecting z axes) No. (in case of parallel and skew z axes)
• The x axes x
C
j
and x
B
j
of frames F
C
j
and F
B
j
are aligned along the x axes x
D
j
and x
A
j
of frames F
D
j
and F
A
j
.
• The x axes x
C
j
and x
B
j
of frames F
C
j
and F
B
j
are aligned along the along the direction
of the common perpendicular ω
ijk

.
(y) The y axes y
C
j
and y
B
j
of frames F
C
j
and F
B
j
are aligned so that they complete right-hand systems.
213 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
Computation of forward kinematics. By means of the augmented Sheth–Uicker convention, the forward kinematics map of a
kinematic chain is computed as
D
1;n ð Þ
¼ D
1;2 ∘
D

1;2;3∘
D
2;3∘
D

2;3;4∘


D
n−2;n−1 ð Þ∘
D

n−2;n−1;n ð Þ
¼ $
~
d
12

$
~ c
123

$
~
b
123

$
~ a
123



$
~
d
n−1;n

$
~ c
n−2;n−1;n

$
~
b
n−2;n−1;n

$
~ a
n−2;n−1;n
;
whereby the first equation is identical to Eq. (17).
3.4. Overview
Tables and sketches. In Tables 3, 4, and 5, the single parameters are listed together with geometric descriptions. In Figs. 2, 3, and
4, corresponding graphical sketches are provided. Fig. 5 permits a comparison of the three aforementioned tables and figures.
Frame sets and conversions. The four different conventions differ according to the frames used. To establish a unified notation,
four different frame sets are introduced. In particular, these are the frame set (i) of the two-frame SU convention F

, (ii) of the
classic DH convention F
C
, (iii) of the modified DH convention F
M
, and (iv) of the augmented SU convention F
A
. In Table 6, the
usage of frames of the different conventions is shown. In particular, the equation about the combinatorics of the frame sets
F
A
¼ F
C
∪F
M
∪ F

can be read off from that table: the augmented frame set is created from the frame sets of the other three conventions. In Fig. 6,
the frame sets of different conventions are shown together with their relations: in particular, the operation of filtering frames and
accumulating displacements, described explicitly in [2], is indicated.
3.5. Other conventions
In the final part of this section, aside from the two variants of Denavit–Hartenberg's convention (Section 3.2), and Sheth–
Uicker's two frame convention and augmented convention (Section 3.3), four further conventions for modeling the kinematics of
Table 5
Geometric meaning of (two plus) six parameters of the Sheth–Uicker convention. The two parameters δ d describe the joint displacement of a simple joint. The six
parameters (γ, c, β, b, α, a) describe the link displacement.
FT Axis Parameter Geometric description Alignment
$
d
z
(ij)
δ Variable angular distance of x
A
i
and x
D
j
Around z
A
i
d Variable linear distance of x
A
i
and x
D
j
Along z
A
i
$
c
z
ij
^
k ð Þ
γ Constant angular distance of x
Dj
and x
C
j
Around z
Dj
c Constant linear distance of x
Dj
and x
Cj
Along z
Dj
$
b
x
i
^
j k ð Þ
β Constant angular distance of z
Cj
and z
Bj
Around x
Cj
b Constant linear distance of z
Cj
and z
B
j
Along x
Cj
$
a
z ^
i jk ð Þ
α Constant angular distance of x
B
j
and x
Aj
Around z
B
j
a Constant linear distance of x
B
j
and x
Aj
Around z
B
j
Table 4
Geometric meaning of four minimal parameters (α, a, θ, d) of the modified Denavit–Hartenberg convention. The four parameters describe a combined
link-joint-link displacement.
FT Axis Parameter Geometric description Alignment
$
b
X
ijk
β
ijk
Angular distance of z
Cj
and z
Bi
Around x
Cj
X
ijk
b
ijk
Linear distance of z
Cj
and z
B
i
Along x
Cj
$
adc
Z
jk
θ
jk
Angular distance of x
B
j
and x
C
k
Around z
B
j
Z
jk
t
jk
Linear distance of x
B
j
and x
C
k
Along z
B
j
Table 3
Geometric meaning of four minimal parameters (θ, d, α, a) of the classic Denavit–Hartenberg convention. The four parameters describe a combined link-joint-link
displacement.
FT Axis Parameter Geometric description Alignment
$
adc
Z
ij
θ
ij
Angular distance of x
Bi
and x
C
j
Around z
Bi
Z
ij
t
ij
Linear distance of x
Bi
and x
Cj
Along z
Bi
$
b
X
ijk
β
ijk
Angular distance of z
Cj
and z
Bj
Around z
Cj
X
ijk
b
ijk
Linear distance of z
Cj
and z
B
j
Along z
Cj
214 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
mechanisms are reviewed briefly. By outlining their interconnections, a broad overview of the state-of-the-art in kinematic
modeling shall be permitted.
Yang's convention. Yang modeled spatial mechanisms in the works [23] and [24] by means of twists along the joint axes, and
twists along common perpendiculars of consecutive pairs of these axes. In the notation of frame sets, the frame set F
Y
that is used
by Yang contains those frames that are located in the intersections of these twists. Therefore, the set F
Y
can be obtained from the
augmented frame set by subtracting the frames at the joints — the frames of the two-frame convention, as F
Y
¼ F
A
/F

. The
convention by Yang is not a minimal convention in terms of frames, but a minimal convention in terms of twists: twists on the
same axis are ‘accumulated’ into one twist. There is no separation between joint and link displacements. This convention is
illustrated within the example in Section 3.6.
Khalil–Kleinfinger convention. Khalil and Kleinfinger developed a convention that is a ‘case-sensitive blend’ between Denavit–
Hartenberg's and Sheth–Uicker's convention [31]. In dependence of the topology of the mechanism (chain, tree, loop), the
convention changes between the usage of only two, or more than two, twists per row. Comparing to Sheth–Uicker's convention,
a number of case distinctions have to be conducted. In Section 3.6, the conversion of conventions is illustrated: i.e. frames of the
augmented convention can be filtered to achieve a minimal convention for a subchain of a mechanism. By doing so, similar
results to Khalil–Kleinfinger's convention can be achieved in a way that saves the case distinctions during the ‘construction
phase’ of the convention. Similar to this article, Khalil and Kleinfinger used tuple indices to enumerate elements of the
mechanism. However, the set of joints was chosen as the ground set of their indexing scheme, in contrast to the set of links
which is chosen here. If one applies an adjacency-based indexing together with Khalil–Kleinfinger's scheme for a link which
connects to a multitude of k other links via k joints, the ‘name’ of this link becomes an impractically long tuple of – principally
unrestricted – length k.
13
Thomas–Maciuszek–Wahl convention. Thomas, Maciuszek, and Wahl developed a convention for handling spherical joints by
extending the convention by Denvait–Hartenberg with one additional rotational degree of freedom to each row of the original
Denavit–Hartenberg table [3]. The convention follows a one-frame convention, i.e. it uses one frame at the anchor point of each
joint. In this sense, the convention by Thomas et al. is a ‘total blend’ of the minimal Denavit–Hartenberg convention and the
two-frame convention. Compared to Sheth–Uicker's convention, the convention by Thomas et al. saves one parameter per table
13
For instance, in the case of a Steward platform, the two ‘platform links’ connect via six spherical joints to each of the legs. Therefore, for this example, both
platform links are identified by tuples of length six.
Fig. 5. Line configurations of Z
ij
and Z
jk
for a chain of links L
i
, L
j
, L
k
together with named frames.
Table 6
Usage of frames of different conventions to describe a joint-link displacement D
(ijk)
, expressing the displacements from joint J
ij
to joint J
jk
via link L
j
. The first
column represents joint frame F
(ij)i
attached to the previous link L
i
. The following four frames are attached to link L
j
. These are the joint frame F
(ij)
j
, the augmented
frames F
ij
^
k ð Þ
j
and F ^
i jk ð Þ
j
, and finally joint frame F
jk ð Þ
j
.
General notation F
ij ð Þ
i
F
ij ð Þ
j
F
ij
^
k ð Þ
j
F ^
i jk ð Þ
j
F
jk ð Þ
j
Two-frame SU ✔ ✔ – – ✔
Classic DH – – – ✔ –
Modified DH – – ✔ – –
Augmented SU ✔ ✔ ✔ ✔ ✔
Fixed chain notation F
A
i
F
D
j
F
C
j
F
B
j
F
A
j
215 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
row. However, along with that, the strict separation of variable and constant displacements is lost – and even more repealed than
in the classic Denavit–Hartenberg convention. Further – if only five instead of six parameters (Sheth–Uicker) are used to describe
one joint-link displacement – the remaining of constraints on the frame-placings is inevitable. Similar to Denavit–Hartenberg's
original work, tricky situations arise for the modeling of mechanisms that feature branchings or skew line geometries. The
notation by Thomas et al. is based on the link-graph G
L
. However, since the enumeration of edges (joints) is simple, these do not
reflect the combinatorics of the mechanism.
Gupta's zero reference posture convention. The zero reference posture method by Gupta is a method by which the computation
of the current posture of a kinematic structure is conducted with respect to its zero reference posture, instead of using the
joint-to-joint displacements which are used by the representations explained here [32]. For that, similarity transformations are
exploited. In contrast to the methods presented before, Gupta's method is more a computation method, instead of a method for
the selection, naming, location, and orientation of frames. In particular, it is a useful formalism for the computation of complex
mechanisms since it is demonstrated how to analyze a complex joint “as a separate entity and then ‘add on’ this solution to the
rest of the manipulator solution” [32].
3.6. Example
In this section, an example for the modeling with augmented Sheth–Uicker parameters in comparison to classic and modified
Denavit–Hartenberg conventions is presented to clarify the similarities and differences between the concepts. For simplicity, all
angles are denoted in degrees.
3.6.1. Description of the example mechanism
The example mechanismM consists of three links L = {L
1
, L
2
, L
3
}. The first link is fixed and connected to some origin frame F
O
,
the last one can be thought of ending with some end effector, thus carrying a frame of interest F
I
. The first and the third link are
Fig. 6. Frame sets and their relations: the augmented Sheth–Uicker frame set F
A
can be thinned out in two directions, either in a joint- or in a link-related manner.
In the first direction, F
A
is reduced to the set F

(which contains two frames per joint) by discarding the augmenting frames. This can be further reduced to a set
F
J
(which contains one frame per joint). In the second direction, F
A
is reduced to Yang's minimal twist frame set F
Y
by discarding the joint frames. This can be
further reduced to the classic and to the modified Denavit–Hartenberg sets F
C
and F
M
.
Fig. 7. Example mechanism with named links, joints and frames.
216 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
simple cylinders, while the second link is some curve (see below). Two simple joints J
12
, and J
23
, here rotative joints, are used in
the mechanism. They are collected in the set J = {J
12
, J
23
}. In Fig. 7, the named entities can be read off.
Two-frame convention. As explained in Section 2.2, mechanisms are defined in a unique posture by any link covering frame set
(Eq. (4)). Using the two-frame convention, the mechanism M

is specified via the triple M

¼ L; J; F

ð Þ. The frames of the
two-frame convention F

are the following
F

¼ F
O
; F
1;2 ð Þ
1
; F
1;2 ð Þ
2
; F
2;3 ð Þ
2
; F
2;3 ð Þ
3
; F
I
_ _
;
where the additional F
O
is introduced as an invariant frame at the origin of the very first link, and F
I
is introduced to indicate the
pose of the tip of the last link of the chain. The set of matrices given in Fig. 8 defines the poses of all frames that appear in different
representation conventions to specify the mechanism. For the two-frame convention, these are the poses
P
O
¼ S
1
; P
1;2 ð Þ
1
¼ S
2
; P
1;2 ð Þ
2
¼ S
2
; P
2;3 ð Þ
2
¼ S
5
; P
2;3 ð Þ
3
¼ S
5
; P
I
¼ S
6
:
In Fig. 9(a) the exemplary mechanismis shown together with the frame set F
2
. The Sheth–Uicker two-frame convention is not
expressible in table from. The only possibility to specify the mechanism is the listing of the displacements, e.g. in the form of
matrices.
Fig. 8. Set of matrices {S
1
, …, S
6
} that determine the poses of the frames of the example mechanism.
Fig. 9. Usage of frames for the example in (a) two-frame SU, (b) classic DH, (c) modified DH, and (d) augmented SU convention. For a clear view, the norm of axis
vectors of the frames was shrunk.
217 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
The Second link. The second link L
2
was created by a multivariate Hermite spline. Starting point p
1
and starting ‘velocity’ t
1
,
target point p
2
and target ‘velocity’ t
2
p
1
¼ 0; 0; 1 ð Þ
T
t
1
¼ 3 · 0; 0; 1 ð Þ
T
p
2
¼ 2; 1; 3 ð Þ
T
t
2
¼ 3 ·
1
ffiffiffi
2
p · 0; 0; 1 ð Þ
T
:
3.6.2. Comparison
As explained in Section 3, in different conventions different sets of frames are used. For the present example mechanism M,
the overall mechanism can be seen with four different frame sets in Fig. 9. In addition to that graphical representation, the frames
and their usages are also presented in Table 7.
Classic and modified DH convention. The frame set F
C
for the classic Denavit–Hartenberg convention consists of the three
frames
F
C
¼ F
O
; F
^
1;2;3 ð Þ
; F
I
_ _
:
The frame set F
M
for the modified Denavit–Hartenberg convention consists of the three frames
F
M
¼ F
O
; F
1;2
^
;3 ð Þ
; F
I
_ _
:
Analyzing the geometry of the two conventions (Fig. 9(c) and (b)), one notices that the intermediate frames are not located at
the joints but in open space. Therefore, the joint displacements are ‘merged’ and the frame sets F
C
and F
M
do not reflect the link
geometry. Tables 8 and 9 showthe well-known classic and modified DHparameters that are determined via the frame sets F
C
and
F
M
.
Augmented SU convention. The augmented Sheth–Uicker parameters are determined by the set of augmented frames F
A
as
F
A
¼ F
O
; F
1;2 ð Þ
1
; F
1;2 ð Þ
2
; F
1;2;
^
3
; F
^
1;2;3 ð Þ
; F
2;3 ð Þ
2
; F
2;3 ð Þ
3
; F
2;3
^
;4 ð Þ
; F
^
2;3;4 ð Þ
; F
I
_ _
:
Observing from Fig. 9(d), the dense set of augmented frames F
A
is indeed an approximation of the geometry of the
mechanism. Now, the two-frame convention was augmented in such a manner that a representation by a parameter set is
possible. The augmented SU parameters that are determined by the frame set F
A
are depicted in Table 10 (compare these results
to Table 2).
Conversion from augmented SU to Yang's parameters. In Section 3.5, Yang's modeling convention was characterized as the
convention that uses a minimal amount of screw displacements. Once the augmented convention is computed, it is also possible
to ‘filter’ to this convention. For the given example, this results in three twists whose parameters are depicted in Table 11.
Table 7
Usage of frames in different conventions and associated entities. F
O
denotes the frame at the origin, and F
I
the frame of interest. The table is according to the more
general Table 6.
S
1
S
2
S
3
S
4
S
5
S
6
Two frame SU F

F
O
J
1,2
– – J
2,3
F
I
Classic DH F
C
F
O
– – L
2
– F
I
Modified DH F
M
F
O
– L
2
– – F
I
Augmented SU F
A
F
O
J
1,2
^
D
1;2;3
^
D
1;2;3
J
1,2
F
I
Table 8
Classic Denavit–Hartenberg parameters.
(i,j) θ t β b
(1,2) ● 2.000 −45.000 2.000
(2,3) ● 2.828 – –
218 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
4. Comparisons
This section consists of two parts: In the first (Section 4.1), Sheth–Uicker is compared as a kinematic convention. In the second
(Section 4.2), Sheth–Uicker is compared as a displacement representation.
4.1. Sheth–Uicker and Denavit–Hartenberg
To compare Sheth–Uicker as a kinematic convention, a geometric comparison is made in Section 4.1.1. Then, in Section 4.1.2,
the combinatorical comparison of Section 3.4 is continued by relating to graph concepts. Finally, a comparison of features and
applications is drawn, in Section 4.1.3.
4.1.1. Screw, planar, and spatial displacements
Table 12 compares different kinds of displacement that can be expressed via one, two, and three finite screw displacements.
Combining one aligned screw with another one that moves in an orthogonal direction increases the space of displacements that
can be described. Since classic and modified DH parameters can be deconstructed into two orthogonal screws, this is a
comparison against classic and modified DH conventions. If the z-axes of the two frames are not co-planar (in the case of
coincident, intersecting, or parallel lines), the displacement cannot be described with two aligned screws.
As described, Sheth–Uicker convention is a generalization of Denavit–Hartenberg convention: it generalizes from two-twist
description to a three-twist description. Therefore, any finite displacement D ∈ SE(3) can be described. Thus, also displacements
with a skew line configuration can be displayed without changing the defining frames. Note, that since the configurations of
intersecting, coincident, and parallel lines are co-planar, they are realizable in R
2
: Denavit–Hartenberg displacements are only
able to describe displacements D ∈ SE(2).
4.1.2. Sheth–Uicker and parallel mechanisms
While the link graphG
L
¼ L; J ð Þ (see Fig. 10(a)) does not carry Euclidean embedding, this concept can be extended seamlessly
by the triple-enumerated frame sets to ‘Geometric Graphs’. If the displacement sets
D

¼
_
D
ij ð Þ
∪D

ijk ð Þ
D
A
¼
_
D
ij ð Þ
∪D
a
ijk ð Þ
∪D
b
ijk ð Þ
∪D
c
ijk ð Þ
∀ i; j; k : J
ij ð Þ
∈J
_ _
∧ J
ij ð Þ
∈J
_ __
;
∀ i; j; k : J
ij ð Þ
∈J
_ _
∧ J
ij ð Þ
∈J
_ __
are introduced, the two-frame graph G

¼ F

; D

ð Þ and augmented graph G
A
¼ F
A
; D
A
_ _
can be properly defined in
addition to link graph G
L
¼ L; J ð Þ. All vertices and edges express poses and spatial displacements between them. Thus,
these graphs can be called Special Euclidean Graphs. The definitions of the three graphs are opposed in Table 13.
Together, these graphs feature a hierarchical relationship (see Fig. 10(b)). By construction, the combinatorics of the three
graphs remain similar: G

can be constructed ‘straightforward’ fromG
L
via substitution of vertices by V

L
¸
¸
¸
¸
¼ 2 · J
L
j j sub-vertices
and the edge set of the complete graphK
J
L
j j
(sub-edges) in between. The augmented graphG
A
can be constructed fromtwo-frame
Table 10
Augmented Sheth–Uicker parameters; the two columns of twist $
d
ij ð Þ
represent the variable configuration vector q, the last six columns represent the vector of
design parameters d.
Index Joint J
ij
Joint J
jk
Twist D
d
ij ð Þ
Twist D
c
ij
^
k
Twist D
b
ijk ð Þ
Twist D
a ^
i jk ð Þ
(i,j) (j,k) δ d γ c β b α a
1 (−,1) (1,2) – – – 0.500 – – – 0.500
2 (1,2) (2,3) ● – – 1.000 −45.000 2.000 – 1.414
3 (2,3) (3,−) ● – – 0.707 – – – 0.707
Table 9
Modified Denavit–Hartenberg parameters.
(i,j) β b θ t
(1,2) – – ● 2.000
(2,3) −45.000 2.000 ● 2.828
219 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
graph G

via substitution of the sub-edges by a chain of three sub-sub-edges and two sub-sub-vertices. Then one link-vertex L in
G
L
corresponds to V
A
L
¸
¸
¸
¸
¼ J
L
j j þ2 · J
L
j j
2
_ _
¼ J
L
j j
2
vertices inG
A
. The argumentation also holds in the opposite direction: first, the
two-frame graph G

can be achieved from augmented graph G
A
by contracting all suitable three-chains of edges e
A
∈ E
A
(concatenation of three twist displacements) ‘inside’ the links to one edge E

∋ e

¼ D

ijk
∈ D

(link displacement) –G

is called a
minor of G
A
. Second, link graph G
L
can be achieved from two-frame graph G

by contracting of all edges ‘inside’ e

∈ E

the links
(link displacement) such that the ‘abstract’ link V
L
∋ v
L
¼ L ∈ L ‘itself’ remains. Thus, G
L
is a minor of G

. This is especially
noteworthy since the concept of edge contraction and minor graphs, resp., can also be used for expressing a kinematic loop by a
complex joint
14
: in particular, a subset of joints (edges of the link graph) that builds a kinematic loop is contracted into one
super-edge which represents the corresponding complex joint.
4.1.3. Applications for Sheth–Uicker and Denavit–Hartenberg
In Table 14, an overall comparison for the four covered conventions is drawn. The feature handling of branchings is a direct
consequence of the feature that the atomic displacements in the two-frame convention and in the augmented convention
are clearly separated into link displacements and joint displacements. Handling of branchings, and thus the handling of
parallel mechanism is explained in Section 4.1.2 above. The feature of properly handling skew lines is illustrated with an
example in Section 3.6. The ability of the minimal DH conventions to serve as a normal representation for planar
displacements D ∈ SE(2) is only partially valid as explained in Section 4.1.1. The table partially anticipates results from the
following Section 4.2. In particular, the ability of the augmented Sheth–Uicker's convention to serve as a normal
representation for spatial displacements D ∈ SE(3) is explained in Section 4.2.1.
4.2. Sheth–Uicker as Dual Euler Angle representation
In this section, the Sheth–Uicker and the Dual Euler Angle representation, resp., are compared to the Finite Twist
representation. First, in Section 4.2.1 this is conducted for planar displacements D ∈ SE(2), then, in Section 4.2.2 for spatial
displacements D ∈ SE(3). It turns out that studying the spatial setting has numerous parallels to the planar, in particular, a spatial
setting can be ‘planarized’ via orthogonal decomposition of the translation (see Eq. (10)).
4.2.1. Planar displacements
Theorem 3. Rotation pole. “Every planar displacement D ∈ SE(2) is a rotation about a point (rotation pole) P in the projective plane.”
The Rotation Pole Theorem is the planar version of the more general Theorem 2. A proof can be found, for example in [33,
Theorem 2.4]. In case of pure translations, the pole lies at infinity. In the ‘finite case’, the location of the pole can be
constructed by intersecting bisectors of line segments between homologous
15
points (another way of constructing the
location of the pole works via the radius r and is described below, in Section 4.2.2). The value of the rotation around the
14
An implementation by means of the two-frame convention is described in [29].
15
In the sense of ‘corresponding’, used as in [17].
Table 12
Displacements (defined by a pair of frames) that can expressed as screw displacement of one finite screw, as the composition of two orthogonal screws, and as the
composition of three pairwise orthogonal screws.
Symbol Displacement One finite twist Two finite twists Three finite twists
Coincident Z lines ✔ ✔ ✔
Parallel Z lines – ✔ ✔
Intersecting Z lines – ✔ ✔
Skew Z lines – – ✔
Examples Simple joints Minimal DH Augmented SU
Table 11
Yang's parameters.
ν n β b μ m
● 2.000 2.000 −45.000 ● 4.828
220 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
rotation pole P equals the value of rotation of the displacement without the translation. The rotation pole is not the only
point where the rotation value is preserved: the rotation pole is located on a circle that preserves this rotation value (see
Figs. 11 and 12). This is characterized by the following Theorem of Inscribed Angles which is a generalization of the Theorem
of Thales.
Theorem 4. Inscribed angles. Let C′ be a circle with center point M′ and radius r′. Let A and B be the intersection points of a secant c
with the circle C′. Then, the angle γ is constant for any triangle ABC with C any third point on C′. In particular, the angle γ equals
1
2
· μ
where μ is the ‘central angle’ at point M′ in triangle ABM′.
Proof. The equation γ ¼
1
2
· μ is combined from the equations γ = β″ − α″ and μ = β′ − α′ together with the relations α

¼
1
2
· α

and β

¼
1
2
· β

. The latter follow from triangle sums 2 · α″ + (π − α′) = π and 2 · β″ + (π − β′) = π.
The idea of the proof is shown in Fig. 13 which is a rotated version of Fig. 11 so that position of the pole (named as C) is located
at (−1, 0)
T
. Then, the idea is to apply the arguments concerning half-angles twice (for the half-angle parametrization, see, for
example [34]). The notation in Theorem 4 was chosen so that for the radius of the screw r = NrN it holds that r = 2 · r′, for the
twist angle ϕ it holds that ϕ ¼ γ ¼
1
2
· μ (see Fig. 12).
Isometric circle. The circle which the rotation pole is located on has a constant angle and in particular this angle equals the
angle of the rotation of the displacement. Because of that it is called isometric circle here. It can be characterized to be the circle of
intersection points of homologous axes.
16
Sheth–Uicker and Denavit–Hartenberg. The sketch in Fig. 14 is a rotated and extended version of Fig. 11 and depicts the same
planar displacement. The z axes and the x axes lie in the plane and the y axes of the frames were chosen to be orthogonal to the
plane. A direct interpretation of the sketch as a planar link displacement according to the two-frame convention is only possible if
the frames F
D
and F
A
indicate locations of slider joints. Fig. 14 shows the points Y, H, and M that correspond to the Sheth–Uicker
and the – classic and modified – Denavit–Hartenberg conventions. One can observe that the Sheth–Uicker point Y also lies on the
Table 13
Three graphs for a mechanism (type) M and its Euclidean realization M.
Graph G G
L
G

G
A
Vertex set V L F

F
A
Edge set E J D

D
A
16
Homologous axes are defined in accordance with homologous points: If two homologous points P
D
and P
A
are chosen, then the lines D-P
D
and A-P
A
passing
from the two origins D and A through the points P
D
and P
A
are homologous.
a b
Fig. 10. Example for the enumeration of links, joints and frames in case of a complex mechanism. (a). A schematic drawing of an example mechanismthat is neither a
kinematic chain (it features two end-effectors, at link L
8
and L
14
), nor a kinematic tree (it features a kinematic loop, indicated by joint colors). The style of drawing
indicates the link graphG
L
¼ L; J ð Þ. The links are enumerated according to a spanning tree of this graph, also they are partitioned (colored) into three chain-sets that
appear in the depth-first sorting of the tree. These link-chains are defined via the root link L
1
, the branching links, L
2
, L
4
, and L
7
, and the end-effector links L
8
, and L
14
.
(b). A schematic drawing of the combinatorics of links, joints, and frames for a case of a link L
k
with three adjacent joints connecting to links L
i
, L
j
, and L
l
. Three sets of
vertices V
L
, V
Ã
, and V
A
can be identified by three different round types of elements. The principle of the augmented DH convention for decomposing a displacement
(dashed arrows) between each pair of joint frames via a set of three orthogonal twists (dotted arrows) is illustrated. This sitution appears for all branching links L
2
, L
4
,
and L
7
of (a).
221 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
isometric circle since the z axes are homologous axes. Therefore, the angle β between z
D
and z
A
equals the angle ϕ that is taken at
the pole. The classic Denavit–Hartenberg point H and the modified Denavit–Hartenberg point M do not lie on that circle. Because
of this property, it is concluded that while the two conventions – augmented Sheth–Uicker and minimal DH – are combinatorically
equivalent for planar displacements, the SU-convention ‘specializes better to SE(2)’ and provides a geometrically more concise
representation of planar displacements D ∈ SE(2) than Denavit–Hartenberg.
In the interpretation of the planar displacement as a link displacement, for the case of two rotative joints, both joint axes would
be orthogonal to the plane. In this case, with parallel joint axes, DH and SU conventions are equivalent. In the case of one rotative
and one planar joint, while the mechanism is planar, the link displacement is not planar in the sense of Theorem 3: it is not
representable as an affine rotation in the plane. In this case, the joint axes are skew such that the DH is not able to represent that
displacement without moving one of the two frames on its joint axis.
4.2.2. Spatial displacements
A spatial perspective. In Fig. 15, three-dimensional visualizations of a finite displacement together with the ‘discrete’
Sheth–Uicker approximation and the ‘continuous’ Finite Twist approximation are provided: in (a), the line segments of the
three axial twists are drawn, in (b), the affine twist is drawn as a segment of the ‘trajectory’ of a certain screw.
Fig. 11. The rotation pole P lies in the intersection of the isometric circle and the perpendicular bisector of the planar translation vector. While the bisector is
entirely determined by translation t
0
, the circle is determined as that circle passing F
D
and F
A
which preserves rotation angle ϕ.
Table 14
Comparison of combinatoric (C), principal (P), and application-relevant (A) properties of the four kinematic conventions.

Sheth–Uicker parameters are not only
capable of displaying spatial, but also planar displacements. In the planar case, at least one parameter of the X′-twist simplifies to zero (see Table 2). Also in this
case, as indicated in the following Section 4.2.1, the additional third twist in Sheth–Uicker's convention allows reflecting the geometry of a planar displacement
better, compared to the two twists used in Denavit–Hartenberg's convention. While Sheth–Uicker conventions permit the convenient treatment of branchings
and skew line geometries, this is not possible by means of the minimal DH conventions without further ado, concretely without moving one of the two frames
such the displacement becomes planar. This does not only hold for spatial, but also for planar mechanisms, see Section 4.2.1.
Kinematic modeling convention Classic Modified Two-frame Augmented
Denavit–Hartenberg Sheth–Uicker
(C) Link covering frame set F
C
F
M
F

F
A
Frames per link F
L
j j 1 1 2⋅ J
L
j j 4⋅ J
L
j j
Number of parameters 4 4 (12) 6 (+2)
(P) Description via 2 axial twists (Matrices) 3 (+1) axial twists
Representable line pairs Coincident, parallel, intersecting coincident, parallel, intersecting, skew
Representation of Planar

displacements D ∈ SE(2) spatial

displacements D ∈ SE(3)
Atomic displacements Accumulated L‐J‐L displacements separated link and joint displacements
(A) Freely assignable zero posture – – ✔ ✔
Preserving joint frames – – (✔) ✔
Simple handling of branchings – – (✔) ✔
Simple handling of skew lines – – (✔) ✔
Geometry-reflecting parameters – – – ✔
222 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
Combinatoric equivalent decompositions
Two simplified perspectives. Two perspectives on the two decompositions are shown in Fig. 16. In Fig. 16(a), the view is aligned
along the screw axis; in this case, the common orthogonal appears ‘oblique’. In Fig. 16(b), the view is aligned perpendicular to the
common orthogonal; in this case, the axis of finite twist appears ‘oblique’. The two decompositions of the displacement are
complementary.
A twist decomposition. To compare the two descriptions in more detail, a decomposition of the Finite Twist representation
in the same manner
17
as for Sheth–Uicker description is conducted below. Again, the key ingredient of the decomposition
of Sheth–Uicker is the definition of two augmenting frames. In this case, they are named F
T
and F
R
and computed as in
Method III.
Method III. DT. Decomposed Twist
(In) Frames F
D
and F
A
that define a displacement.
(Out) Augmenting Frames F
T
and F
R
in the intersection of screw axis and orthogonal planes which contain p
D
and p
A
.
(S) The twist axis S
0
is computed
(p) The locations of F
T
and F
R
are computed as projections of the location points p
D
and p
A
onto the screw axis:
p
T
¼ π
s
0
p
D
ð Þ
and p
R
¼ π
s
0
p
A
ð Þ
.
(R) The orientation of F
T
is set identical to the orientation of F
D
. The orientation of F
T
is set identical to the orientation
of F
A
.
The decomposition of the Sheth–Uicker representation SUD was described in Eq. (18). By means of the augmenting frames F
T
and F
S
, the decomposition of the Finite Twist representation can, analogously, be described as
D ¼ $
t ∘
$
s ∘
$
r
: ð19Þ
In this case, the general screw displacement $
G
(ϕ, s) (see Eq. (9)) is decomposed into three linear screw displacements.
However, in contrast to Sheth–Uicker (Eq. (18)), the three atomic displacements are not axial, but linear screw displacements. On
the other hand, $
t
and $
s
are more special: First, they do not contain rotations. Second, the radius vector ‘is the same’.
18
D ¼ T
À1
r ∘
$
s ∘
T
r
:
The situation is displayed twice in Fig. 16 and schematically in Fig. 17.
A spatial triangle. Combining Eqs. (18) and (19), the following two chains can be observed:
Computation of angles and radii. The spatial triangle features right angles at all frames, except for F
D
and F
A
. At these frames, the
angle is made up between the z axes z
D
and z
A
and the radius vectors r
D
and r
A
. If the angles are defined as
ψ
D
¼ 2 r
D
; z
D
ð Þ ψ
A
¼ 2 r
A
; z
A
ð Þ
17
In this paper the Sheth–Uicker convention is introduced as an augmentation of the two-frame convention.
18
This is described more in next paragraph.
223 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
then, the inner angles ‘inside’ the triangle, compare Fig. 17, are ψ
D
Δ
= π − ψ
D
and ψ
A
Δ
= ψ
A
such that ψ
D
Δ
+ ψ
A
Δ
= π.
19
To compute
the angles ψ
D
and ψ
A
, an expression for radius vectors r
D
and r
A
is necessary. One way to compute radius vector r
D
#
follows from
the observation that r
D
≅ v
0
× ω. In particular, one can write by means of using the Lie bracket
r
#
D
¼ v

0
; ω

_ _

¼ v

0
⋅ ω

−ω

⋅v

0
_ _

;
whereby ω can be computed by using Eq. (7) and the orthogonal moment v
0
via orthogonal projection as τ
ω
(v). The radius
vector r
A
#
can simply be computed via r
A
#
= R ⋅ r
D
#
. The norm of the radius r follows from triangle angle sums and the law of
cosines, see Fig. 11, as
‖r‖
2
¼
‖t
0

2
2 · 1−cosϕ ð Þ
:
By studying the geometry of that sketch in Fig. 12, alternative and shorter expressions for ^r
D
and ^r
A
can be deduced.
^
r
D
¼ R
3
4
π−
1
2
ϕ; s
_ _
·
^
t
0
^
r
A
¼ R
3
4
π−
1
2
ϕ; s
_ _
·
^
t
0
:
Finally, with
^
r
D
à z
D
¼
^
r
A
à z
A
(see Eq. (20)) the angles ψ
D
and ψ
A
can be determined as
ψ
D
¼ 2 r
D
; z
D
ð Þ ¼ acos
^
r
D
à z
D
ð Þ ¼ acos
^
r
A
à z
A
ð Þ ¼ 2
^
r
A
; z
A
ð Þ ¼ ψ
A
:
From these, the angles ψ
D
Δ
and ψ
D
Δ
can be determined. Thus, a full description of the spatial triangle that is built by the six
displacements of the two decompositions is achieved.
Discussion. For the Sheth–Uicker Decomposition, the middle of the three screw displacements is the linear twist $
b
that
connects the two z axes via the shortest possible route: the line of this twist $
b
is in the middle of the two Z lines. For the other case,
for the Augmented Twist Decomposition, the middle of the three screw displacements is the linear twist $
s
along the screw axis
S
0
. This displacement also lies in the middle in a geometric sense: At first, the location of twist $
s
, and therefore the locations of the
frames F
T
and F
R
, lie in the intersection of the r-circles around F
D
and F
A
. Thus, they are equidistant to both. Following the other
interpretation (see Section 4.1.1), the screw axis lies at the intersection of isometric view circle and the perpendicular bisector of
the planar translation vector t
0
. In this interpretation, too, the frames F
T
and F
R
are located at the same distance to p
D
and p
A
.
Furthermore, regarding the direction
^
ω of the twist, one can deduce from Eq. (7) that for
^
ω the following equations hold
^
ω Ã z
D
¼
^
ω Ã z
A
^
ω Ã x
D
¼
^
ω Ã x
A
^
ω Ã y
D
¼
^
ω Ã y
A
: ð20Þ
19
The angle sum equation ψ

¼ ψ

D
þψ

A
þψ

C
þψ

B
þψ

T
þψ

R
¼ 6
π
2
. of the spatial triangle is fulfilled.
Fig. 12. The radius r lies on the diagonal of a dual rhombus that is made by the location of F
D
that is P
D
, location of F
A
that is P
A
= D
0
∘ P
D
, rotation pole P and the
location D
0
−1
∘ P
D
.
224 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
Fig. 14. A planar displacement D defined by two frames F
D
and F
A
, D = F
D
−1
∘ F
A
. The equivalent rotation about pole P is illustrated by a set of three sectors of
circles. The point Y is the point that corresponds to the location of frames F
C
and F
B
. The point H for the classic DH convention is located at the intersection of z and
x

. The analogous point M for the modified DH convention is located at the intersection of x and z

.
Fig. 13. Sketch for proving the theorem of inscribed angles. The equality γ ¼
1
2
⋅μ can be deduced from a twofold application of the half-angle parametrization.
a b
Fig. 15. Visualizations of Sheth-Uicker decomposition (a) and Finite Twist trajectory (b) between two frames defining a spatial displacement. The displacement is
identical to the link displacement of link L
2
in example of Section 3.6.
225 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
This indicates, that also the direction
^
ω of the twist lies equidistant to the orientation of F
D
and F
A
. In conclusion, the geometric
constructions (see Fig. 16) of the two decompositions can be described as
Sheth–Uicker Decomposition :
Finite–Twist Decomposition :
z‐axes of F
D
and F
A
r‐circles aroundF
D
and F
A


Common perpendicular:
Common intersection:
a b
Fig. 16. Simplified views on the decompositions of the Finite–Twist representation and of Sheth–Uicker’s representation into linear twists are depicted for a
displacement between two frames. The drawing of the lines was chosen to reflect the duality between the vertices and the sides of the spatial triangle which is
formed by the loop of the six linear twists involved in the configuration. In (a), the perspective is aligned along the axis S
0
of the finite twist. In (b), the perspective
is aligned along the common orthogonal of the Z-lines.
Fig. 17. Simplified perspective on the spatial setting of the two decompositions including angles ψ
D
and ψ
A
, isometric view circus and spatial and planar
translations t and t
0
.
226 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
With respect to this analogy, one deduces two following statements: Firstly, the parameters of the one-affine-twist
representation contain the ‘actual’ amount of rotation (ϕ) and the ‘actual’ rotation (shift s). And secondly, the parameters of
Sheth–Uicker's three-linear-twists representation accurately reflect the original parameters, since they use a basis that is as
similar, as possible. These findings lead to the following reformulation of the construction principles of the decompositions:
Sheth–Uicker Decomposition : Successive‐orthogonal basis preserving the dominant axes:
Finite–Twist Decomposition : Successive‐orthogonal basis equidistant to poses of frames:
ð21Þ
For this, Table 15 provides a comprehensive overview.
4.2.3. Principles of Sheth–Uicker and Finite Twist decompositions
Counterparts in SO(3). In Section 2.5.2, the Angle-Axis representation for a rotation R ∈ SO(3) is introduced, in Section 2.5.4 its
Euler Angles representation. In summary, one can state that both conventions – the affine-one-twist and the linear-three-twist
description – generalize fromSO(3) to SE(3). To summarize this, four representations of SO(3) to SE(3) and their interrelations are
depicted analogously in the diagrams in Fig. 18.
Counterparts in SE(2). Also, the representation of an element in SE(3) via a finite twist has a counterpart-representation in
SE(2): in particular, this is the rotation pole (see Theorem 3 and Fig. 14). In Section 4.1.1, it is also shown that Sheth–Uicker holds
nicely for D ∈ SE(2) (since Y lies on the circle). In summary, one can state that both conventions – the affine-one-screw and the
linear-three-screw descriptions – generalize from SE(2) to SE(3).
Table 15
Sheth–Uicker and Finite Twist representation and their decompositions in comparison.
Convention Sheth–Uicker Finite twist
Characterization Three-linear-twist description One-affine-twist description
Interpretation Linear-discrete Affine-continuous
Basis Preserving z axes Frame-symmetric screw axis
Parameters Speaking/dominant Absolute/essential
Related decompositions Orthogonal decomposition Eigen decomposition
Advantages Readability, speed Symmetry, algebra
a b
Fig. 18. (a) Four representations of a finite spatial rotation R ∈ SO(3) and some interrelations. (b) Four representations of a finite spatial displacement D ∈ SE(3)
and some interrelations.
a b
Fig. 19. Analogies of decompositions for a displacement and for a square matrix. (a) Interpretation of a displacement and a matrix as an element of a ‘matrix space’,
combined frombasis elements of that space. (b) Interpretation of a displacement and a matrix as a map between ‘vector spaces’, observed froma specific point of view.
227 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
Counterparts in GL(n). In previous Section 4.2.2, it was demonstrated that both, Sheth–Uicker and Finite Twist, can be
understood as complementary decompositions into three linear, successive-orthogonal screw displacements. In particular, in
Eq. (21), the constructions were formulated with respect to some bases. If this is formulated in a more constructive manner, the
following two principles can be observed:
Sheth–Uicker Decomposition :
Finite–Twist Decomposition :
Iteratively project thedisplacement into the space of orthogonal complements starting
from thedominant axes of the frames:
Formulate the displacement as being similar to alinear Àscrew displacement along
the linear frame Àequidistant twist:
These two principles also occur in a similar manner for GL(n) for well-known matrix decompositions, in particular, for the
Orthogonal and for the Eigen Decomposition of a matrix. Therefore, the Sheth–Uicker representation provides a decomposition
which is describable as a (symmetrized) Orthogonal Decomposition of a displacement and that is thus comparable to a QR
factorization of a matrix. On the other hand, the one-twist representation provides a decomposition that is comparable to a QDQ
−1
factorization of a matrix. These findings are summarized in the two tables in Fig. 19.
As stated in the last three paragraphs, Sheth–Uicker and Finite Twist decompositions have counterparts in SO(3), in SE(2) as
well as in GL(n). This is summarized in the diagram in Fig. 20.
5. Conclusion
In this article, the convention by Sheth and Uicker from 1971 was reviewed from two different perspectives. In the first
perspective, Sheth–Uicker was regarded as a convention for kinematic modeling and compared to three other conventions in the
‘unified notation of frames’. As indicated in Section 2, conventions for kinematic modeling have to deal with a ‘trade-off’ between
compactness on the one hand, and generality and intuitiveness on the other hand. It was shown how the two-axial-twist
description of Denavit–Hartenberg is extended to a three-axial-twist description by the Sheth–Uicker convention such that a
mechanism can be described by a table that reflects the geometry of adjacent joint axes and that has a structure that reflects the
topology of the mechanism type.
By the example worked out in Section 3, it was demonstrated that Sheth–Uicker’s convention is not only useful for kinematic
loops, but also for chains that feature skew geometries of joint axes. Therefore, the Sheth–Uicker convention generalizes Denavit–
Hartenberg to the right amount, in the sense that it permits to cover the complexity of any mechanism with one simple
convention. Finally, it was derived that Sheth–Uicker is a representation with respect to a basis that preserves the ‘dominant’ joint
axes: therefore, the parameters of Sheth–Uicker provide direct insight into the geometries of the links. In summary, Sheth–
Uicker's convention is not minimal, but general and intuitive: therefore, it is optimally suited to specify the kinematics of
mechanism in form of tables. The question of efficient implementations (of displacement representations) and of kinematic
conventions was not covered in this article. However, it was explained that Sheth–Uicker's convention can be ‘thinned out’ in
several ways to increase redundancy for efficient subsequent computation purposes.
In the second perspective, Sheth–Uicker was identified as the Dual Euler Angles representation of displacements of the
two-frame convention. It was worked out in a comparison that Sheth–Uicker and Finite-Twist can be regarded as complementary
decompositions, and together form a certain spatial triangle. Additionally, it was demonstrated that similar principles of both
conventions can be found in more special, and in more general groups. In summary, it was shown how the Dual Euler Angle
representation, and thus Sheth–Uicker's convention, is embedded among other theoretically-solid displacement representations.
We hope that the practical and theoretical preferences of Sheth and Uicker's convention have been explained in a coherent
manner so that more people will appreciate its usage. For further illustration, in the future, it might be worthwhile to compile
specification tables according to Sheth–Uicker's convention of a set of mechanisms which are of the same type but feature
different geometries: for example, the Sheth–Uicker tables for different Bennett mechanisms feature the same shape but different
contents — depending on the set of design parameters that describe their planar, spherical, or spatial realization.
Fig. 20. Connections of Sheth–Uicker's and the Finite Twist representation for Finite Displacements.
228 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229
Acknowledgment
The author would like to thank Prof. John Uicker and Prof. Hans-Peter Schröcker for valuable remarks on a draft version of this
document. The research presented in this article was funded by the German Ministry of Education and Research (BMBF) within
the projects VI-Bot (Grant Number 01-IW-07003) and CAPIO (Grant Number 01-IW-10001).
References
[1] P.N. Sheth, J.J. Uicker, A generalized symbolic notation for mechanisms, Journal of Engineering for Industry, Series B 93 (70) (1971) 102–112.
[2] B. Bongardt, Sheth–Uicker Convention Revisited — A Normal Form for Specifying Mechanisms, Tech. Rep., RIC, DFKI, Bremen, 2012.
[3] U. Thomas, I. Maciuszek, F.M. Wahl, A unified notation for serial, parallel, and hybrid kinematic structures, ICRA, 2002, pp. 2868–2873.
[4] B. Roth, Overview on advanced robotics: manipulation, Proceedings ICAR, 1985, pp. 569–580.
[5] H. Pottmann, J. Wallner, Computational Line Geometry, Springer-Verlag New York, Inc., Secaucus, NJ, USA, 2001.
[6] L. Dorst, D. Fontijne, S. Mann, Geometric algebra — an object-oriented approach to geometry, Morgan Kaufmann Series in Computer Graphics, Morgan
Kaufmann Publishers, 2007.
[7] J.R. Shewchuk, Lecture Notes on Geometric Robustness, 2009.
[8] N.L. White, Grassmann–Cayley algebra and robotics, Journal of Intelligent and Robotic Systems (1994) 91–107.
[9] E. Staffetti, F. Thomas, Analysis of rigid body interactions for compliant motion tasks using the Grassmann–Cayley algebra, Intelligent Robots and Systems,
2000. (IROS 2000), Proceedings. 2000 IEEE/RSJ International Conference, vol. 3, 2000, pp. 2325–2332.
[10] R. Featherstone, Rigid Body Dynamics Algorithms, Springer, 2008.
[11] J.K. Davidson, K.H. Hunt, G.R. Pennock, Robots and screw theory: applications of kinematics and statics to robotics, ASME, vol. 126, 2004.
[12] L. Sciavicco, B. Siciliano, Modelling and Control of Robot Manipulators, 2nd edn Kluwer Academic Publishers, 1999.
[13] M.F. Beatty, Kinematics of Finite, Rigid-Body Displacements, American Journal of Physics 34 (10) (1966) 949.
[14] L. Trainelli, The vectorial parameterization of rotation and motion, Tech. Rep., Politecnico di Milano, dIA-SR, 2002, pp. 02–18.
[15] O.A. Bauchau, L. Trainelli, The vectorial parameterization of rotation, Nonlinear Dynamics 32 (1) (2003) 71–92.
[16] V. Kumar, The Theorems of Euler and Chasles, 2002.
[17] T.R. Williams, K.R. Fyfe, Rodrigues' spatial kinematics, Mechanism and Machine Theory 45 (1) (2010) 15–22.
[18] J.M. Selig, Geometric Fundamentals of Robotics, 2nd ed. Springer, Berlin, 2005.
[19] L. Kavan, S. Collins, J. Žára, C. O'Sullivan, Geometric skinning with approximate dual quaternion blending, ACM Transactions on Graphics 27 (4) (2008) 1–23.
[20] H.H. Cheng, S. Thompson, Dual polynomials and complex dual numbers for analysis of spatial mechanisms, Proceedings of 1996 ASME Design Engineering
Technical Conference and Computers in Engineering Conference, 1996.
[21] J.B. Kuipers, Quaternions and Rotation Sequences: A Primer with Applications to Orbits, Aerospace and Virtual Reality, Princeton University Press, 2002.
[22] H.J. Bunge, Texture Analysis in Materials Science, Butterworths, London, Boston, 1982.
[23] A.T. Yang, Displacement analysis of spatial five-link mechanisms using (3 × 3) matrices with dual-number elements, ASME Journal of Engineering for
Industry 91 (1968) 152–157.
[24] A.T. Yang, Analysis of an offset unsymmetric gyroscope with oblique rotor using (3 × 3) matrices with dual-number elements, ASME Journal of Engineering
for Industry 91 (3) (1969) 535–542.
[25] R.S. Hartenberg, J. Denavit, Kinematic Synthesis of Linkages, 1964.
[26] M.W. Spong, S. Hutchinson, M. Vidyasagar, Robot Modeling and Control, John Wiley and Sons, Inc., 2005
[27] J.J. Craig, Introduction to Robotics: Mechanics and Control, Addison-Wesley Longman Publishing Co., Inc., 1989
[28] S.M. LaValle, Planning Algorithms, Cambridge University Press, 2006.
[29] B. Bongardt, CAD-2-SIM — kinematic modeling of mechanisms based on the Sheth–Uicker convention, Intelligent Robotics and Applications — 4th
International Conference, ICIRA 2011, LNAI 7101, vol. I, 2011, pp. 465–477.
[30] P. Muir, C.P. Neuman, Kinematic modeling of wheeled mobile robots, Tech. Rep. CMU-RI-TR-86-12, Robotics Institute, Pittsburgh, PA, 1986.
[31] W. Khalil, J.-F. Kleinfinger, A new geometric notation for open and closed-loop robots, Robotics and Automation, Proceedings. 1986 IEEE International
Conference on, vol. 3, 1986, pp. 1174–1179.
[32] K.C. Gupta, Kinematic analysis of manipulators using the zero reference position description, International Journal of Robotics Research 5 (1986) 5–13.
[33] M.T. Mason, Mechanics of Robotic Manipulation, MIT Press, 2001.
[34] S.S. Abhyankar, Algebraic Geometry for Scientists and Engineers, Mathematical Surveys and Monographs, American Mathematical Society, 1992.
229 B. Bongardt / Mechanism and Machine Theory 69 (2013) 200–229