67% (3) 67% found this document useful (3 votes) 2K views 128 pages Introduction To Theoretical Kinematics - JM McCarthy
Kinematics & Mechanism Theory
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content,
claim it here .
Available Formats
Download as PDF or read online on Scribd
Go to previous items Go to next items
Save Introduction to Theoretical Kinematics - JM McCart... For Later
PREFACE
‘This book is an introduction to the mathematical study of the move-
ment of bodies linked together in a chain, called a mechanism. Examples
of mechanisms range from the four bar linkage to the arm or leg of a robot,
or the fingers of a mechanical hand. Because the links in a mechanism
fare modeled as rigid bodies, the properties of rigid displacements take a
central place in this work. In fact, the first four chapters dwell primarily
‘on the theory of displacements. It is not until the last three chapters
that mechanisms appear explicitly. And then we pursue only the very
first step in kinematic analysis which is the derivation of the structure
equation of the kinematic chain. However, the goal of this effort is not
so much a deep study of mechanisms as it is a uniform presentation of
the mathematical foundations that such a study requires.
‘The pursuit of a unified presentation has led to a format in which pla-
nar, spherical, and spatial mechanisms are all studied in each chapter.
‘This is different from the usual organization which studies each class.
separately. This new format highlights the similarity of the mathemati-
cal results that apply to each class of mechanism. This is of particular
value in the study of spatial mechanisms where understanding of what
can become complicated mathematical relations can be guicled by intu-
ition gained from the study of the planar and spherical eases,
‘The first. chapter presents the matrix transformations which represent
planar, spherical and spatial displacements. The eigenvalues and eiger
vectors of these matrices are, geometrically speaking, the pole, rotation
axis and serew axis, of the respective displacements. The second chapter
identifies the continuous movement of a body with a parameterized set
of displacements. In this chapter the “tangent operator” is introduced
to generalize the properties of the angular velocity matrix of @ rotation
to the eases of planar and spatial motion.
‘The elements of the tangent operators of spatial motion can be re-
assembled into six dimensional vectors known as screws, and they are
the focus of the third chapter. In this chapter the equivalence of screws
to bivectors of R# is demonstrated so that the classical algebra of screws
takes its place in the modern setting of multivector algebra. Dual num-
bers, vectors and matrices are also introduced in this chapter and shown
to be useful in manipulating screws
Chapter four introduces another tool of modern mathematics a gener-
alization of multivector algebra known as Clifford algebra. The goal is aunified construction of the hypercomplex numbers known as quaternions
and dual quaternions. An interesting result is that dual quaternions are
the Clifford algebra of R for a special metric. The identification of
these Clifford algebras with displacements is achieved by constructing,
quaternions from the eigenvectors of planar, spherical and spatial di
placements.
‘The fifth chapter presents the elementary formulas that compute the
degrees of freedom, or mobility, of kinematic chains, and chapter six
defines the structure equations of these chains in terms of matrix trans-
formations.
‘The last chapter computes the quaternion form of the structure equa-
tions for 10 specific mechanisms. These equations define parameterized
‘manifolds in the Clifford algebras, or “image spaces,” associated with
planar, spherical and spatial displacements. ‘The parameters can be
climinated to yield homogeneous quadratic equations defining algebraic
‘manifolds which, when projected appropriately, are found to be hyper-
boloids or intersections of hyperboloids. This is a particularly satisfying
result which may be viewed as the motivation for the entire book,
While most of the theory presented in this book is well known, two
tools of modern mathematics are applied to kinematic theory here for the
first time. They are the theory of multivectors and the theory of Clifford
algebras. ‘The first. helps organize the principles that underlie “serew
theory,” and the second organizes the theory of “dual quaternions.”
‘These technical results remove, at least for me, the seemingly arbitrary
nature of the construction of screws and dual quaternions.
I gratefully acknowledge the assistance of Jeff Ge and Mohan Bod-
duluri and the support of National Science Foundation grants MSM-
‘3600767 and MSM-8720580, without which T could not have completed
the theoretical development presented here. I would also like to recognize
several people who provided insight that is reflected in this work: Roger
Brockett for the Lie group perspective, Brad Paden for screws as the
tangents to homogeneous transforms, Bahram Ravani for quaternions
fas image spaces, and Jon Selig for Clifford algebras. Special recogni-
tion is due Oene Bottema and Bernard Roth for their inspiring treatise
Theoretical Kinematics. 1 am also grateful to Bahram Ravani, Gordon
Pennock, Jeff Ge, Krishna Gupta, Joel Burdick, Harvey Lipkin and Joe
Duffy for comments which shaped the final form of this work
JM. MeCarthy, Irvine, CA1 DISPLACEMENTS
1.1 Introduction
Kinematics studies the geometric properties of the motion of points. A
set of points with the property that the distances between any two of
‘them never varies is called a rigid body. A mechanism is constructed by
connecting rigid bodies together with joints that constrain their relative
movement. This book presents the basic mathematical theory required
to study the movement of a general mechanisin
‘The majority of mechanisms are designed so that the bodies, or links,
in the chain move in planes parallel to a base plane, This is achieved
in the case of hinged joints by requiring the axes of all the hinges be
perpendicular to the base plane. For example, in the case of a door the
hinges define a line perpendicular to the floor whieh is this base plane.
Mechanisms of this type are called planar mechanisms. Another class
of mechanisins has the property that all joint axes intersect in a single
point. An example of this is a gyroscope. This requirement constrains
the links of the chain to rotate on concentric spheres about this spe-
cial point, so they are called spherical mechanisms, Spatial mechanisms
do not have either this special plane or special point which means, in
general, that the joint axes are skew to each other in space,
‘The theory used to analyze each of these classes of mechanisms is,
developed here, however the focus is on a single chain of bodies in one
of two forms. The first form has one end of the chain attached to a
rigid base, and is termed an open chain. This is the kinematic structure
found in many robot manipulators. The second form has both ends of
the chain joined to the base forming a single loop closed chain. ‘This
latter form is typical of what is usually called a mechanism.
1.2 Rigid Transformations
‘The position of one link relative to another in a kinematic chain is defined.
mathematically by a coordinate transformation between reference frames
attached to each body. The link is rigid so this transformation must
preserve the distances measured between points, and it is called a rigid
transformation. Rigid transformations will consist simply of rotations2 Chapter 1. DISPLACEMENTS
and translations. For planar mechanisms we need only consider rotations
and translations in two dimensions. For spherical mechanisms we need
only consider rotations in space. For general spatial mechanisms we
consider rotations and translations in three dimensions. In this chapter
rigid transformations are presented in general, and then specialized for
use in the study of planar, spherical, and spatial mechanisms.
It happens that a translation is not a linear transformation which
means it cannot be represented by a matrix transformation. This is an
inconvenience that is remedied by adding another component of value 1
to the coordinate vectors of planar and spatial points. Rigid transforma-
tions, when written in terms of these so-called homogeneous coordinates,
become linear transformations known as homogeneous transforms.
The same equation that defines the position of a body by a coordinate
transformation can be interpreted as an operation that moves the body
from an initial to a final position. This latter view is reflected in the
term displacement. The points and lines in the body that do not move
while the body is displaced, that is the pole of a planar displacement, the
axis of a spatial rotation, and the screw axis of a spatial displacement,
characterize the displacement. Because the two interpretations of the
position of a body are equivalent, we find that these objects are the
invariant subspaces, or eigenvectors, of the homogeneous transforms that
define the coordinate transformation.
1.2.1 Coordinate Transform:
To study the position of one body relative to another, we attach co-
‘ordinate frames to each. One is chosen as the ground with coordinate
frame F, and the other, the moving body, has the coordinate frame M.
We use the coordinate transformation D : F — M, which transforms
coordinates measured in M to those measured in F, to represent the
position of Af relative to F. This transformation is given by
X=[Alx+4, (14)
where x is the coordinate vector ofa point in Af and X is the coordinate
vector of the same point but measured in F. If the moving body is of
dimension n (usually n = 2 or 3), then [4] is an n xn matrix and d is
‘an n-dimensional vector.
‘This transformation must preserve the rigidity of the body M which
means that distances computed using either set of coordinates must bethe same. The distance between two points P and Q in M is defined
by the usual Euclidean distance formula, which is the magnitude of the
difference of their coordinate vectors, Using coordinates measured in F
wwe have
d(P,Q)
jP-Q
/(P - Q)7(P - Q) (12)
Now compute this distance using coordinates p and q measured in M;
from (1.1) we obtain:
IP-Q) \((Alp + 4) = ([A]a + 4)|
{Alp - @)]
(p— a)"[A7][A)(p — @). (13)
‘This last equation equals |p ~ q| only if the matrix [4] satisfies the
relation
[a"][4] = U1) (14)
"
‘This is the constraint that guarantees that (1.1) isa rigid transformation.
‘An nx n matrix that satisfies (1.4) is called an orthogonal matriz
because its columns are orthogonal unit vectors. The left inverse of this
matrix is also its right inverse, so we have
(alla?) = 1), (1.5)
"which shows that the rows of [4] are also orthogonal unit vectors. From
(1.4), oF (1.5), we obtain constraint on the determinant of (4)
det(Z) = det([A7][A]) = det?((A]) = 1, (16)
‘which implies that the det(A) = +1. Orthogonal matrices with det() =
are called rotations and those with det(A) = —1 are reflections. While
reflections satisfy the rigid transformation constraint, only rotations are
‘used to define the position of a rigid body, so in addition to satisfying
(1.4) the matrix [4] is restricted to have a determinant equal to 1
1.2.2 Displacements
It is convenient to view the coordinate transformation (1.1) as an op-
eration that displaces a point from an original position to its present.4 Chapter 1, DISPLACEMENTS
position. This can lead to confusion about the coordinate frame in
which the vector x is measured. Our convention will be to view this
transformation as a displacement of the entire body Af from an initial
position coinciding with F to its present position, in which ease x is al-
ways measured in Af. We symbolize this transformation by D : F —+ M,
and call it a displacement. It is important to remember that the math-
ematical operations given in (1.1) are not changed whether it is viewed
as a displacement or a coordinate transformation,
A displacement in n-dimensional space is defined by the matrix-vector
pair D = (A,d), where [A] is an nxn rotation matrix and d is an n-
dimensional vector. ‘There are two special cases: R= (A,0), called a
pure rotation; and T = (1,4), called a pure translation.
‘One displacement can operate on another to yield a composite dis-
placement. If we have D. : F — My and Da: My = Mp, then the
composite displacement D = D,Dz : F ~ My exists. The formula for
this composite displacement is obtained by substituting the coordinates
obtained from the transformation Dz = (Az,dg) into (1.1) written for
the transformation Dy = ([Link]). The result is
X = [AyAa}x + [Arle + di (17)
Thus the composite displacement D = D, Dz: F + Mp is defined to be
D = DiDz = (Ai, di)(Az, da) = (Ar Ad, (Aids + dh). (18)
‘The inverse, D
(1.1) to obtai
of a displacement D = (A,d) is defined by inverting
(ATX - [AT]d, a9)
thus D-! = (AT,-ATd), Notice that DD“! = D“1D = J, where
1 = (1,0) is the identity displacement
‘The set of displacements of an n-dimensional space, RR", has the fol
lowing important properties which identify it as an algebraic group:
1, A product operation exists such that if Dy and Dz are displace
ments, then D = Dy Dp is also a displacement;
2. The displacement = (1,0) is the identity under the composite
operation;1.2. Rigid Transformations 5
fs
i 1,
Figure 14
‘Chang eforence eames
a
aa
3. Every displacement. D = (A,d) has an inverse D-! = (AT, AT)
which is also a displacement
‘This set is called the Euclidean group of n-dimensional space, often
denoted SE(n)
1.2.3 Changing Reference Frames
Suppose we prefer to use a ground frame F', other than F, to study the
displacement of a body, see Figure 1.1. Let the position of F relative to
the new frame F’ be given by the displacement G : F’ — F, then the
position of Mf relative to F’, D!: F’ + M, is given by the composite
displacement D’ = GD. It is important to notice that D’ = GD defines a
different displacement; one that moves M to its present position starting
from F’. This is clearly different from a displacement that begins at F.
In order to change the fixed reference frame without changing the
displacement, that is so M continues to start from F and move to its
present position, the reference frame in the body must also be changed.
‘The required transformation is G-! : M + M’, which defines the po-
sition of the new body frame A’. This frame coincides with FY when
M and F are aligned, and the displacement D” : F’ + M’, given by
D" = GDG", maintains the position of M relative to F.6 Chapter 1. DISPLACEMENTS
1.2.4 Homogeneous Transforms
A displacement is not a linear transformation for the simple reason that
the translation of the sum of two vectors, x and y, by the amount d is
T(x-+y) = x+y +4, and not the sum of the translation of each vector
separately, which is T(x) + T(y) = x+y +2d. Thus displacements of
R" cannot be represented by nx n matrix transformations. This in-
convenience is removed by embedding R” in R"*! as the n-dimensional
hyperplane H : tmy1 = 1. Linear transformations of R"*" exist that
perform rigid displacements in the hyperplane H.
Indentifying R" with H changes each n-dimensional coordinate vector
17a) into the n+1 dimensional vector x = (1, 1), also
x,1). A displacement, D = (Ad), of R” becomes the
linear transformation (T] = [A,d] of R"*? given by
(T}-[o 1G} a
‘The (n +1) x (n+ 1) matrix (T] = [A,d] is called the homogencous
transform representing the displacement D = (A,d). The term “ho-
rmogeneous” refers to the fact that the coordinate vector (x, 1) may be
interpreted as homogeneous coordinates of an n-dimensional projective
space. Notice that (1.10) actually defines a shear transformation of R"™*?
which happens to coincide with a rigid displacement. in the hyperplane
Hetil
‘The composition of two displacements D = Dy Dz is given by matrix
multiplication of the homogeneous transforms (T] = [Til[Tal. The iden-
tity displacement I = (1,0) becomes the (n-+1) x (n-+1) identity matrix
[U], and the homogeneous transform of the inverse displacement is ob-
tained simply as the matrix inverse [71]. ‘Thus, the set of (n+1) x(n-+1)
homogeneous transforms is a matrix group denoted as H(n),
1.3 Planar Displacements
1.8.1 Coordinate Transformations
If x = (z,y) are the coordinates of a point P in the moving body mea-
sured in the coordinate frame M, then the coordinates of P measured
in F are given by1.3. Planar Displacements 7
Figure 1.2
‘One planar body displaced relative to another
X=[Ae+4, (an)
where
tal=[Sno cov t= {js
see Figure 1.2. The pair D = (A,d) defines this transformation, and is
called a planar displacement
‘The matrix [A] has [47] as its inverse, therefore it is an orthogonal
matrix; and, because its determinant is 1, it defines a rotation. It is
teresting to examine the 2x2 orthogonal matrices that are not rotations.
In particular, consider the matrix
ixj= [ ae | (142)
which reflects coordinates of points in the plane through the line x =O.
A reflection [5] through a line at an angle a about the origin of F is
given by
-cos2a —sin2a
isi~ tanta”) [Se a
: (1.13)
‘where [A] is a rotation by the angle a.
The determinant of a product of n reflections is (-1)", therefore, if
1 is an even number, the product is a rotation not a reflection. The8 ‘Chapter I. DISPLACEMENTS
F
He
e M
fiat position
intl posi
—
Figure 1.3
“The pole of a planar displacement
product is a reflection only if n is odd. Let [S] and {7} be reffections
through lines at the angles a and 4, respectively, about the origin of F,
then the product [S][T] is the rotation
cos2(a- 8) —sin2(a~ 8)
sin2(a~ 3) cos %a~ 3) a)
This is a rotation of twice the angle a —9 between the two lines and does
not depend on either of the values of a or 3 alone. Thus the product of
1 pair of reflections through any two lines separated by an angle 6/2 is
equivalent to a rotation by 8.
(slit) =
1.3.2 Pole of a Planar Displacement
For a general planar displacement there is a point that does not move,
which means that its coordinates are the same in both reference frames
F and M. This point is called the pole, see Figure 1.3. Let D = (4,4)
be the displacement, then its pole p satisfies the equation, Dp = p, or
p=[Ajp+a. (1.15)
Solving for p we obtain
p= -[A-1"'4, (1.16)
pi = ((d/2)sin(6/2) ~ (da/2)0s(9/2))/ sin(@/2),
Pa = ((ds/2)cos(0/2) + (da/2)sin(0/2))/ sin( 6/2) (any1.3. Planar Displacements 9
The only case in which (1.16) does not have a solution is when A = I.
This occurs when the displacement is a pure translation, that is 0
0. As @ decreases to zero so does sin(@/2) in the numerator of (1.17)
In this case, the coordinates of the pole move to infinity along a line
perpendicular to the translation vector d
If p is the pole of a displacement D, then Gp is the pole of the
displacement D" = GDG™! obtained by changing reference frames. To
see this compute
D"(Gp) = GDG-"(Gp) = Gp. (1.18)
Now introduce two new reference frames F’ and M’ with origins at the
pole. The positions of F and M relative to the new frames F” and M’
are given by the translation G : F’ + F and G : M’ — M, where
G = (I,-p). The displacement becomes D” = GDG~* which in the
new reference frame is:
D" = (1,-p)(A,4)(J,p) = (4,0). (1.19)
Thus D" is a pure rotation about the pole p.
The displacement D factors into D = PRP“, where P = (I,p)
is defined by the position of the pole and by the rotation. For an
arbitrary change of reference frames we obtain
(GP)R(GP), (1.20)
GDG™ = G(PRP™)G~
where GP simply changes the translation to account for the new co-
ordinates of the pole. The pole and the rotation angle are geometric
properties of the displacement, independent of the reference frame used
to represent it
1.8.3 Poles using Homogeneous Transforms
It is convenient to write (1.11) in the form of the 3 x 3 matrix equation
cos -sin@ a] { z
sind cos da |) y (21)
o o asla
‘This is the homogeneous transform representation of a planar displace-
ment. ‘The matrices of H(3) are the linear transformations of three
in a way equivalent to
dimensional space that act on the plane Z =10 Chapter 1. DISPLACEMENTS
planar displacements. These matrices actually shear the space parallel
to the X-Y coordinate plane.
‘The pole of a displacement D
problem
(r}-[8 t1} va
‘when written in terms of homogeneous transforms. The eigenvalues of
(A, d) satisfies the matrix eigenvalue
this matrix are obtained from the determinant
cosO-2 -sind dh
det | sin@cos@—A de (1.23)
0 0 1a
which yields the characteristic equation
(1-290? — 2Acos8 +1) = (1.24)
‘The 3x3 matrix [4,4] obviously has X= 1 as an eigenvalue. The re
maining two are X = exp(i8) and A* = exp(—i8) which are also the eigen
values of the rotation matrix (4). Let x = (z1,22,0) and x* = (z},25.0)
be the eigenvectors associated with this latter pair of eigenvalues. A pair
of real orthogonal vectors, ¢, and ¢2, can be constructed from x and x*
by the formulae
(x+x°)/2,
ix x°)/2. (1.25)
en
‘The fixed frame coordinates Cy and C2 of these points are obtained by
the computation
Cy =[Aler = (exp(id)x + exp(-i8)x")/2,
Cr =[Aler = i(expli®)x ~ exp(—i8)x*)/2, (1.26)
Cy = cose; +sinde2,
Cy = —sindes +cos Ber (1.27)
These vectors span the Z = 0 coordinate plane of R®, and the trans-
formation (4,4) performs a planar rotation on the real vectors in this
plane. Thus the plane itself is invariant.
‘The eigenvector associated with \ = 1 satisfies the equation1.4. Spherical Displacements n
Figure 1.4
‘The rotation of one three dimensional body relative to another.
[457 8] {2 =o (1.28)
(p1,P2,1) defined in (1.16) is this eigenvector.
‘Thus the pole p
1.4 Spherical Displacements
1.4.1 Coordinate Transformations
‘The rotation of a three dimensional body, M, with respect to a fixed
body, F, is represented by the transformation equation,
X=[Alx, (1.29)
where x and X are three dimensional vectors defining coordinates of a
point in M and F, respectively, see Figure 1.4. To be a rigid transfor-
‘mation, the matrix [A] must satisfy the constraint
XTX = xT[AT[Alx = x", (1.30)
that is
(a7}I4) = U1,
which means [4] is an orthogonal matrix. Rotations are orthogonal
matrices with determinant equal to 1. They form the matrix group
denoted $0(3)2 Chapter 1. DISPLACEMENTS
‘The transformation (1.29) can be viewed as a displacement of the
frame M from an initial postion coinciding with F to its final position
From this point of view x is the initial position ofa point P in the body
andl X is its final position. This is often termed a spherical displacement
since P is coustrained to ie on a sphere.
A convenient form of the rotation matrix orients the = axis as the
roll axis of the moving frame M, x as the pitch axis and y as the vaw
of a sequence
axis. The resulting transformation A: F + M con
of rotations abont the coordinate axes 2, then x, then y. A= RyReR..
see Figure 1.4. In matrix form we have
laj=
cos8 0 sind} {1 0 0 cos —siny 0
o 1 0 0 cose sing || sin’ cose 0
sind 0 cos | [0 sing cosy o 0 1
Orthogonal matrices with determinant equal to —1 are called reftec-
tions. A typical example is
-100
(xj=]o 1 of. (131)
0 bi
which reflects coordinates of M through the X = 0 coordinate plane. A
general reflection is obtained as the product (A][X][A"] where [A] is a
rotation matrix.
1.4.2. The Bigenvectors of an Orthogonal Matrix
The set of points in the moving body that do not change position under
the action of [A] are solutions to the matrix equation
(ale
We generalize this to the matrix eigenvalue problem
[A}x = ax (1.32)
‘This says that the coordinates X in F are a constant 4 times the original
coordinates x in M. We are interested in the solutions for A= 1
In order for (1.32) to have solutions other than x = 0, the determinant
of [A~ Al] must be zero. For a general 3 x 3 matrix this determinant
vields the characteristic polynomial:LA. Spherical Displacements 13
y
axis of rotation
Figure 1.5
Every roiation reduces toa rotation about a fixed axis,
a8 4 A(ana +22 +033) — A(Mir + Maz + Maa) + det(A) = 0,
where Mj is the minor obtained by eliminating row i and column i. For
fa rotation matrix, we have det(A) = 1 and Mj; = ay. so this equation
becomes
8 — Maar + a2 + 35) + Maas + a2 + aga) (1.33)
‘We sce immediately that A = 1 is a root, so the characteristic polynomial
can be factored to obtain
(A= D0? = Aus + a2 + ass +1) +1) = 0. (1.34)
‘The remaining roots are A = cos + ising = exp(i¢) and \* = cond —
isin d = exp(—id), where ¢ is defined by
089 = (a1 + 422 + 35 ~ 1)/2 (1.35)
Let b be the eigenvector of [A] associated with \ = 1. all points on the
line v = tb in the direction b are fixed during the rotation. This is the
ais of rotation of the body, see Figure 1.5. We will obtain an explicit
formula for the eigenvector b from Cayley’s formula which is discussed
Jn the next section,
‘The complex eigenvectors x and x" associated with 4 = cose +
ising = exp(id) and At = cos — isin = exp(~id) define a plane“4 Chapter 1. DISPLACEMENTS
perpendicular to b. Real orthogonal vectors, ¢; and €2, in this plane
can be constructed from x and x" as
ey = (x +x")/2,
ep = x= x°)/2 (2.36)
‘The fixed frame coordinates C, and Cz of these points are obtained by
the computation
Cy = [Ale = (explid)x + exp(-i)x")/2,
C2 =[Aler =. ilexplio)x ~ exp(~ia)x*))/2, (1.87)
CQ cos de, + sin dee,
Cy = —sindey +08 der (1.88)
This is a rotation of angle ¢ in the real plane defined by the eigenvectors
x and x", perpendicular to b. In order to see this, change coordinates
0 that ¢; and ez are the unit vectors e; = (1,0,0) and e2 = (0,1,0),
and so b = (0,0,1), then (1.38) shows that C = (cos ,sin 6,0) and
Cy = (sin o,008 4,0) which is clearly the result of a pure rotation of
angle @ about b.
1.4.3 Cayley's formula
‘The requirement that a rotation maintain a constant distance between
points of the body, (1.30), can be written in the form
(K-97(K +x) =0 (1.39)
This expresses the fact that the diagonals X+-x and X—x of a thombt
with edges X and x intersect at right angles. Now since X+x = [A+I]x
and X — x = [A— I]x, we can compute
Xx H[A- MAF IX +). (1.40)
‘The matrix (B] = (A - I|[A+ I]! in this equation has the property
that for a general vector y, [Bly is orthogonal to y; as specified by
(1.39), From this we have
YTIBly = S7(b, + bs dey = 0. (al)nents 15
‘To satisfy this equation the diagonal elements 6,, must be zero, and
those elements above the diagonal must be the negative of those below
the diagonal, that is b,; = —bj. This means the matrix [B] has the
property that [B] = -[B7], which is termed skew-symmetry.
We solve {B] = [A ~I][A-+ 1]-? for [4] to obtain Cayley's formula for
fan orthogonal matrix
[j= - BU +B). (1.42)
The matrix [J ~ B] can not be singular, because if it was then 4 = 1
would be an eigenvalue of [B], however, skew-symmetry requires that
{B] have purely imaginary eigenvalues. Thus the inverse [J ~ B]" can
always be determined.
‘The matrices {1 + B] and [J ~ B] commute, since
U4 BI ~ B] = [0 ~ Bld +B) = [1 - BY
Pre-multiplying and post-multiplying this equation by [7 ~ B]~* results
in the fact that [J+ B] and [I - B]~! also commute, Thus Cayley's
formula has the equivalent form
[4] = [+ Bil - B). (1.43)
We now show that every skew-symmetric matrix [B] defines an or-
thogonal matrix by Cayley’s formula, To see this compute the product
[AT [A] directly. First from (1.42), we have
[AT] = + BTU - BT? = - BY + BY
“Multiplying this on the right by (1.43), we obtain the identity matrix as
required.
14.4 3x3 Skew-symmetric matrices
A 3x3 skew-symmetric matrix [B] has only 3 independent elements,
that is
0 -b be
[B)=| % 0 -b (44)
-h ob 0
These elements can be assembled into the vector b = ([Link],bs). ‘The
action of [B] on an arbitrary vector y is equivalent to the eross product
by b, that is6 Chapter 1. DISPLACEMENTS
[Bly =b xy. (1.45)
We will move freely between 3 x 3 skew-symmetric matrices and their
representation by a eross produet operation,
"The vector b obtained from the skew-symmetric matrix {B] in Cayley’s
formula is the eigenvector of the rotation matrix [4] associated with the
‘To see this, note that this eigenvector is the solution
eigenvalue
to the equation
{A-Ix=0. (1.46)
Replace [A] by Cayley’s formula, multiply by [J ~ B], and simplify the
result to obtain
[B)x =0.
Since [B]x = b x x, the solution to (1.46) is x = b.
The eigenvalues \ ofa general 3%3 skew-symmetric matrix [W] satisfy
the equation:
HA mw we
det | ws -’ -wi | =0, (a7)
sw, uy =
which simplifies to the characteristic equation
Maud tad + wdao (148)
‘This shows that the eigenvalues of these matrices are either zero or
purely imaginary numbers.
1.4.5 Rodrigues’ equation
Given an orthogonal matrix [A]. we have from (1.40) a skew-symmetric
matrix [B] and the relation
X x= (BX +x), (1.49)
between the fixed and moving frame coordinates of points in a rotated
ody. Using the relationship between skew-symmetric matrices and the
cross product, we can write this equation in the form
(X-x)=bx (K+x) (1.50)1.4. Spherical Displacements wv
bf) Rotation axis
Figure 1.6
"The geometry relating the positions of x and X before and after a rotation and the
‘This is known as Rodrigues’ equation for rotations, and b is known as
Rodrigues’ vector.
Notice that (1.50) remains true if we replace X and x by their pro-
jections X* and x* onto a plane perpendicular to b, see Figure 1.6.
‘Therefore, since b is also perpendicular to X* +x", the magnitude of
X* — x" is obtained from the relation
[X* — "| = [bIX? + x"|. (51)
Now the vectors X*— x* and X* +x" are the diagonals of the rhombus
with sides X* and x" and vertex angle ¢, see Figure 1.6, therefore
|X" — x*|
eet (152)
‘Comparing (1.51) and (1.52), we obtain the magnitude of b as
Ib] = tan(o/2) (1.53)
‘The components of the vector b, or equivalently of the skew-symmetric
matrix [B], are now seen to be
tan($)
by = tan(o/2)s2,b2 = tan($/2)sy,by = tan(d/2)s., (1.54)
where $ = (s2,),92) is the unit vector along b. ‘These constants are
known as Rodrigues” parameters.18 Chapter 1. DISPLACEMENTS
1.4.6 Euler parameters
Cayley’s formula for the orthogonal matrix [4] can be written in terms
of the rotation angle 6 and the unit vector s by noting that [B] =
tan(¢/2)[S]. The result is:
@ 261-162 @ 55)
[A] = foos( $)1 ~ sin( $)S]-"foos( $1 + sin( $)5} (1.55)
The constants in (C] = [cos(¢/2)+sin(4/2)$] are the Euler parameters
of [A], given by
9 = €08(4/2), ¢4 = sin(¢/2)s2,¢2
(4/2)sy,¢9 = sin(4/2)s.. (1.56)
‘To expand (1.55), we compute the inverse
_
toon $4 — in $5} = con St] + sinc $s] + SUELN r+ 5%
and multiply by [C] to obtain the expression
[4] = 1+ 2sin($) cos($)I5] + 2sin®($)[5) (1.57)
This equation uses the identity [S* + {S] = 0 which is obtained from
(1.48) and the fact that a matrix satisfies it own characteristic equation
The trigonometric half-angle identities further simplify this to the form
[4] = [1] + sin ofS] + (1 — c086)15%} (1.58)
‘A simple formula for [5] in terms of the elements of [4] is obtained
from this result by noting that [1] and (54 are symmetric matriees and
[5] is skew-symmetric. Therefore we have
2sin ¢[S] = [A - AT]. (1.59)
‘The angle ¢ may be computed from the magnitude of the vector obtained
from the skew-symmetric matrix [4 ~ AT]
1.5 Spatial Displacements
1.5.1 Coordinate Transformations
‘The relative position of two rigid bodies in three dimensions is defined
by the transformation that specifies the coordinates X = (X,¥,Z) in15. Spatial Displacements 19
Figure 1.7
“The spatial displacement of one body relative to another,
the base frame F in terms of the coordinates x = (2,y.=) of a point
jn the moving body measured in its frame M, see Figure 1.7. The
transformation is given by
x
[jx +a (1.60)
[A] is a 3x3 rotation matrix and d = (d1,da, ds) is the translation vector.
By computations identical to Eqs. 1.2, 1.3 and 1.4, we see that this
transformation preserves the distances measure between points in M and.
is therefore a rigid transformation which we term a spatial displacement,
1.5.2 Screw Axis of a Displacement
‘We now consider the points in the moving body which are fixed in space
under the action of a spatial displacement. These points ¢ have the same
coordinates before and after the displacement, that is they satisfy the
equation
c= [dle +d,
U- Ale (1.61)
The solution would seem to be € = ~[4 ~ I)~%d, however [4 ~ I] is
singular since 1 is an eigenvalue of all 3x 3 rotation matrices. ‘The
conclusion is that there are no fixed points for a spatial displacement2» Chapter 1, DISPLACEMENTS.
For a general n xn rotation matrix (4), (A~ 1] is nonsingular for even
values of n, in which ease there is a unique fixed point ealled the pole
of the displacement, For odd values of n, [A] must have an eigenvalue
‘equal 1, which means [A ~] is singular and there is no fixed point.
‘Though a spatial displacement has no fixed points, there is a fixed
line, called the serew azis, that has the same position in space before
and after the displacement. Any point on the fixed line is constrained
to move along the line. The direction of this line is the axis of rotation
of [A] given by Rodrigues’ vector b. To determine the position of this
line, let d® be the projection of the translation vector d onto a plane
perpendicular to band we seek the solution to the equation
ll - Ale =a" (1.62)
This defines the pole ¢ of the planar displacement which rotates about
’b and translates in the plane perpendicular to b. The desired line is
L=e+ tb. The displacement reduces to a pure rotation about this line
and a translation along it by the amount ds = dd"; note s = b/[b|.
This is termed a screw displacement.
‘To solve (1.62) for €, replace [A] by Cayley’s formula, multiply by
(1 — Band simplify to obtain
[Ble = ~(1/2){1 ~ B]a” (1.63)
Writing this in vector form, we have
bxe=—(1/2)(d" —b xd") (1.64)
This equation is simplified by operating on both sides with bx and
requiring that b-¢ = 0, the result
bxd
c= (1/25 +4") (1.65)
‘The amount of translation along the screw axi
the vector d ~ d*
the magnitude d of,
1.5.3 Rodrigues’ Equation
Rodrigues’ equation for rotations is easily generalized to spatial displace-
ments using the screw axis L = ¢ + ts. Let ¢ be a point on the screw
axis, then the construction used to derive Rodrigues’ equation can be
applied to the vectors x ~¢ and X ~ (ds + €) instead of x and X. see
Figure 1.8. The result is1.5. Spatial Displacements a
Figure 1.8
fe geometry relating the position of x and X before and after the displacement
andthe nerew xin
X ~ (ds +6) ~(x—¢) =b x (X ~ (ds +€) +x ~e). (1.66)
which simplifies to
X= x=bx(K +x ~ 26) + ds (1.67)
‘This is Rodrigues’ formula for a general spatial displacement,
1.5.4 The Screw Matrix
So far we have determined the screw axis and the rotation about and
translation along this axis for a given a displacement D = (A,d), We
now determine the displacement D in terms of a given the screw axis L
and the screw displacement of angle ¢ and distance d along L.
Let the screw axis be the line L = +s in the fixed reference frame F.
Assume that s is a unit vector and that ¢ is chosen so that ¢-s = 0. Given
the rotation angle @ we obtain Rodrigues’ vector as b = tan(o/2)s. The
components of b are used to construct the skew-symmetric matrix (B).
‘and the rotation matrix [4] is obtained using Cayley’s formula
If the screw axis passes through the origin of F, then e = 0, and
the translation component is simply d = ds, so the displacement is
Di =([Link])
If the screw axis does not pass through the origin, then € #0. Let F”
be a fixed reference frame located on the screw axis at ¢, then the pos
tion of FY relative to F, that is T: F + F’. is defined by the translation2 Chapter 1. DISPLACEMENTS
T = (1c). We use this transformation to change the coordinates of
D’ = (A,ds) to the desired reference frame, the result is D = TD/T~!
Since T' = (I,-c), we have
D=TD'T*
(1,0)(A,ds)(I,-€) = (A,ds — Ae +6) (1.68)
‘Thus the translation vector d is given by
d= ds+(I- Ale. (1.69)
‘The 4 x 4 matrix [4,4] constructed for this displacement is called the
serew matriz,
1.5.5 Bigenvectors of 4x 4 Transforms
‘The screw axis can also be obtained as an invariant subspace of the
4x 4 homogeneous transform that represents the spatial displacement
D =(Ayd). To see this consider solutions to the eigenvalue problem
[3 tI} 08} vm
(rp = »p,
“The characteristic equation ofthis problem is
(1- A(X? — 2Acosd + 1) = 0. (1.71)
‘Thus, the eigenvalues of [T] are A= 1 which is a double root, and the
pair of complex conjugates A = exp(id) and A* = exp(—ig). These latter
two roots are the eigenvalues of the rotation matrix [A]. The associated
eigenvectors are the four dimensional vectors x = (x,0) and x" = (x*,0)
obtained by adding a fourth zero component to the three dimensional
eigenvectors of [A].
The eigenvectors associated with the double root 4 = 1 satisfy the
‘equation:
(r-Ip=
(1.72)
where
w-n=[491 §]1.5. Spatial Displacements 23
Clearly b = (b,0) is an eigenvector of [7], since itis the third eigenvector
of [4]. It turns out that there are no other solutions to (1.72) so there
are no other eigenvectors of [T] = [4,d]. To prove this, note that the
three vectors x, x", and b span the subspace 4 = 0, therefore a fourth
cigenvector must have a component in the 4? = Vie? (24)
where [tis the magnitude of the i** coh
vector.
For our purposes we approximate (2.1) by setting the magnitude of
each column equal to the magnitude of the largest column vector of (7)
‘That is, we define a norm ||T|| for displacements by the formula
1) = Villtmas! (2.2)
The relation between |[T'] and mag(T) is seen to be
IT || = Vamax(|t,|, i
mag(T) < \\T', (2.3)
Lier
‘The distance between two matrices (S] and [7] is now given by
IIT - S| = Vmax |ts — 8;| = Vilts ~ Silmazs (2.4)
where 8, tii = 1,...,n are the corresonding columns of [S} and [7]
In order to be useful in defining the continuity of functions a norm
aust have the properties: 1|A + Bl < |All + ||B}; 24AB|| < [AI Bl:
‘and 3.)l| = |k|)Al|. The norm defined in (2.2) satisfies each of these
relations:
1. From the triangle inequality of vector norms we know |t, + sil <
[te] + [sil and since [ts + Silmar $ |te| + [81] < Itmar| + [Smazl we
have ||A + Bll < ||Al) + ||BI)2.2. Motion of a Rigid Body 7
2A typical column of (A][B] is 37, bija;. ‘The magnitude of this
column is | 55; bisa] < SO, [bijllae] by the triangle inequality. Con-
sidering this last term a8 the scalar product of by with the vec-
tor m = (lay|---, al), the Schwartz inequality yields by -m <
{b,l}m. Finally, since [m| < Ynlamas| we obtain |, bya] <
ViilbmasllAmazl thus AB] < Al)
3, Since [ka,| = Alla, for all columns of A including its maximum,
we have [i Al] = [ki [LA
2.2.2 The Continuity of Matrix Operatii
‘We use the norm (1.2) to show that if the displacements (7] and [S]
are close together then their ij" elements fy; and si; are close together.
Let the function 2i(7) select the i,j element of the matrix (T], that
is 24(T) = ti. Continuity of this function means that the difference
between the i,j elements of (T] and [S] can be made as small as desired
by making {|T' — Sil small. Since this difference, |t,) ~ sj]. must be
less than (or equal to) the magnitude of the largest column difference
[ti Silmees We have
beis(T) — 25(5)1 S Wilts — Silmas = IIT — SI (25)
The left side of of this inequality can be made less than € by choosing
IIT - Si less than ey.
‘The elements of the product matrix (R] = (S][T| are rational fune-
tions of the elements of each of the matrices [8] and [T}. Because the
rational operations of addition, subtraction, multiplication and division
of the continuous functions 2)($) and 11,(T) always yield contimio
functions, the product [R] = [S][T] is a continuous function of (S] and
{T]. For the same reason, the determinant det(T) and the matrix in-
verse [T-] vary continuously as [T] varies. This means that there is
‘a matrix (S] = [T+ B] close to (T] with a determinant det(T + B) as
close to det() as desired. From these facts we can conclude that the
set of matrices with non-zero determinant, the invertable matrices, is a
continuous manifold
2.2.3 Matrix Groups
‘The set of n x n invertable matrices, denoted GL(n), is an algebraic
group under the operation of matrix multiplication. The group axioms2 Chapter 2. MOTION,
1. For any pair of elements [S] and (T] the product [S](7] is also in
the set. If [S] and [7] are invertable their determinants are non
zero, since det(ST) = det(S)det(T) must be non-zero, thus the
product {S][T] is invertable,
2. The set contains an identity element, which is the n x n identity
matrix [J]. The determinant of [1] is 1
3. Every element of the set has an inverse. All n xn matrices with
non-zero determinants have inverses.
A continuous manifold whieh is also an algebraic group is known as
fa Lie group. if the group produet is continuous, The matrix product is
continous, therefore, GL(n) is a Lie group.
Subsets of GL(n) which are also algebraic groups under matric mul
tiplication are called subgroups. There are many subgroups of GL(n),
the two of interest to us are the sets of n x n rotation matrices, SO(n).
and n x n homogeneous transforms, H(n). Spatial rotations form the
group $O(3), and planar and spatial displacements are represented by
H(3) and H(A). respectively.
SO(n): The set of nxn matrices [A] that satisfy the conditions [A? A] =
{J} and det(A) = 1 is the Lie subgroup SO(n). It is a group since this
set contains the identity matrix (Z] which has the determinant 1; the in-
verse [A~!] = [AT] of each element [4] has the determinant 1; and, if (A)
‘and (B] have these properties, then the product [AB] is in SO(n), since
(AB)"(AB) = BTAT AB = BTB = I, and det(AB) = det( A) det(B) =
1
H(n) This is the set of n x n matrices of the form
04
m=taa=[ 9 4
where (A] is an (m1) x(n—1) rotation matrix, dis an n—1 dimensional
colin vector, and 0 is a row vector of n= 1 zeros. Matrix multiplication
of (T] = [Assay] and [S] = [Az, da] yields [7'S] = [Ay Az, Avda +] in
whic AyAz is an (1) x (n= 1) sotation matrix and Ayda +4) is an
n—1 dimensional vector. Therefore, the product of any pair of elements
in H(n) is also in H(n). The nx n identity matrix J is an element of
H(n) of the form [1] = [Fy—1,0] where In-1 is the (n~ 1) x (n ~ 1)2.8. The Derivative of a Motion 29
identity rotation, and 0 is the n — 1 dimensional zero vector. Finally,
the inverse of [T] = [4,4] is [T~'] = [A —A?d] which is also in H(n),
2.3 The Derivative of a Motion
‘The continuous motion of a rigid body is the parameterized set of linear
transformations, (7(t)] : R + GL(n). In particular, planar motion is
defined by [T(t)] : R + H(8), spherical motion by (T(t)] : R + SO(3)..
‘and spatial motion by [T(f)] : R + H(4). In what follows the motion
[7] may be planar, spherical, or spatial
In general, each of the elements t,(t) in [T(t)] : R + GL(n) isa
continuous fanction of a real parameter, therefore the derivative of this
‘matrix function is the matrix of derivatives of each of its elements, (7'(¢)|
‘The dot denotes differentiation with respect to t.
‘An important example of a function [P(@)] : R > GL(n) is (7(8)] =
[F +5], where (T] and [S] are constant n xn matrices. [T] must be
invertable but [5] may be any (possibly singular) matrix. The continuity
of GL(n) assures that small values of t exist such that the matrix (7'+¢S)
is invertable. The derivative of [T(t] is simply [1 = [5]. A special case
of this is [T(¢)] = [T + tB,j], where [E,)] is the matrix with a one as the
ij element and zeros elsewhere. The n® matrices (B,,] form a natural
basis for the vector space of all n x n matrices (not just invertable ones)
‘Thus the derivative of a continuous set of invertable transformations is
fa general n xn matrix.
Each element function tis(t) can be approximated in the vicinity of
£ = to by the tangent line 1i;(t) = tito) + (t — to)éas(o). In the same
‘way, [T(t] is approximated near (T(to)] by the linear equation
[L(t)] = [7(to)] + (t - to)[F(to)]. (2.6)
This may be viewed as the linear space in the set ofall n xn matrices
that. is tangent to (T(t)] at [T(to)]. The derivative [7(to)] defines the
tangent direction of the motion at [T'(to)]
2.3.1 The Tangent Operator
‘The matrix function [T(t)] : R + GL(n) generates a continuous set of
points ¥(¢) = (T(é)]y in F called the trajectory of y. The direction of
the tangent to the trajectory ¥(0) at ¢ = to is the derivative30 Chapter 2. MOTION
Y¥ (to) = (Pto)ly = [TT "to)]¥ (to). (2.7)
From this equation we observe that the matrix {7T~] computes the
derivative ¥(¢) by operating on the trajectory ¥(t). The ide
(Fee)] = (FT (ONTO), (28)
shows that [77-1] also computes the derivative of (7(¢)]. We call this
matrix the tangent operator on GL(n), because it computes the direction
tangent to a motion,
‘We now determine the motion [R(¢)] that has a constant matrix [S] as
its tangent operator. Since [$] computes the derivative [2(¢)] at every
point [R(®)] we have the matrix differential equation
[200] = (SIRO) (29)
‘This is a linear set of n? differential equations in the element functions
riy(O) Ifthe initial condition is (R(0)] = [Ro], then it has the solution
[R(t)] = [Ro]exp(tS) = [Roll + (tS) + (¢8)?/2 + (t5)9/3' +...) (2.10)
‘To show that this exponential series converges, compute the norm of
the difference between the partial sums P, and Py which is
(est
Poor = Pall = ES @ay
“This quantity can be approximated as
Wasa = Pall s HUSH (212)
wei}
which for fixed values of |t| and |||] decreases to zero as n increases to
infinity.
By multiplying (2.9) on the left by [Ro] we modify [R(t] so that it
has the initial condition [R(0)] = [J], and (2.10) becomes simply
[R(n)) = exptts), (2.113)
This set of transformations has the interesting property that
[R(t)][R(t2)] = expltrS) exp(ta$) = exp((tr +t2)S) = [R(t +t2)),(2.14)2.3. ‘The Derivative of a Motion at
‘and is termed a one-parameter subgroup. Notice that in this case the
tangent operator (S] is the derivative of (R(¢)] at [R(0)] = [I], 0 the set
of tangent operators on GL(n) is identical to the set of tangent directions
at the identity [1]
‘The dimension of a Lie group as a manifold is the dimension of the
linear space spanned by its tangent vectors. It is therefore equal to the
dimension of the vector space of tangent operators. For GL(n) any nxn
‘matrix can be a tangent operator which means there are n? basis vector
thus the dimension of GL(n) as a manifold is n?.
A special operation, called the Lie product, is defined for tangent
operators. Let [T] and (S] be tangent operators then [T] x (S] is the
tangent operator
[7] x (S) = (Ps -s7}, (215)
where TS denotes the usual matrix product. A vector space with a
product operation is known as an algebra. In this ease, the vector space
of tangent operators with this product is called the Lie algebra of the
group GL{n).
2.8.2 The Tangent Operators of SO(n)
‘The tangent operators of rotation matrices are defined in the same way
as those of GL(n). In this case, however, not every tangent operator
of GL(n) is a tangent operator of SO(n). ‘The condition defining the
tangent operators of SO(n) is obtained from the relation (AA (¢)] = [J]
which must be satisfied by all rotation matrices. Differentiating this we
obtain
[447] + [447]
(0 (2.16)
which may be rewritten as
(4a?| = -[4a7], (2.17)
‘The result is that the tangent operator [AA~"] = [AAT] = [0] is skew-
symmetric. {0] is the well-known angular velocity matrix of the rotation
[A(0)]. nx n skew-symmetric matrices have n(n ~ 1)/2 independent
elements, which is the number of basis elements for this set- when con-
sidered as a vector space. Thus the dimension of SO(n) as a manifold
is n(n —1)/2.2 Chapter 2. MOTION
We now focus on spatial rotations $O(3) which is a three dimensional
‘manifold. For a given constant angular velocity matrix [0] we obtain a
one-parameter group of rotations from the matrix differential equation
(Alo) = (214) (2.18)
which has the solution
Alt) = exp(e®) (2.19)
Note, we assume that [4(0)] = {1}
To simplify this exponential, let w be the vector associated with (Q]
Normalize [9] by dividing by w = jw| to obtain
{0
«[S} (2.20)
‘The magnitude of s obtained from the components of [Sis now equal
to one. Using the identity (S]°-+ [S] = 0 obtained from the characteristic
equation of [5], we simplify (2.19) to obtain
A(t) = exp(t) = I + sin(wt)[S] + (1 — cost) [SP (2.21)
This is the equation of a pure rotation about the axis w obtained from
the tangent operator {0}. The term wt specifies the rotation angle. If we
view f as time, then the body rotates about w with the constant angular
velocity w.
2.3.3 The Tangent Operators of H(n)
[As in the case of SO(n), not all the tangent operators of GL(n) are
tangent operators of Hin). Those that are must satisfy the relation
arya[ a a][ 4 aa] [dar —tarandy
wrn=[$ y= (2.2)
where 2 = AAT is the (n - 1) x(n ~ 1) angular velocity matrix of
the moving body and v = —2d + d is its (n ~ 1) dimensional linear
velocity vector. A general tangent operator [5] = [9 v] of H(n) consists
of (n — 1)(n ~ 2)/2 independent elements in [9] and (n — 1) elements
in v, for a total of n(n ~ 1)/2 independent basis elements. Thus H(n)2.3. The Derivative of a Motion 38
is an n(n — 1)/2 dimensional manifold, in particular H(3) has three
dimensions and H(4) has six.
‘We now consider the one parameter subgroups of H(4) obtained from
the differential equation
(7() = (SIT), (2.23)
where [S] = [9,v] is a constant matrix. The solution is,
[T(0)] = exp(es). (224)
‘This assumes that the fixed and moving frames coincide at the instant
t= 0, that is [7(0)] = [J]. To simplify this exponential, decompose the
linear velocity vector v into components, v* = ex w and kw =v ~v*
perpendicular and parallel to the angular velocity vector w.
First, consider the case when v* = 0, so v = kw. In this case, since
[fw = 0, we have
wi-[9 8]
ert
ir = exes) = | 229 et) = [0 et), (228)
swhere[A(t)] is the rotation matrix obtained as the exponential of (0,
‘We now consider the general case. Let [S] be the tangent operator
of a general motion T(t) : F + M, with angular velocity w and linear
velocity v. If the point ¢ that satisfies the relation vt = © x w is,
used as the origin of a frame FY then the tangent operator [S"] in this
frame has w and v colinear as in the previous case. The coordinate
transformation D : F + F' that defines the position of F” relative to F
iven by [D] = [Fe]. We transform (2.24) written for S” and obtain
[T(t)] = (DJexp(ts')[D~], (2.26)
which expands to become
(r@) = [3 Ee wes +}:
[ A) ht +t ~ ACO ] eena4 Chapter 2. MOTION
Compare this result to (1.69) to see that the exponential of general screw
defines a pure screw motion. If t is time, then this motion consists of a
rotation of angular velocity w = |w| about the line in the direction w
through ¢, and the linear velocity kw along this line
2.3.4 Vectors Associated with Tangent Operators
Only three of the nine elements in the 3x3 matrices defining the tangent
operators of $0(3) and H(3) are independent. Similarly, there are only
six independent components among of the sixteen elements of the 4 x4
matrices defining the tangent operators of H(4). For this reason it is
convenient to assemble these independent elements into vectors.
‘The vector form of a tangent operator of SO(3) is the vector w con:
structed from the 3x3 skew-symmetric matrix [2], so that [Q]y = w xy.
For H(3) we have the 3 x 3 tangent operator [2 v| given by
0 ou ] (228)
In this case, we assemble the independent components into the three
dimensional vector (61,02... Finally, the components of a tangent
operator [5] = [Q,v] of H(A) are assembled into the sixdimensional
vector § = (w,¥), called a screw
“The Lie product defined in (2.18) provides a product operation forthe
vectors associated with each of these tangent operators. For SO(3), ife
and w are the vectors associated with the skew-symmetric matrices [C}
and [0], thon we find that the vector associated with the skew-symmetric
trix obtained from the Lie product
[cl x {a =(ca-ac}, (2.29)
is exw. This is the usual vector product between two three dimensional
vectors,
For the general case of homogeneous transforms, H(n), the Lie prod-
uct of the tangent operators (R] = [C\r] and [S] = (9, is defined
by
[R] x (5)
(Rs - SR),
[C.r1f2, v] ~ 19, v1,
[ca 26, [Clv ~ [M}x} (2.30)24, Multi-Parameter Motion 3
When n = 3, that is for planar displacements, the components of [R]
are assembled into the vector (r1,r2,A) and those of [S] are (v1, 254).
s0 we have
00 ~An ture
(RJx(Sj=]0 0 an-or |, (2.31)
oo 0
which yields Lie product of the associated vectors as
(ragrad) x (0, 02,0) = (—Aty + wre, Wy — wry), (2.32)
For the case of spatial displacements, H(4) the Lie product. of the six-
dimensional vectors © = (¢,r) and $ = (w,v) is given by
CxS =(exwexv—w xr). (2:33)
Note the cross product on the right side of this equation is the usual
vector product in three dimensions.
2.4 Multi-Parameter Motion
‘The matrix function (T(t)] : R + GL(n) defines a motion of @ body
that is parameterized by a single variable, we now consider the motions
parameterized by the m variables @ = (03,....4m), denoted (F(8)]
R™ — GL(n). ‘The image of [F(@)] in GL(n) is analogous to an m-
dimensional surface.
‘The partial derivative of [F(B)] = [f:(01s.-+,8m)o+-+sfa(Ots+++ 8m)
with respect to a variable 6; is the mm matrix
Ure] ~ fara] ean
If the variables 6; are functions of a variable t, that is @ = 6(t), then the
chain rule links the partial derivatives 0F/00, to the derivative (F], by
the relation
"1 2m
Multiplying on the right by [F—}] we obtain the tangent operator
edo eof po
[2he]ice ne [SE e fou om)
Fhe [Se] Om (2.38)
er
28m36 Chapter 2. MOTION
‘The matrices (0F/06,F~] are the partial tangent operators associated
with each of the parameters @, individually.
Let the 8! be the vector associated with the tangent operator [FF-!]
and S, be the vectors associated with the partial tangent. operators
[AF /90.F-"}, then (2.36) can be written in the form
S' = 8,4, + Sirf +--+ Sab. (2.37)
This can now be written as the matrix equation
S' = [S1,S2,-.-, Sm} {4} = (18), (2.38)
where {} i the column vector formed fom the array (8,.2,---.4).
‘The 6 x m matrix [J] is known as the Jacobian of the multi parameter
motion.
Ify is a point fixed in a body with motion prescribed by [F(@)]
FM, then ¥(1,...,m) = [F(8)|y is the m-dimensional trajectory.
surface traced by y in the fixed reference frame. The tangent operator
& [2 ply ex
2.5 References
‘The results concerning norms are taken from Halmos (1974). See Be-
linfante and Kolman (1972) for an accessible description of Lie groups
and Lie Algebras. Sattinger and Weaver (1986) provide additional in-
sight, though both texts focus primarily on the groups of interest to
particle physicists, Brockett (1983) identifies the elements of the Lie al-
{gebra of the group of homogencous transforms as the screws of classical
kinematics,3 SCREW THEORY
3.1 Introduction
In this chapter we present various results about the six-dimensional vee-
tors obtained from the tangent operators of spatial motion, called serews.
Each serew has an axis defined by six Pliicker coordinates, These coordi-
nates also identify the coordinate bivector of a plane through the origin
in four dimensional space. If three dimensional space is considered to be
a hyperplane in four dimensions then the plane identified by a bivector
intersects this hyperplane in a line with the same Pliicker coordinates.
‘We then show that general screws are equivalent to general bivectors.
By identifying screws as bivectors the algebra of multivectors becomes
available for the manipulation of screws. Of particular value is the re-
ciprocal produet which identifies when the axes of serews are parallel or
intersect.
In the final sections dual number algebra is presented to simplify the
manipulation of screw coordinate transformations. The result is the
definition of dual orthogonal matrices and the presentation of a serew
displacement as the exponential of a dual angular velocity matrix.
3.2 Screw Coordinate Transformations
‘The general tangent operator of H(4) is given by [S] = [2 v]. where [2]
is a3 x 3 skew-symmetric matrix and v is a three-dimensional vector.
Let w be the vector obtained from (0, then associated with {5} is the
six dimensional vector S = (w,v), called a screw. We now determine
how the coordinates of this screw change as we change reference frames
for the motion.
Let a motion be given as the parameterized displacement T(t) : F =
-M, and let the position of fixed and moving frames F and M relative to
the new coordinate frames, F’ and A’, be defined by the displacements,
D:F!— F and Ds MM’; then the motion T(t): P! + M',
is defined by T'(t) = DT(t)D™!, The tangent operator [S'] of T'(t) is,
determined from the tangent operator [5] of the original motion T(t) by
the computation
(s)]=[DiD- [pr D~
(3)38 Chapter 3. SCREW THEORY
Figure 3.4
‘When the fixed frame is positioned at ¢ the linear and angul
the screw axis:
veloeities align with
If the displacement is [D] = [4,], then this equation expands to yield
m= [$aII83](% “$4
AMAT -ANATA + AV
-([% "| (a2)
‘The components of the skew-symmetric matrix {0'] = [AMAT] can be
assembled into the vector W so we have
~ [AQAT|d = ~[0']d = -W xd =ax W. (33)
‘Thus the screw $ = (w,v) becomes 8! = (W, V) given by
WwW = [Alw
V = axalw+ (av as)
‘This transformation can be written as the 6 x 6 matrix equation
{¥ }-[ ou al{t} (35)
where [D] is the skew-symmetric matrix obtained from 4, and (0] is the
3x 3 zero matrix. This equation transforms a serew to account for a
‘change of the fixed and moving frames defining a motion,3.2. Screw Coordinate Transformations 0
3.2.1 Standard Form for a Screw
A special case of the change of coordinates (3.5) is the screw transfor-
mation obtained for a the pure translation [I] = [J,d] of the coordinate
frames F and M. In this case $ = (w,v) transforms to
S'=([Link] ty), (3.6)
‘This shows that translations of the origin of the reference frames only
change the linear velocity component of the screw. We will now use this
fact to obtain a standard form for screws.
‘The linear velocity vector v of the serew, $ = (w.v), can be decom-
posed into components parallel and perpendicular to w. ‘The parallel
component is kw where kis given by
nou on
‘The perpendicular component is simply v — kw, however, we can deter-
‘mine a vector € such that this component is given by © x w. That is,
the vector ¢ satisfies the equation
exw=v—kw, (38)
‘The solution to this equation is obtained by computing the cross product.
of both sides with w, the result is
(39)
Now, change the reference frames by the translation [T] = [1
that $ is transformed into the screw
8! =(w.-exw+v). (3.10)
By construction ¢ x w equals the component of v perpendicular to w,
therefore
-exwt
kw. (an)
‘Therefore, in this new reference frame the screw takes the form S’
(w, kw) with its linear and angular velocity vectors aligned in the direc-
tion w. In this frame we see explicity that the body moves in a screw
‘motion at the instant defined by t. The axis of this screw motion in the40 Chapter 8. SCREW THEORY
original set of frames is the line L = ¢ + tw called the instantaneous
screw aris of the motion. See Figure 3.1.
‘The point ¢, defined by (3.9), can be used to write a general screw,
S = (w,y), in the standard form
S=([Link] w+kw), (3.2)
where v has been decomposed into components parallel and perpendicu-
lar to w. The line L = c+tw is the azis of the screw $ and the constant
eis its pitch,
3.2.2. Pliicker Coordinates of a Line
An important special case of a screw is obtained from (3.9) when the
pitch & = 0, s0 there is no velocity vector and the serew has the form
S = ([Link] w). The body has an angular velocity but no linear velocity
relative to the line L = e+ tw. In this ease the serew can be viewed
as identifying the line L, and its components are called the Pliicker
coordinates of the line.
‘To see this in another way, let p= ([Link]) and q = (a1.92.¢3) be
two points, The line through these points is L = ¢ + t(q ~ p) where
© = p+ fola~ p) is a reference point on the line and w = 4 ~ p is
direction of the line, The Pliicker coordinates of L are defined to be
L=(w.e x w). Notice that any point e' = e+ tw, can be used as the
reference point in the cross product term because (e+ tw) x w = € x w.
‘The components of the vector L, or line serew as it is often called, are
traditionally labeled L = ([Link]-PassPai-Pr2)- It is easy to see
that these coordinates satisfy the relation
ww (© x w) = papas + PeaPar + Pasa = 0. (3.13)
Another case in which screws degenerate to line serews occurs when
the screw has the form S = (0, v). This corresponds to a motion in which
the body has no angular velocity, only the linear velocity associated with,
a pure translation. The components of these screws satisfy (3.13) and
therefore are Pliicker coordinates of lines. To identify these lines consider
the pitch of the screw k given by (3.7) and the point ¢ on the screw given
by (3.9). The magnitude of the angular velocity vector appears in the
denominator of both equations, therefore, as this magnitude decreases
to zero, the pitch of the screw and its distance from the origin increase3.3. Bivectors a
to infinity. Thus, serews of this form are said to have infinite pitch and
define “lines at infinity.”
3.3 Bivectors
‘The axis of a screw is a line in three dimensional space. If this space is
embedded as the hyperplane 24 = 1 in R* then each line can be identified
with two dimensional plane through the origin O = (0,0,0,0). To do
this choose any two points on the line, for example P = (p1,p2,ps.1)
and Q = (41,42. 43,1), then the set of linear combinations of P and Q
is the desired plane.
Coordinates are defined for these planes by the six 2x2 minors |P,Q)
of the 4x 2 matrix [P,Q]. These minors are the same, up to a constant
multiple, for any ehoice of points in the plane. To see this, compute these
minors for the pair of vectors Vy = a,P + bQ and V2 = a2P + b2Q
[Vi, Val = la + 61Q,a2P + b2Q (3.4)
‘The linearity and skew-symmetry of the determinant allows this to be
simplified to
[Vi, Va] = (aby ~ aabi)|P.Q| (3.15)
‘Thus the minors |P,Q| and [Vi, Val differ only by the constant (ab: ~
4zb;). This computation generalizes to define planes in any dimension.
The set of minors of the matrix [P,Q] are said to define a rank 2 mu
tivector or bivector.
[A convenient way to represent multiveetors uses the wedge product
for vectors P, Q, R, denoted by A, with the properties: 1. Linearity
PA (aQ+0R) = aP AQ+4P AR; 2. Associativity: (PAQ)AR =
PA(PAR); and 3. Skew-symmetry: PAQ = ~QAP. Notice that
skew-symmetry requires that P AP = 0. We use this product to obtain
the bivector Vi A V2 as
Vi V2 = (ayP +b:Q) A (a2P +b) = (abe —aahs)PAQ. (3.16)
‘We now consider bivectors in R*. Let P = (pi.p2,ps.1) and bQ =
(41,42543,1) be two points in the hyperplane H : 4 = 1. The line in H
through these points is also defined by the bivector P A Q of the plane2 Chapter 3. SCREW THEORY
in R* that passes through it. Expand P AQ to obtain
PAQ = (1 ~ piles rer + (42 ~ Pr)ee Nez + (as ~ Pslea Nes
+ (pags ~ psga)er Nes + (pag ~ Pigs}es Aer
+ (pide ~ Pag er A ee. (3.17)
‘The first three components of this bivector define the direction of the
line w = (91 — Pi.g2 — P2rgs — ps). The second three are given by
px q=px(q—p) =p w. Thus the Pliicker coordinates of a line
L = (w,p x w) are also the components of the bivector defining the
plane in R* that passes through it,
‘There are planes in R* that do not intersect the hyperplane x4 = 1.
‘These planes lie completely in the 24 = 0 coordinate hyperplane and
are said to intersect +4 = 1 “at infinity". ‘The bivector of such a plane
is formed from two points P = (py, p2.P2.0) and Q = (91.42.4340) and
takes the form
PAQ = (pata-pan)erher (pati —Pigs)eaher+(piga—Pagi Jer Ae2(3.18)
‘Thus the “lines at infinity” have coordinate bivectors, or Pliicker coor-
dinates, with pas
3.3.1 Mul
In n-dimensions p independent. vectors define a p-dimensional subspace
‘The (7) minors of the nx _p matrix formed by independent vectors in this
subspace are the same up to a constant multiple. These minors identify
the subspace and form a rank p multivector ot p-vector.
‘The computation of bivectors generalizes to multivectors of any rank,
that is the p-vector X1 A X2 A... Xp is given by
KAKA AKp= SS MME Ae Ae Neg — (3:19)
where M5% ig a p x p minor of the nx p matrix [X1,X2,..-.Xph
‘There is only one non-zero minor in the basis p-vector @;, Nei, A...Aei,
It is equal to (=1)%, where N is given by
= (i =) + =D) Ho + ip —P) (8:20)
In three dimensional space we have multivectors of ranks 1, 2, and 3.
The L-vector is the usual vector A = ae; + axe2 + a3e3. The bivector3.3. Bivectors 48
denoted A A B is given by
ANB = (arby ~anbj)ey Ne2 + (a3b; ~ arbs)ex Ae,
+ (agby ~ agha)ea Mea, (3.21)
Notice that the coefficients of the basis bivectors are the 2 x 2 minors of
the matrix [A,B]. And finally we have the 3-vector A ABAC given by
AABAC = det([A,B,Cl)e1 Aer Aes. (3.22)
3.3.2 General Bivectors and Screws
A general bivector in RY is a linear combination of the six basis bivectors
a. Aey
T = these, + taeqen + trey Aer +tyen hen +tses Ae; + tes Ner.(3.23)
Assemble the six components of this bivector into the vector pair T =
(t,t), where t = (tastavts), and t? = (ta,fs,te). then the bivector
(t,t°) can be written in the standard form given for a screw by
(3.10). Let p = ([Link]) be the vector that satisfies the relation
pxt=t° kt, given by
txt? .
Tt (3.24)
Then T = (t,1%) can be written as
Ta(tpxtsae), (3.25)
where
cag
tt
‘This relation identifies serews with bivectors, and allows us to use the
‘wedge product to manipulate screws,
‘The general bivector T cannot always be factored into the form PAQ.
To see this compute the 4-vector TAT directly from (3.23) to obtain
TAT =2(tite + tats + tato)er Aep Aen Nes (3.26)
‘This product is non-zero, in general. We now show that if tity + tats +
tats = 0, then T can be factored into P AQ. Notice that if T= PAQ,
then we must have44 Chapter 3. SCREW THEORY
TAT=PAQAPAQ
(327)
by the skew-symmetry of the wedge product. ‘The requirement that
TAT =0, is equivalent to t:(p x t+ kt) = 0 which ean only be true if
ke =0, thus T = (t,p x t). In this ease, let p be given by (3.24), so we
have P= (p,1), and Q = (p+t.1), then T= PAQ
3.3.3. The Star Operator
A duality exists between p-veetors and (n ~ p)-vectors in n-dimensional
space becanse they have the same number of components. For example,
both L-vectors and 2-veetors in three dimensional space have three com-
ponents, Sealars are considered to be rank 0) multivectors, so their dual
is the single component n-vector.
‘The star operator “+” transforms a p-veetor into its dual (n—p)-vector
by replacing the basis multivectors as follows
#10, Nig Ans NO i,) = O(iggs ACiggs Aon AC) (8.28)
where o = Lif (iri...) is an even permutation of the mumbers
(1.2,..n) and ¢ = =1 if it is an odd permutation. As an example,
consider the bivector A AB formed from the three dimensional vectors
A= (a;.@2,43) and B = (by,b2,b3). ‘The dual of this bivector is the
vector
+A AB = (azby~azby)(se2 Nea) + (asbi ~ aybs)(2e5 Ker)
+ (ayby ~ aby (se) Ae) (3.29)
which simplifies to
+ AAB = (aah; ~ agba)ey + (agb; ~ ayby)ea + (ayby ~ aah Jes. (3.30)
‘This shows that the vector cross product in three dimensions ean be
viewed as the result of calculations with multivectors.
The star operator provides a definition of a sealar product between
two p-vectors, say M and N. First compute the n-vector MA*N, which
is the product of the pevector and an ( ~ p)-vector, and then take its
dual «(M.A «N) to obtain a scalar. This sequence of operations results,
in «(MA «N) = MN, given by
M-N= SD (ae ty(iventy) (3.31)3.8. Bivectors 5
Le
Figure 3.2
‘The relative position of two serews
This product turns out to be what one would expect for the “dot”
product betwoen the arrays of (2) numbers defining two p-vectors. Fur-
thermore the scalar product of a p-vector M = Xy AX2 A...AX, with
itself is the square of the volume of the hyperparallelopiped spanned by
the vectors X,,i = 1,...,p. See Shilov (1974).
8.3.4 ‘The Reciprocal Product
Let S, = Py AQ, and 8; = Pz AQ, be bivectors defining lines in
the hyperplane x4 = 1. We call these bivectors line screws. The prod-
uct S$) ASp = Py AQ, AP2 AQ, is the determinant of the matrix
[P1,Q,,P2,Q,], which in turn is the volume of the hyperparallelop-
iped with edge vectors Ps, Qy, Pay Qz. This volume is easily com
puted in terms of the components of the serews $1 = (Si. Py % 81) and
Sp = (82, Pp X s2) as
S182 = (81 Po X 62+ 52°) x Si)e1 Ne Aes Aes (3.2)
‘The 4-vector e; Nez Aes Aes is removed by computing the dual of $, AS2.
which is the scalar
(81 AS2) = 8) py 82 + 82° Py X 81 = —(Py ~ Px) “81 x 82. (3.33)
‘Thus the volume spanned by the four points Py, Q,. Pa, Q; in Rt is
equal to the volume in 24 = 1 spanned by the three dimensional vectorsiapter 3. SCREW THEORY
51.82 and (p,~p,).- This sequence of operations is termed the reciprocal
product of the two screws,
Let n be the vnit vector in the direction s) x 82. then the normal
distance between the two lines is the value of component of py — By
measured along m, that is d = (py ~ Py) *n, Figure 3.2. If 4 is the
angle between sy and sp measured around m, then (3.33) simplifies to
the result
+ (8; 4 Sp) = -|silisaldsind. (334)
‘The minus sigh arises because of our choice for the direction of m. The
reciprocal product +(S1 A 82) =0 when either d = 0, or # = 0; that is
when the lines either intersect or are parallel. Considered as planes
RS, «(S, 4 $2) = 0 implies that both planes lie in a three dimen
subspace of R* forcing them to intersect in a line, This line intersects
r4 = Lin the point of intersections of the two lines
The reciprocal product #(T1 A Tz) for two general screws Ty =
(tip % th + kuti) and Ta = (ta, pp x te + hata) is given by
+(TiAT:)
=(P2— By) te % ta + (la + halts te
[tiltel((ky + ha) cos — asin@) (335)
Here d is the normal distance from the axis of Ty to that of Tp and
0 is the angle measured from ty to tz about the common normal. If
HT) A Ta) is zero, then the two serews are said to be reciprocal
3.4 Screw Systems
Linear combinations of independent serews are known as screw systems,
The simplest example is the one-system of constant multiples of a given
serew 8. If S = (s,pxs+ss) then the screws T of the one-system based
on § are given by
Tat = (ts
px s+ kts) = (s/.p xs! + ks’) (3.36)
where s! = ts. Thus all the screws TT have the same axis, and the same
pitch k, The value of |s'| = ¢\s| is often called the magnitude of the
screw T, 0 the screws of a one-system vary only in magnitude,3.4, Screw Systems a7
A tuo-system of screws is the linear combination of two given screws
S, and Sp. Bach screw T of the system is given by
T = 81 +tS2,
ta(s1sPy % 81 + hi8:) + f2(825Pp % 82 + hr82) (337)
‘where ty and tz are arbitrary constants, For convenience let the cross
products p; x 5; be denoted by s{, then the axes of these serews are
Ly = (61,84) and La = (52,84).
‘The axis Lr of the general screw TT of the two-system has the Phicker
coordinates
Lr
try + fo80,ti8] + tas} — (tis: + f280)), (3.38)
where
tite(si - 83 + 82: si)
(asi + 82) - (hs + fsa)
We can check this by computing the reciprocal product
+ (Lr ALr) = tatalss +83 + 82°81) ~ ftalsi +83 +8287)
(3.39)
‘The common normal to these lines, Lz. is obtained from the Lie prod-
uct of Ly and La as
N= Ly x Ly = (51 X 82,8] 82 +51 x53). (3.40)
‘The direction, 81 x 2, is obviously perpendicular to the plane defined
by the directions s; and 2 of the lines Ly and La, and is therefore
perpendicular to all the directions of the lines Lr. The fact that N also
intersects all the lines Lr is shown by the computation #(NALr) which
simplifies to
s(NALp) = (81 x82): (tusj + t283) ~ (s1 x s2)- (tis} + f283),
= 0 (3.41)
‘Thus, the axes of all the screws in the two-system have the same common
normal, N.
K.H. Hunt (Kinematic Geometry of Mechanisms, Oxford Press, 1978)
examines the set of lines defined by (3.38) and shows tat it forms a cubic
ruled surface known as a cylindroid. Three, four, and five systems are
linear combinations of three, four, and five independent screws.a (Chapter 3. SCREW THEORY
3.4.1 Reciprocal Screw Systems
Screw systems are also defined by homogeneous linear equations in serew
coordinates. In particular, let X= (14, -F2,3..4,.'5.26) be an unknown
screw in the linear equation
ayn Hage, + agty + ayy + ase + ere = 0. (3.42)
‘The solutions to this equation forms is a five dimensional linear space of
screws, that isa five-system. Two linear equations defines a four-system,
and so on, until five linear equations define a one-system. Recall that
six homogeneous linear equations in six unknowns, in general, have no
solution other than zero,
Linear equations of this form arise when we seek the serews that are
reciprocal to a given screw or set of serews. For example, the screws.
X = (rirat124,t5,46) that are reciprocal to the given serew $=
(51.82, 85, 84,485,480) Satisfy the linear equation
+ (SAX) = sey + sgr2 + sera + 8124 + 5225 + saz = 0. (3.43)
The solutions of this equation form the five-system reciprocal to 8. The
serews reciprocal to two given screws 8, and Sp define a four-system,
ntil we obtain the one-system reciprocal to five given screws.
nt (1978) for a survey of the geometric properties of the set of
screw axes for each of these screw systems.
3.5 Dual Orthogonal Matrices
‘The 6 x 6 coordinate transformation matrix for screws, given by (3.5),
hhas a special form which leads to the introduction of a special set of
complex numbers. It is possible to show that the set of matrices of the
form
[2] uy
rule ¢? = 0. The numbers a + eb are called dual numbers and denoted
with a caret, that is d= a+b. Vectors and matrices with dual number
elements are termed dual vectors and dual matrices, respectively.3.5. Dual Orthogonal Matrices 49
Let the screws S = (w,v) and 8’ = (W, V) be represented by the dual
vectors w = w + ev and W = W +€V, then the screw transformation
equation (3.5) can be written in the compact form
w-{Al (3.45)
where
[A] = [4] + IIA}, (3.46)
[AT] which means it
‘The dual matrix (AJ has the property that [4
is an orthogonal matrix. We show this by direct computation:
0
(4y[47) ({A] + €[D][A) AT] + ATD7))
= [N+ e({D] + [D7)) + [D|ID"]
=
Recall that [D] is skew-symmetric which is why it cancels with {D7}. (A]
is called a dual orthogonal matrix. It is a 3x 3 matrix with dual mum-
ber elements and defines a general transformation of screw coordinates
associated with a change of reference frames.
‘The dual orthogonal matrix associated with the screw displacement
of angle @ about the z-axis, and a distance d along it, is easily obtained
from (3.46) as
[ cosd—edsing —sin@—edeos@ 0
[2)=| sin@+edeos@ cos@—edsind 0 (3.47)
0 0 1
We introduce the dual angle between two lines as the dual number
6 = 0+of (5.3)
For the case of an open chain of serially connected bodies, as is found in
a manipulator, there are as many joints g as bodies N and this formula
simplifies to
Pay) fe (5)
A useful convention that we now introduce is that the background
against which the mechanical system moves is also to be counted as a
rigid body of the system. This increases the count of rigid bodies by 1
to N’= N+ 1. The result is a modified form of (5.3)
P=3(N'-9-1)+ fy (55)
known as the mobility formula for planar mechanisms. If the mechanism
isa chain that closes to form a single loop, then there are g = N+1 = N’
joints, and the mobility formula becomes
Pay fo 3 (5.6)
‘The simplest joints found in planar mechanisms are the revolute and
prismatic joints. ‘The revolute, or hinge, constrains a body to pure
rotation about an axis in another body. To form a planar mechanism
the axes of revolute joints must be perpendicular to the base plane. The
prismatic joint, or slider, constrains movement so that each point in the
moving body is straight line relative to the other body: in this case the0 Chapter 5. MOBILITY
“Aspherical open chain with four revolute joints,
guide of the slider must run parallel to the base plane. Both of these
joints have one degree of freedom. Using (5.4) we find that a planar
‘open chain, Figure 5.1, with four revolute joints, denoted 4R, has four
degrees of freedom. A closed 4R chain, Figure 5.2 has one degree of
freedom,
5.3 Mobility on the Sphere
Consider the freedom of a system of n points constrained to lie on con-
centrie spheres about a fixed point. Each point of the system has two
degrees of freedom, the lattitude and longitude of its position on the
sphere, therefore the freedom of the system is 2n. Bach constraint re-
duces this freedom by one, therefore (5.1) applies to the motion of points
‘on a sphere as well on a plane.
If two points are also constrained to maintain a constant distance
between them, then the system formed by the two points has three
degrees of freedom. A rigid set of these points has three degrees of
freedom, since, as in the case of the plane, each point added to the system
adds two degrees of freedom, which the distance constraint removes.
‘Thus a rigid body that rotates about a fixed point has three degrees of
freedom,
A system of N rigid bodies connected by joints such that the move-
ment of the all the bodies is about a fixed point is called a spherical5.4. Mobility in Space 7
Figure 5.4
‘A’spherical four revolute closed chain,
mechanism. ‘The revolute the simplest joint used in spherical
‘mechanisms. In order to constrain bodies to spherical movement the
axes ofthe revolute joints must all pass through the center of the sphere.
The mobility formula for spherical mechanisms is obtained using the
same logic as presented in the planar case. The result is that (5.5) as
well as the special cases (5.4) and (5.6) apply to spherical mechanisms.
For example, a spherical 4R open chain, Figure 5.3, has four degrees of
freedom, while a 4R closed chain, Figure 5.4, has one degree of freedom.
5.4 Mobility in Space
A point p = (x,y.2) in three dimensional space has three degrees of
freedom, so a system of n points has freedom F = 3n. If three points
are constrained to maintain a constant distance from each other, then the
nine degrees of freedom is reduced to six by the three distance constraint
equations, The addition of one point to the system adds three degrees
of freedom but the requirement that it maintain a fixed distance from
three others reduces its freedom to zero. Thus a rigid body in space has
six degrees of freedom,
A system of N rigid bodies in space has freedom F = 6N. If the
bodies are connected by g joints each of which impose u; constraints,
then the freedom of the system is2 Chapter 5. MOBILITY
‘Avsatial four revolute joiat open chain
Jd
Figure 5.6
‘Aspatial mechani formed from one revolute and three cylindric joint.5.5. References 73
F=6N-S ou, (5.7)
a
Introducing the freedom a joint in space, defined as f = 6 ~u, and
the convention that we count the ground body so that N’ = N +1, we
obtain the mobility formula
F=6(N—9-1)+ > K (5.8)
This is the spatial version of (5.5), known ax Gruebler’s formula,
Consider the cases of a serially connected open chain of rigid bodies
‘and a closed chain that forms a single loop. In the first case there ate as
many links as joints, and (5.8) simplifies to the sum of the joint freedoms
given in (5.4). In the second case, the closed chain has one more joint
than links, which means g = N +1 = N", therefore (5.8) becomes
(5.9)
‘The simple spatial joints are: 1. the revolute joint (R) with f = 1:2
the prismatic joint (P) with f = 1; and the 3. the cylindric joint (C)
with f = 2, which allows both a rotation about its axis and a sliding
movement along the axis. Other spatial joints are the screw joint (H)
with f = 1, the planar joint (E) with f = 3, and the spherical. or ball,
joint (S) with f = 3. The spherical joint can be formed as a ballin-
socket joint or, as it is often found in robot wrists, as a three jointed
spherical open chain.
‘A manipulator is usually considered to be an open chain with six
degrees of freedom; examples are RRPS, RRRS, and PPPS. Figure 5.5
shows a 4R spatial open chain which has four degrees of freedom. For a
single loop closed chain the sum of the joint freedoms must be seven in
‘order to form a single degree of freedom mechanism: examples are the
TR closed chain and the RCCC mechanism shown in Figure 5.6
5.5 References
See Kerr and Roth (1986) and Song and Waldron (1987) for examples of
‘modern robot systems that form multi-degree of freedom closed chains.m4 Chapter 5. MOBILITY
Sandor and Erdman (1984) present the mobility of planar linkages in-
cluding those with gears, belts, and cams, Paul (1979) also presents a
thorough study of the mobility of planar mechanisms in order to identify
generalized coordinates for dynamic analysis. A complete discussion of
spatial kinematic joints and the mobility of spatial chains is found in
Hunt (1978).6 STRUCTURE EQUATIONS
6.1 Introduction
“The sequence of links in an open chain has a corresponding sequence of
coordinate transformations that defines the position of each link relative
toits neighbor in the chain. The product ofthese transformations defines
the position ofthe end link ofthe chain relative to the base. By equating
this product to an explicit specification of the position of the end link
wwe obtain the structure equation of the chain. This equation relates the
movement at each joint to the position of the end link. It can be used
cither to compute the position of the end link, given the joint parameters,
or to determine the joint movement required to position the end link
In this chapter we present the general form of these structure equations,
and then specialized to the cases of planar, spherical and spatial chains
‘The structure equation of single loop closed chain is obtained by
viding a chosen link in two separating the chain into two open chains.
Because the end link of the two open chains are two halves of the same
link the position of this link as given by the two open chain structure
‘equations must be equal. Equating these positions yields the structure
equation for the closed chain. The result isa constraint on the allowable
values of the joint rotations in the chain, which maintain the closure of
the chain,
6.2 The General Form
6.2.1 For An Open Chain
Consider the mechanism formed by an open chain of rigid bodies, B,,
i= 1,...,n. Each body of the chain, except the last, has two joints
connecting it to the bodies before and after it. Let these joints on By
be labeled 0, and a, s0 the chain is formed by connecting joint ay» of
body By-1 to 0; of By. By is attached to the ground so that 0; coincides
with the ground point ag. The last body in the chain, By, has only the
one joint 0»
Let A, be a reference frame attached to body B, at the joint a,
then the position of B; relative to B,-1 is defined by the transformation
T= Ain + Ai. The frame Ao is fixed in the ground frame with its6 Chapter 6. STRUCTURE EQUATIONS
origin at ap. ‘The position of the reference frame AI in the last link is
defined by the transformation H ; O, —> M, and the position of the
start of chain in the ground frame F is given by G: F + Ay. The result
is a sequence of coordinate transformations between Mf and the base
frame F that defines the relative positions of each body in the chain:
D
OTT. Ta sTa Hl 1)
‘This formu
alled the structure equation of the chain. It defines the
position of Af relative to F in terms of the relative positions of each
body of the chain,
Introduce the coordinate frame O, at each point 0, $0 the transfor-
mation T; factors to yield T; = Z:X,, where X : O; —+ Ay defines the
dimensions of B, and Z : Aj1 — Q, characterizes the freedom of the
i** joint, ‘These are known as the link transformation and joint trans-
formation, respectively. The position of M relative to F is now given
by the displacement D: F = M,
D=G2,X,22Xp... Zu 1Xn- Zn. (62)
The transformations G, H, and X; in (6.2) are constant and are defined
by the dimensions of the chain. The transformations Z, contain the
joint variables that define the degree of freedom of the chain. As the
joint variables take on their full range of values, (6.2) defines the set of
positions that can be reached by M.
If AI is the end effector of a manipulator then the set of positions
defined by (6.2) is known as the manipulator’s workspace. The values of
the joint variables that place A at a desited position D in its workspace
are determined by inverting (6.2).
6.2.2 For A Single Loop Closed Chain
To formulate the structure equation for a single loop closed chain, we
choose one of the bodies of the chain to be AI, which is then considered
to be the last link of two separate open chains. Let the two chains have
and m links, respectively, where Af is counted as a part of both chains.
We have the structure equations (6.1) for each chain,
Chain: D= GiTiTa..-ThaTeHy (63)
Chain 2D = GaTjTS..- Thy Tina (6)62. ‘The General Forn 7
Both of these equations define the position of A relative to F. Gy and
Gz define the position of the start of Chain 1 and the start of Chain 2
relative to F, respectively. Similarly, Hy and H define the position of
M relative to the last joint frames Oy and Om, of the two chains, The
prime is used to distinguish the link transformations T of the second
chain from those of the first.
Eq(6.3) defines the positions reachable by the first chain and (6.4)
defines the reachable positions of the second chain, the intersection of
the two is the set of positions available to M as held by both chains.
This may be considered the workspace of the two manipulator system
that holds A. If the position of Af is given, then (6.3) and (6.4) may
be inverted separately to determine the configurations required of each
chain to place M.
Equating (6.3) and (6.4) we obtain the structure equation of the closed
chain:
GiTiTy «Ta Ta Ha = GaT{T3 «Toys Typ Hr (6.5)
This equation defines the constraint on the values of the joint variables
imposed by the fact that the chain must remain closed.
6.2.3 The Jacobian of an Open Chain
The structure equation of an open kinematic chain, such as a manip-
ulator, define a multi-parameter motion, [F(8)] : M — F, of the end
link, or end effector. To control the manipulator information, about its
rate of change of configuration must be related to the rate of change
of position of the end effector. This is obtained by differentiating the
structure equations, which results in a linear transformation known as
the Jacobian of the manipulator.
‘The structure equation defines the n-parameter motion
F(8) = Ts(61)T2(62)..- Tn(On), (6.6)
where M is the n*™ link of the chain; here we have assumed that G and
Hare the identity transformations. Each T, is the function of a single
parameter 8, and defines the position of link B, relative to B,— in the
chain, Computing the derivative we obtain7% Chapter 6, STRUCTURE EQUATIONS
+ Og1Te Tar (67)
Multiplying on the right by F-4(0) = Tz!...Ty!Tyt, we obtain the
tangent operator
S=PF'MG) = 5, +6T S771 +
4 OTTa .Ty1SeToch
rt (68)
Bach term 5; is the tangent operator associated with the link transfor:
mation T,(8,)
‘The elements of each tangent operator 5; define the partial angular
and linear velocities of frame B, measured relative to link B,-. Pre and
post multiplication by the matrices 7; ..Ti- and Ty-}...Tj trans.
forms the matrix §; from the coordinate frame B, to the base frame F.
Denoting this transformed matrix as SF we can write (6.8) as
S=OSF + O25F +... + 658 (6.9)
Let $ be the vector obtained from the elements of the tangent operator
S and SF be the vectors associated with each SF, then this equation
‘ean be writen in the compact form
$= ([Link],..., 82]{6} = (J1{9}. (6.10)
“The matrix [J] is the Jacobian of an open chain
6.2.4 The Jacobian of a Closed Chain
‘The structure equation of a simple closed chain is defined by equating
the structure equations of two open chains. We define the Jacobian
of this closed chain by equating the tangent operators of the two open
chains.
Let the two chains have k and m joints, respectively. From Eqs. 6.3
and 6.4 we obtain the tangent operators
S = bGSG + HEN STAG; +
4G TT. Tor eT}, «Ty Ty Gp,
GS;Gz" + 6'xG2T; S3T{'Gz" +
+ Om GT ITs Tryp SoTnaa Te 'TY G3". (6.11)
[As above let $F and 8" denote the vector form of the partial tangent
operator as transformed to the base frame F, then we have
Ss6.3. Planar Mechanisms 79
‘anar link with reference frames O, and A,
S=(Sf,S2,...,Sf]0},
and
$= (91,897, 80"H6
Bquating the right side of these two equations yields the Jacobian of a
simple closed chain.
6.3 Planar Mechanisms
6.3.1 A Planar Open Chain
For a planar kinematic chain, we align the two coordinate frames O,
and A, of each link so that their z-axes are along the vector a, ~ 0}.
see Figure 6.1. The length of the i link is the distance a; = Ja, ~ 04]
between the frames A; and Qj, and the rotation of joint # is defined by
the angle 8; between the frames O, and A;-1- These conventions allow
us to define the link transformations Z, : A,-1 —+ O, and X; 0, — Ay
by the 3x 3 matrices:
e058; sind, 0
[2] =| sing cose, 0
o 0 41
1X (6.12)
0
1
0
which yield the transformation0 Chapter 6. STRUCTURE EQUATIONS
ag
a 02 M
A
Ba
81
Figure 6.2
[A planar open chain with reference frames attached
086; ~sin8 a; c088;
[1] = [2X = [ sind; cos8, a, sin (6.13)
0 0 1
We now compute the structure equations for an open chain, For con-
venience let the ground frame F coincide with Ag and M with the frame
Oy in the last link, so that G and H are the identity transformations.
‘The matrix form of (6.1) becomes:
[D] = [Ti}[T2) .-.[Tu-allTa)s (6.14)
[D] defines the position of the moving frame M.
Let the 3 x 3 transforms (Z)] and [Xi] be written as the rotation
and translation pairs [Z,] = [Av,0] and [X,] = [J,di], thus (7) =
(A,,OllZ.4j), and (6.14) becomes
[D] = {Ax,O][L,di][A2, Off, da}... [An—1,O][[Zda-a}lAn.0], (6.15)
where [D] = [A.D]. Equating the rotation matrices and translation
vectors separately we obtain.
[A] = [Ai][Ag} [Anal An), (6.16)
and
D = [Ai}di + [Ai][Aa}da +... + [Ar][Aa] --- [An—a]dn—1 (6.17)6.3. Planar Mechanisms 81
rent _]
Figure 6.3,
‘Aiplanas closed chain with reference frames attached,
Because (A] and each [A,] are 2x 2 rotation matrices, (6.16) simplifies
to define the rotation angle 0 of M relative to F as the sum of the
relative rotation angles 8):
OO + Ort. + Onn + On (6.18)
Eq.(6.17) also simplifies, once we notice that the term [As] 42]... [Aids
is the vector D, = a ~ 0; measured in the base frame F; the result is
D=D,+D2+...+ Dar (6.19)
Equations (6.18) and (6.19) are the structure equations that characterize
a planar open chain.
6.3.2 A Planar Closed Chain
The structure equation for a single loop closed chain is obtained by
considering it as two open chains with a common end link. Assume the
number of joints in the first chain is k and the number in the second is,
'm. Let the ground frame be aligned with the vector a — ao joining the
two base joints, and positioned halfway between these two points, see
Figure 6.3. In this case, the transformations Gy : F + Ag and Gz: F +
Aj are given by the 3 x 3 matrices [G1] = [1,G1] and [G2] = [I,G2).
where G1 = (=9/2,0) and Gz = (9/2,0). Similarly align M with the
vector 0, ~ 0% which joins the last joints of each chain, and position it
halfway between these points2 Chapter 6, STRUCTURE EQUATIONS
‘The transformations Hi : Ox + M and Ha : Of, ~+ M are given by
the 3 x 3 matrices (Ai] = [hy] and [Ha] = [J, ha] where hy = (h/2,0)
and hy = (—h/2,0). The result is the matrix form of Eqs. 6.3 and 6.4
given by
([D] = [f,GilfAy,O][7,dil[A2,O][, da}
[Ag -1, Off, de-a](An, OZ, hn), (6.20)
and
[DP] = [,Gal[A. Of. d))[4p, 017.45]
[Arn 1, OU din a]LAn OLE ha], (6.21)
‘where (D] = [A.D] is the position of Af relative to F.
‘The structure equations of the closed chain are obtained by equat-
ing the resulting structure equations of the two open chains, since the
position of M relative to F is the same for both. Expanding (6.20)
and (6.21) and equating the rotation and translation parts, we obtain
‘equations similar to (6.18) and (6.19), which are equated to yield
+O +. + Oe +O
+O + + Oly + Bly (6.22)
and
Gi+Di+D2t...+Di-1+Hh = G2tDj +D)+...+D),_, +H (6.23)
This latter equation is also known as the vector loop equation of the
closed chain.
6.4 Spherical Mechanisms
6.4.1 A Spherical Open Chain
Consider a chain of spatial rigid bodies linked together with revolute
joints such that each joint axis intersects the same fixed point ¢. The
points of each body in this chain are constrained to move on concentric
spheres about the fixed point, We can identify the two points 0; and
fa for each body B,, which are where its joint axes intersect the unit
sphere,
Let the frames Ay and Q; be located with their origins at ¢ and 2-axes
passing through a, and ,, respectively, Figure 6.4. To complete the6.4. Spherical Mechanisms 8
Figure 6.4
‘Avtypical spherical links with frames 0, and Ay.
‘Avspherical open chain with frames Aj attachedfa Chapter 6,
RUCTURE EQUATIONS
orientation of these frames, let their z-axes be normal to the plane, in
the direction (0, —€) x (ai ~e). The size of link B, is defined by the angle
fa, between the s-axes of A; and Qj, about their common z-axis. The i"*
joint rotation is the angle 8, between O, and A, about their common,
-axes. With these conventions the link transformations Z; : Ai.
and X,: 0, + A; become the 3 x 3 rotation matrices
cos —sinds 0 1 0 0
0 cosa, -sina, |, (6:24)
(2)
1X
sin8; c0s8, 0
0 D1 0 sina; cosas
which yield the transformation
088, —sind,cosa, sin Besinag
[1] = [21%] = | sin cosB,eosa, ~cos8, sina, (6.25)
0 sinay 08.45
The structure equation for a spherical open chain is obtained as the
matrix representation of (6.1). For convenience let the ground frame F
coincide with Ay and M with the frame On in the last link, so that @
and H are the identity transformations, We obtain the matrix equation:
[D] = (Ta)[Ta].-.(Tn-a](Ta], (6.26)
[D] is the orientation of the moving frame M.
A common special case of (6.24) and (6.25) occurs for a body By with
link angle a; = 90°. in which ease we have:
cos; 0 sin |
mi=tenni= [See #2 won
o 1 0
|A three link spherical open chain with link angles ay = a2 = 90° is often
used as the wrist of a manipulator. In this case the structure equation
[D] = (Zi)[Xi][Za}[X2]lZs] (6.28)
‘The right side of this equation is the matrix product:
cos#, 0 sin®, ] [cos 0 sin’ ] [ cosBy —sinds 0
sind 0 —comds |} sine © —conds | | sind) coeds 0
0 0 0 oo46.4. Spherical Mechanisms 85,
Figure 6.6
spherical closed
‘moving and fixed i
iain with frames Mand P positioned midway along the
respectively
6.4.2 A Spherical Closed Chain
‘The structure equation for a spherical closed chain is obtained by consid
ring it as two open spherical chains of k links and m links, respectively,
with a common end link. Let the ground frame F be positioned with
its z-axis normal to the plane defined by the ground joints ay and a,
of the two chains in the direction (ao ~ ¢) x (aj ~ €). Direct the z-axis
of F so it biseets the angle + between the vectors ag ~ € and aly ~
Position the frame M in a similar way, with its a-axis in the direction
(04 ~ €) * (0, ~¢) and its 2 axis bisecting the angle 1 between o, ~
and o!, —€
Using these convections for the placement of F and M, we obtain the
transformation Gy: F —+ Ap and Hy: Ox + M, for Chain 1, as the
3% 3 rotation matrices [@] and [4]
a) 0
a = [: cae an.
0 =siny/2 cos7/2
1 0 0
() = [: cosn/2 ine] (6.29)
0 sinn/2 cosn/2
For Chain 2 the transformations Gz: F + Ay and Hz: Of, — M are86 Chapter 6, STRUCTURE EQUATIONS
given by the 3 x 3 rotation matrices:
i 4 0
(a) = [: cua aie |:
0 siny/2 cosy/2
i 6 0
lh] = [: cos/2 wav | (6.30)
0 =sinn/2 cosn/2
We now have the matrix form of equations (6.3) and (6.4) given by:
(| = [Ga] (P(e). fase), (631)
and
(D] = (Galt7IIT3) (nln al, (632)
where [D] is the position of M relative to F.
‘The structure equation of a closed spherical chain is obtained by equat-
ing the two transformation equations, (6.31) and (6.32), that define the
position of Af relative to F:
[Gal{Ta Ila)... (Za—al Tila) = (Ga)[TiDITa] [Tima] [TrallHa}- (6.33)
6.5 Spatial Mechanisms
6.5.1 A Spatial Open Chain
Consider a series of spatial rigid bodies connected by revolute joints
A typical body of the system has two joints which connect it with the
bodies before and after it in the series. The axes of the two joints define
two lines in the body. The common normal to these lines identifies
‘owo points 0, and a in the link By. Locate a reference frame O, at 0,
oriented so that its z-axis is along the joint axis, and its z-axis is along
the common normal a;~0,. A second frame Aj is located at a, with its
axis along the joint through a,, and its z-axis also along the common
normal a; ~ 04, See Figure 6.7. The point ag on the ground body can
be chosen arbitrarily on the frst joint axis, similarly the point on on the
last body in the chain can be chosen arbitrarily on the last joint axis.
The chain is now assembled so that the joint axes of succeeding bodies
coincide, Figure 6.86.5. Spatial Mechanisms ar
Figure 6.7
‘A'typical spatial link with frames O; and Ay attache.
‘A'spatial open chain with frames A, attached,Be Chapter 6. STRUCTURE EQUATIONS
In general, the points ayy and 0; on the bodies By. and By will not
coincide. Let the distance between these points be dy = [oy ~ a,-1[, this
is the known as the ** joint offset. The length of the link Bis defined
as the distance a, = [aj —0,) along the common normal between the two
joint axes. The angle a, about this common normal between the to
frames A, and O, is called the twist of i” link, Finally the rotation of
joint {is given by the angle 6, between the frames O, and A, about
the axis through o,. ‘These conventions result in the link transformations
2: Avi =O, and X, : 0, — Ay defined by the 4 x 4 matrices
e088, —sind, 0 0
8, cos, 00
[a] =
oo 1d
6 6 OF
1 0 0
0 cosa, -sina, 0
= Jo sina, cosa, 0 (om)
0 0 0 4
‘The matrix (2:] defines a screw displacement along the i** joint axis,
and [X,] is « serew displacement along the common normal in body B,
The product of these two matrices is the well-known Denavit-Hartenberg
matt
in) = (zilx
088, —sinBjcosa, —sinBysinay —a,c088,
sin®, cosBjeoa, —cos8,sinay a sin®,
~ 0 sina, C08. 0 dy {658)
0 0 0 1
‘To dofie the structure equation for a spatial open chain, Jet the
ground frame P coincide with the reference frame Ao and M with the
frame Oy, in the last link, so that G and HT are the identity transforma-
tions. The result is the matrix equation:
[D] = (Ti](Ta] ..-(TnsI1Tu). (6.36)
where [D] is the position of the moving frame M relative to F.
6.5.2 A Spatial Closed Chain
Let two spatial chains with and m joints, respectively, have their
‘end-links rigidly connected so the system forms a closed spatial chain,80
‘Avspatial closed chain with M and F positioned midway along the moving and
fixe boven
The structure equation for the closed chain is obtained by equating the
structure equations of the two spatial open chains
‘There are two joint axes in the fixed body and we define the points
of intersection of the common normal with these lines as aq and a.
‘The frames Ap and Ai, are located at ao and aj, with their s-axes di-
rected along the respective joint axes, and their z-axis directed along
the common normal a ~ ap, Let + be the twist of Aj, relative to Ag and
= |aly~ao| be the length of the ground link. Position the ground fran
F 0 that its z-axis is aligned with the 2-axes of Ap and Ap, its origin
is midway between ap and af, and its z-axis bisects the angle 7. See
Figure 6.9. With this choice for the ground fame. the transformations
Gy: F + Ao and G2 : F + Ay are given by the 4 x 4 matrices
1 0 0 9/2
— | 0 cos7/2 sing/2 0
oy = |) a7, Sef
tees
1 0 0 9/2
tote ann .
l= 5 Sl an 6 (oan)
1.
‘The body formed by the combined end-links of the two chains also
hhas two joint axes; let the points o4 and Om be the intersection of these% Chapter 6, STRUCTURE EQUATIONS
‘axes with their common normal. The frames O and Of, ate positioned
at the points ox and 0, and oriented in the same way as Ag and Ay
Let 7 be the twist of O, relative to Oj, and h = lol, ~ ox| be the
length of the floating link. Along the 2- axis of the moving frame Mf
with the z-axes of Og and Of, position it midway between oy and o',,
and direct its :-axis along the bisector of n. For this position of M, the
transformations Hy : Ox ~ M and Hz : Oj, + M ate given by the 44
ratrices (H;] and (#2):
1 0 0-1/2
0 conn/2 sinn/2 0
Wl = | Ssinn/2 cosn/2 0
2 6 0 1
io 0 Ae
0 cosn/2 —sinn/2 0
(] 0 sinn/2 cosn/2 0 (6-38)
oa o 1
‘The structure equation for the two chains are now given by
[D] = [Gu]{Ti(Ta) [Tea] [Te] Ha] (6.39)
and
(D] = (Ga](TN(TS) -- Tin all TmallHal, (6.40)
where [D] is the position of M relative to P. Equating (6.39) and (6.40),
wwe obtain the structure equations of the closed chain:
[G(T ]IT3) [Tea] Tala] = [G2](Te)(Ta) + Tye —1lTrel(Ha}. (6.41)
6.5.3 The Jacobian of a Spatial Open Chain
The tangent operator [SJ takes a special form when the Denavit
Hartenberg coordinate convention is used. In what follows, we consider
a typical tangent operator (Sj] = [7 T>"] which represents movement of
link B, relative to B,-1. and drop the subscripts for convenience. Also,
let the transformation (T; ...T,-1] be written as (G] = [4,d].
Compute the tangent operator [$] = [71] directly; note that only
the joint transformation (Z] varies, therefore we obtain
(2xyx2-] = (22-4), (6.42)
(ir6.5. Spatial Mechanisms 1
or
{s}=[2,¥) (6.43)
‘Thus the angular velocity vector of link B, relative to By-1 is w = 6k,
where k = (0,0,1) is the vector along the joint axis (the 2 coordinate
‘axis), similarly we have the linear velocity v = dk. The six dimensional
vector obtained from [S] is $ = (dk, dk); both @ and d are assumed to
vary with time in this calculation. A manipulator usually has only one
of these two variables free to move, in which case the other is a constant
and its time derivative is zero.
We now transform {8} = [9,v] to the base frame F by (G] = [4,4]
which is the position of the link frame B, relative to F, and denote it as
[S]F. We reintroduce the subscript i to denote that these relations refer
to the relative motion of the i joint, ‘The result is
fo r]{o s][4 4]
= [Amer anatane|
~ 0
(s\*
0 6.4)
‘The matrix transformation of [94] to the base frame, [A847], may be
written as the transformation of the angular velocity vector ws to Ws
‘measured in F,
w
[A]w; = 6:[Alk = 6K, (6.45)
where K; is the vector along i* joint axis as measured in F. The term
=A,ATd can be written as did x K; so the linear velocity Vi in F is
given by
Vi =bdx Ki +d. (6.46)
A typical manipulator has six joints which means that n= 6. Let 6
and d,,i = 1,...,6, denote the joint variables, note that if the i* joint
is a hinge then 4, # 0 and d; = 0, similarly if it is a slider then 6
and d; # 0. Thus only six of the twelve joint variables actually vary, the
other six are constant,2 Chapter 6, STRUCTURE EQUATIONS:
Assume for the moment that the robot has six revolute j
sliding joints, that is 6 #0 and d, = 0. Let K; be the direction of the
if joint axis and d, be the vector to the origin of the i** link B,, then
from (6.9), we obtain the Jacobian transformation
{¥ hea
For convenience we have written dy x K, as K}
For two bodies joined by a slider 6 = 0 and d # 0 the tangent operator
is (S\JF = [0,K,], which means the column of (6.47) associated with the
sliding joint is replaced by the vector SF = (0, ,).
Eq,(6.47) relates the joint velocities of the manipulator to the linear
and angular velocity of the end-effector. If the desired angular and linear
velocity are specified and the present configuration is known, then the
vectors [Link] and [Link] and Ky and K},i = 1,...,6 are all defined and
(6.47) is solved to determine the required joint velocities. This requires
the inversion of the Jacobian matrix. Because the Jacobian is a function
of the configuration of the manipulator, it can happen that there are
positions for which it becomes singular. ‘These positions are known as
Rog wy ]@=ma. a7)
the singularities of the manipulator.
6.6 References
The structure equation is « generalization of the loop equation of a
closed chain, which isa standard tool in the analysis of mechanisms, see
Paul (1979), Hall (1981) and Duffy (1980). Freudenstein (1954) showed
how this equation could be used for the design of planar mechanisms
Hartenberg and Denavit (1964) extended this work to spatial mecha-
nisms. Uieker et al. (1964) developed an algorithm that automatically
constructs the structure equation of a closed chain and analyses it nu-
merically. The structure equation for an open chain was used by Pieper
and Roth (1969) in their early analysis of robot manipulators. See also
Paul (1981) and Craig (1986). Waldron et al. (1985) and Hunt (1986)
study the Jacobian of open chains to characterize singular configurations
of manipulators.7 CONSTRAINT MANIFOLDS
7.1 Introduction
The structure equation of an open chain mechanism, when written in
quaternion form, defines a parameterized curve, surface, or hypersurface
in the image space, depending on the degree of freedom of the chain.
We call this manifold the constraint manifold of the open chain, It
represents, geometrically, the constraint imposed on the positions of the
fend link by the rest of the chain, ‘The constraint manifold of a closed
chain is the intersection of the constraint manifolds of the two open
chins used to define its structure equation
In this chapter we present the constraint manifolds of 2R and 3R
planar and spherical open chains, and 2C and 3C spatial open chains.
By eliminating the joint variables, we find that these manifolds are de-
fined by quadratic forms. This reduces the derivation of the constraint
manifolds of closed 4R, 5R, and 6R, planar and spherical chains to the
intersection of quadric surfaces. The constraint manifolds of 4C, 5C and
6C spatial chains are identical in forin to those of the 4R, 5R and 6R
closed spherical chains but written in terms of dual numbers
7.2 Planar Mechanisms
7.2.1 The 2R Planar Open Chain
In this section we derive the quadric surface in the image space that
represents the positions and orientations of the floating link of a 2R
planar chain. This surface is described in Bottema and Roth (1979) as
the set of displacements for which one point stays on a citle
Let the two joints of the first link of the chain be denoted 0; and a
‘The length of the first ink is a = |a ~ 0,|. Position reference frames
(, and A; at 0; and a and align their 2-axes in the direction ay ~ 01
Attach the moving body at joint a and the two link chain to the base
at joint 0}, see Figure 7.1. The fixed and moving frames, F and M, are
located at the points 0; and a, respectively. With these conventions
the structure equation is defined by a rotation about a, by the angle 6.
1 translation along the link by the amount a, and a rotation about 0
by 0. In terms of 3 x 3 transforms we have4 Chapter 7. CONSTRAINT MANIFOLDS
Figure 7.1
2A planar chain,
Figure 7.2
‘Constraint manifold ofthe 2R chain: a hyperboloid of one sheet.7.2. Planar Mechanisms 95
1D] = (ZILX(aIZ(6)},
cos -sin@ 0] [1 0 a] [cosé —sine 0
[}=| sind cosa 0} |0 1 0]] sing cosp 0} (71)
0 0 tJfoor1flLo o 4
‘We now write this transformation as a product of planar quaternions:
D = 2(0)X(a)Z(0)
or
D = (0,0,sin6/2,cos/2)(a/2,0,0,1)(0,0,sin 4/2,cos 6/2). (72)
Expanding this product, we obtain the parameterized surface in R*
D(O,6) = (Di(8.4), Dsl, 9), Ds(0,6),Da(8.6)) (73)
wrhere
Dy(0,8) = (a/2)con(25*),
Dx(9,0)
a+
Ds(0,0)
sin(
Du.) = cos(2*),
‘This surface is the constraint manifold of a 2R planar manipulator. Elim-
inating @ and @ we obtain:
Di + D3 ~ (a/2)*D§ — (a/2)° D3
(74)
‘The 2R chain can reach any position, D = (D1,Dz,Ds, D4), that
satisfies this algebraic equation. To study this equation as an algebraic
surface in four dimensions, denote the points of R* as x = (1,y,2,w),
so that (7.4) becomes
2? + y? — (a/2)?2* — (a/2)?w? (7.5)
‘This equation may be written as the quadratic form
x7(Q} (76)96 Chapter 7. CONSTRAINT MANIFOLDS
with coefficient matrix
10 08
a-|o) 3, 2 in
00 0 =a3/4
It defines a two dimensional set of lines passing through the origin © =
(0,0,0,0) forming a quadric hypercone in R*.
‘The constraint manifold can be viewed by projecting it onto the hy-
perplane w = 1 along the lines of the hypercone. This is done by setting
w = 1 in (7.5). The result is a right cireular hyperboloid of one sheet:
2 ty = (0/22? = (0/2? (78)
‘This hyperboloid is centered on the point x = y = 2 = 0. It is aligned
with the z-axis and has the minimum diameter a, see Figure 7.2,
If we eliminate only the variable ¢ in (7.3), we obtain a representation
of the quadric as the intersection of the pair of hyperplanes:
0,
a @. 6 @
cos(5)2 + sin(5)y ~ (a/2)sin(5)2 — (0/2) cos(5)w
@ é -»yeoat’ a 8
sin($) ~ oos(S)y ~ (a/2)os(5)= + (a/2)sin(S)w = 0. (79)
For constant 8, the intersection of these hyperplanes defines a two di-
mensional plane through ©. This plane lies entirely in the hypercone
(7.5). The intersection of this plane with the hyperplane w = 1 is a
‘generator of the hyperboloid (7.8). Thus the generators of the this hy
perboloid are lines of constant 8 A similar calculation in which @ is
climinated in (7.3), instead of 6, shows that the other set of generators
of the hyperboloid are the lines of constant 3.
‘The simple form of Eqs. (7.3) and (7.4) is a result of the particular
‘choice ofthe fixed and moving frames F and M. We now obtain the con-
straint surface for a 2R robot with a fixed frame F’ and a moving frame
A’ positioned arbitrarity in the base and moving body, respectively. Let
the position of 1M" relative to Mf be defined by the planar quaternion H.
and let the position of F relative to the new base frame ” be defined by
G, then the new parameterized constraint surface ¥(8,) is given by:
D‘(@.0)
G2(0)X(a)2(0)H. (7.10)7.2. Planar Mechanisms 7
‘We can write this as a linear transformation of the vector D(@,) given
in (7.3):
D'(0,4) = (CID), (71)
where [C] = [G*][H7] is obtained from the matrix form of the product
by quaternions G and H, see (4.23) and (4.24). The algebraic form of
(7.11) can be obtained directly from (7.6) using linear transformation in
R° given by
y=[Clx. (7.12)
Invert this and substitute the result into (7.6) to obtain
yT(@ly =y7[C“FQ\C“ ly. (7.13)
This transformation distorts the shape of the hyperboloid but leaves the
lines of constant @ and ¢ intact.
7.2.2. The 3R Planar Open Chain
To obtain the constraint manifold of a 3R open chain, assign coordinate
frames in the same way as described for the 2R chain. In this case the
joints on the second link are denoted o7 and az and the length of the
link is b = Jaz ~ o9|. The moving frame M is positioned at az and its
angle relative to Az is denoted by ¥, see Figure 7.3. The position of the
workpiece now depends on three parameters @, ¢, and y. The quaternion
form of the structure equations yields the parameterized solid98 Chapter 7, CONSTRAINT MANIFOLDS
D(8,0,v) = Z()X(a)Z(o)X(b)2(w), (7.14)
where 2(8), X(a), and Z(d) are given in (7.2) and X(6) = (6/2,0,0,1)
and Z(W) = (0,0,sin¥/2,c0s¥/2).
Expanding (7.14), we obtain
D(0,4,¥) = (Di(6,6,¥), Da(0, 0, ¥), Ds(8,0,¥),Dal8,0,¥)) (7-15)
where
D1(0,6.0) = $eosi2=S=¥) + bea +9=),
2x(8,6.0) = Ssin(@=S—¥) + 3 sin?
D309.) = sin @*S*#,
D4(8,6.v) = cov(*9*¥)
‘The variables # and y can be eliminated from (7.15) to yield the algebraic
‘equation parameterized by ¢:
AD} + 4D3 ~ Di(a? +8 + 2abcos¢) ~ Di(a? +8? + 2ab eos.) = 0(7.16)
The term a? + 6? + 2abcos@ is the square of the distance between the
base joint ao and the third joint ay of the chain. We denote this distance
as R(9) so (7.16) becomes
2 2
pi + vp- Ep PO pr (77)
‘The positions D = (Dy, Dz, Ds, Ds) that satisfy (7.17), for various val-
tues of 6, are those that are reachable by the end link of the 3R. chain.
Let the points of R be denoted x = (x,y, 2,w) so (7.17) defines the
parameterized set of hypercones:
ay yp Be 2
vey = thy? = 0, (7.18)
This can be written as the quadratic form
xT(Q()}x = 0, (7.19)
with coefficient matrix7.2. Planar Mechanisms 99
10 Oo 0
(QOl=| 5 6 —nwya (7.20)
00 0. —RS)/4
‘The intersection of (7.19) with the hyperplane w = 1, yields the set
of right circular hyperboloids:
24 ,2- PO» _ RO
Pay ta
Each hyperboloid is aligned with the z-axis and centered on x = y =
= = 0. The center diameter is R($). The outer boundary, given by
@=0,i8 R= a+), and the inner boundary, which occurs when = 1,
is R= [ab]. When a = b the inner hyperboloid degenerates to the
-=axis, We may view this as the solid swept by the constraint surface of
‘2K chain as the link length 2d) is varied.
‘The canonical form of (7.20) is the result of the choice of fixed and
roving reference frames. A general choice of the fixed and moving
frames leads to the linear transformation
D'(6,4,¥) = [CID(0,4,¥). (7.22)
[C] = [G+][H-] is the matrix form of the quaternion transformation to
the new fixed and moving frames. This transforms the coefficient matrix
of the quadratic form (7.20) to
[2a] = (CF l@(@yic). (7.28)
‘The result is a skewed set of concentric hyperboloids.
7.2.3 The 4R Closed Chain
(7.21)
Consider a pair of 2R chains with base joints ao and ab, lengths a:
and az, and separated by the distance g. If we rigidly join the two end
links, then system becomes a chain of four links of lengths a1, a2, 9
and h, where h is the distance between the joints of the combined end
links. ‘The closed chain has only one degree of freedom so its constraint,
manifold is a curve. This curve is known in kinematics literature as the
image curve of four bar motion (Bottema and Roth 1979).
To obtain this constraint curve we intersect the constraint surfaces of
the two open chains. The constraint surface for Chain 1 has the fixed
and moving frames AY’ and F” displaced relative to Mf and F, given by100 Chapter 7, CONSTRAINT MANIFOLDS.
Figure 7.4
SR plana closed chain
igure 7.5
‘Consteaint curve of a 4R closed chain7.2. Planar Mechanisms 101
the planar quaternions Hy = (/4,0,0,1) and Gy = (=g/4,0,0,1). The
transformed constraint surface is obtained from (7.3) as
Di (41,01) = [Ci]D(A, 61), (7.24)
where
1.)
cal=tetl=] 99 4 0 (7.25)
0001
_
a= (9+ hy/Ar = (9—h)/A,
For Chain 2 the positions of M’ relative to M and F relative toF”
are defined by the planar quaternions H = (~/4,0,0.1) and Gy =
(/4,0,0,1). ‘The resulting constraint surface is
‘D4(42, 42) = [C2]D(62, 62), (7.26)
where
1007
bis 0
(l= (6rllel=| 9 6 Yo (72)
oo 01
‘The algebraic forms ofthe constraint surfaces Dj, and D} are obtained
as
Dy x7[Qi)x
Dj: x7[Qh]x
xT(CTUQCalx,
xT(CTYQ2]{Calx. (7.28)
In these equations we use the fact that [C][Cz] = [1], so [Ci] is the
inverse of [C3]. The coefficient matrices of these quadratic forms are:
ai-]o 4 ty 2 om
7 0 0 (1? - a/4)102 Chapter 7, CONSTRAINT MANIFOLDS
10 0 -r
=| og way 0 (730)
+0 0 (= a8/4)
‘The quadric surfaces defined in (7.28) intersect in a one dimensional
set of lines through the origin of R*. The intersection of these lines with
the image space is the constraint curve, C(a1,ax;9,h), of a closed 4R.
chain, Projecting this curve onto the w = 1 hyperplane, we see it as the
intersection of a pair of general hyperboloids, Figure 7.5. The matrices
[Ci] and [C2] perform a shear transformation on four dimensional space,
which shifts the center of the right circular hyperboloid, (7.8), along the
axis and tilts its axis to one side in the y-z plane.
7.2.4 Parameterizing the Constraint Curve
We now parameterize the constraint curve C(a1, a2; 9, A) of the AR closed.
chain by determining the angle $y in terms of @. ‘The substitution of
this relation into (7.24) yields a parameterized set of points along the
curve. The range over which 6, may vary depends on the dimensions of
the closed chain. 0) may vary over the full range 0 — 2r, or it may be
limited to one or two closed intervals in this range.
The easiest way to obtain (01) is to use the vector loop equations
(Erdman and Sandor 1984) to analyze the 4R chain, Equating the vec~
tors along the links around the chain, we obtain the pair of equations:
44 e088, + hos(@y +1) ~ 9 a3c0sdy = 0,
sind; + hsin(@ +61) ~arsinds = 0 (71)
Elimination of @ yields
0 = F(O,6),
(2a,h cos 8, = 2gh) cos(8y + 61) + (2arhsin by) sin(@) + 61)
. (7.2)
+f ab +g? +? — 2argcosdy =
‘The expansion of cos(#; + 41) and sin(#; +41) and isolation of terms
containing 1 results in:
F (61.61) = Acosor + Bsing: +C (7.33)
where
A = 2hay = 2ghcosBy,7.2. Planar Mechanisms 108
B = 2ohsinds,
C = gh? 4a? a} — 209080,
We solve for ¢1 by defining the intermediate variable ¢ = tan(¢x/2),
so that sing: = (1 ~ f2)/(1+ €) and cosy = 2t/(1 +2) and F(61.¢1)
becomes the quadratic polynomial:
F (61,61) = P(C — A) + 2Bt + (C+ A) =0. (7.38)
‘The discriminant of this quadratic equation is A = 4? + B?—C®, and
real solutions exist as long as A > 0, and we have
-B+vB.
CA
Substitution ofthis result into (7.24) yields a parameterized set of points,
Which is the constraint curve of the 4R chain. A similar derivation will
lead to the function ¢2(82), or @2(81), and other variations,
Eq(7.35) does not have a real solution when A becomes negative,
which means A = 0 defines the extreme values of 6), Expanding A =
A? + BC? = 0, we obtain
0 = At+ BPC?
0 = (4ajg*) cos? @ — 4a,9((9? + af) — (h? ~ a3) cos @
+ ((9? + af) — (+ a)?)((9? + af) — (h ~ a2)?) (7.36)
6,(64) = 2arctan( (7.35)
‘This is a quadratic equation in cos (we have dropped the subscript of
@ for the moment), which yields two real roots C, and C2:
(g? +af) = (ha)?
a .
209
= (Ptah) = (h= a)?
Gs aig (sr)
‘Three cases are distinguish by whether or not the roots C; and C2 are
in the range -1 < C <1.
Case 1: Neither C; nor C2 is in the range -1 < C <1, In this case
either: a) @ can take on all values from 0 to 2x, which means the
linkage is Grashof. or b) the linkage cannot be assembled. We
distinguish the two cases by checking whether or not the linkage
can be assembled for @ = 0, that is, if. a, < +a then (a)
otherwise (b).104 Chapter 7. CONSTRAINT MANIFOLDS
Figure 7.6
(ASB coved chai,
Case 2: One of the roots, Cy or Cp, is in the range ~1< C <1. We
let C denote this root and compute 6* = arceosC. Choose 8* so it
lies between 0 and x, then varies over the range a) 0" <@.< 8",
or b) 6* <@< 27-6". We distinguish these two cases in the same
way as above, by checking if the linkage can be assembled when
o=0.
Case 3: Both roots, Cy and Cz, are in the range -1 < © <1. In
this case we have 6f = arceosC1 and 83 = arccosC, where 0s,
46 lie between 0 and x. If 8; < 63, then @ varies over the ranges
6} < @ < 85 and 2x 0 <0 < 2x ~ 6}. These inequalities are
reversed if 83 < 0}
7.2.5 The 5R Planar Closed Chain
We now consider the set of positions and orientations available to the
floating link of a 5R closed chain. The link is held on one side by a 2R.
‘chain and on the other side by a 3R chain (Figure 7.6), therefore its
constraint manifold is the intersection of the constraint surface of the
2R open chain and the constraint solid of the the 3R open chain.
Let the 2R chain be “Chain 1.” Its constraint surface is given by
(7.24), The constraint manifold for “Chain 2,” the 3R open chain, is
obtained by transforming D(8, 0, ) given in (7.14) by matrix (C3). The7.2. Planar Mechanisms 105
result is the pair of parameterized manifolds:
Di(Gi,41) = [Cx]D(O1,62),
D4(02,42,¥2) = [C2]D(62. 0,2). (7.38)
‘The intersection of these two manifolds is the constraint surface of the
floating link. The algebraic equations of these manifolds are:
Di: YQi¥ = 0
Dy: Y7(Q2(2)]¥ = 0, (7.39)
where (Q4] is given (7.29) and [@2(¢2)] is the same as (7.30) but with az
replaced by the distance R(2) between the base joint af and end joint
a of the SR chain. That is (7.30) becomes
10 0 -
(ol=| 9 2 temeea 0 (740)
-1 0 0 1? R(e2)?/4
‘The constraint surface Dj of the 2R chain is fixed in RR, and is inter-
sected by the parameterized set of surfaces which form the image solid
Dj of the 3R chain, For a fixed value of 2 we obtain the constraint
curve, C(a1, R;g,h), of a AR chain with link lengths of ay and R re-
spectively. As R varies with #2, a portion of Dj, is swept by the curves
Cai, R(G2):9,h). This subset of Di, is the constraint surface of the 5R
chain. In the hyperplane w = 1, this Di becomes a hyperboloid, and
Dj is a parameterized set of hyperboloids that cuts Dj in a sequence of
curves.
‘The absolute range of values for R is |az — bal < RS az-+by, However
for a given set of constants az, 9 and h the range of R may be restricted.
Let these constants be denoted as /, lp, [a such that they are in order of
increasing value, fy < lz < ls; then R must lie in the range ls ~~ ly <
R bh —b (7.42)106 Chapter 7. CONSTRAINT MANIFOLDS
Figure 7.7
"AOR cloud chain,
‘These constraints ensure that the workpiece can be held by the manipu-
lator pair. The maximum range over which R may vary is 0 < R < a, +
4+ h, which is obtained when the link lengths a2 = ba = (ax ++ h)/2.
7.2.6 The 6R Planar Closed Chain
The set of positions and orientations attainable by a floating link in a
GR closed chain is the intersection of the parameterized solids for the
two 3R chains joining it to ground:
Di(Gyd1t1) = [Ci|D(,¢1, 4),
Da(G2,02¥2) = [C2|D(G2,¢2, 2). (7.43)
‘These equations are obtained by transforming the constraint solid of a
3R robot to account for the new fixed and moving reference frame, see
(7.25) and (7.27),
‘The algebraic equations of these solids are:
Di ix"[Qi(orlx = 9,
Dy: x™[Qy(o2)}x = 0, (744)
where (Qi (o1)] and[Qj(¢2)] are identical in form to Eqs. 7.29 and 7.30but
with a; replaced by Ri(¢1) and a2 replaced by Ra(2). Ri and R2 are
the distances between the base and third joint of the respective robots,
see Figure 7.7.7.8. Spherical Mechanisms 107
If we hold 41 constant, then the (7.44) defines the constraint surface
of a 5R closed chain, Thus a solid is swept by this surface as (1)
varies with $1. This solid can be visualized in the w = 1 hyperplane as
the intersection of two sets of concentric, skewed hyperboloids,
7.3 Spherical Mechanisms
7.3.1 The 2R Spherical Open Chain
[A.2R spherical chain joins the moving body to the base with one link
This link has two axes that intersect at a point c, make an angle a.
‘and intersect the unit sphere in points 0, and ay. We attach reference
frames O; and A; at these points such that their 2-axes are along the
respective joints, and their z-axes coincide with the normal to the plane
defined by the vectors a; ~ € and 0; ~ ¢. Now attach the moving body
Mat ay, and join 0; to ag which is fixed in the base, Figure 7.8. Let
# denote the rotation of the first link, and ¢ the rotation of the moving
body.
With these conventions the structure equation of the 2R spherical
hain becomes
1D] = [2(@)][X(a)][Z(¢)] (7.45)
‘The right side of this expression is the matrix product:108 Chapter 7. CONSTRAINT MANIFOLDS
cosd -sind O]f1 0 0 cose —sing 0
sind cos@ 0] | 0 cosa sina |] sing cose 0
0 09 14 fo sina casa o 0 1
The quaternion form of this structure equation is
D=2(4)X(a)Z(o), (7.46)
‘The right side of this expression is the produet:
(0.0.
1(4/2), cos(4/2))(sin(a/2),0,0,cos(aa/2))(0.0,sin(¢/2),c0s(6/2)).
Expanding the quaternion product we obtain the parameterized surface
(4.0) = (Di(0.6). Da(8, 0). Da{O.4). Da(0.)), (747)
where
6-6
2
o-9
Dy(0,8) = sin( $)eos(
D4.)
sin($ )sin(S
a+e
Ds(8.0) = cont
2
a ae
onl $) con“ 22),
D480)
Eliminating @ and 6 in (7.47), we obtain the algebraic equation of this
surface as
cos? $)D} ++ co8*($ DE ~ sin?($)D} ~ sin" SDF = (7.48)
‘The positions D = (Dy, Dz, D3. Da) that satisfy this equation ate rench-
ble by the end link of the 2R chai
Let the coordinates of points in R* be represented by the vector x =
(2.y.2.u), 80 (7.48) can be viewed as the canonical form of a quadrie
hypercone:
xTlQlx = 0, (7.49)
cos?(a/2) 0 0 0
af ty 8 fa
0 0 0 =sin?(a/2)7.3. Spherical Mechanisms 109
‘This may be considered to be the equation of a quadtic written in the
homogeneous coordinates of three dimensional projective space. ‘The
projection of this quadric onto the hyperplane w = 1 results in
a+ yt —tant(5)27 = tant(Z), (7.51)
which is a right circular hyperboloid of one sheet. ‘The axis of the hy-
perboloid is the 2 coordinate axis, and the radius of its center circle is
tan(a/2).
‘The canonical form of (7.50) isa result of the choice of the fixed and
roving reference frames, A general choice of these frames results in the
transformation
D'(6,4) = [CID(,2), (752)
where [C] = [G*]|H™] is the matrix form of the quaternion transfor-
mations defining the new coordinate frames. ‘The algebraic form of this
‘equation is obtained by transforming the coefficient matrix to obtain
[a1 =(e"'F aie", (7.53)
1 happens that the matrices, [G+] and [H-], constructed from quater
nions are always orthogonal transformations in R'. Therefore [C] is an
orthogonal matrix and [C~!] = [C7], so (7.58) can be written as
[21] = [ellalIc7). (7.54)
7.3.2. The 3R Spherical Open Chain
‘The constraint manifold of a 3R spherical chain is obtained from the
quaternion form of the structure equations of the chain. Assign coor-
dinate frames in the same way as described for the 2R chain. In this
cease the joints on the second link are denoted 02 and az and let angle
between these axes be , Figure 7.9. The moving frame A is attached
at az and its angle relative to Ap is denoted by v. The position of Mf
depends on three parameters @, 4, and w, and the structure equation
yields the parameterized solid
D(0, 6,0) = Z()X(a)Z(O)X(H)Z(v), (7.55)
where 2(v) = (0,0, sin v/2,c0s ¥/2), X(3) = (sin 3/2,0,0,¢0s 3/2), and
2(8), X(a), and Z(¢) are given in (7.46). Expanding this expression, we
obtainno ‘Chapter 7, CONSTRAINT MANIFOLDS.
Figure 7.9
‘NAR Spherical open chain,
D(G,,0) = (Di(0,0,¥), Dal 8,8, ¥), Da(8,0,¥), Dal.d¥)), (7.56)
ato
2
o-w
Dy = con()sin( 224) cost) + sin(S) sin
Dy = col) £2
Dy = cate?
8 aot?
De = sco($) eos 2).
The algebraic equation of this solid is obtained by eliminating 6, and
v to obtain the quadratic form:
x7(Qlx = 0, (7.57)
with coefficient matrix
[a\=
cost(p(0)/2) 0 o 0
0 cos*(p(e)/2) o 0
0 0 ~sin?(p(6)/2) 0
0 ° 0 = sin®(o(0)/2)7.3. Spherical Mechanisms am
Figure 7.10
‘ALAR spherical closed chain
‘The angle p(¢) is the angular distance between the first and third joints
Of the chain and is determined from @ and the link lengths a and 3 by
the cosine law:
sin asin Bos 6, (7.58)
0s p(d) = cosacos;
We project this solid onto the hyperplane w = 1 to obtain the parame-
terized set of right circular hyperboloids
2 gy? tan 22 = tan2( 2)
a7? ~ tan PO) e2 = tant( 6S) (7.59)
‘The special form of this manifold results from the choice of the fixed
land moving reference frames. For a general pair of fixed and moving
frames (7.56) and (7.57) are transformed in the same way as the equa-
tions for the 2R chain, see (7.52) and (7.53).
7.8.3. The 4R Spherical Closed Chain
‘The constraint manifold of a 4R spherical closed chain is obtained in the
same way as was done form the 4R planar closed chain. We obtain the
AR chain by combining the end links of two 2R chains. Let the links of
the two chains have angular length ay and az, and base joints denoted
‘ap and aj,. The angle between these joint axes is denoted 7. Similarly,
‘we identify the joints on the moving body as a2 and a, and the angle
between them as 7. We position the fixed and moving frame midway
along these angles, see Figure 7.10nz Chapter 7. CONSTRAINT MANIFOLDS
‘The structure equations for each chain is obtained by transform-
ing (7.47) to account form the new positions of the fixed and mov-
ing frames. For Chain 1 the position of Mf in the end link is given
by X(n/2) = (sin(n/4),0,0,cos(n/4)), and the transformation to F is
X{~9/2) = (~sin(/4),0,0,cos(/4)). Chain 2 requires the transfor-
mations X(—n/2) = (—sin(7/4},0,0,cos(n/4)) to position the moving
frame and X(7/2) = (sin(/4),0,0,cos(/4)) for the fixed frame. The
operation of these quaternions on the constraint manifold D(0,4) can
be written as the matrix equations:
Di (61.61) (X(- 3) LX(Q) DG, @1) = [CD(6s, 61),
Di(62,d2) [XG)*IX(-2) DU, @2) = [Ca]D(2,62), (7.60)
where
car 00 sing
0” exe sing
Il = | 9 -sine cose 0
sar 0 Or
cur 00 int
ea = | 9 gee che 8 wan)
cain 00" cone
and o and 7 are given by
a= (remit = (y— n/a,
‘The algebraic forms of the two surfaces (7.60) are obtained by trans-
forming the coefficient matrix of the quadratic form (7.49)
Di ExT[Qilx=x7[CilQIICTix = 0,
Dj: x7[Qi]x = x7[C2|(QIICH]x = 0. (7.62)
Here we have used the fact. that [Ci] and [Ca] are orthogonal matrices,
see (7.54). The coefficient matrices of these two quadries are
(i=
eu sty
z7.8. Spherical Mechanisms us
ay Wie af
Figure 7.11
‘ANGR spherical closed chain
(7.64)
In these matrices s and ¢ represent the sine and cosine functions. The
intersection of these quadrics, which is the constraint. manifold of the
coupler of the spherical four bar linkage, is a quartic curve from the
point of view of projective geometry. See Ge and McCarthy 1988 for the
algebraic classification of these curves.
7.3.4 5R and 6R Spherical Closed Chains
‘The constraint manifolds for 5R and 6R spherical closed chains are ob-
tained in the same way as described for planar 5R and GR chains. We
Intersect the quaternion structure equations of the 2R and 3R chains
to obtain the constraint manifold of the 5R chain, and the structure
equations of two 3R. chains to obtain this manifold for the 6R chain,
Figure 7.11. We will consider the 6R chain first, and then obtain the
constraint manifold of the 5R chain as a special case.
Let the fixed and moving frames be positioned midway along the
ground and floating links as described for the 4R spherical chain. Thenty Chapter 7. CONSTRAINT MANIFOLDS
the constraint manifolds of two 3R chains are
Di. G1¥1) = (Cx]D(Gr.o1,¥0),
D3(02.¢2)¥2) = (C2]D(O2.¢2,¥2), (7.65)
where D(6;,:, Us) is the parameterized solid of the 3R chain, and [Ci]
and [C2] transform it to the new fixed and moving frames, see Eqs. 7.56
and 7.61. The algebraic forms of the surfaces are obtained in the same
way as (7.62), the result is
Di xT [Qilx=xT(CIQIICTIx = 0,
Dy: xT[Qs)x = xT(CAIQIICIIx = 0. (7.66)
The coefficient matrix [Q{(61)] is
0 ARB tg seen °
0 Hsoce PR + 0
srer ° 0 aster
and the coefficient
patrix [@5(¢)] is
Pal — 0 o =srer
0 ABE sto S000 0
o Soc EE 4 Py °
-srer 0 0 eal 4 Pr
In these matrices s and c represent the sine and cosine functions,
The angles p: and pz define the distance between the base joint ao
and the end joint a2 of the first chain, and the base joint aj and end
joint a’, of the second chain. The intersection of these parameterized
uadtries is the constraint solid of the 6R chain.
‘The constraint surface of the 5R chain is obtained from (7.66) by hold
ing the angle p; constant. The single quadric defined by the 2R chain
is cut by a parameterized set of quadrics defined by the 3R chain. The
surface swept by these intersection curves is the configuration surface of
the 5R chain74. Spatial Mechanisms ns
-
Figure 7.12
‘single cylindric joint
7.4 Spatial Mechanisms
7.4.1 A Single Spatial Link
Consider the motion of a body M that is attached to ground by a cyli
Aric joint along the z-axis of the fixed frame, Figure 7.12. The rotation
of A is defined by the quaternion Z = (0,0, sin(0/2),cos(@/2))- It trans-
lates along the =-axis by the amount d = (0,0,d), 80 the components of
the dual part are obtained from (4.39) as:
2} =0,29 = 0,28 = (d/2)cos(6/2), 22
Thus, the dual quaternion representing the motion of the body has the
components:
~(d/2) sin 9/2. (7.67)
a 4=0,
fy = sin(0/2) + e(d/2)c0s(0/2),
2q = cos(8/2) ~ e(d/2)sin(0/2) (7.68)
Let the dual angle = 0+ ed define the postion of MV along the axis of
the cylindric joint, then the dual quaternion has the components
26)
‘The result is that the dual quaternion representing a relative displace-
ment of two bodies joined by a cylindric joint is the dual form of the
(0,0,sin 6/2, c0s6/2). (7.69)16 Chapter 7. CONSTRAINT MANIFOLDS
Figure 7.18
"AC spatial open chain,
quaternion that defines the relative displacement on a sphere of two
bodies joined by a revolute joint. ‘The structure equations of spherical
ins of revolute joints are transformed into the structure equations of
spatial chains of cylindric joints by replacing link angles and joint ro-
tation angles of the spherical chain by the dual link and joint angles of
the spatial chain. This is often referred to as “dualizing” the spherical
results.
7.4.2 The 2C Spatial Open Chain
‘The set of positions of the second link of a general 2C spatial open
chain is a manifold parameterized by four variables, the rotation, 8,
and translation, d, along the first cylindric joint, and the rotation, 4,
and translation, 6, along the second joint, Figure 7.13. The 2R. spatial
open chain is the special case of a 2C chain in which the translation
parameters d and 6 do not vary.
Let the points on the common normal to the axes of the two cylindric
joints be denoted 0, and ay. The distance a = |ay ~ 0| between these
two points and the angle « between the two axes defines the d
dimension of the link, é = a + ¢a. The dual rotation angles 6
and 6 = 6+ ¢c represent the relative position of each body about the
cylindric axis. We assign reference frames to the chain so the 2-axes are
along the joint axes and the a-axes are along the links.
With these conventions the structure equations ofthe chain are defined7.4, Spatial Mechanisms nt
by the sequence of transformations:
1. a screw displacement of the moving body A along the moving
Joint, given by 2(6) = (0,0, sin(6/2),cos(6/2))s
2. the screw displacement along the x-axis of the link, defined by
X = (sin(6 /2),0,0,c08(4)2)); and
3. 2(6) = (0,0,sin(6)2),cos(6/2)) is the screw displacement about
the base joint.
The result is
DUG, 8) = 26) (a) (9); (7.70)
the right side of this equation is the product of quaternions:
6. 6 é a é
(sin($),0,0,c05(8))sin(&),0,0,c08($))(0,0,sin(2),cos( 3)
Expanding this product we obtain
D(6,4) = (D1, 4), Da(4, 4), Da(6, 8), Dal, 6) (771)
where
Dy6,8) =
Dx(6,0)
D368) =
DsG.8) =
‘This is the parameterized equation of «four dimensional manifold in the
image space of spatial displacements. Notice that it is the dual version
of (7.47).
Eliminating and @ in (7.71) we obtain the algebraic form of the
‘constraint manifold as
c088($)D} + cos4($) DE ~ sin®(F)D3 — sin*($).D3 = 0. (7.72)us Chapter 7. CONSTRAINT MANIFOLDS
‘The positions D = (Dy, D2, Da, Ds) of the moving body IM that can be
reached by the 2C chain must satisfy this equation. Let the coordinates
in a space of four dual dimensions be denoted by the dual vector % =
(sti 8,10), so (7.72) takes the form
(0x (773)
with the dual coefficient: matrix
cos(a/2) 0. 0 0
_ 0 cos%(4/2) 0 0
=| 4 O -ain(a2) 0 (7.74)
o 0 0 —sin?(4/2)
This defines a dual quadric surface in canonical form.
‘The canonical form is a result of the particular choice of the fixed and
moving frames. For a general pair of fixed and moving frames (7.71)
is transformed by the matrix form of the dual quaternions @ and Hi
representing the positions of these frame:
D'(6,4) = (G*)[A- D4, 4). (7.75)
‘The matrix (C! }+)[HI-] is also used to transform coefficient matrix
of the quadratic form (7.73)
(a= Ie1lauer" (7.76)
This equation uses the fact that (Cis an orthogonal matrix, see (7.54).
7.4.3 The 3C Spatial Open Chain
If the joint variables of the 3C chain, Figure 7.14,, are denoted by 6 =
8 + ed, 6 = 0 +ec and © = U+ex, then the structure equations of
the chain define a six dimensional manifold of postions ofthe end link.
The constraint manifold of a 3R spatial chain is the three dimensional
submanifold obtained by fixing the values of offset variables d, cand s.
Let the first link of the chain have the dual angular dimension 4 =
aca, and the second ink have the dimension 3 = 3++«b, The structure
taqations ofthe chain are obtained as the composition of cual quater
DG.4,8) = 2G)X(A)Z(6). (7.77)7A. Spatial Mechanisms 9
8), X(a), and Z(¢) are the same as used above for the
2C chain; the remaining terms are X(3) = (sin(3/2),0,0,cos(/3/2)) and
0,0, sin(s}/2), cos(1i/2)). Expanding this quaternion equation
115), Da(6,4.18)), (7.78)
By, = eo2yaint2,
By = con $)sin( £2) sin @5#
Ds = 4) ttt lS
a8 a4
cos($ 8 oy Std Jeos(
>
"
The algebra for othe constant eit isobtined by elimina
ing 8200", The rete
22) i} + mt 2) ~ nia 04 int 208 =
cos” (pt + (G)DE (p)D3 ()Dt 0, (7.79)
where f isthe dual angular distance between the frst and third axes of
the chain, This distance a function of the dual angle 6 and the lengths
4 and 8 given by the dual cosine law:120 Chapter 7. CONSTRAINT MANIFOLDS
Figure 7.15
'N'OC spatial closed chain
08 9(6) = cos cos 3 ~ sin sin eos 4. (780)
The quadeatie form of (7.79) is
QDI
where the coefficient matrix [Q(4)] is the identical to (7.74) with
replaced by A(d).
(781)
7.4.4 Spatial Closed Chains
The constraint manifolds of 4C and 5C spatial closed chains can be
obtained as special eases ofthe constraint manifold of a 6C closed chai
Figure 7.15. Also the closed chains RCCC and RRCCC ean be obtained
as special cases of the 4C and 5C chains. The derivation ofthe constraint
manifold of the 6C chain is the same as the derivation of the constraint
surface of a GR spherical chain, with dual angles used for the joint angles
and link dimensions.
Let the fixed and moving frames be positioned midway along the
round and floating links. The structure equations of the two chains
are obtained by transforming (7.78) to account for the new positions
of the fixed and moving frames. The structure equation for Chain 1 is
obtained using X(1/2) in(#}/4),0,0,cos(#/4)) to transform to the
new moving frame M, and X(—4/2) = (—sin(4/4),0,0,cos(4/4)) for
the new fixed frame. Similarly, the structure equation of Chain 2 uses74. Spatial Mechanisms ya
the dual quaternions X(—#/2) = (—sin(/4).0,0,cos(/4) to define the
new moving frame and X(4/2) = (sin(7/4),0,0,cos(4/4)) for the new
fixed frame. The result is the pair of equations
Dydd) = (IDG. dH),
D,(02,42,¥02) = [Ca1D(62,42,02), (7.82)
where
Gl = &-3ed
a) = eGR (788)
‘The matrices [C;] and [Cs] are dual matrices representing the relative
positions of the two chains and the size ofthe floating links. ‘They can be
obtained fom (7.61) by replacing by 4 = beg, and 1 by fj = n+ eh
‘The algebraic form of these two equations are obtained by transforma:
tion the coefficient matrix of the quadratic form (7.81) using the matrices
[C1] and [C3]. We obtain
Dy TCNQ I|Crl?
Dy 7 [Ca]lQ(da)][Cx]?# = *
(7.84)
‘To obtain these equations we use the fact that [C;] and [C2] are orthog-
onal matrices. These matrices are the dual forms of Eqs. 7.68. The dual
angles fj and fz define the dual distances between the fist and last
joints of the two chains, and are related to the angle 61 and the link
lengths @ and 4 of the first chain, and dy, dy and jy of the second
chain, respectively, by the dual form of the cosine law.
‘The set of positions that satisfy the pair of quadratic forms (7.84)
are those that are reachable by the floating link of the 6C chain. The
‘equations for 5C and 4C closed chains are obtained from this simply by
holding one or both of the distances and jp constant. The special
case of an RCCC constraint manifold is obtained by restricting the offset
variable dj of the first joint of the 4C chain to be constant. Similarly.
the constraint manifold of an RRCCC chain is obtained by restricting
the offset variables d, and c, of the first two joints of a 5C chain to be
constant.12 Chapter 7. CONSTRAINT MANIFOLDS
7.5 References
The image space of planar displacements was introduced by Blaschke
and Miller (1956). Bottema and Roth (1979) present a detailed study
of the image curve of planar four bar motion. The relation between
general curves in the image space and planar motion is examined by
DeSa and Roth (1981a,b). Ravani and Roth (1984) use quaternions
and dual quaternions to define image spaces for rotations and spatial
displacements. This chapter is an extension of Bottema and Roth's
planar results to the image spaces of Ravani and Roth,8 BIBLIOGRAPHY
Baker, J. E. 1978. “On the Investigation of Extrema in Linkage Anal-
ysis, using Screw System Algebra,” Mech Mach Theory, 13:333-343.
Ball, R. S., 1900. A Treatise on the Theory of Screws, Cambridge
University Press.
Belinfante, J. G. F., and Kolman, B. 1972. A Survey of Lie Groups
‘and Lie Algebras: with Applications and Computational Methods, SIAM,
Phila., PA,
Blaschke, W., and Mille, H. R. 1956. Ebene Kinematik. R. Olden-
bourg, Munich
Bottema, O., and Roth, B. 1979. Theoretical Kinematics. North-
Holland Press, New York, 550pp.
Brockett, R. W. 1983. “Robotic Manipulators and the Product of
Exponentials Formula,” Proc MTNS-89 Int Sym, Beer-Sheva, Israel, pp
120-129,
Clifford, W. K. 1882. Mathematical Papers, (ed. R. Tucker), London:
Macmillan.
Craig, J. 1986. Introduction to Robotics: Mechanics and Control,
Addison-Wesley, Reading, MA.
Denavit, J., and Hartenberg, R. S. 1955. “A Kinematic Notation
for Lower Pair Mechanisms based on Matrices. ASME J Appl Mech.
22:215-221.
DeSa, S., and Roth, B. 1981a. “Kinematic Mappings, Part 1: Clas-
sification of Algebraic Motions in the Plane.” ASME J Mech Des
103(3):712-717.
DeSa, S., and Roth, B., 1981b. “Kinematic Mappings. Part 2: Ratio-
nal Algebraic Motions in the Plane,” ASME J Mech Des, 103:712-717.
Dimentberg, P.M. 1965. The Serew Calewlus and its Applications in
Mechanics. Moscow, USSR: Ied Nauka. (English Trans. 1968. Foreign
Tech. Div. WP-AFB, Ohio).
Dufly, J. 1980. Analysis of Mechanisms and Robotic Manipulators
Wiley, New York,
Flanders, H. 1963. Differential Forms with Applications to the Phys-
ical Sciences. Academic Press, NY, 203pp.
Freudenstein, F. 1954. “An Analytical Approach to the Design of
Four-Link Mechanisms,” Trans ASME. 76:483-492.
Ge, Q., and McCarthy, J. M. 1988. “Classification of the Image Curves,
of Spherical Four-bar Linkages,” Proc ASME Mech Conf, Sept. 25-28,14 Chapter 8, BIBLIOGRAPHY
Kissimmee, FL, DE15(2):13-18.
Gu, Y. L., and Lub, J. ¥. $. 1987. “Dual-Number ‘Transformation
and Its Applications to Robotics.” IEEE J Rob Auto. RA3(6):615-623,
Hall, A. S. 1981, Notes on Mechanism Analysis. Prospect Heights.
IL: Waveland Press
Halmos, P. R. 1974. Finite-dimensional Vector Spaces. New York
Springer-Verlag. 199pp.
Hamilton, W. R. 1969. Elements of Quaternions. Chelsea Press.
Hartenberg, R. S., and Denavit, J. 1964, Kinematic Synthesis of Link
‘ages. McGraw-Hill, NY.
Hunt. K. H. 1978. Kinematic Geometry of Mechanisms. Oxford
Clarendon Press.
Hunt, K. H. 1986. “Special Configurations of Robot-Arms via Serew
Theory. Part 1. The Jacobian and its Matrix of Cofactors,” Robotica
4171-179,
Kerr, J., and Roth, B, 1986, “Analysis of Multifingered Hands,” Int
J Rob Res. 4(4):3-7.
Lang, S. 1971. Algebra. Addison-Wesley.
Paul, B. 1979. Kinematics and Dynamics of Planar Machinery. En-
lewood Cliffs, N.J.: Prentice-Hall
Paul, R. P. 1981. Robot Manipulators: Mathematics, Programming,
and Control. Cambridge: MIT Press,
Payandeh, S., and Goldenberg, A. A. 1987, “Formulation of the Kine-
matic Model of a General (DOF) Robot Manipulator Using Screw
Operator.” J Rob Sys. 4(6):771-797.
Pennock, G. R.,. and Yang, A. T. 1985. “Application of Dual-number
Matrices to the Inverse Kinematics Problem of Robot Manipulators.”
ASME J Mech Trans Auto in Des. 107:201-208,
Pieper, D., and Roth, B. 1969. “The Kinematics of Manipulators
under Computer Control.” Proc 2nd World Congr on the Theory of
Machines and Mechanisms. Zakopane, Poland, 2:159-169
Porteous, I. R. 1981. Topological Geometry. Cambridge: Cambridge
Univ. Press, 486pp.
Rayani, B, and Roth, B. 1984. "Mappings of Spatial Kinematies,”
ASME J Mech Trans Auto in Des. 106(3):341-347.
Roth, B. 1967. “On the Screw Axes and Other Special Lines Asso-
ciated with Spatial Displacements of a Rigid Body,” ASME J Eng for
Ind. 89B(1):102-110.125,
Rooney, J. 1977. “A Survey of Representations of Spatial Rotation
about a Fixed Point,” Environment 6 Planning. B4:185-210.
Rooney, J. 1978. “A Comparison of Representations of General Spa-
tial Screw Displacement,” Environment & Planning. B5:45-88.
Sandor, G. N. 1968, “Principles of a General Quaternion Opera-
tor Method of Spatial Kinematic Synthesis.” ASME J of Appl Mech.
35(1):40-46.
Sandor, G. N., and Erdman, A. G. 1984. Advanced Mechanism De-
sign: Analysis and Synthesis, Vol 2. Englewood Cliffs, N. J.: Prentice-
Hall
Sattinger, D. H., and Weaver, 0. L. 1986. Lie Groups and Alge-
bras with Applications to Physics, Geometry, and Mechanics. New
York:Springer-Verlag, 215pp.
Shilov, G. E. 1974, An Introduction to the Theory of Linear Spaces.
(trans by R. A. Silverman), New York: Dover Publications. 310 pp.
Song, S., and Waldron, K. J. 1987. “Geometric Design of a Walk-
ing Machine for Optimal Mobility,” ASME J Mech Trans Auto in Des.
109(2):21-28.
Sugimoto, K., and Duffy, J. 1982. “Application of Linear Algebra to
Screw Systems,” Mech Mach Theory. 17(1):73-83.
imoto, K., Duffy, J., and Hunt, K. H. 1982, “Special Configu-
rations of Spatial Mechanisms and Robot Arms,” Mech Mach Theory.
17(2):119-132,
Uieker, J. J., Denavit, J., and Hartenberg, R. S. 1964, “An Iterative
Method for the Displacement Analysis of Spatial Mechanisms,” ASME
J Appl Mech. pp.309-314.
Veldkamp, G. R. 1976, “On the Use of Dual Numbers, Vectors,
‘and Matrices in Instantaneous Spatial Kinematics,” Mech Mach The-
ory. 11:141-156.
Waldron, K. J., Wang, . L., and Bolin, S. J. 1985, “A study of the
Jacobian Matrix of Serial Manipulators’ ASME J Mech Trans Auto in
Des. 107(2):230-237,
Woo, L., and Freudenstein, F. 1970. “Application of Line Geometry
to Theoretical Kinematics and the Kinematic Analysis of Mechanical
Systems,” J. Mechanisms. 5:417-460.
Yang, A. T., and Freudenstein, F. 1964. “Application of dual-mumber
quaternion algebra to the analysis of spatial mechanisms.” Trans ASME,
86E:300-308 (J of Appl Mech. 31).126 Chapter 8. BIBLIOGRAPHY
Yang, A. T., 1969a. “Analysis of an Offset Unsymmetrie Gyroscope
‘with Oblique Rotor Using 3 x 3 Matrices with Dual Number Elements,”
ASME J Eng for Ind. 91(3):535-542,
Yang, A. T. 1969b. “Displacement analysis of spatial five link mech-
anisms using 3 x 3 matrices with dual number elements.” ASME J Eng
for Ind. 91:152-157.
Yang, A. T. 1974. “Calculus of Serews,” in Basic Questions of Design
Theory. (ed. W. R. Spillers), North-Holland /American Elsevier, New
York.
Yuan, M. S. C., and Frendenstein, F. 1971. “Kinematic Analysis
of Spatial Mechanisms by Means of Screw Coordinates, Part 1-Serew
Coordinates,” ASME J Eng for Ind. 98:61-66.
‘Yuan, M.S. C., Freudenstein, F., and Woo, L. $. 1971. “Kinematic
Analysis of Spatial Mechanisms by Means of Serew Coordinates, Part
2 Analysis of Spatial Mechanisms,” ASME J Eng for Ind. 93:67-73,