
Citation 
 Permanent Link:
 http://ufdc.ufl.edu/AA00037513/00001
Material Information
 Title:
 Screw theory and lie groups the two faces of robotics
 Creator:
 Basavaraj, Udai
 Publication Date:
 1991
 Language:
 English
 Physical Description:
 viii, 183 leaves : ill. ; 28 cm.
Subjects
 Subjects / Keywords:
 Differentiable manifolds ( jstor )
Euclidean space ( jstor ) Kinematics ( jstor ) Mathematical vectors ( jstor ) Matrices ( jstor ) Robots ( jstor ) Sine function ( jstor ) Tangent vectors ( jstor ) Tangents ( jstor ) Topology ( jstor ) Dissertations, Academic  Mathematics  UF Mathematics thesis Ph. D
 Genre:
 bibliography ( marcgt )
nonfiction ( marcgt )
Notes
 Thesis:
 Thesis (Ph. D.)University of Florida, 1991.
 Bibliography:
 Includes bibliographical references (leaves 181182).
 General Note:
 Typescript.
 General Note:
 Vita.
 Statement of Responsibility:
 by Udai Basavaraj.
Record Information
 Source Institution:
 University of Florida
 Holding Location:
 University of Florida
 Rights Management:
 The University of Florida George A. Smathers Libraries respect the intellectual property rights of others and do not claim any copyright interest in this item. This item may be protected by copyright but is made available here under a claim of fair use (17 U.S.C. Â§107) for nonprofit research and educational purposes. Users of this work have responsibility for determining copyright status prior to reusing, publishing or reproducing this item for purposes other than what is allowed by fair use or other copyright exemptions. Any reuse of this item in excess of fair use or other copyright exemptions requires permission of the copyright holder. The Smathers Libraries would like to learn more about this item and invite individuals or organizations to contact the RDS coordinator (ufdissertations@uflib.ufl.edu) with any additional information they can provide.
 Resource Identifier:
 026890900 ( ALEPH )
25540992 ( OCLC )

Downloads 
This item has the following downloads:

Full Text 
SCREW THEORY AND LIE GROUPS: THE TWO FACES OF ROBOTICS
By
UDAIIBASAVARAJ
A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT
OF THE REQUIREMENTS FOR THE DEGREE OF
DOCTOR OF PHILOSOPHY
UNIVERSITY OF FLORIDA
1991
ACKNOWLEDGEMENTS
The author acknowledges the Northeast Regional Data Center at the University of Florida for a grant under the Research Computing Initiative for Numerically Intensive Computing in Higher Education. The author would also like to thank his advisors, Dr. Joseph Duffy and Dr. Neil White.
TABLE OF CONTENTS
ACKNOWLEDGEMENTS ......................
LIST OF TABLES ...........................
LIST OF FIGURES ....................
. . . . . . . . vi
ABSTRACT .. .. .. ... .. . . .. ... . . .. .. .. .. ... .. .. . viii
1 INTRODUCTION ............................... 1
1.1 Overview .......................................... 1
1.2 The Fundamental Concept of Motion Capability ............... 4
1.3 Summary of Chapters ...... .......................... 5
2 PRELIMINARIES ........ ............................... 8
3 THE EUCLIDEAN GROUP ................................ 20
3.1 Euclidean Space ..................................... 20
3.2 Rigid Body Motion in Space and Time ..................... 25
3.3 The Euler Parameterization of the Euclidean Group ............. 27
4 TANGENT BUNDLES .................................... 31
4.1 The Tangent Bundle of E' and Rn ................... 31
4.2 Directional Derivatives as Operators Acting on Functions ....... ..36 4.3 The Tangent Bundle of Differentiable Manifold ................. 41
5 THE TANGENT BUNDLE OF THE EUCLIDEAN GROUP.
5.1 The Tangent Space at the Identity Element .......
5.2 The Right Tangential Mapping ..............
5.3 The Left Tangential Mapping ...............
6 THE ADJOINT MAP ......................
6.1 The Composition of Mappings ............
6.2 Composition Interpreted as a Change in Frames 6.3 The Effect on the Fixed and Moving Generalised
.... 53
Axodes .
6.4 The Physical Implications on the Fixed Generalised Axode ......
6.5 The Physical Implications on the Moving Generalised Axode .....
6.6 The Relationship Between the Generalised Axodes .............
7 THE EXISTENCE OF A SEMIRIEMANNIAN METRIC ...........
8 APPLICATIONS TO ROBOTICS .... ......................
103
The Group Structure in Robotics ......................... 103
The Concept of Volume ...... ......................... 104
Planar Motion ...................................... 112
Redundant Planar Motion ...... ........................ 121
Euclidean Motion ....... ............................. 126
Application to a Typical Industrial Robot ................... 129
Redundant Manipulators ............................... 138
9 CONCLUSIONS .......................................
APPENDICES
A THE GENERAL ELECTRIC P60 ROBOT ....................
B THE FLIGHT TELEROBOTIC SERVICER MANIPULATOR SYSTEM . REFERENCES .....................................
BIOGRAPHICAL SKETCH .............................
144
153 180 183
LIST OF TABLES
6.1 Interpretation of Changing Frames via Composition .......... 79
6.2 Effect of a Change in Frames on the Generalised Axodes ......... 82 8.1 Mechanism Parameters for the GE P60 Robot ................ 133
8.2 Mechanism Parameters for the FTSMS Design A .............. 141
8.3 Mechanism Parameters for the FTSMS Design B .............. 141
8.4 Intermediate Values of Motion Capability for the FTSMS Designs 143
LIST OF FIGURES
2.1 Topologies on a Three Element Set ..........
2.2 Compatible Coordinate Systems ...........
2.3 Covering of the Sphere ..................
2.4 Coordinate Chart on the Sphere ..........
3.1 Definition of the Euler Angles .............
4.1 Differentiability on a Manifold ...............
4.2 Differentiability Between Manifolds ...........
4.3 Tangent Vector to a Curve .................
4.4 The Tangential Mapping Between Manifolds . ...
5.1 Parameterization of a Rolling Cylinder ........
9
. . . . . . . . . . . 11
. . . . . . . . . . . 12
. . . . . . . . . . . 13
. . . . . . . . . . 42
. . . . . . . . . . 43
. . . . . . . . . . 50
. . . . . . . . . . 52
. . . . . . . . . . 62
Semicircular Region in the Plane ..... .................... 105
Parameterization of the Surface of the Sphere ................ 110
Tangent Plane to the Sphere ........................... 111
Definition of Planar Parameters ..... ..................... 112
Planar RRR Robot ....... ............................ 115
Physical Workspace of Planar RRR Robot .................. 117
Planar PRP Robot ...... ............................ 118
8.8 Physical Workspace of Planar PRP Robot
... ............ 119
8.9 Redundant Planar 4R Robot ............................ 122
8.10 Joint Definitions ....... ............................. 130
8.11 Kinematic Model of the GE P60 Robot .................... 133
8.12 GE P60 singularity sin 03 = 0 ...... ...................... 137
8.13 GE P60 singularity sin 05 = 0 ..... ...................... 137
8.14 GE P60 singularity S5 sin 0432 + a34 cos 032 + a23 COS 02 = 0 ....... ..138 8.15 FTS Manipulator System Design A ....................... 139
8.16 FTS Manipulator System Design B ..... ................... 139
8.17 Kinematic Model of the FTSMS Design A .................. 140
8.18 Kinematic Model of the FTSMS Design B .................. 140
Abstract of Dissertation Presented to the Graduate School
of the University of Florida in Partial Fulfillment of the
Requirements for the Degree of Doctor of Philosophy SCREW THEORY AND LIE GROUPS: THE TWO FACES OF ROBOTICS
By
Udai Basavaraj
December 1991
Chairman: Dr. Neil White
Major Department: Mathematics
The two parallel approaches of screw theory and Lie groups, used in the analysis of robot manipulators, are contrasted. The fundamental aspects of screw theory are shown to arise as a natural consequence of the group structure and the differential geometric properties of the Euclidean group. The Lie algebra is shown to be equivalent to the space of twists encountered in screw theory.
As an application of the theoretical framework provided by the semiRiemannian structure of the Euclidean group, an invariant measure is defined and used to quantify the concept of motion capability of a robot manipulator. The measure is shown to arise from a symmetric bilinear form also known as the reciprocal product. This measure is shown to be applicable to manipulators of arbitrary design. In particular, it is shown to be independent of the parameterization of the manipulator and the type and number of joints in the manipulator. The singularities of the manipulator are also shown to be predicted by the measure. Finally, it is shown that, when applied to redundant manipulators, the measure quantifies the importance of each joint of the manipulator.
CHAPTER 1
INTRODUCTION
1.1 Overview
The pages that follow are an attempt to unify two parallel approaches that currently exist in the study of spatial kinematics and its application to robot manipulators. A robot manipulator can be considered to be an open chain of rigid bodies connected together by joints which define the relative freedom of motion of adjacent bodies in the chain.
One approach to spatial kinematics uses screw theory which models the instantaneous motion of a body in space as an infinitesimal rotation about some axis together with an infinitesimal translation along that axis. This is interpreted as an instantaneous screwlike motion, called a twist, which is the fundamental geometric concept on which the theory is based. The other approach involves the use of Lie groups, and models the motion of a body in space as a curve in a six dimensional space consisting of all possible rotations and translations of an object.
The engineer has traditionally used screw theory in the analysis of the subject. This approach was first comprehensively addressed by Ball [1]. This inspiring work is notable for its geometric insight and intuitive reasoning in the absence of a systematic representation which exists today via the use of line geometry, Pliicker coordinates, and dual quaternions.
In contrast, the mathematician working in the field of spatial kinematics has preferred the use of Lie groups, which is a combination of group theory and differential
geometry. This approach is partly due to training, but also due to the large body of supporting theory in these areas which can be used to one's advantage. Indeed, the origins of differential geometry can be traced back well over a century to the works of Riemann. His preliminary papers, which are found translated by Clifford [5], laid the foundations for differential geometry and exhibit an appreciation of the concepts of a manifold and metric decades before these ideas were fully articulated and formalized.
Today, the parallel approaches to spatial kinematics are typified by two comprehensive works. The first is by Hunt [8] and contains an exhaustive study on systems of screws and the concept of reciprocity which describes the relationship between the constraints on, and freedoms of, a body. The second is by Karger [11]. This work views the Euclidean group, which can be considered to be the set of all possible rotations and translations of an object, as a six dimensional differentiable manifold endowed with a semiRiemannian metric. This approach yields precisely the same results, concerning screw systems and reciprocity, and differs only in its formulation in terms of group theoretic and differential geometric structures such as group orbits and bilinear forms. Indeed, both approaches can be seen to be utilised by Bottema and Roth [3].
One advantage of screw theory is its ability in explaining a wide variety of concepts in spatial kinematics without the use of groups and differentiable manifolds. Screw theory has probably gained prominence due to the engineer's tendency to choose a physically natural description of phenomena rather than look for hidden mathematical structures. Indeed, at first glance one finds little need of manifolds and semiRiemannian metrics, preferring the appealing concept of an instantaneous screwlike motion instead. Unfortunately, this approach inherently precludes information about the finite motions from which the instantaneous motions are derived.
This results in obscuring the structure of the Euclidean group, and omits the rich mathematical framework contained therein.
Very recently, a few works have begun to address this problem with applications of spatial kinematics to robot manipulators. The work by Rico [15] studies explicit representations of the Euclidean group and their application to manipulators. Also, Brockett [4] and Loncaric [12] apply the group structure to the problem of the control of manipulators. Finally Karger [9] [10], in two key papers, makes a direct application of some well known results in the areas of Lie groups and Riemannian geometry to manipulators. Unfortunately, these last two papers seem to have been overlooked in the field due to their highly mathematical nature.
Karger's papers illustrate, in an unambiguous way, the primary advantage in using Lie groups in the study of robot manipulators. They contain results which are dependent on the application of well known theorems in group theory and differential geometry. Furthermore, this approach is inherently coordinate free and leads to compact expressions involving elements of the group and their derivatives.
The primary aim of this work is to unify the two approaches to spatial kinematics in their application to robot manipulators. By reading this work, it is hoped that the mathematician acquires a good grasp of the kinematic aspects of robot manipulators and an appreciation of the very practical application of some well established mathematical theory. Analogously, it is hoped that this work conveys, to the engineer, the richness and power of using the Lie group approach.
This endeavour is attempted by examining the fundamental aspects of screw theory and showing that they arise as a natural consequence of the group structure and differential geometric properties of the Euclidean group. This is shown in an systematic and comprehensive way that reveals the link between the instantaneous
motion of a body, represented by a twist, and a curve in the Euclidean group representing the finite motion from which the twist is derived. This link is then used in developing an application to robot manipulators that is global in its scope. By global, it is meant that a complete methodology is developed that is applicable to robot manipulators of arbitrary design. Such global results are rare in robotics. In this particular case, it is a direct consequence of utilising the fundamental structure of the Euclidean group that is only revealed by the Lie group approach.
1.2 The Fundamental Concept of Motion Capability
The global application that is be developed here is a method to quantitatively compare the varying designs of robot manipulators. It is recalled that a robot manipulator is an open chain of rigid bodies connected together by joints which define the relative freedoms of motion of adjacent bodies in the chain. It is usually the bodies at each end of the chain that are the focus of analysis in robotics. One body is called the end effector, while the other is called the base of the manipulator and is considered unmovable and attached to the ground. The motion of the end effector is then related to the motion of the system of bodies and and joints attaching it to the base. Thus, it is clear that the end effector can only achieve some subset of all the possible rotations and translations of an unconstrained body unconnected to the base. Quantifying this subset yields a number related to what is defined to be the motion capability of the manipulator. The solution to accomplishing this in a completely invariant way lies in using the existence of the concept of a generalised volume element on the Euclidean group. This volume element arises from the fact that the Euclidean group is a differentiable manifold endowed with a semiRiemannian structure. The investigation of volume elements on this class of manifolds are based on well known theoretical results and are found generalised by Boothby [2] and O'Neill
5
[14], for example. There are also some purely mathematical applications of the volume element of the Euclidean group, in particular, which are considered by Gel'fand et al. [7] and Vilenkin [16].
The specific application of the volume element of the Euclidean group to robot manipulators is, however, very recent. It was first suggested as a possible area of study by Loncaric [12]. The foundations for its applications, however, were laid by Karger [10].
One consequence of the existence of the volume element is that it not only gives one a measure of the motion capability of the end effector of the manipulator, but also predicts the singularities of the manipulator. The singularities are those configurations of the manipulator in which the end effector loses one or more degrees of freedom, and are the subject of much analysis in robotics. Another application, not addressed in this work, is that of applying the comparative technique developed to optimize the design of a manipulator. This is another area of intensive study in robotics. Thus, the volume element appears to have profound consequences in the analysis of robot manipulators.
1.3 Summary of Chapters
Chapter Two contains the definitions necessary for a mathematical description of the Euclidean group. It introduces the concepts of a topological space, a differentiable manifold and a Lie group with the help of some familiar examples. This chapter may be omitted by the mathematician, but the engineer who may be unfamiliar with some of these topics may wish to address it. The approach is brief, and the reader may wish to refer to a number of modern works for additional details. For a comprehensive introduction to topology, refer to Munkres [13]. do Carmo [6] has a good introduction to the differential geometry of curves and surfaces, while Boothby [2] has a more
generalised treatment of differentiable manifolds. O'Neill [14] has an introduction to semiRiemannian manifolds and Warner [17] has additional information on Lie groups.
Chapter Three introduces the Euclidean group and its application to analysing the motion of a rigid body in space and time. Frames of reference are defined and the interpretation of the Euclidean group as mappings between these frames is studied. The group and differentiable structures of these mappings are revealed and a suitable representation is chosen for them.
Chapter Four studies the concept of the tangent bundle of a differentiable manifold by first examining its implications in Euclidean nspace and real nspace. The idea is then generalised to the concept of derivations on a differentiable manifold. The geometric interpretation of a tangential mapping is explored.
Chapter Five applies the concept of a tangent bundle to the Euclidean group. In particular, the structure of the Lie algebra, which is the tangent space at the identity element of the Euclidean group, is examined. Its direct relationship to the space of twists, encountered in screw theory, is revealed. Finally, the physical interpretation of the left and right tangential mapping is studied.
Chapter Six investigates the composition of elements of the Euclidean group. Special cases are interpreted as a change in a frame of reference. The adjoint mapping and its relationship to such changes is revealed, and the link to a well known screw transformation matrix is made.
Chapter Seven introduces the concept of a volume element by first examining the implications in R2 and on the surface of a sphere. The idea is then applied to planar robot manipulators with an accompanying geometric interpretation. This is then generalised to spatial motion by computing the volume element of the Euclidean group. The element is applied to an existing industrial robot and then further generalised
T
to accommodate redundant manipulators. This form is then used in determining the efficacy of two design variations of the Flight Telerobotic Servicer Manipulator System, a space based seven revolute manipulator currently being considered by the National Aeronautics and Space Administration.
CHAPTER 2
PRELIMINARIES
Definition: A topological space is a pair (X, Q), where X is a set and Q is a collection of subsets of X, called open sets, such that
1. The empty set 0 and the whole set X are open.
2. If U and V are open, so is U n V.
3. If {U a E A} is a (possibly infinite) family of open sets, then UEA Ua is open.
The collection Q is called a topology on X. It is common to omit specific mention of the collection 0 if no confusion will arise by referring to the topological space X. Example: Let X be the three element set X = {a, b, c}. Three possible topologies on X are shown in Figure 2.1. The topology on the left is the simplest in which the only sets are X and 0. The topology in the middle contains X, 0, [a, b], [b], [b, c]. The topology on the right contains every subset of X. It is clear that even a three element set has several topologies. In this example it is possible to describe the entire collection Q of open sets. In most cases this is difficult and one usually specifies a smaller collection of subsets of X from which the topology is generated. This process requires two additional definitions.
Definition: A basis for a topology on X is a collection B of subsets of X (called basis elements) such that
1. For each x E X, there is at least one basis element B containing x.
0a 0beO
Figure 2.1. Topologies on a Three Element Set
2. If x belongs to the intersection of two basis elements B1 and B2, then there is
a basis element B3 containing x such that B3 C B1 fl B2.
Definition: If B is a basis for a topology on X, the collection fl generated by 8 is described as follows: A subset U of X is defined to be open in X (that is, to be an element of Q) if for each x E U, there is a basis element B E 8 such that x E B and B C U. It can be checked that the collection Q defines a topology on X. Example: Let B be the collection of intervals in the real line R of the form (a, b) = {xla < x < b}. It can be checked that this forms a basis for a topology on R. The topology generated by B can be described as follows: A subset U of R is defined to be open in R if and only if for each x E U, there is a set B E B such that x E B and B C U. This topology is called the standard topology on R. One can extend this to a topology on Rn by defining B to be the collection of sets of the form (a,,b1) x (a2, b2) x ... x (an, bn) = {(xl,x2,. .. ,x)jxi E (ai,bi),i = 1,...,n}. This set can be pictured as the interior of an ncube in R'. Definition: A topological space X is called Hausdorff if and only if for all x, y E X with x  y, there are open sets U and V containing x and y respectively such that UnV =ï¿½.
Example: R is Hausdorff. If x, y E R with x : y, then U (x  1 2 Y",x + ix211) and V  (y  2 ,y + x2y) are nonintersecting open sets containing x and y respectively.
Definition: Let X and Y be topological spaces. A function f : X  Y is said to be continuous if and only if for each open subset V of Y, the preimage f'(V) is an open subset of X.
Example: It can be shown that the above definition is equivalent to the (6, 6) definition of continuity of real valued functions f : R  R, when R is endowed with the standard topology. See Munkres [13] for a detailed proof. Definition: Let X and Y be topological spaces. Let f : X  Y be a bijection. The function f is called a homeomorphism if and only if both f and its inverse f1 : Y  X are continuous.
Definition: An ndimensional topological manifold is a Hausdorff topological space such that each point has an open set containing it which is homeomorphic to an open set of R .
Definition: A coordinate chart on a topological manifold M is a pair (U, x) where U is an open subset of M, and x : U  Rn is a homeomorphism of U to an open subset x(U) of R . If one writes x(p) = (xi(p),... ,x,(p)) for each p E M, the resulting real valued functions xl,... ,xn on U are called the coordinate functions of X.
Definition: Let U be an open subset of Rn and let f : U  Rn. The function f is said to be differentiable if and only if all partial derivatives of all orders of f exist and are continuous.
Definition: Two ndimensional coordinate charts (U, x) and (V, y) are called compatible if and only if the functions x o y1 and y o x1 are differentiable. More explicitly,
Xo y: y(U n V)  x(U n V)
and
Figure 2.2. Compatible Coordinate Systems
yox :x(UfnV) oy(Unv) are both functions from Rn to Rn. The coordinate functions are denoted by xio0 y1, i= 1,...,n
and
If these coordinate functions are differentiable, then one says the two coordinate charts are compatible. See Figure 2.2 for a depiction of the mappings. Definition: A differentiable structure on a topological manifold M is a family U = {U , x,} of coordinate charts on M such that
1. The U, cover M.
2. U, and UO are compatible for any a and f in the collection
yio0xl, i = 1,...., n.
Figure 2.3. Covering of the Sphere
3. Any coordinate chart (V, y), which is compatible with every (U,, x,), is itself
in U.
Definition: An ndimensional differentiable manifold is a topological manifold of dimension n, together with a differentiable structure. Example: Consider the unit sphere 52 = {(x, y, z)I x2+y2+z2 = 1}. It is shown that S2 satisfies the definition of a twodimensional differentiable manifold: A topology can be induced on S2 by defining U to be open in S2 if and only if there exists an open subset V of R' such that U = V nl 52. This is called the subspace topology on S2 induced by the standard topology on R3. It can be checked that S2, with the subspace topology, satisfies the definition of a topological space. It can also be checked that this implies S2 is Hausdorff, as this property is inherited from the ambient space R'. Now let V+ = {(x,y,z)lx > 0} and V = {(x,y,z)lx < 0}. Also let V+ = {(x,y,z)Iy > 0} and V = {(x,y,z)Iy < 0}. Similarly define VIj. These six sets are open in R3. Hence, via the subspace topology, U+ = V+ n S2 and U = f V S n S2 are open in 52, as are U' and U". These sets, which are depicted in Figure 2.3, also cover 52. Define
 ( ,x, ex)
Figure 2.4. Coordinate Chart on the Sphere
7t: U+ R2
such that
(x, y, z) i) ( , 10),
where
Ox = COS1 Z
Ox = sin' y. See Figure 2.4 for a depiction of this mapping. Define
7 rï¿½ U., R2
such that
(x,y,z) j ( , X),
7T+ x,, ,Z)
where
ox = COS1 Z T = 7r sin1 y.
Similarly define
i7,(x, y, z) = (0yo0),
where
oy = COS1 x OY = sin1 z,
and
7r(x,Y,Z) =(0yo),
where
y = Cos1 x oy = 7r sinI z.
Finally define
r(x, yZ) = (0., oz),
where
Oz = COS1 Y Oz = sin' x,
and
r(x,y,z)= (0.,o0),
where
0. = cos1 Y Oz = r  si1x.
It is noted that the mappings 7r+ , are homeomorphisms of the sets U+, U+, U+ to (0, 7r) x (j, j). Similarly, the mappings 7r, 7 r are homeomorphisms of the sets U2, U1, U; to (0, 7r) x ( , 2). Thus, S2 is a twodimensional topological manifold. Now consider the coordinate transformation + ~+~1 .+tr+r++T+T ro+[+], :,(u n U+) ,, (u,+ n U+).
Ty
Here,
r+
(sin Ox' cos Ox, sin 0. sin Ox, cos Ox) (cos' (sin Ox cos Ox), sin'(cos Ox)).
Alternatively,
7rx o [7r1 : r+(U: n u ) 7+(U n u+).
Here,
(0y I ]_) (sin 0. cos O, sin O sin Oy, cos O)
 (ï¿½,, sin'(sin qy sin Oy).
Clearly, the functions
+ o [7r.+]' and r+ o[r+]1
are differentiable since 0, Oy 0 0, 7r and 0., O 5 ï¿½z. By similar computations it can be shown that all six mappings are compatible with each other. There is, thus, a natural covering of S2 by six coordinate charts which determine a unique differentiable structure. This family of coordinate charts can be completed by defining any other mapping to be in the family if and only if it is compatible with the above six. Thus, S2 is a twodimensional differentiable manifold. Example: Consider the set M,,ï¿½ of n x n real matrices. It is shown that this set is an R'2  dimensional differentiable manifold: There exists the natural mapping X :Mnxn R n2
such that
: ~ ~ 91 "' gl...,g 9ni g211 ... )gnn].gnl. gnn
This is clearly a bijection. One can define a topology on Mnï¿½, in the following manner: Let U be an open subset of Mnï¿½, if and only if X(U) is open in R 2. With this topology, Mwï¿½n is homeomorphic to Rn2 and inherits the differentiable structure on Rn2. Hence, MnXn is an n2dimensional differentiable manifold. Definition: A group is set G with a binary operation o such that
1. If g, h are elements of G, then so is g o h. This is called the closure property.
2. If g, h, k are elements of G, then g o (h o k) = (g o h) o k. This is called the
associative property.
3. There exists an identity element e E G, such that e o g = g o e = g for all g E G.
4. For each g E G, there exists an inverse element g1 E G, such that
go01 = 1 og = e.
Example: Consider the subset G of M414 of the form
gl g12 g13 gx 921 g22 g23 gy
g31 g32 g33 gz
0 0 0 1 with the requirement that
3 J 1 if i=j gikgjk 0 if ij (2.1) k=1
for i,j = 1,... ,3. It is shown that this set is a group under the binary operation of matrix multiplication: Let g E G, and let [g]3ï¿½3 denote the upper left 3 x 3 minor of g. It can be checked that the requirement given in (2.1) is equivalent to the condition
[913X3[g3.3= 13X3.
Here, the superscript t denotes the transpose of the appropriate matrix, and 13X3 denotes the identity 3 x 3 matrix. Let g, h E G. Then matrix multiplication shows that gh has the form j11 j12 j13 ix 21 jn j22 j 23 jy
j31 j32 j33 jz 0 0 0 1
where, in particular,
W13X3 = [g]3x3[h]3x3. Thus
=IAU [g]3ï¿½3[h]3ï¿½3[h]tï¿½[~ï¿½ [g]3ï¿½3[g]3ï¿½3
= 13x3.
Hence, j is an element of G and the closure property is satisfied. The associative property is satisfied by checking that matrix multiplication is associative. Existence of the identity element is satisfied by noting that the 4 x 4 identity matrix 14x4 is the identity element of the group. The existence of an inverse element for each element of G is satisfied by checking that g1 921 g31 (gllgx + 912gy + g13gz) 1
1 912 922 932 (g21g + 922gy + g23gz) 913 923 g33 (g31gr + 932gy + g33gz)
0 0 0
satisfies the condition of an inverse element. Thus, G is a group. Definition: A Lie group is a differentiable manifold which also possesses a group structure such that the mapping G x G G
defined by
(g,h)  gh1 (2.2)
is differentiable.
Example: The set G of all 4 x 4 matrices given in the previous example is a Lie group. This is demonstrated by the following argument: It has been shown in the previous example that G is a group. It has also been shown in a previous example that the set M4ï¿½4 of 4 x 4 matrices is a differentiable manifold. Since G is a subset of M4X4, it can be endowed with the subspace topology. In particular, define U to be open in G if and only if there exists an open subset V of R 2 such that U =V l G. A differentiable structure for G can also be defined to be that which is inherited by the differentiable structure for M414. Thus, G is a differentiable manifold. It remains only to check that the mapping given by (2.2) is differentiable. It is easy to show that, via matrix multiplication, elements of the right hand side of the mapping are simply the sums and products of elements of the two matrices on the left hand side of (2.2). Thus, G is a Lie group.
CHAPTER 3
THE EUCLIDEAN GROUP
3.1 Euclidean Space
Three dimensional Euclidean space E3 is, at least locally, the space humans live in. There are many ways to study this space. The approach chosen by Euclid was to define a series of geometric objects such as points, lines, and planes together with a set of axioms from which the theorems of geometry could be deduced. One noticeable aspect of this approach is that all work is done without the use of coordinates. Indeed, the introduction of coordinates in the study of E3 is artificial.
One particular method of introducing coordinates on E' is based on the choice of scale or length for E3, the selection a point of E3, and the preference of three mutually perpendicular directions. This induces a bijective mapping of E3 to R3 which preserves the distances between points in E3 and their corresponding points in R3. This type of mapping will henceforth be called an orthogonal coordinate mapping on E3. It is important to observe that this mapping is arbitrary, as there is no natural way to identify E3 with R3.
However, given one such mapping, there then exists a preferred point of E3 called the origin which is represented in R3 by the triple
B0 = (0,0,0).
There also exist three preferred and mutually perpendicular directions on E3 which are represented in R3 by
B = (1,0,0) BU= (0,1,0) Bz = (0, 0,1). These four triples define a frame in E3 and will henceforth be collectively denoted by B = (B', By, B., Bo).
This is the preferred frame due to the coordinate mapping of E3. All other frames are nonpreferred and are expressed in the following manner: Let .F = (a,, ay, a,), where (a,, a., a,) is a triple of real constants that represent another point of E3. Also let
Y.= (a I , a2la3l) . = = (a12,a22, a32) Yz = (a13, a23, a33), where aij E R for i,j = 1 ... 3, represent three orthonormal directions of E'. Then
F= (Y. IY>FIY Y) is another frame in E3.
It is important to realise that, while the coordinate expression for a frame is dependent on the coordinate mapping of E3, a frame exists as a geometric entity in E3 independently of any such mapping. With this notation, it is seen that
Tx = allB, + a2113y + a31z ,  a121Ux + a22By + a3283z z = a13Bx + a23131 + a33L3z, and
.Fo = axB, + aYBY + azB  + Bo.
Symbolically, one writes
.F=Ba
where the right hand side of this equation is the formal product of the row of triples forming B and the matrix a defined by all a12 a13 ax a21 a22 a23 ay a31 a32 a33 az 0 0 0 1
The orthonormality condition requires that
3 1 if i=j E aikaik = 0 if i j k=1
for i,j = 1,... ,3. Thus, the matrix a is an element of the group G of matrices introduced in Chapter 2.
While the frame F is expressed in terms of the preferred frame B, it is possible to generalise this relationship by expressing one arbitrary frame in terms of another. For example, let F and Y be frames such that
'r = Ba and Y = Bc
for matrices a, c E G. Then
.F Ba
Fa' =13
Fa'c = Bc. Setting g = a'c yields F= Fg.
It is noted that the element g is interpreted as mapping the frame T to the frame Y. It does not involve the preferred frame 3. It involves an arbitrary element of G and is, thus, invariant with respect to the coordinate chart on E3.
An arbitrary point of E3, expressed in the frame Y, is given by the triple P' + py'y + T?,. + 'o, where p ,j52 E R are called the coordinates of the point in terms of the frame F. Let
P= P~l: and p Py
represent the column of coordinates of the point in terms of the frames Y and F respectively. The relationship between these coordinates is given by
pF+pF + P F + FO
 [g117 g21'y + g+F31,"]px + [g12j' + g22Fy + g32TF]py
+[gi13JFx + g23FT, + g3Y]P + [gxFx + gyF + gjF27 + J0]
= [gP., + g12py + g13p, + g9].F + [g21P, + g22)5y + g23p, + gy]F
+[g3P1 + 932P, + g33] + ]'z + 70 Thus,
p = gP
where the right hand side of this equation is the formal product of the matrix g and the column of coordinates p. Here, the element g is interpreted as mapping the coordinates of a point, expressed in terms of the frame T, to the coordinates of the same point expressed in terms of the frame F.
An arbitrary vector in E3, expressed in the frame F, is given by the triple V'F. + 1, + UZ
where v', , vh E R are called the coordinates of the vector in terms of the frame F. Let
"VX VX = VY and v vy 'U Vz 0 0
represent the column of coordinates of the vector in terms of the frames Y and T respectively. The relationship between these coordinates is given by
UXx + u7U + 
 [g11. + g2177y + g312]7Vf + [g12i " + g2277y + g32Tz]vY
+[g13.J' + g23Fy + g33,F17]vz
[gi11U. + gl2Vy + g13Tv1]F7 + [g21Tx + 922%y + g23Vz]Y
+[930u1 + g32Vy + g3319.]T2
Thus,
v =g
where the right hand side of this equation is the formal product of the matrix g and the column of coordinates T. In this case, the element g is interpreted as mapping the coordinates of a vector, expressed in terms of the frame F, to the coordinates of the same vector expressed in terms of the frame Y.
3.2 Rigid Body Motion in Space and Time
It has been shown that any two frames in a Euclidean space E3 are related by an element of the group G of matrices introduced in Chapter 2. One interpretation of the Euclidean group is to consider it to be the set G of all mappings between frames in E3. Using this interpretation, the group can be used to model the motion of a rigid body in space and time.
Points connected with a universe at rest with respect to an observer constitute a three dimensional Euclidean space and will henceforth be referred to as the fixed space E3. For kinematic purposes, it suffices to consider a body in motion to be of infinite extent. Thus, points connected with a universe at rest with respect to a moving body also constitute a three dimensional Euclidean space that is distinct from the first and will henceforth be referred to as the moving space V. At any time the observer may select an orthogonal coordinate mapping on E3 and two frames in
E, one which will remain at rest with respect to the fixed space E and be called the fixed frame, and another which will remain at rest with respect to the moving space E3 and be called the moving frame. If the fixed frame is denoted by F and the moving frame is denoted by ,F then, from Section 3.1, there exists a matrix g E G mapping the fixed frame F to the the moving frame F. Formally, this is written as
g :  F
such that
F=Fog.
It is noted that both frames are expressed in terms of the coordinate chart on the fixed space E3 and, hence, exist in the fixed space alone. Thus,there is another application for the Euclidean group when it is used as a mapping between frames which exist in the moving space E3. This is not of consequence in this work, as all results will only concern the observer's universe. There is, finally, a third application for the Euclidean group when it is used as a mapping between an arbitrary frame existing in the fixed space to an arbitrary frame existing in the moving space. This group has no physical consequences as there is no natural way to identify such frames. The failure to recognise these applications, and the existence of two distinct spaces, is often the cause of much confusion of terminology in the literature.
Now, as the body moves in time, the frame Y changes in time, as does the matrix g. Thus, there is a mapping
R tG
such that
t  g(t).
This is interpreted as a curve in the Euclidean group. An investigation of the implications of representing the motion of a body in space and time as a curve in the Euclidean group will be examined in further chapters.
3.3 The Euler Parameterization of the Euclidean Group
The set G of matrices acting as mappings between frames in E3 is the interpretation of the Euclidean group that is selected for this work. It was shown in Chapter
2 that this set is a differentiable manifold. If g E G, then the requirement that
[g]313[g]3x3 = 13x3 (3.1)
demonstrates that the elements of the matrix are not all independent. Indeed, it is difficult choose from them an independent subset, and to express the other elements of the matrix in terms of this. Thus, the alternate technique of choosing a local parameterization of the manifold involving the Euler parameters will be employed. This is a mapping of
[0,27r) x [0, 7r) x [0, 2) x R3  G
such that
, 0, , , Z) g,
where g satisfies (3.1). The geometric interpretation of these parameters is achieved by using them to define a sequence of transformations of the frame 17 to the frame F. Let
1 0 0 tj
go 0 1 0 t2
go= 0 0 1 t3
0 0 0 1
28
90 l
Figure 3.1. Definition of the Euler Angles be the transformation required to map the point Fo to the point F0. See Figure 3.1 for a depiction of this mapping and its relationship to the Euler parameters. Let 'Fj denote the frame which results from go acting on T. Hence, T1 = Fgo.
Consider the line of intersection of the planes formed by the pairs of vectors ( 1F, y) and (T,, .). Let 0 be the right handed angle of rotation about T1, from F, to this line of intersection. Define
F2 = T191,
where
cosq sin 0 0 0
1 sinï¿½ cosq 0 0 0 0 1 0 0 0 0 1 Let 0 be the right handed angle of rotation about F2. from T2, to Fz. Define
T3 = T2g2,
where
1 0
0 cos 0 g2= 0 sin 0
0 0 0 0
0 0
sinG 0 cos 0 0
0 0 0 1
Thus, F3z is now coincident with 3%. Also F3., and .ca3 lie in the same plane as and .yI Let 4, be the right handed angle of rotation about %3, from F3, to Y,. Then we = F39e,
where
g3 =
cos 4, sin4,
0
0
 sin 4, Cos 4
0 0
0 0 0 0 1 0
0 1
Thus,
F= F[gogig2g]
= Fg,
where
cosqfcosP  sin ï¿½sinOcos0 cosï¿½sinP  sinqï¿½cos cosO sin q sin 8 x sino$coso + cosqosin4,cos0 sinosinO +cosqocosobcos0  cos ï¿½sin0 y
sin 0 sin 0 cos 7 sin 0 cos 0 z
0 0 0 1
(3.2)
g~ [
Thus, any element of the Euclidean group can be specified using the Euler parameters. It is noted that, via the Euler parameterization denoted by
(0,0 , , Z)) g,
one does not achieve a bijective mapping. Indeed, when the xyplane of the frames .F and Y are parallel, there is no unique value for 4 and 0. This is not of concern since the inverse mapping of an element of G to the Euler parameters will never be considered. Thus, these parameters are simply a convenient way to specify a unique element of the group, and will aid in the study of its structure with the use of geometrically meaningful angles.
CHAPTER 4
TANGENT BUNDLES
4.1 The Tangent Bundle of E' and R'
Let p be any point of three dimensional Euclidean space E3. The tangent space of E' at p, denoted by TpE', is described to be the set of all directed line segments vP with p as their common base. Elements of the tangent space TpEa will henceforth be called tangent vectors. The addition of two elements vp, wp E TpE' is defined to be the directed line segment with base at p and with tip at the point in E3 resulting from first moving in the direction of vp, a distance equal to the length of vp, and then moving in the direction wp, a distance equal to the length of wp. The negative of vp, denoted by vi is defined to be the directed line segment with base p, with length equal to that of vp, and with direction opposite to that of vP. The zero vector OP is defined to be the null segment consisting of the point p alone. Multiplication of vp E TpE3 by a positive scalar A E R is defined to be the directed line segment with base at p and with tip, at the point resulting from moving in the direction of vp, a distance equal to A times the length of vP.
An exercise in solid geometry will show that TpE3 is a vector space. Thus, there exists a vector space, called the tangent space, associated with each point of E3. The disjoint union of the collection of all these tangent spaces is given by
UTpE 3
UtbE3
and is called the tangent bundle of E3.
The goal in this section is to generalise the concept of a tangent bundle by attaching an ndimensional vector space to each point of an ndimensional differentiable manifold. To do so, one must leave E3 and enter R', where the intuitive model of a tangent bundle, alluded to above, is quantified in terms of ntuples of real numbers.
Let p = (pi,... ,Pn) and v = (vi,.. . , v, ) be two points of R'. Then TpR', the tangent space of R' at p, is defined to be the collection of pairs of points given by Tp Rn= {(p,v)j p, v E Rn}. The pair (p, v) E TpR n will henceforth be called a tangent vector at p and denoted by vp. Hence,
Vp = (p,.. .,pn, Vl,.... vn).
This quantity is interpreted as giving the initial and terminal points of a directed line segment in R , which starts at the point p and ends at the point p + v, where p +V = (PI + Vl,..., pn + Vn). The addition of two tangent vectors Vp= (Pl,...,pn,Vl,...,Vn) wVP = (Pi,  . . , ,, i, . ..,wn)
is defined by
Vp + Wp  (Pi,. ï¿½ ï¿½ , Vl + Wi,..., Vn + wn). Multiplication of vp by a scalar A E R is defined by ,AvP (Pl,..  , Pr, A Vl,..ï¿½ , AVn).
The zero vector is defined by 0P = (pl,. ,pn, 0,... , 0).
It is a simple exercise to verify that the above definitions define an ndimensional vector space at each point p E R . It is noted that vectors with different initial points are in no way equated as one does with free vectors in the study of E3.
Now let f : Rn  R be a differentiable function such that (xl,...,IXn) ' f(Xl,...Xn). Let c: R  Rn be a curve in Rn such that t 1  ) (c l( t), . . . , Cn (t)). Then the function f, restricted to the curve c, is given by f oc : R  R
such that
t i f(cl(t),c2(t),...,cn(t)).
If the curve passes through the point p at time to, then the derivative of f o c at p is given by
d(foc) f dc, + O f dct dt to Ox1 dt Ito dIto It is noted that the derivative of the curve c(t) at to, given by
dt I fo [dct 't " dt I o'
(4.1)
(4.2)
is just a point in R , whereas the directed line segment from the point
c(to) to the point c(to) + dc is a line segment which is tangent to the curve. With this interpretation, it is clear that this line segment is an element of the tangent space of Rn at p. It will henceforth be referred to as the tangent vector to the curve c at time to. For brevity, it will also be denoted by the symbol
dc (4.3) No confusion will arise since the ntuple given in (4.2) will not be considered again in this work.
The quantity given by (4.1) is called the directional derivative of f in the direction of the tangent vector dc
SIto
It is dependent only on the ntuple given in (4.2) and not on the entire curve c(t). Thus, another curve through p having the same tangent vector dc
at p results in the same directional derivative. Indeed, letting h(t) be a new curve, such that
h i) de(o 1 d, C (o dcn dt to+ dt Ito)
it is found that
d(f oh) _ d(f oc)
dt dt o
In some sense, an arbitrary tangent vector vp is thought of as acting on the function f in the following manner: If vp = (P1 , . ., Pj Vl . ..., Vn )
then
vPf = (4.4) i=1 p
This is the directional derivative of f in the direction Vp = (Pl, ï¿½ ï¿½ ï¿½,Pn, V1, ,Vn)Letting
h(t) = (P1 + tv,.. .,p,n + tv,),
then
vPf  d(f o h)
dt
The directional derivative has two key properties which are critical to the study of tangent spaces: Let a, ,3 be real numbers, and f,g be differentiable functions whose domain is an open set containing p. Then the property of acting linearly can be checked by showing that
vp(af + 03g) = avpf + ,3vpg. (4.5) The property of satisfying the Leibnitz rule can be checked by showing that
vP(fg) = (vpf)g(p) + f(p)(vPg). (4.6) These two key properties are now applied to generalise the concept of a tangent vector.
4.2 Directional Derivatives as Operators Acting on Functions
One can generalise the concept of a directional derivative to that of an operator acting on a function. Let Cï¿½ï¿½(p) denote the collection of all differentiable functions whose domain is an open subset of R' containing a point p of R'. Let D(p) denote the set of all operators taking Cï¿½0(p) to R which act linearly and satisfy the Leibnitz rule. Hence, if D1 is an element of D(p) then Dl(af + Og) = aDif + 3Dig linearity Di(fg) = (Dif)g(p)+f(p)(Dg) Leibnitz The elements of D(p) are called derivations on R'. Formally, if D1 E D(p), then
D : Co(p)  R.
The set D(p) is made into a vector space over R by defining the addition of elements of D(p), and the multiplication of elements of D(p) by a scalar, in the following manner: If D1, D2 are derivations on R' and a E R, then (D1 + D2)f D1f + D2f defn. of addition (aD1)f aDif, defn. of scalar multiplication where the the operations on the right hand side of these two equations are in R and not D(p).
One must, of course, verify that the operators on the left hand side of these equations are also derivations on R". Thus, let a, f, y E R and f, g E Co(p). Then (yD,)(caf + 13g) = [Di(af +,3g)] by defn. of multiplication
= '[aDif +/3Dig] by linearity
= 1aDif + 3"3Dig
= a("D)f + 3('yD1)g by defn. of multiplication
and
(7D,)(fg) = y[Dl(fg)] by defn. of multiplication = y[(Dif)g(p)+ f(p)(Dig)] by Leibnitz
= y(Dif)g(p) + f(p)(Dig)
= [(Di)f]g(p) + f(p)[(yDi)g]. by defn. of multiplication Thus, yD1 is an element of D(p). Also, (D1 + D2)(af + 3g) = Di(af + 3g) + D2(af + /3g) defn. of addition = (aDif + /3Dig) + (aD2f + /3D2g) by linearity = a(Di f + D2f) + O3(Dig + D2g) = a(Di + D2)f + 1(D1 + D2)g by defn. of addition and
(D1 + D2)(fg) = DI(fg) + D2(fg) by defn. of addition = [(Dif)g(p) + f(p)(Dig)]
+[(D2f)g(p) + f(p)(D2g)] by Leibnitz = (Dlf + D2f)g(p) + f(p)(Dig + D2g)
= [(D1 + D2)f]g(p) + f(p)[(D1 + D2)g]. by defn. of addition Thus, D, + D2 is an element of D(p). Hence D(p) is a vector space.
The relationship between TpR', the tangent space of R' at p, and D(p), the vector space of derivations on Rn, is now investigated. Let vp E TpRn be interpreted as an operator acting on a function f E Cï¿½ï¿½(p) in the manner described by (4.4). This results in the real value called the directional derivative of f in the direction vp. Thus, as an operator,
vp : C' (p)  R.
Also, by the properties of the direction derivative given in (4.5) and (4.6), vp acts linearly and satisfies the Leibnitz rule. Thus, elements of TpRn are also derivations on C(p) and hence elements of D(p). In turn, it is claimed that every derivation on Rn can also be considered to be a tangent vector. That is, TpR n and D(p) are, in fact, the same vector space.
To prove this, it must be shown that for every D z D(p) there is a tangent vector vp E TpRn such that Df = vpf for every f E C'(p). Hence, let D be a derivation on Rn . Define Yi: Rn* R
to be the Zth coordinate function such that, for any x = (x1,..., xn) E Rn, yi(X) =Yi(X,... , Xn) =Xi. Thus, yi E C(p) and one can define vi to be the real number such that vi Dyi.
Consider the tangent vector with coordinates VP = (Pl,.. ,Pn, VI,.. .Vn). As an operator on f E C'(p), it yields vpf = v f ,
2_., Vi (P).
i=1 c Xn
On the domain of definition of f, the function can also be represented as
) 1 df[p + t(x  p)] dt f(x) = f(p) +jo d dt
since
df[p + t(x  p)] dt
dt
f[p + t(x  P)IH'O
= f(x) f(p).
Hence,
E Dxi dt
n
f f(a) + E(Yj pi)
i=1
of
pi P+t(xp)
gi~x 1 0 xi p+t(xp)
dt for i=1,...,n.
The functions gi(x) for i = 1,..., n are elements of C (p), where gi(p) =  f(P) a7(p)
Thus,
n
f(x) = f(p) + Z(yi  pi)gi(x)
i=1
n
Df = D[f(p) + E(y1  pi)gi(x)]
i=1
f(x)
Define
n
0 + E[D(y  p,)]g,(p) + (p,  pi)D(gi)
i= "
V f (
where
Vp = (PI, .,Pn,v,' 5Vn) Therefore, every derivation on Rn is a tangent vector operating on C(p). Thus, TpRn and D(p) are isomorphic vector spaces.
Using this result, the basis for TpR , given by
elI  (Pi,...,Pn, 1,O,...,O ) enI = (pI,...,pn,O,O,. ..1),
is represented by the operators a 1
PXn1p
respectively, and is considered to form a basis for V(p). Henceforth, when the tangent vector at a point p of Rn is referred to, its dual role as an operator on C(p) and an element of D(p) will also be implied.
The simplest example of a manifold with a tangent bundle is that of R. Let
c: R  R
such that
t 1 c(t)
is an element of Co(to), for to E R. This curve is interpreted as movement along the real in time. The tangent space to R at to is spanned by the single vector dl
dtto
The tangent vector to the curve c(t) at time to is given by dc
and is a vector originating at the point c(to) and having magnitude representing the speed of the movement along the line.
4.3 The Tangent Bundle of Differentiable Manifold
The concept of a tangent bundle is now generalised by attaching an ndimensional vector space to each point of an ndimensional differentiable manifold. Let M be such a manifold. Let V be an open subset of M, and let f be a function such that
f:V  R.
Let (U, x) be a coordinate chart on M such that U nl V 5 0. Then f is called differentiable if and only if
fox1 :x(UnV) )R
is differentiable. See Figure 4.1 for a depiction of this mapping. It is noted that x(U n V) is an open subset of R', since the coordinate chart x is a homeomorphism
Figure 4.1. Differentiability on a Manifold
of U to x(U). Thus, the question of differentiability has effectively been transferred from the manifold back to R'. As in the case of Rn, one defines C(p) to be the collection of differentiable functions whose domain is an open subset of M containing a point p of M.
Let f :Mm N n be a mapping of an m to ndimensional differentiable manifold. Then f is called differentiable if and only if for every p E M there exist coordinate charts (U, x), (V, y) containing p, f(p) respectively such that V C f(U), and the mapping
y of o x1: x(U)  y(V)
is differentiable. Here, x(U) is an open subset of Rm and y(V) is an open subset of R'. See Figure 4.2 for a depiction of this mapping.
The tangent space to M at p is denoted by TpM and is defined in the following manner: Let a, /3 E R and f, g E C"O(p). Then vp, w, E Coo(p) are operators such that
Figure 4.2. Differentiability Between Manifolds
vp : C' (p)  R
and satisfy the conditions
and
v,(af + 0g) = avpf + /vPg vP(fg) = (vpf)g(p) + f(p)(vpg).
(4.7)
(4.8)
As in the case of TpRn, TpM is made into a vector space by defining the addition of elements of TpM, and the multiplication of elements of TpM by a scalar in the following manner: If V1, v2 are elements of TpM, and a E R, then define
(v1 + v2)f  vlf + v2f
(4.9)
(avi)f = a(vif) (4.10) The elements of this tangent space are again called tangent vectors. It can easily be checked that, together with the definitions given in (4.9) and (4.10), and the properties given in (4.7) and (4.8), TpM satisfies the definition of a vector space. Thus, there exists a vector space, called the tangent space, associated with each point of a differentiable manifold. The disjoint union of the collection of all these tangent spaces, given by
U TPM,
pEM
is called the tangent bundle of M.
Derivations on a manifold do not lend themselves to a geometric interpretation as readily as derivations on R'. Thus, one transfers the action of a derivations on M to that of an action on R'. This is done in the following manner: Let F : M ) N be a differentiable mapping of manifolds. Let vp E TpM and f E C(F(p)). Define
F.:TM  TF(p)M
such that
(F.vp)f  vp(f o F).
It is claimed that this is a linear mapping of tangent spaces.
It is first shown that F.vp is, in fact, an element of TF(P)M. That is, F.vp must satisfy (4.7) and (4.8). Let a, 3 E R and f,g E C' (F(p)). Then
(F.vp)(af +/0g) = vp[(af +/#g) o F]
= v[a(f o F) + 3(g o F)] = avp(f o F) + 3v(f o F) = a(F.vp)f + O3(F.vp)g. Hence, F.vP acts linearly on functions. Also
(F.vp)(fg) = vp[(fg) o F]
= vp[(f o F)(g o F)] = [vp(f o F)]g(F(p)) + f(F(p))vp(g o F) = [(F.vp)f]g(F(p)) + f(F(p))[(F.vp)g]. Hence, F.vP satisfies the Leibnitz property.
Finally, the mapping F. must also be shown to preserve the addition and scalar multiplication properties of vector spaces. Thus, let a, # E R and vP, w, E TpM and f E COOF(p). Then
[F.(avp + /3wp)]f = (avp + Owp)(f o F)
= avp(f o F) + Owp(f o F) = a(F.vp)f + /3(F.wp)f = [a(F.vp) ï¿½ f3(F.wp)]f. Thus F. is a linear mapping of tangent spaces.
The mapping F. is called the tangential mapping induced by F. It has one immediate property which shall be demonstrated. If F : L  M and G: M  N, then G o F: L  N. Hence, if vp E TpL and f E C (G(F(p)), then
[(Go F).vp]f =
vp(f oGoF) (F.v,)(f o G) [G.(F.vp)]f [(G. o F.)vplf.
The geometric interpretation of the tangential mapping is now examined. Let (U, x) be a coordinate chart on M containing p. Since x is differentiable, it induces the tangential mapping x.: TpM T()R'
such that for v, E TpM and f E C(x(p)),
(x'v)f = vP(f o x).
(4.12)
Since x : U  x(U) is a homeomorphism, then x o x1 is the identity mapping on x(U) and x1 o x is the identity mapping on U. Thus, (X 0 X1)* = X. o X1
by (4.11), which is just the identity transformation on Tx(p)Rn. Also (X10 X)* = X10 X*
by (4.11), which is just the identity transformation on TpM. Hence, x. is a vector space isomorphism of Tp to Tx(p) and one can conclude that TpM is of dimension n.
That is,
(G o F). = G. o F..
(4.11)
To be meaningful, this mapping should be invariant with respect to the local coordinate chart chosen. Thus, an examination of an explicit representation of this mapping in different local coordinates is useful. This may also help in achieving a geometric interpretation of the tangential mapping.
Let x : U  R', and p E U, such that
x(p) = (Xi(p),. ..,X (p)).
Let iri : R'  R be the ith coordinate function on R' such that
ri(ai,... , a,,) = ai.
Define xi  iri o x to be the ith coordinate function on U. If vp is a tangent vector in TpM, then x.vp is a tangent vector in TpR'. From the analysis of derivations on R' given in Section 4.2, it is known that xvP has the form
n (
X*Vp = v i
i= , x(p)
for real constants v, .... , v,. These constants are called the directional components of vP with respect to the coordinate chart (U, x). Indeed,
vi = (x*vp)('ir) = vP(ir o x) = vP(x1). (4.13) If (U, x) and (V, y) are both coordinate charts containing p, then x.vP and y*Vp have the form
n a
x.vP = Zo i
i=1 Oxv
Y*Vp = yi' (4.14) i=1 i1(p)
respectively for real constants a, O3i for i = 1,... , n. These expressions must represent the same vector in terms of the coordinate charts systems (U, x) and (V, y). Furthermore,
Vp(yi) by (4.13)
=vp(yi o X1 0 X)
(X*Vp)(Y 0 x') by (4.12)
= ( aa) (y= ] by (4.14)
= a z ax, X(p) It is noted that
a(y o x)]
is the Jacobian matrix of the Rn to Rn function y o x', Hence, one can conclude that the representation of a tangent vector in a particular coordinate system changes according to the Jacobian of the coordinate transformation.
The geometric interpretation of the tangential mapping and its effect on tangent vectors is illustrated by a simple example. Let c:R M
be a curve in a manifold M, through the point p such that p = c(to). Then c. is the mapping given by c. Tt0R  TpM such that
d do to
to 0 to
49
Let (U, x) be a coordinate chart containing p. Then the directional components of the above vector with respect to the coordinate chart (U, x) are given by (4.13) which yields
C, ') x d(x o c) c . t tod t
dci
dt to
where c  xi o c. It is noted that (x 0 c)(t) = (ci(t), c. ..
are the coordinates of the curve c(t) with respect to the coordinate system (U, x). Thus, the directional components of the tangent vector to (x o c)(t) are given by ( d c , t d c .
dt o""dt to"
Thus,
dt
is the tangent vector to the curve c(t) at time to. See Figure 4.3 for a depiction of this mapping.
Now, if F: M  N is a differentiable mapping of manifolds, then c(t) is a curve in M, and (F o c)(t) is a curve in N. Let p = c(to) and q = (F o c)(to). Define
d
to be the tangent vector to c(t) at time to and
W q (F o c) d t
Figure 4.3. Tangent Vector to a Curve
to be the tangent vector to (F o c)(t) at time to. Then
d
= (Foc)dto dt
Wq.
Let (U, x), (V, y) be coordinate charts on M and N containing p and q respectively. Then
y o Fox1 :R' R' is the coordinate representation of F with respect to (U, x) and (V, y). Let vi and wi be the directional components of vp and wq with respect to (Ux) and (Vy) respectively. Then
Wi ( o d(y, o F o c) dt Ito
d(yi o F o x1 o x o c) dt to n a(y Fox1) d(xjoc) j=l OXj P to O(y oF x1) dcjI j r= x p to n ~i x1) 1] . j~ l Ox j
Here,
o9(y, o F o x1)
aXj I . n
is just the Jacobian matrix of the coordinate representation of F with respect to (U, x) and (V, y). See Figure 4.4 for a depiction of the tangential mapping between manifolds.
Figure 4.4. The Tangential Mapping Between Manifolds
CHAPTER 5
THE TANGENT BUNDLE OF THE EUCLIDEAN GROUP
5.1 The Tangent Space at the Identity Element
One may recall the interpretation of the Euclidean group, given in Section 3.2, as the set G of all mappings between frames in E3. One may also recall the Euler parameterization of the Euclidean group given in Section 3.3 via the mapping [0,27r) x [0, r) x [0,2r) x a3 R G such that
, 0, X, y, Z) g.
In particular, let g be a mapping from a fixed frame F to a moving frame F.
A curve in the group is given by the mapping g :R  G
and is represented symbolically as g(t) = g(0p(t), 0(t), 0(t), x(0),y(t),z(t)). In this Section, such curves are used to study the structure of TeG, the tangent space at the identity element e of the Euclidean group.
Consider a particular curve formed by restricting the Euler parameters such that
= 0
0=t
This results in a curve through e and is represented by
g(t) = g(0, t0, 0, 0, 0). In matrix form, this curve is given by
1 0 0 0 0 cost sint 0 gt= 0 sin t cos t 0 0 0 0 1 Recalling Figure 3.1, it is seen that this curve corresponds to a rotation about the xaxis of the fixed frame. The directional components of the tangent vector at e to this curve will henceforth be denoted by wx and are given, in matrix form, by
0 0 0 0
0 0 1 0 w= g(0) = 0 0 O
0 1 0 0 0 0 0 0
It is useful to keep the directional components of tangent vectors in matrix form for the moment, as it will aid in taking note of some skew symmetries which exist. Indeed, it is observed that the rotational part of the above matrix, corresponding to the upper left 3 x 3 minor, is skew symmetric.
Next, consider restricting the parameters such that
x=y=z 0
3ir
2
0=t
This results in a curve through e that has the form cost 0 sint 0 0 1 0 0
g(t)= sint 0 cost 0 0 0 0 1
This curve corresponds to a rotation about the yaxis. The directional components of the tangent vector at e to this curve will henceforth be denoted by w. and are given by
0 010] 0 000I =y (0) =
1 0 0 0 0 000]
It is noted that the upper left 3 x 3 minor is again skew symmetric.
Next, consider restricting the parameters such that
= t
This results in a curve through e that has the form L cost sint 0 0 g(t) sint cost 0 0 0 0 1 0 0 0 0 1
This curve corresponds to a rotation about the zaxis. The directional components of the tangent vector at e to this curve will henceforth be denoted by w, and are given by
= 9(0)=
0 K 0 0
1 0 0 0 0 0 0 0 0 0 0 0
The upper left 3 x 3 minor is again skew symmetric.
The tangent vectors to curves representing pure translations through the identity element are examined next. Consider restricting the parameters such that
0ï¿½0
yz= 0
X=t
This results in a curve through e that has the form
1 0 0 t 0 1 0 0 g)= 0 0 1 0 0 0 0 1
This curve corresponds to a translation along the xaxis. The directional components of the tangent vector at e to this curve will henceforth be denoted by vx and are given by
vX=g(0) =
E' 00 1
0 0 00 0 0 00 0 0 00
Similarly, the directional components of the tangent vectors at e to curves corresponding to translations along the yaxis and zaxis will henceforth be denoted by vy and v, respectively and are given by
0 0 0 0
Vv0 0 0 0
0 0 0 0
and
0 0 0 0
0 0 0 0
0 0 0 1
0 0 0 0
respectively.
For convenience, the directional components given by the set
(W ), I Wz , I I ), (5.1)
will often be identified with the tangent vectors themselves, though it should be understood that a tangent vector formally consists of a pair of matrices, one containing positional components, and the other containing directional components.
It is claimed that the tangent vector at e to any differentiable curve through e is composed of a linear combination of (5.1). That is, this set forms a basis for TeG. Before this claim is justified, it is necessary to introduce some additional concepts.
5.2 The Right Tangential Mapping
Let an element g C G represent a mapping from a fixed frame .F1 to a moving frame F2. Let h E G. Let
Rh:G  G
be defined by
g  gh.
This mapping multiplies an arbitrary element of the group, on the right by the given element h. If g = g(t) is a curve in G, interpreted as the motion of a body in space and time with respect to the fixed frame F1 and the moving frame F2, then
Rh(g(t)) = g(t)h (5.2) is also a curve in G and is interpreted as the same motion of the body, but with respect to different frames of reference. Indeed, let F3 be a frame at rest with respect to the moving space such that
F(5.3)
The curve Rh(g(t)) then results in
1ig(t) )F2h)F
Thus, Rh(g(t)) is interpreted as representing the same motion of the body, but with respect to F1 and F3. Here, the change in the frame at rest with respect to the moving space is given by (5.3).
It can be checked that the mapping Rh is differentiable by using the differentiable structure for G introduced in Chapter 2 and noting that the elements comprising the result of the mapping are simply the sum and product of the elements of the given
59
matrix h and the variable matrix elements of g. Thus, the mapping Rh induces a tangential mapping called the right tangential map, which is given by [Rh] : Tg(t) G ) Tg(t)hG. (5.4) It is claimed that (5.4) is a bijection of vector spaces. This is proved by the following argument: Since
[Rh 0 Rh1] = [Rh1 o Rh] = 1G, then
[Rh o Rh1]. and [Rhi o Rh]. are both the identity tangential mapping on all points of G. Applying the rule for the composition of tangential mappings given in (4.11) results in [Rh o Rh]. = [Rh]*[Rh1]. and
[Rh1 a Rh]. =[Rh1].[Rh]. Thus, [Rh]. and [Rh1]. are inverses of each other, requiring that (5.4) be a bijection. Furthermore, since all tangential mappings preserve the properties of addition and scalar multiplication, [Rh]. is a vector space isomorphism.
Now, consider a time to and the tangent vector to the curve g(t) at to. This is an element of Tg(t0)G, and is given by
dgI = g(to). (5.5) dt to
where g(to) indicates the derivative of g with respect to time, evaluated at time to. Also, consider the mapping Rg1(to) : G  G
applied to the curve g(t). This results in the curve Rgl(to)g(t) = g(t)g'(to).
The tangent vector to this curve at to is an element of TeG since Rgi(to)g(to) = e. Using the properties of matrix multiplication, this tangent vector is given by
d[Rg1(to)g(t)] = d[g(t)g(to)] dt Ito dt
 dg g(to)
 t to
 g(to)g'(to). (5.6) Upon replacing h with g'(to) in (5.4), it is seen that the induced right tangential mapping acting at g(to) is a vector space isomorphism defined by [Rgl(to)]. : Tg(to)G ) TeG.
From the properties of the tangential mapping given in Section 4.3, it is observed that the mapping acting on (5.5) yields (5.6). That is,
[R91(to)].g(to) = g(to)g'(t0). (5.7) This tangent vector shall henceforth be called the fixed generalised axode of the curve g(t) at to and will be denoted by X(to). It will be shown to be a generalisation of the concept of an axode encountered in screw theory.
If g(t) is interpreted as the motion of a body in space and time, the fixed generalised axode of the body at any time t is given by
X(t) [Rg..(t)]g (t)
This is interpreted as a vector curve in TeG.
Since g(t) is the tangent vector to the curve g(t) at the point g(t), it must be a linear combination of a set of basis vectors for Tg(t)G. By the isomorphic tangential mapping given in (5.7), X(t) must be a linear combination of a basis for TeG. It is claimed that, in particular, it is a linear combination of the vectors wx, wi, wz, v", vi, v summarised in (5.1). Indeed, since the curve g(t) is arbitrary, and X(t) is the image of the tangent vector 9(t) via (5.7), then (5.1) must form a basis for TeG.
Before this is proved, it may be helpful to calculate the fixed generalised axode of a particular motion and demonstrate its physical interpretation. Consider a cylinder of radius r rolling along a flat surface. This motion is represented by the relative motion of the frame 7F with respect to the frame F. The frame F is defined to be at rest with respect to the cylinder, whose points are identified with the moving space E3 . The frame .F is defined to be at rest with respect to the observer who is identified with the fixed space E3. Let Y be chosen such that F0 lies on the axis of the cylinder and 9, is parallel to the axis of the cylinder. Also, let F be chosen such that F and Y; are coincident at time t = 0. See Figure 5.1 for a depiction of these frames and the cylinder.
With this choice of frames, let g(t) represent the mapping of the frame F to Y, and be given by
Figure 5.1. Parameterization of a Rolling Cylinder
g(to) =
Then, at time t,
X(t) = g(t)g1(t)
0
0
0
0
0
 sin 00 cos 00
0
0
cos0(t)
sin 0(t)
0
0
 cos0
 sin 00
0
0
 sin O(t) cos 0(t)
0
0
r4
0
0
0 0 0 0
0 0 1 r v't
0 1 0 rO
0 0 0 0
Thus, X(t) can be written as a linear combination of the vectors w, vW, v , v summarised in (5.1) which yields X(t) = {[w.]  r[vy] + rO(t)[vz]}O(t). Alternately, if X(t) is written as the ordered column of scalar multiples of W", w, w, v , v", v, of which it is composed, one finds
0
rO(t)
0 1
(5.8)
0
Cos 0
sinO
0
0
sin 0 Cos 0
0
0
rO cos 0
r0 sin 0
1
1
0
x (t) = 0 0(t).
0
r
L rO(t)
The physical interpretation of X(t) is now more apparent. The first three components represent the angular velocity of the cylinder at the given time. Recalling that that one can identify the body with the moving space, thus making the assumption that the cylinder is of infinite extent, it is seen that last three components represent the translational velocity of the point in the cylinder that is coincident with the fixed frame at the given time. It is noted that all the components of the fixed generalised axode are given in terms of the fixed frame.
It is now proved that w,,w, v, v , v, are, in fact, a basis for TeG. Since g(t) can be rewritten as
[Og d +Og dO Og dO Og dx Og dy Ogdz (5.9)
Lg o dt o dt 5d d + O y at (59z d)I
it is seen that X(t) is composed of the sum of the following six components:
0 1 0 y]
I gdï¿½l g(t) 1 0 0 0X
0 0 0 0 t
0 0 sin4ï¿½ z sin Logdt It sine cos0 0 x csinyos Ot
0 0 0 0
09dr l gl(t)=
0 cos 0  cos sin 0 y cos 0 + z cos 0 sin 0
Cos0 0  sin sin 0 x cos 0 + z sin q sin 0
cos q sin 0 sin 0 sin 0 0 x cos 0 sin 0  y sin qsin 0O
0 0 0 0
ax dt It90000 X 0gx 0 0 0
[ y] g'(t) 0 0 0 o
0 0 0 0
0 0 0 0
SOg dz] 0
gi(t)
az dtit 90 0 0 10 t
t
0 0 0 0
Comparing the above six equations with the definitions of wx,wy, wL, V, , v summarised in 5.1, results in the following substitutions:
E jgl(t) = {[w] + y[v]  X[Vy]}t t
[O dt] g1(t) = {cos ï¿½[w] + sin O[w]  z sin ï¿½[vx] + z cos ï¿½[v] +(x sin 0  y cos 0)[vz]}t~t
[9d4 ] g (t) {sin~sinO[w ] cos~sinO[wy] +cosO[w ]
+(y cos 0 + zcos sinO)[vx]  (x cos 0 zsin sin0)[vy]
(x cos sin0 + ysin OsinO)[v]}t~t
Og dx] g1() = IV]
agy] g(t) = [Vlylt,
[y Odt]  t2x
az 9tX(t) = [v]tit.
Thus, it is seen that (5.6) can be written as a linear combination of WX, wy, Wz, vX, vy, vz in the form
X(t) = (S.w + SYY + S'w' + So0vX + SouvY + SoZvZ)(t),
where S., Sy, S, So,, S0y, S0, are scalar functions of time. Therefore, the vectors W"WlwLw, VX, VY, vz form a basis for TeG. The scalar functions are the directional components of the tangent vector X(t) which were previously contained in its matrix representation. For brevity, the fixed generalised axode will often be written as the ordered column of these scalar components. Hence,
SX cos q0 + sin 0 sin 0, SY sin0  cos 0 sin O
X~) S + coso 0
)= So. yï¿½  zsino +(ycosO+zcos sinO) + S0Y x$+ z cos O  (x cosO  zsin ï¿½sinO)b +4
Soz t (xsinq ycos 0)O (xcos OsinO + ysinosinO)i + i
(5.10)
It is observed that the fixed generalised axode can be rewritten as
cos + sin ï¿½ sin O , sin qtO  cos ï¿½ sin Ol Xt+ cos O
y( + cos 0l)  z(sin $Ob  cos 0 sin 04) + i
x(l + cos O) + z(cos $O + sin ï¿½ sin O) + x(sin4O  cos 4sin O')  y(cos$0 + sin 4sin O') + i
cos 00 + sin 0 sin 00 sin  cos 0 sin 0ï¿½ 4+ cos 0b
x cos 00 + sin 0 sin 00 X y x sinï¿½O cose0sin O . z ï¿½+ Cos O
t
Let [X(t)]1 denote the three components referring to the angular velocity of the body. Let [X(t)]0 denote the three components referring to the translational velocity of the point in the body that is coincident with the fixed frame at time t. Let r12 represent the components of the position of the moving frame, given in terms of the fixed frame. Then
r12 [ ,
cos 0 + sin 0 sin 1] [X(t)]l = sin  cos esinO4' + cos 90'
and [X(t)]o is written as
[X(t)]o = r12 x IX(t)]1 + i112.
Here, it is seen that the translational velocity of the point in the body that is coincident with the fixed frame is composed of two parts. The first is i12 which represents the translational velocity of the body. The second is r12 x [X(t)]1 which
represents the velocity, due to the rotation of the moving frame, of the point in the body that is coincident with the fixed frame.
5.3 The Left Tangential Mapping
So far in the study of the tangent bundle of the Euclidean group, the mapping Rh, representing multiplication of an arbitrary element of the group on the right by the element h, has been introduced. This mapping, given by g(t) and acting on a the motion of a body in space and time, has been interpreted as the same motion of the body, but with respect to different frames of reference.
In a similar fashion, multiplication of an arbitrary element of the group on the left by the element h, is analysed. Let an element g E G represent a mapping from a fixed frame F' to a moving frame 1:'2. Let h E G. Let Lh :G  G
be defined by
g ' hg.
This mapping multiplies an arbitrary element of the group on the left by the given element h. If g = g(t) is a curve in G, interpreted as the motion of a body in space and time with respect to the fixed frame F1 and the moving frame F2, then
Lh(g(t)) = hg(t) (5.11) is also a curve in G and is interpreted as the same motion of the body, but with respect to different frames of reference. Indeed, let FO be a frame at rest with respect to the fixed space such that
o h 1(5.12) The curve Lh(g(t)) then results in F ih ) gc 4,4 )
Thus, Lh(g(t)) is interpreted as representing the same motion of the body, but with respect to Fo and F2. Here, the change in the frame at rest with respect to the fixed space is given by (5.12).
Lh can be checked to be differentiable in the same manner that Rh has been. Thus, it induces a tangential mapping called the left tangential mapping, which is given by
[Lh]. : Tg(t)G Thg(t)G. (5.13) It is claimed that (5.13) is a bijection of vector spaces. This is proved by the following argument: Since
[Lh o Lh1] = [LhI o Lh] = 1G, then
[Lh o Lh1I* and [Lh, o Lh]. are both the identity tangential mapping on all points of G. Applying the rule for the composition of tangential mappings given in (4.11) results in [Lh o Lh1]. = [Lh.[h ].
and
[Lh1 o Lh, = [Lh'].[Lh*.. Thus, [Lh]. and [Lh1]. are inverses of each other, requiring that (5.13) be a bijection. Furthermore, since all tangential mappings preserve the properties of linearity and scalar multiplication, [Lh]. is a vector space isomorphism.
Now, consider the mapping
Lg(0): G  G
applied to the curve g(t). This results in the curve Lg(to)g(t) = g(t)g(t). The tangent vector to this curve at to is an element of TeG since Lgi(to)g(to) = e. Using the properties of matrix multiplication, this tangent vector is given by
d[Lg1(to)g(t)] = d[g(to)g(t)] dt t dt t = g (to) dt
= g(to)g(to). (5.14) The induced left tangential mapping acting at g(to) is a vector space isomorphism defined by
[Lg'(to)]. : Tg(t0)G 4 TeG. From the properties of tangential mapping given in Section 4.3, it is observed that the mapping acting on (5.5) yields (5.14). That is,
[L9l(to)],g(to) = 9l(to)g(t0). (5.15) This tangent vector shall henceforth be called the moving generalised axode of the curve g(t) at to and will be denoted by X(to). It will be shown, in the next chapter, that this tangent vector is intimately related to the fixed generalised axode.
If g(t) is interpreted as the motion of a body in space and time, the moving generalised axode of the body at any time t is given by
=g t .
This is interpreted as a vector curve in TeG. Hence it must also be a linear combination of the vectors w, uy, IW, v, v, summarised in (5.1).
Before this is shown, it may be helpful to calculate the moving generalised axode of a particular motion and demonstrate its physical interpretation. Consider, again, the cylinder analysed in Section 5.2. This is depicted in Figure 5.1 and parameterized by (5.8). Then, at time t,
X(t) = l(t)g(t)
1 0 0 0 0 0 0 0 0 cos O(t) sin O(t) rO(t) cos O(t) 0  sin 0  cos O0 rO 0 sinO(t) cos 0(t) rO(t) sin O(t) 0 cos 0  sin 0 0
0 0 0 1 0 0 0 0 0 t
0 0 0 0 ]
0 0 1 rcosO(t)
[010 rsinO(t) jt.
0 0 0 0 t
Thus, X(t), written as a linear combination of the basis vectors summarised in (5.1), yields
X(t) = ([w,]  rcosO(t)[vy] + rsin O(t)[v,])O(t).
Alternately, X(t) can be written as
1
0
X(t) = 0
0
r cos O(t)
r sin O(t)
The physical interpretation of X(t) is now more apparent. The first three components represent the angular velocity of the cylinder at the given time. In this case they are given in terms of the moving frame. The last three components represent the translational velocity of the point in the cylinder that is coincident with the moving frame at the given time. These are also given in terms of the moving frame. Thus, it is noted that all components of the moving generalised axode are given in terms of the moving frame.
An explicit expression for X(t) is calculated by a manner similar to that of X(t). Since g(t0) is given by (5.9) then X(to) is composed of the sum of the following six components:
0  cos 0 cos ib sin 0 0 '(t) [Ogd  cosO 0 sinosin 0 0
lt dt [ cos4'sinO sin 0 sin0 0 0 0 0 0 1
0 0  sin ?P 0 [Od]  0 0 cos4 0 gd(t) LaJ9 sin 0 cos 0 0 0
0 0 0 1 t
g 1t) g d( [ ]
0 ( t) [ dI
0
0
0
0
0
0
0
0
g(t) [9g dxt
g  1 ( t )  g d  t
'I) Oy Jt
g'(t) [9g dz
az t
cos Ocos 4  sin O sin 4' cos 9
 cos O sin 4  sin O cos 4 cos 9
sin 0 sin 0
sin 0 cos 4 + cos 0 sin 4 cos 0
 sin 0 sin 4, + cos 0 cos 4 cos 0
 cos 0 sin 0
0 0 0 sin4,sinO 0 0 0 cos4,sinO
0 0 0 cos 0
0 0 0 1
Comparing the above six equations with the definitions of ox, wy, wZ, vX, Vu, Vz summarised in 5.1, results in the following substitutions:
g1(t) [O dt = { sin 4o sinOo[wx] + cos 4osin~o[w,] + cos~o[Luz]}ï¿½$
[o1M g d]
g (t)
= {cos4,[w~l  sin ?[w]}Ot
= [wO]4,t
[
0 0
0 0 0 0
0 1
Xt
t
t
ag do]
aOdt
S g dx g ax(t it
{ (cos 0 cos ip  sin 0 sin 0 cos O)[v.] + ( cos 0 sin V,  sin 0 cos 0 cos O)[v,]
+ sin 0sin O[vj}t
gl(t) ay dt]
{ (sin 0 cos V) + cos 0 sin ?P cos O)[v,] +( sin 0 sin 0 + cos 0cos 0 cos 0)[v]
 cos 0 sin 0[vl}]'
[gdz]
g(t)  = {sin Osin O[v,] + cos sinO[vyI + cosO[v},,]}.
Thus, it is seen that (5.14) can be written as a linear combination of W",W IW), v V, in the form
X(t) = (3s Wx + sY W + 3ZL + 3oxvx + 3YvY + S0zVz)(t),
where 3, S, S2, So3 , Soy, So are scalar functions of time. Alternately, X(t) can be written as
x(t)
 sin 0 sin 00 + cos O0 cos h sin O0  sin o0 cos 0ï¿½ + ,
(cos q cos  sin 0 sin 0 cos 0)i + (sin 0 cos 0/ + cos 4 sin 0 cos 0) ' + sin 0b sin 0.*
(cos sin sin 0 cos 0 cos 0)i + ( sin 4)sin tp + cos 0 cos 7p cos 0) ) + cosV7 sin 0k sin 0 sin Oi  cos ï¿½ sin 0 ' + cos 0 (5.16)
It can be checked that
[X(t )]l 
 sin 0b sin Oq + cos cos 0 sin 0.ï¿½  sin '00 I cos 0ï¿½ + J
g11 921 931 cos 0 + sin 0 sin 0b 912 g22 g32 sin ï¿½0  cos ï¿½ sin O g13 g23 g33 4) + cosO I
=[gl(t)la33[(t)]1.
Also,
(cos 0 cos O  sin 0 sin 0 cos 0)i? + (sin .0 cos 0 + cos (k sin O cos 0) ) + sin 0 sin Oi
(cos 0 sin ip  sin 0 cos 0 cos 0)i? + ( sin 0 sin 0 + cos 0 cos O cos 0)/) + cos 0 sin Oi sin 0 sin Oi  cos 0 sin 0 + cos Oi [g1lX g21Y 931i 1
  g2 g22y g32i
9li3X g23y g33i
 [g1(t)]3X3i12,
where r12 represents the components of the position of the moving frame, given in terms of the fixed frame. This vector was first used at the end of Section 5.2.
Recalling the relationship between the change in coordinates of a vector with respect to two different frames, which was demonstrated in Section 3.1, it is seen that IX(t)]1 and [X(t)]1 are the components of the angular velocity vector of the body, given in terms of the fixed frame and moving frame respectively.
75
Also, [X(t)]o is simply the components of the translational velocity of the moving frame with respect to the fixed frame, given in terms of the moving frame. This is again just the translational velocity of a point in the body that is coincident with the moving frame.
Thus, it is seen that both generalised axodes are interpreted in the same way physically, but with respect to different frames or reference.
CHAPTER 6
THE ADJOINT MAP
6.1 The Composition of Mappings
In Section 5.2 and 5.3, two special cases involving the composition of elements of G were used to derive expressions for the fixed and moving generalised axodes. In this chapter, the composition of elements of G are analysed in more detail. The fixed and moving generalised axodes of the motion of a body in space and time are seen to be affected by the two special cases of composition. The relationship between these two axodes, briefly introduced in Section 5.3, is explored more deeply. Finally, it is shown that these axodes are actually two special examples of a generalised axode and that, in fact, there exists a generalised axode associated with each selection of a frame in the fixed space.
Let g1 (t) be the mapping of the frame .Fo to the frame 171 as a function of time. Then
Let g2(t) be the mapping of the frame .T1 to the frame .T2 as a function of time. Then
The composition g1(t)g2(t) is then a mapping of the frame To to the frame F2 as a function of time. That is,
O 1 2
76
Physically, this is interpreted in the following manner: Define F2 be a frame at ==3
rest with respect to a Euclidean space E . Define F' be a frame at rest with respect to a Euclidean space E3. Define FO be a frame at rest with respect to a Euclidean =3
space E . Then the motion of the space E with respect to the space E' is given by the mapping gl(t)g2(t) of the frame .To to the frame F2.
As a simple example, let g2(t) be given by
1 0 0 0
0 cos0(t) sinO(t) 0 (6.1)
0 sinO(t) cosO(t) 0
0 0 0 1
and let gl(t) be given by
1 00 0
g(t)= 010 rO(t) (6.2) O001 0
0 00 1
Then g2(t) represents a rotation of the frame F2 about the xaxis of the frame F1, while g1(t) represents the translation of the frame F' along the negative yaxis of the frame F0. Thus, the space E is rotating with respect to the space E, while E3 is translating with respect to E3. The composition g1(t)g2(t) then results in a =3
combined rotation and translation of E with respect to Ea. This motion can be interpreted as the rolling cylinder encountered in Section 5.2.
6.2 Composition Interpreted as a Change in Frames
Let g(t) be a mapping of the frame 1 to the frame T2 as a function of time. Let h be a fixed mapping of the frame F2 to the frame F3. The composition g(t)h is then given by the mapping
g(t) h F ~F2 F3.
Define the frame F1 to be at rest with respect to a space E3, and 'F2, F3 to be at =3
rest with respect to E respectively. Since F1 and F2 are related by the fixed mapping h, it is seen that 3 and E are at rest with respect to each other. If the mappings are interpreted as the motion of a body in space and time, then
g(t) and g(t)h
are seen to represent the same motion of the body in space and time, but with a change in the frame at rest with respect to the moving space that is given by ih '
F2 F ,3.
This situation was initially introduced via the mapping Rh acting on the motion g(t) as described in Section 5.2.
In a similar fashion, consider redefining h to be a fixed mapping of the frame .F0 to the frame F1. Let g(t) remain a mapping of the frame 1 to the frame 2 as a function of time. The composition hg(t) is then given by the mapping hi g(t)
TO &F, F2.Define the frame F0 to be at rest with respect to a space E3, and T1, F2 to be at
3
rest with respect to E3, E respectively. Since Fo and F1 are related by the fixed mapping h, it is seen that E3 and E3 are at rest with respect to each other. If the mappings are interpreted as the motion of a body in space and time, then
g(t) and hg(t)
are seen to represent the same motion of the body, but with a change in the frame at rest with respect to the fixed space that is given by
0F i )F1.
motion fixed frame F'1 moving frame F.2
g(t) no change no change
g(t)h no change change by h to F3
hg(t) change by h' to Fo no change
Table 6.1. Interpretation of Changing Frames via Composition
This situation was initially introduced via the mapping Lh acting on the motion g(t) as described in Section 5.3.
The effect of the operation of composition interpreted as a change in frames is summarised in Table 6.2. It is noted that the motion of the body remains invariant in this description.
6.3 The Effect on the Fixed and Moving Generalised Axodes
The effect of a change in frames on the fixed and moving generalised axodes is now investigated. Let g(t) be a mapping of the frame JF1 to the frame F2 as a function of time. Interpreting g(t) as the motion of a body through space and time results in the fixed and moving generalised axodes of the motion being given by X(t) = 9(t)g1(t)
and
X(t) = 1(t)g,(t)
respectively.
The effect of a change in the fixed frame on the fixed and moving generalised axodes is analysed first. Let h be a mapping of the frame .F2 to the frame .F3. Then it has been seen that the mapping g(t)h corresponds to the same motion of the body, but with a change in the moving frame that is given by
h
The fixed and moving generalised axodes of the motion are then given by
d[g(t)h]
dt [g(t)h]'
dt
and
= g(t)hh'g(t)
= (t)g(t) = X(t)
Sh'g(t)g(t)h =hl(g1 (t)g(t))h =h'X(t)h
respectively.
Thus, a change in the moving frame leaves the fixed generalised axode invariant and affects only the moving generalised axode. This is consistent since the fixed generalised axode is composed of components given in terms of the fixed frame, which remains unchanged. In contrast, the moving generalised axode is composed of components given in terms of the moving frame that is affected by the mapping h.
In a similar fashion, the effect of a change in the moving frame on the fixed and moving generalised axodes is analysed. Redefine h to be a mapping of the frame .Fo to the frame X1. Then the mapping hg(t) corresponds to the same motion of the body, but with a change in the fixed frame that is given by
Yb h
The fixed and moving generalised axodes of the motion are then given by
d[hg(t)] [hg(t)]dt
[hg(t)]l d[hg(t)]
=hg(t)g'(t)h1 =h(g(t)g (t)h'
 hX(t)h1
Sg1(t)h'hg(t)
1 (t)g(t)
respectively.
Thus, a change in the fixed frame leaves the moving generalised axode invariant and affects only the fixed generalised axode. This is again consistent since the moving generalised axode is composed of components given in terms of the moving frame, which remains unchanged. In contrast, the fixed generalised is composed of components given in terms of the fixed frame that is affected by the mapping h1.
The effect of a change in frames on the fixed and moving generalised axodes is summarised in Table 6.3. It should again be noted that the motion of the body remains invariant in this description.
6.4 The Physical Implications on the Fixed Generalised Axode
The physical interpretation of the change in the fixed generalised axode, due to a change in the fixed frame, is now explored. One may recall, from Section 5.2, that
motion fixed frame :T' moving frame F2 FGA MGA
g(t) no change no change X(t) X(t)
g(t)h no change change by h to F3 X(t) hX(t)h
hg(t) change by h1 to Fo no change hX(t)h1 X(t)
Table 6.2. Effect of a Change in Frames on the Generalised Axodes
X(t) can be written as a linear combination of the basis tangent vectors of TeG given byw,,,wy,wzvx,vy,vz. Thus,
X~)= (SXW" + SYW + S'wz + SoXV3: + S0YvY + SOZv2)(t)
where S,, SY, S,, Sox, SoyI SO are scalar functions of time. Let h be a fixed mapping. Then, from Table 6.3, the change in the fixed generalised axode is given by
hX(t)h' = h(Sxwx + Sywy + Szwz + So0vx + Sovv, + S0,v,)(t)h'.
From this equation, it is seen that the change can be determined by analysing the effect on the basis tangent vectors. Recalling the notation [X (t)]1  t
and
[x(t)0= SoY ,
SO. t
it is seen that the components of hX(t)h are given by
[hX(t)h] = Sx(t)[hwxh']j + Sy(t)[hwyh1] + S,(t)[hwh1]
+Sox(t)[hvxh1] + S0y(t)[hvyh'h + Sz(t)[hvh']i (6.3)
and
[hX(t)h']0 = S.(t)[hwxh1]o + Sy(t)[hwyh1]o + S(t)[hwh']0
+S0,,(t)[hv.h1]o + Soy(t)[hvh1]o + So,(t)[hvzh1]o. (6.4) Let the fixed mapping h be denoted by
hll h12 h21 h22 h31 h32
0 0
1
y
z
I1
First, consider the effect on the basis tangent vectors w.,,wyWZ. One finds
0 h31 h21 hwh1 = 0 hl
h21 hil 0
0 0 0
yh31  zh21
xh31 + zhl xh21  yhjj
0
Comparing the above matrix with the definitions of w, wy W, v, vY, v, summarised in 5.1, it is seen that hwh1 has components given by
hil [hwoh1], = h2
h3l
and
[hwLh']o = [ x
z
Also,
0
hwoYh1 h32
h22
0
h32 h22 0 h12 h12 0 0 0
yh32  zh22
xh32 + zh12 xh22  yh12
0
Thus, hwyh1 has components given by
h12
[hwyh1]i = h22 h32
and
[hwyh']0 = y h22ï¿½ z h32
Also,
0 h33 h23 yh33  zh23 hwh1 = h33 0 h13 xh33 + zh13 h23 h13 0 xh23 yh13
0 0 0 0
Thus, hwzh' has components given by
[h1
[hw h1] = h2 h33
and
[hwzh']o = Y x h23 Z h33 Next, consider the effect on the basis tangent vectors vx, vy, vZ. One finds [0 0 0 hl1 hvxhl= 0 0 0 h21 0 0 0 h3l 0 0 0 0
Thus, hvxh1 has components given by
[hvxh1]i = 0
0
h[l
[hvxh']o = hl h3l
Also,
0 0 0 h12
1 0 0 0 h22 hh=0 0 0 h32 0 0 0 0 Thus, hvyh1 has components given by
[hvyh'] = 0]
and
[h12]
[hvyh']o = h22 h32
Also,
0 0 0 h13 hv~h' 0 0 0 h23 0 0 0 h33 000 0 Thus, hvh1 has components given by
0
[hv~h1]l = 0
and
[A131
[hv~h1]o = h23 h33
Substituting the last six sets of components into equations 6.3 and 6.4 yields
[hX(t)h1]
h12 h13 SM(t) + h22 SYt + h23 Sz(t) h32 h33
SY
[i ] [ h1] F
xyI x h21 S_(t) +
Z h31
Fh111 h121 h21 jSo(t) + h22 h31 h32
[x 1 F h 12 h13] Y h2I h21 h22 h23 z h3 h32 h33
x] F h12j 1
y x h22 I SY(t) + y
z h32 z
Fh131
So(t) + h23 SY(t)
h33 I
F 1 i h1 h13
SY + h21 h22 h23 S[ t h31 h32 h33
x
rol = ]
z
represent the components of the position of the frame .F in terms of the frame F0. Then
[hX(t)h1]l = [h]3x3[X(t)]l
[hX(t)h']0 = rol x [h]3ï¿½3[X(t)]1 + [hJ3ï¿½3[X(t)]o.
The physical interpretation of these components is as follows: Since [X(t)] represents the components of the angular velocity of the body in terms of the frame .F1, then
and
[hX(t)h]o
[h13
h23
h33
I S,(t)
[hX(t)h'], = [h]3X3[X(t)]I
represents the components of the angular velocity of the body in terms of the frame F0o. This conclusion is evident upon recalling the relationship between the components of a vector expressed in two different frames that was demonstrated in Section
3.1.
The last three components are understood by recalling that
[X(t)]0 = r12(t) x [X(t)], + i12(t) represents the translational velocity of the point in the body that is coincident with the frame .F. Then
[hX(t)hl]0
= ro, x [h]3ï¿½3[X(t)]l + [h]3x3[X(t)]o = r01 x [h]3X3[X(t)]1 + [h]3x3(ri2(t) x [X(t)1 + i12(t)) = ro, x [h]3x3[X(t)]1 + ([h]3ï¿½3rI2(t)) x ([h]3X3[X(t)]1) + [h]33i'12(t) = (r01 + [h]3x3r12(t)) x ([h]3x3[X(t)]l + [h]3x3i12(t)).
Define
r02(t) ro1 [h]3x3r12(t)
to be the components of the position of the frame F2 in terms of the frame F0. Since r01 is fixed in time, i02(t) = h3i1t)
Thus,
[hX(t)h']o = r02(t) x [h]3ï¿½3[X(t)]l + i02(t) = ro2(t) x [hX(t)h1]l + i'02(t).
Hence, [hX(t)h']o represents the translational velocity of the point in the body that is coincident with the frame .Fo.
In summary, hX(t)h1 represents the generalised axode of the motion of the body with respect to the frame .F0. That is, the components of the generalised axode are given in terms of the frame 1o.
6.5 The Physical Implications on the Moving Generalised Axode
The physical interpretation of the change in the moving generalised axode, due to a change in the moving frame, is now explored. It is recalled, from Section 5.3, that X(t) can be written as
X(t) = (SWx + SWL + IW2 + 0oV + i0VV + IgoV)(t)
where Sx,3SYSz, 3oX, SoY, Soz are scalar functions of time. Let h be a fixed mapping. Then from Table 6.3, the change in the moving generalised axode is given by
hlX(t)h = h(Sxw, + Sywy + S.wz + Sovx + SovYvy + Sozv.)h(t).
From this equation, it is seen that the change can again be determined by analysing the effect on the basis tangent vectors. Recalling the notation
[X(t)]1 = [XI
it is seen that the components of h1X(t)h are given by
[h'X(t)h], = 3(t)[hlwxh]l  + u(t)[hlwyh] + S(t)[hlwzh]I
+So,(t)[hlvxh]1 + 3oy(t)[hlvyh] + Soz(t)[hlvzh]I (6.5) and
[h'X(t)h]o Sx(t)[hLwoh]o + Sy(t)[hlwyh]o + Sz(t)[h'wzh]o
+3So(t)[h'vxh]o + [So(t)hvyh]o + 3o(t)[hlvzh]o. (6.6) First, consider the effect on the basis tangent vectors wx, w, w,,. One finds
0 h13 h12 yh31  zh21 hlwxh = h13 0 hil yh32  zh22
h12 hi 0 yh33  yh23
0 0 0 0
Comparing the above matrix with the definitions of w., w, w, vx, vy, v, summarised in 5.1, it is seen that h1wh has components given by
[i ]
[hlwh]l h12 h13
and
[ h3l  zh2ii
[h'wh] = yh32  zh221.
yh33  yh23
Also,
h'wyh =
0 h23
h22
0
h23
0
h21
0
h22
h21
0
0
xh1 + zh1
xh32 + zh12
xh33 + zh13
0
Thus, h'wyh has components given by
h2l [h'wyh] =h22
h23
and
 xh31 + zhnl [hlwyh]o = xh32 + zh12
xh33 + zh13
Also,
0
hlwzh = h33
h32
0
h33
0 h3l
0
h32
h31
0
0
xh21  yhll xh22  yh12 xh23  yh13
0
Thus, hlwh has components given by
h31 [h'wzh1 = h32
h33
xh2l  yhj1 [hlwzh]o = xh2  yh12
xh23  yh13
Next, consider the effect on the basis tangent vectors vx, vs,, vz. One finds
0 0 0 h11 h'vxh=0 0 0 h12
0 0 0 h13J
0 0 0 0
Thus, hlvxh has components given by
0
[ h  l v ,h ] = 0 ' 1
and
[hlvh]o h12 [h13 I
Also,
0 0 0 h21 h'lvyh 0 0 0 h22 0 0 h23 0 0 0 0
Thus, h'vyh has components given by
0
[hlvyh]1 = [
and
h21
[h vYh]o = h22 h23
Also,
0 0 0 h3l h ivh = 0 0 0 h32 0 0 0 h33 0 0 0 0
Thus, hlvh has components given by
[hivzh] = 0 0
and
h3a 1
[hzvho = h32 h33
Substituting the last six sets of components into equations 6.5 and 6.6 yields
1 [ h2, 1 [ 1
[h'X(t)h]l = h12 3,(t) + h22 SU(t) + h32 S(t) h13 I h23 h33
[hil h2, h3l ,1 = h12 h22 h32 Sg h3 h23 h33 t
and
[h'X(t)h]o =
yh32 zh2 ( xh32 + zh12 ] (t + xh22  yh
yh33 yh23 xh33 + zh13 I xh23  yhl3
hll h [11211 h311
+ h12 So.(t)+ h22 hSo(t)+ h32 Soz(t)
h13 h23 h33
hnl h2l
h12(t)2) + z(t))
h3 h23I
Sh31 l hll h21 h31 g [ oz
1h32 (yS(t)  x~y(t)) + 112 h h32ZSo)
h33 h13 h3 h3 9.z
hi2 h22 h32 ] y x y h12 h22 h32 "o9 1
h13 h23 h33 Sz j t z h3 h23 h33 soz t
Let
]
r 23 = I
z

Full Text 
PAGE 1
SCREW THEORY AND LIE GROUPS: THE TWO FACES OF ROBOTICS By UDAI BASAVARAJ A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 1991
PAGE 2
ACKNOWLEDGEMENTS The author acknowledges the Northeast Regional Data Center at the University of Florida for a grant under the Research Computing Initiative for Numerically Intensive Computing in Higher Education. The author would also like to thank his advisors, Dr. Joseph Duffy and Dr. Neil White. 11
PAGE 3
TABLE OF CONTENTS ACKNOWLEDGEMENTS ii LIST OF TABLES v LIST OF FIGURES vi ABSTRACT viii 1 INTRODUCTION 1 1.1 Overview 1 1.2 The Fundamental Concept of Motion Capability 4 1.3 Summary of Chapters 5 2 PRELIMINARIES 8 3 THE EUCLIDEAN GROUP 20 3.1 Euclidean Space 20 3.2 Rigid Body Motion in Space and Time 25 3.3 The Euler Parameterization of the Euclidean Group 27 4 TANGENT BUNDLES 31 4.1 The Tangent Bundle of EÂ” and R n 31 4.2 Directional Derivatives as Operators Acting on Functions 36 4.3 The Tangent Bundle of Differentiable Manifold 41 5 THE TANGENT BUNDLE OF THE EUCLIDEAN GROUP 53 5.1 The Tangent Space at the Identity Element 53 5.2 The Right Tangential Mapping 57 5.3 The Left Tangential Mapping 57 6 THE ADJOINT MAP 76 6.1 The Composition of Mappings 75 6.2 Composition Interpreted as a Change in Frames 77 6.3 The Effect on the Fixed and Moving Generalised Axodes 79 111
PAGE 4
6.4 The Physical Implications on the Fixed Generalised Axode 81 6.5 The Physical Implications on the Moving Generalised Axode 88 6.6 The Relationship Between the Generalised Axodes 95 7 THE EXISTENCE OF A SEMIRIEMANNIAN METRIC 99 8 APPLICATIONS TO ROBOTICS 103 8.1 The Group Structure in Robotics 103 8.2 The Concept of Volume 104 8.3 Planar Motion 112 8.4 Redundant Planar Motion 121 8.5 Euclidean Motion 126 8.6 Application to a Typical Industrial Robot 129 8.7 Redundant Manipulators 138 9 CONCLUSIONS 144 APPENDICES A THE GENERAL ELECTRIC P60 ROBOT 146 B THE FLIGHT TELEROBOTIC SERVICER MANIPULATOR SYSTEM . 153 REFERENCES 180 BIOGRAPHICAL SKETCH 183 IV
PAGE 5
LIST OF TABLES 6.1 Interpretation of Changing Frames via Composition 79 6.2 Effect of a Change in Frames on the Generalised Axodes 82 8.1 Mechanism Parameters for the GE P60 Robot 133 8.2 Mechanism Parameters for the FTSMS Design A 141 8.3 Mechanism Parameters for the FTSMS Design B 141 8.4 Intermediate Values of Motion Capability for the FTSMS Designs . . 143 v
PAGE 6
LIST OF FIGURES 2.1 Topologies on a Three Element Set 9 2.2 Compatible Coordinate Systems 11 2.3 Covering of the Sphere 12 2.4 Coordinate Chart on the Sphere 13 3.1 Definition of the Euler Angles 28 4.1 Differentiability on a Manifold 42 4.2 Differentiability Between Manifolds 43 4.3 Tangent Vector to a Curve 50 4.4 The Tangential Mapping Between Manifolds 52 5.1 Parameterization of a Rolling Cylinder 62 8.1 Semicircular Region in the Plane 105 8.2 Parameterization of the Surface of the Sphere 110 8.3 Tangent Plane to the Sphere HI 8.4 Definition of Planar Parameters 112 8.5 Planar RRR Robot 115 8.6 Physical Workspace of Planar RRR Robot 117 8.7 Planar PRP Robot H8 8.8 Physical Workspace of Planar PRP Robot 119 vi
PAGE 7
8.9 Redundant Planar 4 R Robot 122 8.10 Joint Definitions 130 8.11 Kinematic Model of the GE P60 Robot 133 8.12 GE P60 singularity sin d 3 = 0 137 8.13 GE P60 singularity sin = 0 137 8.14 GE P60 singularity S 5 sin 0 432 + a 34 cos 0 32 + a 23 cos 0 2 = 0 138 8.15 FTS Manipulator System Design A 139 8.16 FTS Manipulator System Design B 139 8.17 Kinematic Model of the FTSMS Design A 140 8.18 Kinematic Model of the FTSMS Design B 140 vii
PAGE 8
Abstract of Dissertation Presented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy SCREW THEORY AND LIE GROUPS: THE TWO FACES OF ROBOTICS By Udai Basavaraj December 1991 Chairman: Dr. Neil White Major Department: Mathematics The two parallel approaches of screw theory and Lie groups, used in the analysis of robot manipulators, are contrasted. The fundamental aspects of screw theory are shown to arise as a natural consequence of the group structure and the differential geometric properties of the Euclidean group. The Lie algebra is shown to be equivalent to the space of twists encountered in screw theory. As an application of the theoretical framework provided by the semiRiemannian structure of the Euclidean group, an invariant measure is defined and used to quantify the concept of motion capability of a robot manipulator. The measure is shown to arise from a symmetric bilinear form also known as the reciprocal product. This measure is shown to be applicable to manipulators of arbitrary design. In particular, it is shown to be independent of the parameterization of the manipulator and the type and number of joints in the manipulator. The singularities of the manipulator are also shown to be predicted by the measure. Finally, it is shown that, when applied to redundant manipulators, the measure quantifies the importance of each joint of the manipulator. viii
PAGE 9
CHAPTER 1 INTRODUCTION 1.1 Overview The pages that follow are an attempt to unify two parallel approaches that currently exist in the study of spatial kinematics and its application to robot manipulators. A robot manipulator can be considered to be an open chain of rigid bodies connected together by joints which define the relative freedom of motion of adjacent bodies in the chain. One approach to spatial kinematics uses screw theory which models the instantaneous motion of a body in space as an infinitesimal rotation about some axis together with an infinitesimal translation along that axis. This is interpreted as an instantaneous screwlike motion, called a twist, which is the fundamental geometric concept on which the theory is based. The other approach involves the use of Lie groups, and models the motion of a body in space as a curve in a six dimensional space consisting of all possible rotations and translations of an object. The engineer has traditionally used screw theory in the analysis of the subject. This approach was first comprehensively addressed by Ball [1]. This inspiring work is notable for its geometric insight and intuitive reasoning in the absence of a systematic representation which exists today via the use of line geometry, Plucker coordinates, and dual quaternions. In contrast, the mathematician working in the field of spatial kinematics has preferred the use of Lie groups, which is a combination of group theory and differential 1
PAGE 10
2 geometry. This approach is partly due to training, but also due to the large body of supporting theory in these areas which can be used to oneÂ’s advantage. Indeed, the origins of differential geometry can be traced back well over a century to the works of Riemann. His preliminary papers, which are found translated by Clifford [5], laid the foundations for differential geometry and exhibit an appreciation of the concepts of a manifold and metric decades before these ideas were fully articulated and formalized. Today, the parallel approaches to spatial kinematics are typified by two comprehensive works. The first is by Hunt [8] and contains an exhaustive study on systems of screws and the concept of reciprocity which describes the relationship between the constraints on, and freedoms of, a body. The second is by Karger [11]. This work views the Euclidean group, which can be considered to be the set of all possible rotations and translations of an object, as a six dimensional differentiable manifold endowed with a semiRiemannian metric. This approach yields precisely the same results, concerning screw systems and reciprocity, and differs only in its formulation in terms of group theoretic and differential geometric structures such as group orbits and bilinear forms. Indeed, both approaches can be seen to be utilised by Bottema and Roth [3]. One advantage of screw theory is its ability in explaining a wide variety of concepts in spatial kinematics without the use of groups and differentiable manifolds. Screw theory has probably gained prominence due to the engineerÂ’s tendency to choose a physically natural description of phenomena rather than look for hidden mathematical structures. Indeed, at first glance one finds little need of manifolds and semiRiemannian metrics, preferring the appealing concept of an instantaneous screwlike motion instead. Unfortunately, this approach inherently precludes information about the finite motions from which the instantaneous motions are derived.
PAGE 11
3 This results in obscuring the structure of the Euclidean group, and omits the rich mathematical framework contained therein. Very recently, a few works have begun to address this problem with applications of spatial kinematics to robot manipulators. The work by Rico [15] studies explicit representations of the Euclidean group and their application to manipulators. Also, Brockett [4] and Loncaric [12] apply the group structure to the problem of the control of manipulators. Finally Karger [9] [10], in two key papers, makes a direct application of some well known results in the areas of Lie groups and Riemannian geometry to manipulators. Unfortunately, these last two papers seem to have been overlooked in the field due to their highly mathematical nature. KargerÂ’s papers illustrate, in an unambiguous way, the primary advantage in using Lie groups in the study of robot manipulators. They contain results which are dependent on the application of well known theorems in group theory and differential geometry. Furthermore, this approach is inherently coordinate free and leads to compact expressions involving elements of the group and their derivatives. The primary aim of this work is to unify the two approaches to spatial kinematics in their application to robot manipulators. By reading this work, it is hoped that the mathematician acquires a good grasp of the kinematic aspects of robot manipulators and an appreciation of the very practical application of some well established mathematical theory. Analogously, it is hoped that this work conveys, to the engineer, the richness and power of using the Lie group approach. This endeavour is attempted by examining the fundamental aspects of screw theoiy and showing that they arise as a natural consequence of the group structure and differential geometric properties of the Euclidean group. This is shown in an systematic and comprehensive way that reveals the link between the instantaneous
PAGE 12
4 motion of a body, represented by a twist, and a curve in the Euclidean group representing the finite motion from which the twist is derived. This link is then used in developing an application to robot manipulators that is global in its scope. By global, it is meant that a complete methodology is developed that is applicable to robot manipulators of arbitrary design. Such global results are rare in robotics. In this particular case, it is a direct consequence of utilising the fundamental structure of the Euclidean group that is only revealed by the Lie group approach. 1.2 The Fundamental Concept of Motion Capability The global application that is be developed here is a method to quantitatively compare the varying designs of robot manipulators. It is recalled that a robot manipulator is an open chain of rigid bodies connected together by joints which define the relative freedoms of motion of adjacent bodies in the chain. It is usually the bodies at each end of the chain that are the focus of analysis in robotics. One body is called the end effector, while the other is called the base of the manipulator and is considered unmovable and attached to the ground. The motion of the end effector is then related to the motion of the system of bodies and and joints attaching it to the base. Thus, it is clear that the end effector can only achieve some subset of all the possible rotations and translations of an unconstrained body unconnected to the base. Quantifying this subset yields a number related to what is defined to be the motion capability of the manipulator. The solution to accomplishing this in a completely invariant way lies in using the existence of the concept of a generalised volume element on the Euclidean group. This volume element arises from the fact that the Euclidean group is a differentiable manifold endowed with a semiRiemannian structure. The investigation of volume elements on this class of manifolds are based on well known theoretical results and are found generalised by Boothby [2] and OÂ’Neill
PAGE 13
5 [14], for example. There are also some purely mathematical applications of the volume element of the Euclidean group, in particular, which are considered by GelÂ’fand et al. [7] and Vilenkin [16]. The specific application of the volume element of the Euclidean group to robot manipulators is, however, very recent. It was first suggested as a possible area of study by Loncaric [12]. The foundations for its applications, however, were laid by Karger [10]. One consequence of the existence of the volume element is that it not only gives one a measure of the motion capability of the end effector of the manipulator, but also predicts the singularities of the manipulator. The singularities are those configurations of the manipulator in which the end effector loses one or more degrees of freedom, and are the subject of much analysis in robotics. Another application, not addressed in this work, is that of applying the comparative technique developed to optimize the design of a manipulator. This is another area of intensive study in robotics. Thus, the volume element appears to have profound consequences in the analysis of robot manipulators. 1.3 Summary of Chapters Chapter Two contains the definitions necessary for a mathematical description of the Euclidean group. It introduces the concepts of a topological space , a differentiable manifold and a Lie group with the help of some familiar examples. This chapter may be omitted by the mathematician, but the engineer who may be unfamiliar with some of these topics may wish to address it. The approach is brief, and the reader may wish to refer to a number of modern works for additional details. For a comprehensive introduction to topology, refer to Munkres [13]. do Carmo [6] has a good introduction to the differential geometry of curves and surfaces, while Boothby [2] has a more
PAGE 14
6 generalised treatment of differentiable manifolds. OÂ’Neill [14] has an introduction to semiRiemannian manifolds and Warner [17] has additional information on Lie groups. Chapter Three introduces the Euclidean group and its application to analysing the motion of a rigid body in space and time. Frames of reference are defined and the interpretation of the Euclidean group as mappings between these frames is studied. The group and differentiable structures of these mappings are revealed and a suitable representation is chosen for them. Chapter Four studies the concept of the tangent bundle of a differentiable manifold by first examining its implications in Euclidean nspace and real nspace. The idea is then generalised to the concept of derivations on a differentiable manifold. The geometric interpretation of a tangential mapping is explored. Chapter Five applies the concept of a tangent bundle to the Euclidean group. In particular, the structure of the Lie algebra, which is the tangent space at the identity element of the Euclidean group, is examined. Its direct relationship to the space of twists, encountered in screw theory, is revealed. Finally, the physical interpretation of the left and right tangential mapping is studied. Chapter Six investigates the composition of elements of the Euclidean group. Special cases are interpreted as a change in a frame of reference. The adjoint mapping and its relationship to such changes is revealed, and the link to a well known screw transformation matrix is made. Chapter Seven introduces the concept of a volume element by first examining the implications in R 2 and on the surface of a sphere. The idea is then applied to planar robot manipulators with an accompanying geometric interpretation. This is then generalised to spatial motion by computing the volume element of the Euclidean group. The element is applied to an existing industrial robot and then further generalised
PAGE 15
7 to accommodate redundant manipulators. This form is then used in determining the efficacy of two design variations of the Flight Telerobotic Servicer Manipulator System, a space based seven revolute manipulator currently being considered by the National Aeronautics and Space Administration.
PAGE 16
CHAPTER 2 PRELIMINARIES Definition: A topological space is a pair ( X , fi), where AT is a set and H is a collection of subsets of X , called open sets, such that 1. The empty set and the whole set X are open. 2. If U and V are open, so is U ft V. 3. If {U a \a G A} is a (possibly infinite) family of open sets, then Uae4 U a is open. The collection Q is called a topology on X. It is common to omit specific mention of the collection f I if no confusion will arise by referring to the topological space X. Example: Let X be the three element set X = {a, b, c}. Three possible topologies on X are shown in Figure 2.1. The topology on the left is the simplest in which the only sets are X and . The topology in the middle contains X, (j), [a, 6], [6], [6, c]. The topology on the right contains every subset of X. It is clear that even a three element set has several topologies. In this example it is possible to describe the entire collection f I of open sets. In most cases this is difficult and one usually specifies a smaller collection of subsets of X from which the topology is generated. This process requires two additional definitions. Definition: A basis for a topology on X is a collection B of subsets of X (called basis elements ) such that 1. For each x Â€ X, there is at least one basis element B containing x. 8
PAGE 17
9 Figure 2.1. Topologies on a Three Element Set 2. If x belongs to the intersection of two basis elements B\ and B 2 , then there is a basis element B 3 containing x such that B 3 C B x H B 2 . Definition: If B is a basis for a topology on X, the collection H generated by B is described as follows: A subset U of X is defined to be open in X (that is, to be an element of fl) if for each x Â£ U, there is a basis element B 6 B such that x Â£ B and B C U . It can be checked that the collection f 1 defines a topology on X. Example: Let B be the collection of intervals in the real line R of the form (a,b) = { x\a < x . Example: R is Hausdorff. If x,y Â€ R with x Â± y, then U = (x ^,x+ ^1) and V = (y Â— Mpl ,y + are nonintersecting open sets containing x and y respectively.
PAGE 18
10 Definition: Let X and Y be topological spaces. A function / : X Â— Y is said to be continuous if and only if for each open subset V of Y, the preimage / 1 (E) is an open subset of X. Example: It can be shown that the above definition is equivalent to the (e, 6) definition of continuity of real valued functions / : R Â— > R, when R is endowed with the standard topology. See Munkres [13] for a detailed proof. Definition: Let X and Y be topological spaces. Let / : X Â— Y be a bijection. The function / is called a homeomorphism if and only if both / and its inverse / _1 : Y Â— > X are continuous. Definition: An ndimensional topological manifold is a Hausdorff topological space such that each point has an open set containing it which is homeomorphic to an open set of R". Definition: A coordinate chart on a topological manifold M is a pair (U,x) where U is an open subset of M, and x : U Â— Â» R" is a homeomorphism of U to an open subset x{U) of R n . If one writes x(p) (x x (p ), . . . , x n {p)) for each p 6 M, the resulting real valued functions x x ,...,x n on U are called the coordinate functions of x. Definition: Let U be an open subset of R n and let f : U Â— * R". The function / is said to be differentiable if and only if all partial derivatives of all orders of / exist and are continuous. Definition: Two ndimensional coordinate charts (U,x) and (V,y) are called compatible if and only if the functions x o y 1 and y o x~ l are differentiable. More explicitly, x o y ~ l : y (u n v) Â— x(u n v) and
PAGE 19
11 Figure 2.2. Compatible Coordinate Systems y ox 1 : x(U ft V) Â— > y(U D V) are both functions from R n to R n . The coordinate functions are denoted by 0 y 1 , i = l,...,n and Vi ox \ i = l,...,n. If these coordinate functions are differentiable, then one says the two coordinate charts are compatible. See Figure 2.2 for a depiction of the mappings. Definition: A differentiable structure on a topological manifold M is a family U Â— {U Q ,x a } of coordinate charts on M such that 1. The U a cover M. 2. U a and Up are compatible for any a and 0 in the collection
PAGE 20
12 Figure 2.3. Covering of the Sphere 3. Any coordinate chart (V,y), which is compatible with every (U Q ,x a ), is itself in U. Definition: An ndimensional differentiable manifold is a topological manifold of dimension n, together with a differentiable structure. Example: Consider the unit sphere S 2 = {(a:, y, z)\ x 2 +y 2 +z 2 = 1}. It is shown that S 2 satisfies the definition of a twodimensional differentiable manifold: A topology can be induced on S 2 by defining U to be open in S 2 if and only if there exists an open subset V of R 3 such that U = V D S 2 . This is called the subspace topology on S 2 induced by the standard topology on R 3 . It can be checked that S 2 , with the subspace topology, satisfies the definition of a topological space. It can also be checked that this implies S 2 is Hausdorff, as this property is inherited from the ambient space R 3 . Now let Vff = {{x,y,z)\x > 0} and V~ = {(x,y,z)\x < 0}. Also let V+ = {(x,y,z)\y > 0} and V y ~ = {(x, y, z)\y < 0}. Similarly define Vff. These six sets are open in R 3 . Hence, via the subspace topology, Â£/+ = Vff fl S 2 and Uf = V~ C S 2 are open in S 2 , as are U* and Uf. These sets, which are depicted in Figure 2.3, also cover S 2 . Define
PAGE 21
13 = (*x, 0, ) Figure 2.4. Coordinate Chart on the Sphere < U* Â— R 2 such that (x,y,z) i Â— > (<^ r ,0 x ), where l 4>x = cos' * 2 6 X = sin 1 y. See Figure 2.4 for a depiction of this mapping. Define tt; : U~ R 2 such that (x,y,z) i Â— > { x ,0 x ),
PAGE 22
where (f) x = cos 1 z 6 X = 7r Â— sin 1 y. Similarly define 7 *t(x,y,z) = ( y ,e y ), where (j) y = cos 1 x 0 y = sin 1 2 , and 77 y { X, >y < > z ) ( ( f > yi^y)i where z ,e 2 ), where
PAGE 23
15 z = cos x y 0 z = sin 1 x, and n;(x,y,z) = ( (f> z ,9 z ), where Z = COS 1 y 6 Z = 7r Â— sin 1 x. It is noted that the mappings 7T+, 7 r+, 7T+ are homeomorphisms of the sets UÂ£, Uy, U+ to (0,7r) x (Â— f,f). Similarly, the mappings 7r^",7r~,7rJ are homeomorphisms of the sets U~,U~ , U~ to (0,7 r) x (, ^). Thus, S 2 is a twodimensional topological manifold. Now consider the coordinate transformation < Â° [<]' : n Vi) Â— Â» ir^(ty n (y v + ). Here, {x,@x) (sin x cos 0^, sin sin 0*, cos x ) i^> (cos 1 (sin cos 0 X ), sin 1 (cos ^ x )). Alternatively, ^ 0 [<] 1 = <(Â£Â£ H 27+) Â— 7 r+(C/+ n [/+).
PAGE 24
Here, 16 (fiyi @y) (sin (f> y cos 9 y , sin y sin 0 y , cos 4> y ) ( y , sin 1 (sin y sin 6 y ). Clearly, the functions *Â‘ y Â°[Â’ r 2']" 1 and are differentiable since x , 4> y ^ 0, 7r and 6 x ,6 y ^ Â±f. By similar computations it can be shown that all six mappings are compatible with each other. There is, thus, a natural covering of S 2 by six coordinate charts which determine a unique differentiable structure. This family of coordinate charts can be completed by defining any other mapping to be in the family if and only if it is compatible with the above six. Thus, S 2 is a twodimensional differentiable manifold. Example: Consider the set M nXn of n x n real matrices. It is shown that this set is 2 an R n dimensional differentiable manifold: There exists the natural mapping X : M nXn RÂ” such that 9 ii 9n 1 9 In [9 11 , , <7ln, <721, > 9nn\ This is clearly a bijection. One can define a topology on M nXn in the following manner: Let U be an open subset of M nxn if and only if X(U ) is open in R n2 . With this topology, M nxn is homeomorphic to RÂ” 2 and inherits the differentiable structure on RÂ” 2 . Hence, M nXn is an n 2 dimensional differentiable manifold. Definition: A group is set G with a binary operation 0 such that
PAGE 25
17 1. If g, h are elements of G, then so is g o h. This is called the closure property. 2. If g, /i, k are elements of G, then g o (h o k) = (g o h) o k. This is called the associative property. 3. There exists an identity element e Â€ G, such that eog = got = g for all g 6 G. 4. For each g G G, there exists an inverse element g~ x Â€ G, such that g Â°# _1 = g~ l Â°# = e. Example: Consider the subset G of M of the form < 7 n #12 #13 g x #21 #22 #23 9y #31 #32 #33 #2 .0 0 0 1 with the requirement that f 1 if i Â— j ^ 9ik9jk ~ { 0 if (2J) for i,j = 1, . . . , 3. It is shown that this set is a group under the binary operation of matrix multiplication: Let g Â€ G, and let [g] 3x3 denote the upper left 3x3 minor of g. It can be checked that the requirement given in (2.1) is equivalent to the condition [g]3x 3 [g] 3x 3 = 13X3Here, the superscript t denotes the transpose of the appropriate matrix, and l 3x3 denotes the identity 3x3 matrix. Let g, h
PAGE 26
18 where, in particular, [j] 3 X 3 Â— [g]3x3[h]3x3Thus [j ] 3 X 3 [j ] t 3X3 [g]3x3[h]3x3[h]Â‘ x3 [g]Â‘ x3 [g]3x 3 [g]3x3 13x3Hence, j is an element of G and the closure property is satisfied. The associative property is satisfied by checking that matrix multiplication is associative. Existence of the identity element is satisfied by noting that the 4x4 identity matrix l 4x4 is the identity element of the group. The existence of an inverse element for each element of G is satisfied by checking that <7n <721 <7l2 <722 gh 1 (2.2) is differentiable.
PAGE 27
19 Example: The set G of all 4 x 4 matrices given in the previous example is a Lie group. This is demonstrated by the following argument: It has been shown in the previous example that G is a group. It has also been shown in a previous example that the set M 4x4 of 4 x 4 matrices is a differentiable manifold. Since G is a subset of M 4x4 , it can be endowed with the subspace topology. In particular, define U to be open in G if and only if there exists an open subset V of RÂ” 2 such that U = V D G. A differentiable structure for G can also be defined to be that which is inherited by the differentiable structure for M 4x4 . Thus, G is a differentiable manifold. It remains only to check that the mapping given by (2.2) is differentiable. It is easy to show that, via matrix multiplication, elements of the right hand side of the mapping are simply the sums and products of elements of the two matrices on the left hand side of (2.2). Thus, G is a Lie group.
PAGE 28
CHAPTER 3 THE EUCLIDEAN GROUP 3.1 Euclidean Space Three dimensional Euclidean space E 3 is, at least locally, the space humans live in. There are many ways to study this space. The approach chosen by Euclid was to define a series of geometric objects such as points, lines, and planes together with a set of axioms from which the theorems of geometry could be deduced. One noticeable aspect of this approach is that all work is done without the use of coordinates. Indeed, the introduction of coordinates in the study of E 3 is artificial. One particular method of introducing coordinates on E 3 is based on the choice of scale or length for E 3 , the selection a point of E 3 , and the preference of three mutually perpendicular directions. This induces a bijective mapping of E 3 to R 3 which preserves the distances between points in E 3 and their corresponding points in R 3 . This type of mapping will henceforth be called an orthogonal coordinate mapping on E 3 . It is important to observe that this mapping is arbitrary, as there is no natural way to identify E 3 with R 3 . However, given one such mapping, there then exists a preferred point of E 3 called the origin which is represented in R 3 by the triple B 0 = ( 0 , 0 , 0 ). There also exist three preferred and mutually perpendicular directions on E 3 which are represented in R 3 by 20
PAGE 29
B x = (1,0,0) By = (0,1,0) B z = ( 0 , 0 , 1 ). 21 These four triples define a frame in E 3 and will henceforth be collectively denoted by B = (B x ,B y ,B z ,B 0 ). This is the preferred frame due to the coordinate mapping of E 3 . All other frames are nonpreferred and are expressed in the following manner: Let To Â— (
PAGE 30
22 J~ x ~ a,\\B x + Cl2lBy + O31 &z J~ y Â— Cl\2 B x + a^lBy + a 32&Z F z = Â«13 B x + Q'2zBy + Â«33 B z , and 3 O'X^X T Oyf^y Â“1Â“ ^Z^Z + Bo. Symbolically, one writes T = Bsl where the right hand side of this equation is the formal product of the row of triples forming B and the matrix a defined by a 11 012 Ol3 &x 021 022 Â«23 Oy fl 31 ^32 Â«33 a* 0 0 0 1 The orthonormality condition requires that 3 'y 1 ^ik^jk k = 1 1 if i = j 0 if 1 / j for i,j = Thus, the matrix a is an element of the group G of matrices introduced in Chapter 2. While the frame T is expressed in terms of the preferred frame B, it is possible to generalise this relationship by expressing one arbitrary frame in terms of another. For example, let T and T be frames such that T = B a and T Â— Be
PAGE 31
23 for matrices a, c Â€ G. Then 7 = Ba 7 a. 1 = B 7aT l c Â— Be. Setting g = a 1 c yields F = 7g. It is noted that the element g is interpreted as mapping the frame 7 to the frame 7. It does not involve the preferred frame B. It involves an arbitrary element of G and is, thus, invariant with respect to the coordinate chart on E 3 . An arbitrary point of E 3 , expressed in the frame 7 , is given by the triple Px^X + Py7y + P Z 7 Z + 7o, where p x ,p y ,p z E R are called the coordinates of the point in terms of the frame 7. Let ' Px ' Â’ Px ' Py and p = Py Pz Pz 1 1 represent the column of coordinates of the point in terms of the frames 7 and 7 respectively. The relationship between these coordinates is given by
PAGE 32
24 P x Fx + PyTy + p z Tz + Fo Â— [gwF r + Ql\
PAGE 33
25 Â— [dwF r + 92\F \) + #31 s]Ft + [#12^ x + 922^y + g32^z]v y + [fi , 13^ r c + 923? y + 933^ z]v z Â— [gn v x + 9\2Vy + g^Vz ^ r + [#2lhr + 922^y + 97.3V z\f y + [^ 31^1 + 932V y + 933V z]^ z where the right hand side of this equation is the formal product of the matrix g and the column of coordinates v. In this case, the element g is interpreted as mapping the coordinates of a vector, expressed in terms of the frame JF, to the coordinates of the same vector expressed in terms of the frame T 3.2 Rigid Body Motion in Space and Time It has been shown that any two frames in a Euclidean space E 3 are related by an element of the group G of matrices introduced in Chapter 2. One interpretation of the Euclidean group is to consider it to be the set G of all mappings between frames in E 3 . Using this interpretation, the group can be used to model the motion of a rigid body in space and time. Points connected with a universe at rest with respect to an observer constitute a three dimensional Euclidean space and will henceforth be referred to as the fixed space E 3 . For kinematic purposes, it suffices to consider a body in motion to be of infinite extent. Thus, points connected with a universe at rest with respect to a moving body also constitute a three dimensional Euclidean space that is distinct from the first and will henceforth be referred to as the moving space E 3 . At any time the observer may select an orthogonal coordinate mapping on E 3 and two frames in
PAGE 34
26 E 3 , one which will remain at rest with respect to the fixed space E 3 and be called the fixed frame , and another which will remain at rest with respect to the moving Â— 3 space E and be called the moving frame. If the fixed frame is denoted by T and the moving frame is denoted by T then, from Section 3.1, there exists a matrix g Â€ G mapping the fixed frame T to the the moving frame T . Formally, this is written as g : F Â— + such that It is noted that both frames are expressed in terms of the coordinate chart on the fixed space E 3 and, hence, exist in the fixed space alone. Thus, there is another application for the Euclidean group when it is used as a mapping between frames which exist in the moving space E . This is not of consequence in this work, as all results will only concern the observerÂ’s universe. There is, finally, a third application for the Euclidean group when it is used as a mapping between an arbitrary frame existing in the fixed space to an arbitrary frame existing in the moving space. This group has no physical consequences as there is no natural way to identify such frames. The failure to recognise these applications, and the existence of two distinct spaces, is often the cause of much confusion of terminology in the literature. Now, as the body moves in time, the frame T changes in time, as does the matrix g. Thus, there is a mapping R G such that
PAGE 35
27 This is interpreted as a curve in the Euclidean group. An investigation of the implications of representing the motion of a body in space and time as a curve in the Euclidean group will be examined in further chapters. 3.3 The Euler Parameterization of the Euclidean Group The set G of matrices acting as mappings between frames in E 3 is the interpretation of the Euclidean group that is selected for this work. It was shown in Chapter 2 that this set is a differentiable manifold. If g Â€ G, then the requirement that [g]3x 3 [g]3x3 = *3x3 (3.1) demonstrates that the elements of the matrix are not all independent. Indeed, it is difficult choose from them an independent subset, and to express the other elements of the matrix in terms of this. Thus, the alternate technique of choosing a local parameterization of the manifold involving the Euler parameters will be employed. This is a mapping of [0,2tt) x [0 , tt) x [0,2 tt) xR 3 G such that i Â— g, where g satisfies (3.1). The geometric interpretation of these parameters is achieved by using them to define a sequence of transformations of the frame T to the frame T . Let '1 0 0 h Â‘ 0 10 t 2 0 0 1 <3 0 0 0 1 go =
PAGE 36
28 be the transformation required to map the point to the point !F 0 . See Figure 3.1 for a depiction of this mapping and its relationship to the Euler parameters. Let T\ denote the frame which results from g 0 acting on T . Hence, Tx .Fgo. Consider the line of intersection of the planes formed by the pairs of vectors {T\ x , T Xy ) and {F xi J~y). Let (f) be the right handed angle of rotation about F Xz from ^F\ x to this line of intersection. Define Â•^2 = ^lgl, where cos Â— sin 0 0 0 ' _ sin $ cos (j) 0 0 Sl Â“ 0 0 10 ' .0 0 0 1 . Let 9 be the right handed angle of rotation about T 2x from T 2z to ~T a . Define
PAGE 37
29 T 3 = ^2g2, where g2 10 0 0 0 cos 8 Â— sin 6 0 0 sin 9 cos 6 0 0 0 0 0 0 0 0 1 Thus, T 3z is now coincident with T z . Also T 3x and T Zy lie in the same plane as T x and T y . Let ip be the right handed angle of rotation about T 3z from T 3x to T x . Then ? = ^3g3, where cos ip Â— sin 0 0 sin ip cos 0 0 0 0 0 10 . 0 0 0 1 Thus, T = ^[g0glg2g3] = ^g, where cos cp cos ip Â— sin
PAGE 38
30 Thus, any element of the Euclidean group can be specified using the Euler parameters. It is noted that, via the Euler parameterization denoted by (<^, Vh x , y, z) i Â— > g, one does not achieve a bijective mapping. Indeed, when the a:?/plane of the frames T and T are parallel, there is no unique value for (j> and ip. This is not of concern since the inverse mapping of an element of G to the Euler parameters will never be considered. Thus, these parameters are simply a convenient way to specify a unique element of the group, and will aid in the study of its structure with the use of geometrically meaningful angles.
PAGE 39
CHAPTER 4 TANGENT BUNDLES 4.1 The Tangent Bundle of E n and R n Let p be any point of three dimensional Euclidean space E 3 . The tangent space of E 3 at p, denoted by TpE 3 , is described to be the set of all directed line segments v p with p as their common base. Elements of the tangent space T P E 3 will henceforth be called tangent vectors. The addition of two elements v p ,w p 6 T P E 3 is defined to be the directed line segment with base at p and with tip at the point in E 3 resulting from first moving in the direction of v p , a distance equal to the length of v p , and then moving in the direction w p , a distance equal to the length of w p . The negative of v p , denoted by Â— v p is defined to be the directed line segment with base p, with length equal to that of v p , and with direction opposite to that of v p . The zero vector 0 P is defined to be the null segment consisting of the point p alone. Multiplication of v p Â£ TpE 3 by a positive scalar A Â£ R is defined to be the directed line segment with base at p and with tip, at the point resulting from moving in the direction of v p , a distance equal to A times the length of v p . An exercise in solid geometry will show that T p E 3 is a vector space. Thus, there exists a vector space, called the tangent space, associated with each point of E 3 . The disjoint union of the collection of all these tangent spaces is given by U T r r 3 peE 3 and is called the tangent bundle of E 3 . 31
PAGE 40
32 The goal in this section is to generalise the concept of a tangent bundle by attaching an ndimensional vector space to each point of an ndimensional differentiable manifold. To do so, one must leave E 3 and enter R n , where the intuitive model of a tangent bundle, alluded to above, is quantified in terms of ntuples of real numbers. Let p Â— (pi ,.. . , Pn) and v = (iq, . . . , u n ) be two points of R n . Then T p R", the tangent space of R n at p , is defined to be the collection of pairs of points given by T P R" = {(p,v) p,v Â€ R n }. The pair (p, v ) G T p R n will henceforth be called a tangent vector at p and denoted by v p . Hence, (,Pl> Â• Â• Â• ) Pnt ^1? Â• Â• Â• > V n ). This quantity is interpreted as giving the initial and terminal points of a directed line segment in R n , which starts at the point p and ends at the point p + v, where p+v = (p J +V U ...,Pn +t>Â„). The addition of two tangent vectors U P (Pi > Â• Â• Â• Â» Pni i Â• Â• , Vn) ^ P {Pi ) Â• Â• Â• 5 Pn i ^1 > Â• Â• Â• j W n ) is defined by Vp + W p = (p u . . .,p n ,v 1 + Â«?!,. . . ,V n + W n ). Multiplication of v p by a scalar A Â€ R is defined by Xv p = (pi,...,p n ,At; 1 ,...,At; n ).
PAGE 41
The zero vector is defined by 0 P ee (pi,...,pÂ„,0,...,0). It is a simple exercise to verify that the above definitions define an ndimensional vector space at each point p Â£ R n . It is noted that vectors with different initial points are in no way equated as one does with free vectors in the study of E 3 . Now let / : R 71 Â— > R be a differentiable function such that (^i> Â• Â• Â• , x n ) i > /(aq, . . . , iÂ„). Let c : R Â— >Â• RÂ” be a curve in R n such that t i Â— > (ci(*),...,CÂ»(*)). Then the function /, restricted to the curve c, is given by / o c : R Â— Â» R such that t 1 Â— * f(ci(t),c 2 (t),...,c n (t)). If the curve passes through the point p at time t 0 , then the derivative of / o c at p is given by d{f o c) dt to df dc\ dx\ dt + ...+ *0 0f_ dCr, dx n dt to It is noted that the derivative of the curve c(t ) at t 0 , given by (4.1)
PAGE 42
34 is just a point in R n , whereas the directed line segment from the point dc c(to) to the point c(to) H Â— Â— dt . to is a line segment which is tangent to the curve. With this interpretation, it is clear that this line segment is an element of the tangent space of RÂ” at p. It will henceforth be referred to as the tangent vector to the curve c at time t 0 . For brevity, it will also be denoted by the symbol dc dt (4.3) No confusion will arise since the ntuple given in (4.2) will not be considered again in this work. The quantity given by (4.1) is called the directional derivative of / in the direction of the tangent vector dc dt to It is dependent only on the ntuple given in (4.2) and not on the entire curve c(t). Thus, another curve through p having the same tangent vector dc dt to at p results in the same directional derivative. Indeed, letting h(t) be a new curve, such that h(t) = c i (to) + t ~ *0 at to J it is found that d(foh) dt to d(foc) dt to
PAGE 43
35 In some sense, an arbitrary tangent vector v p is thought of as acting on the function / in the following manner: If V P {Pi i Â• Â• Â• i Pn , Vi , . . . , V n ) then , A df V = 2 >^ : i = 1 ux ' This is the directional derivative of / in the direction Letting ^P (.Pi > Â• Â• Â• > Pn , Ul , . . . , V n ) . (4.4) MO = (Pi +tv 1 ,...,p n + tv n ), then d(foh) pJ ~ dt * The directional derivative has two key properties which are critical to the study of tangent spaces: Let a, f} be real numbers, and f,g be differentiable functions whose domain is an open set containing p. Then the property of acting linearly can be checked by showing that + fa) = av p f + /3v p g. (4.5) The property of satisfying the Leibnitz rule can be checked by showing that Mfp) = M)g(p) + f(p)(v p g). (4.6) These two key properties are now applied to generalise the concept of a tangent vector.
PAGE 44
36 4.2 Directional Derivatives as Operators Acting on Functions One can generalise the concept of a directional derivative to that of an operator acting on a function. Let CÂ°Â°(p) denote the collection of all differentiable functions whose domain is an open subset of R" containing a point p of R n . Let Z>(p) denote the set of all operators taking CÂ°Â°(p ) to R which act linearly and satisfy the Leibnitz rule. Hence, if D\ is an element of T>(p) then D\ (af + fig) = otD\f + fiD x g linearity Di(fg) = (Dif)g(p) + f(p)(Dig) Leibnitz The elements of T>(p) are called derivations on R". Formally, if D x Â£ T>(p), then D\ : CÂ°Â°(p) Â— > R. The set T>(p) is made into a vector space over R by defining the addition of elements of X>(p), and the multiplication of elements of T>(p) by a scalar, in the following manner: If D X ,D 2 are derivations on RÂ” and a Â£ R, then ( D\ + D 2 )f = D x f f D 2 f defn. of addition (Â°A )/ = &D\f, defn. of scalar multiplication where the the operations on the right hand side of these two equations are in R and not T>(p). One must, of course, verify that the operators on the left hand side of these equations are also derivations on R n . Thus, let a ,/?, 7 Â£ R and f,g Â£ CÂ°Â°(p). Then (jDi)(af + fig) = i[D\(af + fig)] by defn. of multiplication = 7 [ a D\f + fiD\g\ by linearity = 7 aD x f + ntfiDig = a(r/Di)f + fifrDjg by defn. of multiplication
PAGE 45
37 and (7D1 )(fg) = n[Di(fg)] = l[{D\f)g(p) + f(p)(Dig)\ = 7 ( 0 i f)g(p) + f(ph(Dig) = [(70i )f]g(p) + /(p)[(70i)s f ]Thus, 7 Di is an element of T>(p). Also, (0i + D 2 )(af + fig) = Di(af + fig) + D 2 (af + fig) = ( a 0i/ + PD\g ) + ( aD 2 f + PD 2 g) = oc(Dif + D 2 f) + P{Dig + D 2 g) Â— Q (0i + D 2 )f + P{D\ + 02 )g and (0! + D 2 )(fg) = 0i(/flf) + 0 2 (/^) = [(DJ)g(p) + f(p)(D ig )} +[W)g(p) + f(p)(D 2 g)} by defn. of multiplication by Leibnitz by defn. of multiplication defn. of addition by linearity by defn. of addition by defn. of addition by Leibnitz = (0i/ + 0 2 /)<7(p) + /(p)(0i<7 + 0 2 <7) [(0i + 02 )f]g(p) + /( p )[( 0 i + D 2 )g\. by defn. of addition Thus, D\ + D 2 is an element of 0(p). Hence T>(p) is a vector space. The relationship between T p R n , the tangent space of R n at p , and V(p), the vector space of derivations on R", is now investigated. Let v p G T p R n be interpreted as an operator acting on a function / Â£ CÂ°Â°(p) in the manner described by (4.4). This results in the real value called the directional derivative of / in the direction v p . Thus, as an operator, : CÂ°Â°(p) Â— > R.
PAGE 46
38 Also, by the properties of the direction derivative given in (4.5) and (4.6), v p acts linearly and satisfies the Leibnitz rule. Thus, elements of T v R n are also derivations on CÂ°Â°(p ) and hence elements of T>(p). In turn, it is claimed that every derivation on R n can also be considered to be a tangent vector. That is, T p R n and T>(p) are, in fact, the same vector space. To prove this, it must be shown that for every D E P(p) there is a tangent vector v p E T p R" such that Df = v p f for every / E CÂ°Â°(p). Hence, let D be a derivation on R n . Define Vi ' R n Â— + R to be the i th coordinate function such that, for any x = (x 1? . . . , x n ) E R 71 , Vi(x) = i, ...,Â£Â„) = Xi. Thus, yi E CÂ°Â°(p) and one can define V{ to be the real number such that Vi = Dy { . Consider the tangent vector with coordinates V P = {Pl,Â‘,Pn,Vi,...,V n ). As an operator on / E CÂ°Â°(p), it yields , " df , . v pf = E v iQiP)!=1 ux, On the domain of definition of /, the function can also be represented as
PAGE 47
/(.) = m + /; dt since df\p + t(x dt f\p + t(x p)]\] =0 /(*) Â“ f(P)Hence, f( x ) fdf\p + t(x p)] d[p,+ t(yj p,)] Â—> dxi dt /(a) + dt. p+t(xp) Define The functions for * = 1, , dt for i = 1, . . . , n. p+t(xp) n are elements of CÂ°Â°(p), where Thus, 9<(P) = g( P ). f( x ) = f(p) + Pi)9i( x ) Â«= i and Df = D[f(p) + Y,(yi ~ Pi)gi(x )] i=l
PAGE 48
40 = 0 + J2\. D (yi Pi)\9i(p ) + (p.Â«=x df , . = i=l ux ' = Vpf , Pi)D{g t ) where ^p (Pi > Â• Â• Â• ) Pn ) Vi , . . . , U n ) . Therefore, every derivation on R" is a tangent vector operating on CÂ°Â°(p). Thus, T p R n and T>(p) are isomorphic vector spaces. Using this result, the basis for T p R n , given by e l p = (Pl,...,p n ,l,0,...,0) Snip = (Pit Â• Â• Â• ,Pn, 0, 0, ... , 1), is represented by the operators d d dx n p respectively, and is considered to form a basis for V(p). Henceforth, when the tangent vector at a point p of RÂ” is referred to, its dual role as an operator on CÂ°Â°(p) and an element of T>(p) will also be implied. The simplest example of a manifold with a tangent bundle is that of R. Let c : R Â— i R such that
PAGE 49
41 t c(t) is an element of CÂ°Â°(to), for t 0 Â€ R . This curve is interpreted as movement along the real in time. The tangent space to R at t 0 is spanned by the single vector d_ dt to The tangent vector to the curve c(t) at time t 0 is given by dc dt to and is a vector originating at the point c(to ) and having magnitude representing the speed of the movement along the line. 4.3 The Tangent Bundle of Differentiable Manifold The concept of a tangent bundle is now generalised by attaching an ndimensional vector space to each point of an ndimensional differentiable manifold. Let M be such a manifold. Let V be an open subset of M, and let / be a function such that / Â•' V Â— * R. Let (U,x) be a coordinate chart on M such that U fl V / Then / is called differentiable if and only if fox 1 : x(U D V) Â— * R is differentiable. See Figure 4.1 for a depiction of this mapping. It is noted that x(U n V ) is an open subset of R n , since the coordinate chart x is a homeomorphism
PAGE 50
42 Figure 4.1. Differentiability on a Manifold of U to x(U). Thus, the question of differentiability has effectively been transferred from the manifold back to R". As in the case of R", one defines CÂ°Â°(p ) to be the collection of differentiable functions whose domain is an open subset of M containing a point p of M. Let / : M m Â— N n be a mapping of an m to ndimensional differentiable manifold. Then / is called differentiable if and only if for every p E M there exist coordinate charts (U,x),(V,y) containing p,f(p) respectively such that 1/ C f(U), and the mapping yofox 1 : x(U) Â— y(V) is differentiable. Here, x(U) is an open subset of R m and y(V) is an open subset of R n See Figure 4.2 for a depiction of this mapping. The tangent space to M at p is denoted by T p M and is defined in the following manner: Let a, /? Â£ R and f,g E CÂ°Â°{p). Then v p ,w p E CÂ°Â°(p) are operators such that
PAGE 51
43 Figure 4.2. Differentiability Between Manifolds u p : CÂ°Â°(p) R and satisfy the conditions v P ( a f + fig) = av p f + fiv p g (4.7) and v p(fg) = M)g(p) + f(p)(v p g). (4.8) As in the case of TpR", T P M is made into a vector space by defining the addition of elements of T p M , and the multiplication of elements of T p M by a scalar in the following manner: If vi,v 2 are elements of T P M, and a e R, then define (Â«1 + V 2 )f = Vi f + v 2 f (4.9)
PAGE 52
44 (avx)f = ot(vif ) (4.10) The elements of this tangent space are again called tangent vectors. It can easily be checked that, together with the definitions given in (4.9) and (4.10), and the properties given in (4.7) and (4.8), T P M satisfies the definition of a vector space. Thus, there exists a vector space, called the tangent space, associated with each point of a differentiable manifold. The disjoint union of the collection of all these tangent spaces, given by U T r M, pÂ£M is called the tangent bundle of M. Derivations on a manifold do not lend themselves to a geometric interpretation as readily as derivations on R n . Thus, one transfers the action of a derivations on M to that of an action on R n . This is done in the following manner: Let F : M Â— > N be a differentiable mapping of manifolds. Let v p G T p M and / G CÂ°Â°(F(p)). Define F* : T P M Â— 7V( P )M such that ( F*v p )f = v p (f o F). It is claimed that this is a linear mapping of tangent spaces. It is first shown that F+v p is, in fact, an element of Tp^M . That is, F*v p must satisfy (4.7) and (4.8). Let a,/? G R and f,g G CÂ°Â°(F(p)). Then ( F m v p )(af + [3g ) Â— v p [(af + f3g) o T 1 ]
PAGE 53
45 = v p [a(f Â° F) + (3(g o F)\ = av p (f o F) + /3v p (f o F ) = a(FÂ„v p )f + /3(F*v p )g. Hence, F+v p acts linearly on functions. Also ( F *v r )(fs) = Â’'pVf'J) 0 F \ = v p {(f Â° F)(g o F)} = M/ 0 F )]s(e(p)) + f(F(p))vÂ„(g o F) = Wv r )f]g(F(p)) + f(F(p))[(F.v p )g). Hence, F*v p satisfies the Leibnitz property. Finally, the mapping F* must also be shown to preserve the addition and scalar multiplication properties of vector spaces. Thus, let a, /? G R and v p , w p Â€ T P M and / G CÂ°Â°F{p). Then [F*(otv p + /3wp)}f = (av p + 0w p )(f o F) = OLVp(f o F) + /3w p (f o F) = a(F*v p )f + f3(F t Wp)f = [ a(F m v p ) + f3(F m Wp)]f. Thus F Â» is a linear mapping of tangent spaces. The mapping F * is called the tangential mapping induced by F . It has one immediate property which shall be demonstrated. If F : L Â— M and G : M * N, then Go F : L Â— > N. Hence, if v v G T P L and / G CÂ°Â°(G(F(p)) , then
PAGE 54
46 [(GoF) m v p ]f = v p (f o G o F) = (F.v p ){foG) = [G.(F.v p )]f = [(G. o F m )v p ]f. That is, ( G o F)Â» = G* o FÂ„. (411) The geometric interpretation of the tangential mapping is now examined. Let (U,x) be a coordinate chart on M containing p. Since x is differentiable, it induces the tangential mapping xÂ» : T P M Â— T x ( p )R n such that for v p Â€ T P M and / G CÂ°Â°(x(p)), (x*Vp)f = v p (f ox). (4.12) Since x : U Â— Â» x(U) is a homeomorphism, then x o x _1 is the identity mapping on x(f7) and x _1 o x is the identity mapping on U. Thus, (x o x 1 ), = xÂ» o xÂ” 1 by (4.11), which is just the identity transformation on T x(p) R n . Also (x 1 o x)* = x~ l o x, by (4.11), which is just the identity transformation on T P M. Hence, xÂ» is a vector space isomorphism of T p to T x{p) and one can conclude that T p M is of dimension n.
PAGE 55
47 To be meaningful, this mapping should be invariant with respect to the local coordinate chart chosen. Thus, an examination of an explicit representation of this mapping in different local coordinates is useful. This may also help in achieving a geometric interpretation of the tangential mapping. Let x : U Â— * RÂ”, and p Â€ U, such that x (p) = (Â®i(p), Â•Â•Â•,*Â«(?))Â• Let ni : R n Â— > R be the i th co ordinate function on R n such that Â• Â• Â• i Â®n) Â— Â®iDefine x, = 7r t o x to be the i th coordinate function on U. If v p is a tangent vector in T P M , then x,u p is a tangent vector in T p R". From the analysis of derivations on R" given in Section 4.2, it is known that xÂ„v p has the form " d x ' v v = Â£ ^ nT T .=1 ux t x(p) for real constants Vi,...,v n . These constants are called the directional components of v p with respect to the coordinate chart (17, x). Indeed, Vi = (x*u p )(7r,) = v p (iri ox) = v p (xi). (4.13) If (U,x) and (V,y) are both coordinate charts containing p, then xÂ„u p and yÂ„v p have the form A d X * V P = i=l Â® X ' x(p) n 8 y*vp = Y,h jr ,= i dy* x(p) (4.14)
PAGE 56
48 respectively for real constants o for i Â— 1 These expressions must represent the same vector in terms of the coordinate charts systems (U,x) and (V, y). Furthermore, Pi = v P (yi) by (4.13) = v p (yi o x _1 o x) = ( x *v p )(yi ox' 1 ) by (4.12) Â— 'T n n 9 (WÂ° X1 ) ^ j=l 3 \ x{p) by (4.14) It is noted that d(yi ,ox *) dxi J nXra is the Jacobian matrix of the R" to R n function y o x _1 , Hence, one can conclude that the representation of a tangent vector in a particular coordinate system changes according to the Jacobian of the coordinate transformation. The geometric interpretation of the tangential mapping and its effect on tangent vectors is illustrated by a simple example. Let c : R Â— > M be a curve in a manifold Af, through the point p such that p = c(t 0 ). Then c, is the mapping given by T i0 R T P M such that d_ dt d_ dt to to
PAGE 57
49 Let (t/,x) be a coordinate chart containing p. Then the directional components of the above vector with respect to the coordinate chart (Â£/, x ) are given by (4.13) which yields where c; = x,o c. It is noted that (xoc)(<) = (ci cÂ„(t)) are the coordinates of the curve c(t) with respect to the coordinate system (U,x). Thus, the directional components of the tangent vector to (x o c)(Â£) are given by is the tangent vector to the curve c(f) at time to. See Figure 4.3 for a depiction of this mapping. Now, if F : M Â— > N is a differentiable mapping of manifolds, then c(t) is a curve in M, and (F o c)(t) is a curve in N. Let p = c(f 0 ) and q = (F o c)(t 0 ). Define d to be the tangent vector to c(t) at time t 0 and Thus, d to
PAGE 58
50 to be the tangent vector to (F o c)(t) at time t 0 . Then /'* Up < Fo Â‘>S Wq. Let (U,x), (V,y) be coordinate charts on M and N containing p and q respectively. Then y o F o x 1 : R TO Â— R n is the coordinate representation of F with respect to (U,x) and (V,y). Let v { and w i be the directional components of v p and w q with respect to (U,x) and (V,y) respectively. Then
PAGE 59
51 Here, Wi = rÂ° c >s d(yi o F o c) Vi dt t 0 ' to d(t)i o F o x 1 o i o c) dt yr d(yj o F ox *) c)x j = 1 ux 3 y, d{yi o F ox~ l ) r)x j=l <0 d(xj o c ) dt to dÂ°j dt to = E 3 = 1 d(yi o F o x 1 ) dxj p . Vj. d(yi oFox *) dx; J J mXn is just the Jacobian matrix of the coordinate representation of F with respect to (U,x) and (V,y). See Figure 4.4 for a depiction of the tangential mapping between manifolds.
PAGE 60
52
PAGE 61
CHAPTER 5 THE TANGENT BUNDLE OF THE EUCLIDEAN GROUP 5.1 The Tangent Space at the Identity Element One may recall the interpretation of the Euclidean group, given in Section 3.2, as the set G of all mappings between frames in E 3 . One may also recall the Euler parameterization of the Euclidean group given in Section 3.3 via the mapping [0,27t) x [0, 7r) x [0, 27r) x R 3 Â— G such that (,0,ip,x,y,z) i Â— g. In particular, let g be a mapping from a fixed frame T to a moving frame F . A curve in the group is given by the mapping g : R Â— + G and is represented symbolically as S(t) = In this Section, such curves are used to study the structure of T e G, the tangent space at the identity element e of the Euclidean group. Consider a particular curve formed by restricting the Euler parameters such that 53
PAGE 62
54 x = y = z = 0 cj) = xj) = 0 e = t This results in a curve through e and is represented by g(0 = g(0,t,0,0,0,0). In matrix form, this curve is given by 1 0 0 0 ' 0 cos t Â— sin t 0 0 sin t cos t 0 0 0 0 1 . Recalling Figure 3.1, it is seen that this curve corresponds to a rotation about the xaxis of the fixed frame. The directional components of the tangent vector at e to this curve will henceforth be denoted by u> x and are given, in matrix form, by g(0 = = g(0) = '0 0 0 0 0 010 0 10 0 .0 0 0 0 It is useful to keep the directional components of tangent vectors in matrix form for the moment, as it will aid in taking note of some skew symmetries which exist. Indeed, it is observed that the rotational part of the above matrix, corresponding to the upper left 3x3 minor, is skew symmetric. Next, consider restricting the parameters such that x = y = z = 0
PAGE 63
55 0 = i This results in a curve through e that has the form Â«(*) = cos t 0 0 1 Â— sin t 0 0 0 sint 0 cos t 0 0 ' 0 0 1 This curve corresponds to a rotation about the yaxis. The directional components of the tangent vector at e to this curve will henceforth be denoted by u> y and are given by Â“v = g(0) = 0 0 10 ' 0 0 0 0 10 0 0 0 0 0 0 It is noted that the upper left 3x3 minor is again skew symmetric. Next, consider restricting the parameters such that x = y = z = 0 = 9 = 0 (f> = t This results in a curve through e that has the form g(0 = cos t sin t 0 0 Â— sin t 0 O' cos t 0 0 0 1 0 0 0 1
PAGE 64
56 This curve corresponds to a rotation about the zaxis. The directional components of the tangent vector at e to this curve will henceforth be denoted by u z and are given by u z = g(0) = Â‘ 0 1 0 0 " 10 0 0 0 0 0 0 0 0 0 0 The upper left 3x3 minor is again skew symmetric. The tangent vectors to curves representing pure translations through the identity element are examined next. Consider restricting the parameters such that = 9 = = 0 y = z = 0 x = t This results in a curve through e that has the form g (0 = i o o t 0 10 0 0 0 10 0 0 0 1 This cuive corresponds to a translation along the a;axis. The directional components of the tangent vector at e to this curve will henceforth be denoted by v x and are given by .0 0 0 1 ' 0 0 0 0 0 0 0 0 0 0 0 0 v * = g(0) =
PAGE 65
57 Similarly, the directional components of the tangent vectors at e to curves corresponding to translations along the yaxis and zaxis will henceforth be denoted by v y and v z respectively and are given by ' 0 0 0 0 ' 0 0 0 1 Vy 0 0 0 0 . 0000 . and ' 0 0 0 0 ' 0 0 0 0 0 0 0 1 .0 0 0 0 . respectively. For convenience, the directional components given by the set if^xi My 1 ^zi Vxi Vy, v z ), (5.1) will often be identified with the tangent vectors themselves, though it should be understood that a tangent vector formally consists of a pair of matrices, one containing positional components, and the other containing directional components. It is claimed that the tangent vector at e to any differentiable curve through e is composed of a linear combination of (5.1). That is, this set forms a basis for T e G. Before this claim is justified, it is necessary to introduce some additional concepts. 5.2 The Right Tangential Mapping Let an element g G G represent a mapping from a fixed frame T x to a moving frame TiLet h 6 G. Let
PAGE 66
58 Rh : G G be defined by g i Â— > gh. This mapping multiplies an arbitrary element of the group, on the right by the given element h. If g = g (t) is a curve in G, interpreted as the motion of a body in space and time with respect to the fixed frame T\ and the moving frame T 21 then #h(g ( 0 ) = g(*) h (5.2) is also a curve in G and is interpreted as the same motion of the body, but with respect to different frames of reference. Indeed, let be a frame at rest with respect to the moving space such that F 2 R 3(5.3) The curve i? h (g(t)) then results in 8(0 sr~ h J 1 1 * vT 2 1 > 3Thus, R h (g(t)) is interpreted as representing the same motion of the body, but with respect to T\ and T 3 . Here, the change in the frame at rest with respect to the moving space is given by (5.3). It can be checked that the mapping R^ is differentiable by using the differentiable structure for G introduced in Chapter 2 and noting that the elements comprising the result of the mapping are simply the sum and product of the elements of the given
PAGE 67
59 matrix h and the variable matrix elements of g. Thus, the mapping R h induces a tangential mapping called the right tangential map , which is given by [i?h]* Â• 2g(<)G > Tg( t )i x G. (5.4) It is claimed that (5.4) is a bijection of vector spaces. This is proved by the following argument: Since [Rh 0 Rh~i] = [fyi1 0 Rh] = lG, then [f?hÂ°#hi]* and 0 Rh]* are both the identity tangential mapping on all points of G. Applying the rule for the composition of tangential mappings given in (4.11) results in [i?h 0 #hi]Â» = [i?h]*[Rhi]* and [Rh1 0 Rh]* = [RhiMRh]*Thus, [i?h]. and are inverses of each other, requiring that (5.4) be a bijection. Furthermore, since all tangential mappings preserve the properties of addition and scalar multiplication, [i?h]* is a vector space isomorphism. Now, consider a time t 0 and the tangent vector to the curve g(f) at t 0 . This is an element of T g ( to )G, and is given by dt to = g(
PAGE 68
60 where g(t 0 ) indicates the derivative of g with respect to time, evaluated at time t 0 . Also, consider the mapping ^g'Oo) : G Â— >G applied to the curve g(t). This results in the curve R gHto)S(i) = g(0g _1 (*o). The tangent vector to this curve at t 0 is an element of T e G since Rgi(t 0 )g(to) = e. Using the properties of matrix multiplication, this tangent vector is given by 4ftgM*o)g(*)] dt *0 <*[g(*)g *(* 0 )] dt g _1 (*o) *0 ^g dt to = g(
PAGE 69
61 If g (t) is interpreted as the motion of a body in space and time, the fixed generalised axode of the body at any time t is given by X(<) = [fl a i(t)]*g(0 = g(*)g _1 (0This is interpreted as a vector curve in T e G. Since g (t) is the tangent vector to the curve g (t) at the point g(t), it must be a linear combination of a set of basis vectors for Tg( t )G. By the isomorphic tangential mapping given in (5.7), X(<) must be a linear combination of a basis for T e G. It is claimed that, in particular, it is a linear combination of the vectors u ) x ,u y ,u z , v x , v y , v z summarised in (5.1). Indeed, since the curve g (t) is arbitrary, and X(Â£) is the image of the tangent vector g (t) via (5.7), then (5.1) must form a basis for r e G. Before this is proved, it may be helpful to calculate the fixed generalised axode of a particular motion and demonstrate its physical interpretation. Consider a cylinder of radius r rolling along a flat surface. This motion is represented by the relative motion of the frame 7 with respect to the frame 7. The frame 7 is defined to be at rest with respect to the cylinder, whose points are identified with the moving space Â— 3 E . The frame 7 is defined to be at rest with respect to the observer who is identified with the fixed space E 3 . Let 7 be chosen such that 7 0 lies on the axis of the cylinder and 7 x is parallel to the axis of the cylinder. Also, let 7 be chosen such that 7 and 7 aie coincident at time t = 0. See Figure 5.1 for a depiction of these frames and the cylinder. With this choice of frames, let g (<) represent the mapping of the frame 7 to 7, and be given by
PAGE 70
62 g(x,Uy,u)z,v x ,v y ,v z of which it is composed, one finds
PAGE 71
63 X(<) 1 0 0 0 mÂ—r rO(t ) The physical interpretation of X(t) is now more apparent. The first three components represent the angular velocity of the cylinder at the given time. Recalling that that one can identify the body with the moving space, thus making the assumption that the cylinder is of infinite extent, it is seen that last three components represent the translational velocity of the point in the cylinder that is coincident with the fixed frame at the given time. It is noted that all the components of the fixed generalised axode are given in terms of the fixed frame. It is now proved that w t ,w y ,u z , v x , v y , v z are, in fact, a basis for T e G. Since g(f) can be rewritten as g(*o) dgdy dgdz d(f> dt dO dt dtp dt dx dt dy dt dz dt Â’ it is seen that X(t) is composed of the sum of the following six components: ( 5 . 9 ) ' 0 1 0 y dgdp Â— 1 / . \ l 0 0 Â—x d(p dt g (0 = t 0 0 0 0 . 0 0 0 0 ' 0 0 sin
PAGE 72
64 0 Â— cos 9 Â— cos sin 9 cos 9 0 Â— sin sin 9 Â—x cos 9 + z sin sin 9 x cos (f> sin 9 Â— y sin t dg d9 d9 dt g ~\t) {cos p[u x ] + sin p[u y \ Â— z sin sin #)[uj,] Â— (xcos^sinfl + ys\nps\n9)[v z ]} t xp t
PAGE 73
65 Thus, it is seen that (5.6) can be written as a linear combination of ix> x ,u y ,u> z , v x , v y , v z in the form where S x , S y , S 2 , S ox , S oy , S oz are scalar functions of time. Therefore, the vectors :i U} yi 0J ziV X iV y ,v z form a basis for T e G. The scalar functions are the directional components of the tangent vector X(Â£) which were previously contained in its matrix representation. For brevity, the fixed generalised axode will often be written as the ordered column of these scalar components. Hence, m= cos sin Otp sin 9 Â— cos <{> sin 9ip (f> + cos 9%l> L s t (5.10) It is observed that the fixed generalised axode can be rewritten as
PAGE 74
66 X(t) cos pd + sin p sin dip sin + cos dp) Â— z(sin pd Â— cos p sin dip) + x Â—x(p + cos dip) + z(cos pd + sin
PAGE 75
67 represents the velocity, due to the rotation of the moving frame, of the point in the body that is coincident with the fixed frame. 5.3 The Left Tangential Mapping So far in the study of the tangent bundle of the Euclidean group, the mapping f?h> representing multiplication of an arbitrary element of the group on the right by the element h, has been introduced. This mapping, given by g (t) and acting on a the motion of a body in space and time, has been interpreted as the same motion of the body, but with respect to different frames of reference. In a similar fashion, multiplication of an arbitrary element of the group on the left by the element h, is analysed. Let an element g Â£ G represent a mapping from a fixed frame T\ to a moving frame JF 2 . Let h Â€ G. Let L h : G Â— G be defined by g 1 Â— * hgThis mapping multiplies an arbitrary element of the group on the left by the given element h. If g = g (t) is a curve in G, interpreted as the motion of a body in space and time with respect to the fixed frame T\ and the moving frame then Â£h(g(0) = hg(*) (5.11) is also a curve in G and is interpreted as the same motion of the body, but with lespect to different frames of reference. Indeed, let Fq be a frame at rest with respect to the fixed space such that
PAGE 76
68 To T x . The curve Th(g(0) then results in 'V . ti ^ 8(0 rj 0 1 * 1 1 2 (5.12) Thus, Th(g(t)) is interpreted as representing the same motion of the body, but with respect to Tq and JF 2 . Here, the change in the frame at rest with respect to the fixed space is given by (5.12). Lh can be checked to be differentiable in the same manner that i?h has been. Thus, it induces a tangential mapping called the left tangential mapping , which is given by [Â£h], : T g ( t )G Â— > Th g (t)G. (5.13) It is claimed that (5.13) is a bijection of vector spaces. This is proved by the following argument: Since [Lh Â° Thi] = [Thi o Â£h] = 1 g> then [4Â°4i]. and [T h ioZ, h ], are both the identity tangential mapping on all points of G. Applying the rule for the composition of tangential mappings given in (4.11) results in [Th o Thi]* Â— [Th]*[^hi]* and
PAGE 77
69 [Ihi Â° ^h]* = [^hi]Â»[^h]Â»Thus, [Th]Â» and [Th1 ]* are inverses of each other, requiring that (5.13) be a bijection. Furthermore, since all tangential mappings preserve the properties of linearity and scalar multiplication, [T^]* is a vector space isomorphism. Now, consider the mapping LgHto) 'Â• G Â— * G applied to the curve g(Â£). This results in the curve L gHto)S(t) = g 1 (*o)g (<)Â• The tangent vector to this curve at t 0 is an element of T e G since T g _i (to) g(Â£ 0 ) = e. Using the properties of matrix multiplication, this tangent vector is given by d [ L gHto)S(t)] dt dt = . = g (
PAGE 78
70 [ i s1 (Â‘o)]*g( < o) = g 1 (t 0 )g(t 0 ). (5.15) This tangent vector shall henceforth be called the moving generalised axode of the curve g (t) at t 0 and will be denoted by X(t 0 ). It will be shown, in the next chapter, that this tangent vector is intimately related to the fixed generalised axode. If g(t) is interpreted as the motion of a body in space and time, the moving generalised axode of the body at any time t is given by x(<) = [VmoUW = g 1 (0g(0This is interpreted as a vector curve in T e G. Hence it must also be a linear combination of the vectors u> x ,oj y ,u> z ,v x ,v y ,v z summarised in (5.1). Before this is shown, it may be helpful to calculate the moving generalised axode of a particular motion and demonstrate its physical interpretation. Consider, again, the cylinder analysed in Section 5.2. This is depicted in Figure 5.1 and parameterized by (5.8). Then, at time t , x (0 = g (<)g(<) 1 0 0 0 ' 0 0 0 0 0 cos 6{t) sin 8{t ) r8(t ) cos 6(t) 0 Â— sin 88 Â— cos 86 r8 0 Â— sin6(t ) cos 6{t) Â— r$(t ) sin 8{t) 0 cos 68 Â— sin 66 0 0 0 0 1 t . 0 0 0 0 0 0 0 0 0 1 0 0 0 Â— r cos 6{t) rsin 8(t ) 0 Thus, X(i), written as a linear combination of the basis vectors summarised in (5.1), yields
PAGE 79
71 X(f) = ([u; x ] r cos 9(t)[v y ] + r sin 0(f)[uj])0(i). Alternately, X(t) can be written as m = i 0 0 0 Â— r cos 9(t) r sin 9{t ) The physical interpretation of X(t) is now more apparent. The first three components represent the angular velocity of the cylinder at the given time. In this case they are given in terms of the moving frame. The last three components represent the translational velocity of the point in the cylinder that is coincident with the moving frame at the given time. These are also given in terms of the moving frame. Thus, it is noted that all components of the moving generalised axode are given in terms of the moving frame. An explicit expression for X(f) is calculated by a manner similar to that of X(f). Since g(< 0 ) is given by (5.9) then X(< 0 ) is composed of the sum of the following six components: 0 Â— cos 9 cos r/>sin# 0 ' dg d(j> cos 9 0 Â—simp sin 9 0 d t
PAGE 80
72 g \t) dg dip dip dt t Â’ 0 1 0 O' 10 0 0 0 0 0 0 0 0 0 1 A g1 ^) dg dx dx dt 0 0 0 cos sin0 0 0 0 cos ip sin 0 0 0 0 cos 9 0 0 0 1 Comparing the above six equations with the definitions of v x , 0 J y ,u> 2 ,v x ,v y ,v ; marised in 5.1, results in the following substitutions: g ~\t) dgd4 d
PAGE 81
73 g1 ^) dg dx dx dt { (cos cos xp Â— sin cp sin xp cos 6) [u x ] + (Â— cos ^ sin 0 Â— sin^cos ipcosQ)[v y ] + sin <^sin 0[u z ]}i* g\t) +(Â— sin <^> sin xp f cos <^>cos xp cos 0)[v y \ Â— cos cos xp + cos <^sin xp cos 0)[v x \ g (0 dg dz dz dt = {sinV>sin0[n x ] + cos xp sin0[t> y ] + cos 0[u 2 ]}i t . Thus, it is seen that (5.14) can be written as a linear combination of u x ,L)y,u> z ,v x ,v y ,v z in the form X(<) Â— (d X UJ x + SyUJy + S Z U Z + S OX V X + S 0 yVy + S OZ V Z )(t), where S x , S y , S z , S ox , S oy , S oz are scalar functions of time. Alternately, X(t) can be written as X(t) = sin xp sin 6 sin xp + cos
PAGE 82
74 It can be checked that [X(t)]i Â— sin ip sin Ocp + cos xpd cos xp sin 6
PAGE 83
75 Also, [X(<)] 0 is simply the components of the translational velocity of the moving frame with respect to the fixed frame, given in terms of the moving frame. This is again just the translational velocity of a point in the body that is coincident with the moving frame. Thus, it is seen that both generalised axodes are interpreted in the same way physically, but with respect to different frames or reference.
PAGE 84
CHAPTER 6 THE ADJOINT MAP 6.1 The Composition of Mappings In Section 5.2 and 5.3, two special cases involving the composition of elements of G were used to derive expressions for the fixed and moving generalised axodes. In this chapter, the composition of elements of G are analysed in more detail. The fixed and moving generalised axodes of the motion of a body in space and time are seen to be affected by the two special cases of composition. The relationship between these two axodes, briefly introduced in Section 5.3, is explored more deeply. Finally, it is shown that these axodes are actually two special examples of a generalised axode and that, in fact, there exists a generalised axode associated with each selection of a frame in the fixed space. Let gi(t) be the mapping of the frame To to the frame T\ as a function of time. Then To ^ Ti. Let g 2 (f) be the mapping of the frame T to the frame T 2 as a function of time. Then T ^ t 2 . The composition gi(*)g 2 (*) is then a mapping of the frame T 0 to the frame T 2 as a function of time. That is, T 0 ^ jr 2 . 76
PAGE 85
77 Physically, this is interpreted in the following manner: Define T 2 be a frame at =3 rest with respect to a Euclidean space E . Define T\ be a frame at rest with respect Â— 3 to a Euclidean space E . Define Fo be a frame at rest with respect to a Euclidean Â— 3 space E 3 . Then the motion of the space E with respect to the space E 3 is given by the mapping gi(t)g 2 (f) of the frame Tq to the frame T 2 . As a simple example, let g 2 (t) be given by 8a(0 = and let gi(t) be given by 10 0 0 0 cos 6(t) Â—sin 6(t) 0 0 sin 9(t) cos 6{t) 0 0 0 0 1 ( 6 . 1 ) gi(0 = 1 o o 0 0 0 1 0 0 Â—r6{t) 0 1 (6.2) Then g 2 (f) represents a rotation of the frame T 2 about the araxis of the frame T x , while gi(f) represents the translation of the frame T\ along the negative yaxis of =3 the frame Tq. Thus, the space E is rotating with respect to the space E 3 , while Â— 3 E is translating with respect to E 3 . The composition gi(t)g 2 (t) then results in a 3 combined rotation and translation of E with respect to E 3 . This motion can be interpreted as the rolling cylinder encountered in Section 5.2. 6.2 Composition Interpreted as a Change in Frames Let g(t) be a mapping of the frame T\ to the frame J2 as a function of time. Let h be a fixed mapping of the frame T 2 to the frame Tj,The composition g(f)h is then given by the mapping
PAGE 86
78 Define the frame T\ to be at rest with respect to a space E 3 , and Ti, Tz to be at Â— 3 = 3 rest with respect to E , E respectively. Since T\ and Tz are related by the fixed Â— 3 =3 mapping h, it is seen that E and E are at rest with respect to each other. If the mappings are interpreted as the motion of a body in space and time, then g(f) and g(f)h are seen to represent the same motion of the body in space and time, but with a change in the frame at rest with respect to the moving space that is given by T 2 T 3 . This situation was initially introduced via the mapping i?h acting on the motion g (t) as described in Section 5.2. In a similar fashion, consider redefining h to be a fixed mapping of the frame To to the frame T\. Let g (t) remain a mapping of the frame T\ to the frame T 2 as a function of time. The composition hg(f) is then given by the mapping J 0 1 * J 1 I > T 2 . Define the frame To to be at rest with respect to a space E 3 , and T\, T 2 to be at 2 Â— 3 rest with respect to E , E respectively. Since To and T\ are related by the fixed mapping h, it is seen that E 3 and E are at rest with respect to each other. If the mappings are interpreted as the motion of a body in space and time, then g(t) and hg(t) aie seen to represent the same motion of the body, but with a change in the frame at rest with respect to the fixed space that is given by To^Tl
PAGE 87
79 motion fixed frame T\ moving frame T 2 g(*) no change no change g(0 h no change change by h to T$ hg (*) change by h 1 to no change Table 6.1. Interpretation of Changing Frames via Composition This situation was initially introduced via the mapping L h acting on the motion g (t) as described in Section 5.3. The effect of the operation of composition interpreted as a change in frames is summarised in Table 6.2. It is noted that the motion of the body remains invariant in this description. 6.3 The Effect on the Fixed and Moving Generalised Axodes The effect of a change in frames on the fixed and moving generalised axodes is now investigated. Let g(t) be a mapping of the frame T\ to the frame as a function of time. Interpreting g (t) as the motion of a body through space and time results in the fixed and moving generalised axodes of the motion being given by x (0 = g(0g _1 (<) and respectively. The effect of a change in the fixed frame on the fixed and moving generalised axodes is analysed first. Let h be a mapping of the frame T 2 to the frame T z . Then it has been seen that the mapping g(*)h corresponds to the same motion of the body, but with a change in the moving frame that is given by
PAGE 88
80 Ti A jr 3 . The fixed and moving generalised axodes of the motion are then given by Â“WÂ«)b]= g(<)hh'g'(() = g(0g _1 (0 = m [g(0h]x <*[g(0 h ] dt h'g^OgCOh h^g^OgWJh h" 1 X(0h respectively. Thus, a change in the moving frame leaves the fixed generalised axode invariant and affects only the moving generalised axode. This is consistent since the fixed generalised axode is composed of components given in terms of the fixed frame, which remains unchanged. In contrast, the moving generalised axode is composed of components given in terms of the moving frame that is affected by the mapping h. In a similar fashion, the effect of a change in the moving frame on the fixed and moving generalised axodes is analysed. Redefine h to be a mapping of the frame Tq to the frame T\. Then the mapping hg(<) corresponds to the same motion of the body, but with a change in the fixed frame that is given by fo ^ Tx.
PAGE 89
81 The fixed and moving generalised axodes of the motion are then given by and ^pWr* = hg(() g (()hÂ‘ = h(g(()g'(i)h' = hX^h1 lhgÂ«rÂ‘M = gWhhgÂ« = g \mt) = X(<) respectively. Thus, a change in the fixed frame leaves the moving generalised axode invariant and affects only the fixed generalised axode. This is again consistent since the moving generalised axode is composed of components given in terms of the moving frame, which remains unchanged. In contrast, the fixed generalised is composed of components given in terms of the fixed frame that is affected by the mapping h 1 . The effect of a change in frames on the fixed and moving generalised axodes is summarised in Table 6.3. It should again be noted that the motion of the body remains invariant in this description. M The Physical Implications on the Fixed Generalised Axode The physical interpretation of the change in the fixed generalised axode, due to a change in the fixed frame, is now explored. One may recall, from Section 5.2, that
PAGE 90
82 motion fixed frame T\ moving frame Ti FGA MGA g(<) no change no change X(<) X(t) s(0 h no change change by h to Tz X(<) h 1 X(f)h hg(0 change by h 1 to Tq no change hX(f)h~ 1 X(t) Table 6.2. Effect of a Change in Frames on the Generalised Axodes X(t) can be written as a linear combination of the basis tangent vectors of T e G given by u x ,u)y, X + SyUJy + S Z U Z f ^OX^x Â“iÂ” ^oyVy + SozV z )(t) where S x , S y , S z , S ox , S oy , S oz are scalar functions of time. Let h be a fixed mapping. Then, from Table 6.3, the change in the fixed generalised axode is given by hX(2)h 1 = h(5 x a; a : + S y u y + S z u z + S ox v x + S oy v y + S oz v z )(t)h 1 . From this equation, it is seen that the change can be determined by analysing the effect on the basis tangent vectors. Recalling the notation s x Sy . S 'l t and [X(t)]i = it is seen that the components of hX(f)h _1 are given by [hXfOh1 ]! = S^IhuOi1 ]! + SyWihuyh1 ^ + S.WIhw.h1 ]! +5 OI (0[hu r h1 ] 1 +
PAGE 91
83 and [hX^h1 ^ = 5,(0[hu; x h1 ]o + 5 J ,(0[hu; !/ h1 ]o + 5 2 (0[ha;,h1 ]o +S' ox (*)[hi> I h 1 ]o + 5 oy (i)[ht; !/ h _1 ]o + S 0 ,(f)[ht;,h 1 ]o. (6.4) Let the fixed mapping h be denoted by /ill hi2 /il3 X Zi 2 1 h 2 2 /i23 y Zi" 31 h 32 h 33 z 0 0 0 1 First, consider the effect on the basis tangent vectors uo x ,u> y ,u z . One finds hcu x h 1 0 Â—^31 /*21 /l3i 0 Â—/in Â— /i2i h\\ 0 0 0 0 yh 31 zh 2 i Â— xh 3 i + zh\\ xh 2 \ Â— yh\\ 0 Comparing the above matrix with the definitions of u> x ,ujy,u z ,v x ,Vy,v z summarised in 5.1, it is seen that ha;h _1 has components given by and [hw x h a ]i ^11 h 2 \ h 3 i Also, [hw x h 1 ] 0 X /ill y X /i 2 1 z h 3 i hu^h 1 0 Â—h 32 h 22 h 32 0 Â— h\2 Â—h 2 2 h\2 0 0 0 0 yh 32 Â— zh 22 Â— xh 3 2 + zh\2 xh22 Â— yh u 0 Thus, \iuiyh. 1 has components given by
PAGE 92
84 and [hw y h ^ ^12 h 22 ^32 Also, [/icj y h 1 ] 0 X 1 to = y X ^22 z ^32 ' 0 ~h 33 h 2 3 J/^33 zh 2 3 hcj, h 1 = ^33 0 Â— h\3 Â—xhtt T zh\3 ~h 23 hi3 0 xh 2 3 yhi3 0 0 0 0 Thus, hw 2 h 1 has components given by [hcu 2 h a ]i hi 3 h"23 h 33 and [hu> 2 h J ] 0 a; hi3 = y X h 23 z ^33 Next, consider the effect on the basis tangent vectors v x ,v y ,v z . One finds ' 0 0 0 hn 1 0 0 0 h 2 i 0 0 0 h 31 . 0 0 0 0 Thus, hu x h 1 has components given by [hu x h J ]j 0 0 0 and
PAGE 93
85 Also, [h^h 1 ] 0 hn ^21 ^31 hu y h 1 0 0 0 to 0 0 0 ^22 0 0 0 ^32 0 0 0 0 Thus, hv y h 1 has components given by and Also, [hvyh x ]i 0 0 0 [hu w h x ] 0 hu h.22 h 32 lit^h 1 0 0 0 hi3 0 0 0 ^23 0 0 0 ^33 0 0 0 0 Thus, hi^h 1 has components given by and [hu z h x ] a 0 0 0 [h^h x ] 0 = ^13 ^23 ^33 Substituting the last six sets of components into equations 6.3 and 6.4 yields
PAGE 94
86 [hX(f)h 1 ] 1 and /ill h\ 2 hi3 Â— /l21 S x (t) + ^22 Sy(t) + /*23 /*31 fl32 /*33 . /ill hu hl3 S x = h 2 \ /*22 ^23 Sy ^31 /*32 /*33 . . s* t S.{t) [hx^h'b x y /in h 21 ^31 *Sx(i) + X y h\2 h 2 2 hz2 S y (t) + x y U LJ J L J /ill h 12 hi3 + /l21 Sox(t) + h 22 Soy(t) + /*23 s O j,(0 h.31 h.32 /I 33 X /ill /*12 hl3 ' s x ' CO
PAGE 95
87 [hX^h1 ]! = [h] 3X 3[A(<)]i represents the components of the angular velocity of the body in terms of the frame T 0 . This conclusion is evident upon recalling the relationship between the components of a vector expressed in two different frames that was demonstrated in Section 3.1. The last three components are understood by recalling that [X(/)]o Â— r 12(f) X [X(f)]i + ri2(f) represents the translational velocity of the point in the body that is coincident with the frame T\. Then [hX(i)h']Â„ = 1*01 x [h] 3 x 3 [X(f )]i f [h] 3x3 [X(^)] 0 r oi x [h] 3 x3[X(2)]! + [h] 3X 3(ri 2 (2) x [X(t)]i + 1 * 12 ( 2 )) 1*01 X [h] 3 x3[X(2)]! + ([h] 3 x 3 ri2(2)) x ([h] 3 x3[X(2)]!) + [h] 3 x 3 r*i2(2) ( 1*01 + [h]3x3l*12(2)) X ([h]3x3[X(f)]j f [h] 3 x3i*i2(2)). Define 1*02(2) Â— I*oi + [h]3x3l*i2(2) to be the components of the position of the frame Ti in terms of the frame T 0 . Since 1*01 is fixed in time, 1 * 02 ( 2 ) = [h] 3 x 3 ri 2 ( 2 ). Thus,
PAGE 96
88 [hX(i)h 1 ] 0 = r 02 (<) x [h] 3x3 [X(i)]i + r O2 (0 = r oa(i) x [hX(f)h 1 ]i + r O2 (0Hence, [hX(t)h _1 ]o represents the translational velocity of the point in the body that is coincident with the frame Tq. In summary, hX(f)h 1 represents the generalised axode of the motion of the body with respect to the frame Tq. That is, the components of the generalised axode are given in terms of the frame JQ . 6.5 The Physical Implications on the Moving Generalised Axode The physical interpretation of the change in the moving generalised axode, due to a change in the moving frame, is now explored. It is recalled, from Section 5.3, that X(f) can be written as X(t) = (S X U X + SyUy + S Z U) Z + S OX V X + SoyVy + S OZ V Z )(t) where S x , S y , S z , S ox , S oy , S oz are scalar functions of time. Let h be a fixed mapping. Then from Table 6.3, the change in the moving generalised axode is given by h 1 X(<)h = h l (S x hj x S v Uy + S z u z + S ox v x + SoyVy + S oz v x )\i(t). From this equation, it is seen that the change can again be determined by analysing the effect on the basis tangent vectors. Recalling the notation [x(0]i = and
PAGE 97
89 it is seen that the components of h 1 X(t)h are given by [h^X^hh = + ^(<)[h1 W2 h]i +S' or (t)[h _ 1 n r h ] 1 fi 5 , o J/ (^)[h~ 1 ^ y h ] 1 + 5 0 ,(<)[h 1 Â«,h]i ( 6 . 5 ) and [h'X^hJo = 5Â’ I (i)[h1 u;,h]o + S , lf (<)[h1 w y h]o + 5 , ,(0[h1 w,h]o +5' ox (f)[h 1 n x h] 0 + [S 0 Â„(t)h 1 i; y h]o + S o *(f)[h _1 u 2 h] 0 . (6.6) First, consider the effect on the basis tangent vectors u> x ,u y ,uj z . One finds h 1 o; x h 0 ~h\3 h\2 yh 31 Â— zh2i h\3 0 Â—hn yh 3 2 Â— zh22 Â—hi2 h\\ 0 yh 33 Â— yh23 0 0 0 0 Comparing the above matrix with the definitions of /jj x ,u)y,u> z ,v x ,Vy,v z summarised in 5 . 1 , it is seen that h 1 tuh has components given by and [h 1 o> x h ] 1 fin hu hi3 yh 31 zhi\ yh 32 ~ zh22 yh 3 3 yh 23 Also, [h 1 u; x h] 0 =
PAGE 98
90 h l 0J y h. = 0 h?3 Â— /i22 0 Â— ^23 h 2 2 Â— xh 3 i T zh\i 0 Â— /l2l Â—xh 3 2 + zh\2 h 2 \ 0 Â—xh 33 + zh\ 3 0 0 0 Thus, h 1 w y h has components given by ^21 /*22 ^23 [h ^yh]! = and Also, [h ^yhjo = Â—xh 3 i + zh\\ Â—xhz2 + zh\2 xh 33 + zh l3 i o Â—h 33 hz2 xh2\ Â— yh\i ^33 0 Â—h 3 \ xh 2 2 yh 12 Â—h 3 2 hz\ 0 xh23 Â— yh 13 0 0 0 0 Thus, h l u z h. has components given by [h 1 w,h]i ^31 ^32 ^33 and [h 1 w 2 h] 0 = xh 2 i yh n xh 22 Â— yh \2 xh2 3 Â— yhi 3 Next, consider the effect on the basis tangent vectors v x , v y , v z . One finds h ' 0 0 0 /in 0 0 0 h\2 0 0 0 h\3 . 0 0 0 0 Thus, h has components given by
PAGE 99
[h 1 u I h]i 0 0 0 and Also, [h 1 u I h] 0 = /in h 12 h\z 0 0 0 h 2 \ 0 0 0 h 22 0 0 0 ^23 . 0 0 0 0 Thus, h has components given by [h ^hji = 0 0 0 and Also, [h \h] 0 = /l21 ^22 ^23 h 1 n i h ' 0 0 0 A 3 i 0 0 0 /132 0 0 0 /133 .0 0 0 0 Thus, h 1 n 2 h has components given by [h 1 u 2 h]i 0 ' 0 0 and
PAGE 100
92 [h x u 2 h]o = ^32 h 33 Substituting the last six sets of components into equations 6.5 and 6.6 yields [h^X^hh = and [h~ l X(t)h] 0 = hn 121 ^31 = h\ 2 S x (t) + h 22 Sy(t) + ^32 h\ 3 ^23 h 33 hn h 2 i ^31 ' s x = h\ 2 h 22 ^32 Sy hi3 h 2 3 h 33 s z t S,(t) Let yh 3 i zh 2 1 yh 32 Â— zh 22 yh 33 yh 23 Sx(t) 4Â—xh 3 \ + zh\\ Â—xh 32 + zh \ 2 Â—xh 33 + zh \ 3 + hn h 2 \ ^31 hi 2 S ox (t ) + h 2 2 Soy(t) + h 32 h\3 h 2 3 h.33 Sy(t) + S 0 z(t) xh 2 \ Â— yhu xh 22 Â— yh \ 2 x h23 ~ yh\ 3 hn h \ 2 h\3 (zS y (t)~ yS z (t)) + h 2 \ h 22 h 23 (xS z (t) zS x (t )) ^31 ( yS x (t ) xS y (t)) + hn h 2 \ ^31 s ox + ^32 h \ 2 h 22 h32 Soy h 3 3 h\3 h 2 3 h33 _ Soz 11 h 2 \ h31 12 h 22 S 32 13 h 2 3 S 33 s x x \ r Sy X y + . \ . . t z ) . h\i h 2 1 h 3 i hi 2 h 22 h 32 hi3 h 23 h 33 S,(t) Joy X y Z r 23 =
PAGE 101
93 represent the components of the position of the frame J 3 in terms of the frame J 2 . Then [h" 1 X(*)h] 1 = [h^axslX^)]! [h 1 X(<)h] 0 = [h 1 ] 3 x 3 ([X(f)]j x r 23 ) + [h a ] 3 x3[X(<)]o. The physical interpretation of these components is as follows: Since h 1 X(f)h represents the components of the angular velocity of the body in terms of the frame Tv, then [h 1 X(f)h] x = [h _1 ] 3x3 [X(i)]i represents the components of the angular velocity of the body in terms of the frame Tz. The last three components are understood by recalling that [X(f)] 0 = [g 1 {t)]3x3^u(t) (6.7) represents the translational velocity of the point in the body that is coincident with the frame JF 2 . Then [h1 X(*)h ] 0 [h ]3x3([X(^)] x x r 23 ) + [h 1 ] 3X 3[X(^)]o [h ]3x3([X(^)]j x r 23 + [X(f)] 0 ). Define ( 6 . 8 ) r 13(f) Â— Tl2(0 + [g(f)] 3 x3r23
PAGE 102
94 to be the components of the position of the frame Tz given in terms of the frame T\. Since r 2 3 is fixed in time, 1*13(0 Â— + [g(0]3x3l*23(69) Also, it can be checked from (5.15) that the moving generalised axode has its first three directional components encoded in matrix form as Thus, [g 1 (0g(0]ax3 _0 S z S_y ' S Â± _0 5, Â— Sy S X 0 0 3,(0 SJt) 1 X [g 1 (0g(0]sx3r 2 3 = S,(t ) 0 5,(0 y .5,(0 5,(0 0 t z = f x (0]i X 1*23(6.10) Hence substituting (6.9) and (6.10) into (6.8) yields [h X(0h] O = [h 1 ]3x3([g 1 (0g(0]3x3l*23 + [g 1 (0]3x3l*12(0) = ][g 1 (0]3x3([g(0]3x3l*23 + 1*12(0) = 0[g 1 (0]3X3I*13(0Hence [^ 1 X(0h] o represents the translational velocity of the point in the body that is coincident with the frame TzIn summary, h~ 1 X ( Oh represents the generalised axode of the motion of the body with respect to the frame That is, the components of the generalised axode are given in terms of the frame JF 3 .
PAGE 103
95 6.6 The Relationship Between the Generalised Axodes It has just been shown that the fixed and moving generalised axodes can always be interpreted in an invariant manner. If X(t) is a generalised axode with respect to a frame J 7 , then the first three components of X(t) always represent the angular velocity of the body in terms of the frame T, and the last three components of X(t) always represent the translational velocity of the point in the body coincident with the frame JF, in terms of the frame T . With this invariant interpretation, it is now possible to describe the relationship between the expressions for an axode in different frames. If g (t) represents the motion of a body with respect to a fixed frame T and a moving frame T ', then the fixed and moving generalised axodes have the form x (0 = g(0g _1 (0 and m = g ~\tm respectively. These two generalised axodes are special in that they are expressed in terms of the fixed and moving frames of the motion respectively. Indeed, they can also be seen to be related via the motion g(t) since x(<) = g(<)g _1 (0 = [g(0g _1 (0]g(0g _1 (0 = g(0[g _1 (0g(0]g _1 (0 Conversely,
PAGE 104
96 x(t) = g'WWg (t). Interpreted as a change in the fixed frame given by 7 Â“ 'T~ J i ^ 2) it is seen that the components of the fixed generalised axode are transformed into the components of the moving generalised axode. This is exactly what one would expect, as g (t) is defined as mapping the fixed framing to the moving frame. Conversely, interpreted as a change in the moving frame by it is seen that the components of the moving generalised axode are transformed into the components of the fixed generalised axode. Thus, it is seen that these two generalised axodes represent the same geometric entity of the motion the body, and are just expressed in terms of different frames. One can generalise this concept and derive an expression for the relationship between the coordinate expression of a generalised axode expressed in different frames. If Y G T e G is an arbitrary tangent vector and h Â£ G is an arbitrary element, then define the mapping ad h : T e G Â— > T e G such that X iÂ— hXh1 . This mapping will henceforth be called the adjoint mapping. It provides the rule for the change in coordinates of generalised axodes due to a change in frame.
PAGE 105
97 An explicit representation for the adjoint mapping is now determined. Let h 6 G and X(f) be given in terms of T\ by Then X(() = and h ii h 12 h i3 Â‘ S* ' [ad h X(/)]i = h 2 \ h 22 h 23 Sv ^3i h 32 h 33 s. [ad h X(t)] o X ( /ill = y X h 2 \ z \ h 31 0 Â—z y Â— z 0 Â— X y X 0 h \ 2 h \ 3 ' S x ' \ /in h \ 2 h \ 3 h 22 h 23 Sy + h 2 \ h 22 h 23 ^32 h 33 s z t) ^3i h 32 h 33 /in h \ 2 /ii3 S x /in h \ 2 h \ 3 r h 21 h 22 h 2 3 Sy + h 2 \ h 22 h 23 ^3i h 32 h 33 . . t h 3 \ h 32 h 33 t J t Thus, adhX(t) = /in /i 1 2 h 2 i h 22 h 3 \ h 32 yh 31 Â— zh 2 \ yh 3 2 Â— zh 22 Â—xh 3 \ (zh n Â—xh 32 + zh \ 2 xh 21 yh n x h 22 Â— yh \ 2 h\ 3 0 0 0 Â‘ s x ^23 0 0 0 Sy h 33 0 0 0 s z yh 33 Â— zh 23 /ill h\2 hi3 c u OX ~ x h 33 + 3r/ii3 /121 h 22 h23 c Â°oy x h 23 Â— yh\ 3 S 3 \ h 32 h33 . C _ L>OZ J ( 6 . 11 )
PAGE 106
98 The above 6x6 matrix, acting on the components of the generalised axode, is commonly referred to as the screw transformation matrix in the robotic literature. It is clearly a bijection as the determinant is equal to one.
PAGE 107
CHAPTER 7 THE EXISTENCE OF A SEMIRIEMANNIAN METRIC A semiRiemannian metric on a differentiable manifold M is the assignment of a symmetric nondegenerate bilinear form to the vector space T P M , for every p Â£ M. This form at the point p will be denoted by < , > p . The task of this chapter is to define an semiRiemannian metric on the Euclidean group G. First consider T e G, the tangent space at the identity element of the Euclidean group. Let the coordinates of X, Y Â€ T e G be given in terms of a frame T\ such that X = ' A a ' ' Yi y 2 y 2 x 3 and Y = y 3 X01 Y01 X02 Y 02 . *03 . . Yq 3 . Consider a symmetric nondegenerate bilinear mapping < , > e : T e G x T e G Â— R defined by < X, Y > e Â— YiVoi + X2Y02 + X3Y33 + Y1X01 + Y2X02 + Y3X03. This is recognised to be the well known reciprocal product encountered in screw theory. To be useful and physically meaningful, this bilinear mapping must be invariant with respect to any change in frame. That is, if T 2 is another frame such that Xx ^ X 2, 99
PAGE 108
100 then the coordinates of X and Y, with respect to Ti are given by ad^X and ad^Y where ad h is the 6x6 matrix given in (6.11). Invariance of the metric implies that < adhX, adhY > e =< X,Y > e . In proving this property, which shall henceforth be called adinvariance, let < , X denote the standard inner product of vectors in R 3 . This yields the notation < X, Y > e =^ [X]i, [Y]oi > Â— I Â— < [Y]i, [X]oi >~ . Two properties concerning this inner product are needed. The first is the fact that < , >is invariant with respect to orthonormal matrices. That is, if u,v G R 3 and [h] 3x3 is an orthonormal matrix, then < [h] 3X 3 U, [h] 3x3 v X=X u, V y . (7.1) The second property is the fact that < U, V X W >=< V , W X U >=< W,U X V >(7.2) for u,v,w 6 R 3 . Geometrically, this quantity represents the volume of the parallelepiped spanned by the three vectors and is equivalently given by X u, v x w >= Ml U2 U3 Vl V2 V 3 w l W 2 W 3 Proceeding with the proof of adinvariance,
PAGE 109
101 < ao?hX, adfrY > e = ^[hUX^rxthUtn + lh] 3 x3Y 0 i x+ < [h] 3 x3[Y]!,r x [h] 3 x 3 ][X]i + [h] 3x3X01 y = < [h] 3 x 3 [X]i, [h] 3x3 Yoi > Â— I < [h] 3X 3 [Y]i, [h] 3x3 X 0 i XH < [h] 3x3 [X]i, r x [h] 3x3 ][Y]i > Â— f X [h] 3x3[Y]i),r x [h] 3x3 ][X]i X = ~< [X]i, [Y]oi X + < [Y]i, [X]oi X+ ^ r, ([h] 3x3 [Y] a ) x ([h] 3x3 [X] x ) y + ^ r ,([h] 3x3 [X] 1 ) x ([h] 3x3 [Y]!) y = [X] 1; [Y] 01 y + < [Y] x , [X] 0 i XThus, < , >e is adinvariant and therefore invariant with respect to a change in frame. The physical interpretation of the action of this bilinear mapping on a generalized axode is revealed in the following manner: Since < , > e is adinvariant, one can examine the mapping in the frame of oneÂ’s choice. Let 9 represent the motion of a body. Then the fixed generalized axode X(t) has rotational components given by [X]i(f) and translational components given by r i2 (f) x [X]!(f)i*i2(0Thus < X, X > e (t) = 2 x [X] 1; ri 2 x [X]i + r 12 >(t) = 2 Â“< [X]i,r 12 x [X] x X(t) + 2([X] 1} r 12 x(<) = 2 X [X]i, r 12 X(f)
PAGE 110
102 The quantity X [X]i,ri 2 X ( t ) is a measure of the extent to which the body is experiencing combined rotational and translational motion. The quantity P = A [X]i, 1*12 >^[XhJX]^ is referred to as the pitch in the robotic literature. It has units of length per radians. In general, at any instant in time, there exists a line of points in the body which experience only translational velocity along that line. The magnitude of this velocity is given by the pitch. As a simple example of the bilinear form < , > acting on a generalized axode, consider again the fixed generalized axode of the rolling cylinder. Here Then trivially x(<) = 1 0 0 0 m < X,X >e (t) = 0. This indicates that the cylinder is always experiencing instantaneous rotational motion about a line. That line is, of course, the point of contact on the imaginary plane along which it can be considered to be rolling.
PAGE 111
CHAPTER 8 APPLICATIONS TO ROBOTICS 8.1 The Group Structure in Robotics A robot manipulator can be considered to be an open chain of rigid bodies or links connected together by joints which define the relative freedoms of motion of a body with respect to its adjacent bodies. Points at rest with respect to the body at one end of the chain constitute a three dimensional Euclidean space. This will henceforth be denoted by E 3 and called the base space. Points at rest with respect to the body at the other end of the chain constitute another three dimensional Euclidean space. This will henceforth be denoted by E 3 and called the end effector space. Of interest is the motion of E with respect to E 3 , enabled by the joints defining the relative freedoms of motion of the links. One can represent this motion by the relative position and orientation of two frames, one at rest with respect to the base space, the other at rest with respect to the end effector space. The frame at rest with respect to the base space will henceforth be denoted by T and called the fixed frame. The frame at rest with respect to the end effector space will henceforth be denoted by T and called the moving frame. The geometric workspace of the manipulator is defined to be the set of all positions and orientations of E with respect to E 3 induced by the specification of the fiames Jand T . This is some subset, determined by the geometric configuration of the manipulator, of all possible positions and orientations of E with respect to E 3 . 103
PAGE 112
104 At any instant, the mapping which takes the fixed frame to the moving frame will henceforth be denoted by S ' where g is the matrix given by (3.2) in terms of the Euler parameters. 8.2 The Concept of Volume The task of this chapter is to define a measure with which to quantify the geometric workspace of the manipulator by assigning a numerical value describing, in some sense, the volume of the subset of all possible positions and orientations of T with respect to T . To be useful, this volume must be invariant with respect to the choice of the fixed frame and the moving frame for the base space and end effector space respectively. The theory and techniques must also be applicable to manipulators of arbitrary design. The resulting numerical value will henceforth be called the motion capability of the manipulator as it represents the capability of the end effector, or last link, to rotate and translate with respect to the base, or first link, of the manipulator. The technique that is used in measuring a subset of the Euclidean group is similar to that of calculating the area of a region in R 2 , which is achieved by integrating the area element dV = dxdy over the region of concern. It is recalled that R 2 is a trivial example of a two dimensional differentiable manifold. The area of the region of R 2 shown in Figure 8.1 is given by L dA. The area element is dA = dxdy , and the integral yields ry/a 2 Â—x 2 ra rwa z Â—x z A = / / dxdy Â— Jx=Â—a Jy Â— 0 7 ra
PAGE 113
105 y Figure 8.1. Semicircular Region in the Plane Using polar coordinates, one can reparameterize R 2 in terms of the variables (r, 9) by the equations x = r cos 6 y = r sin 8, for r > 0 and 6 Â€ [0,27t). The area element then changes to dA = rdrdO, and = r r Jr= 0 Je = 0 r drd6 = KaÂ“ This simple result is intended to illustrate the geometric interpretation of the area element. The invariant nature of the area element with respect to the parameterization is noted. The relationship between the area element dxdy in cartesian coordinates and the area element r drd9 in polar coordinates can be examined by first returning to cartesian coordinates. The curves formed by fixing each coordinate x and y in turn while allowing the other to vary with time are given by c *(<) = [*( 0 >Sfo] and c y (t) = [z 0 , t/(f)]. ( 8 . 1 )
PAGE 114
106 The directional components of the tangent vectors to these two curves at time t are given by dc x . dx ~dt ~ [ Â’ l ~dt and = 1Â°'4 (8.2) Assuming the curves represented by (8.1) are parameterized by unit speed so that dx/dt = 1, the directional components of a basis for the tangent space at each point of R 2 is given by t* = [1,0] and t y = [0,l]. (8.3) From Section 5.1, curves represented by (8.1), which are formed by fixing all but one coordinate, are called coordinate curves. The directional components of the resulting tangent vectors, shown in (8.3) and formed by assuming unit speed, are called coordinate induced tangent vectors. The magnitude of the area of the square formed by these two vectors is equal to one. In general, the magnitude of the area of a parallelogram formed by two vectors in R 2 is equal to the square root of the determinant of the 2x2 matrix formed by the standard inner product of the tangent vectors h Applying this fact to the coordinate induced tangent vectors found in (8.3) yields 1 The standard inner product of, say, v and w is the scalar quantity given by < v, w >=  v 1 1 w  cos 6. Here v and w represent the magnitude of the vectors v and w, and 9 represents the angle subtended by them. Then < v, v > < V, w > < V, w > < w, w > < V, V >< W, W > < V, W >< W, V > [vvww Â— (vwcos0) 2 ] 1/2 [v 2 w 2 v 2 w 2 (l sin 2 0) Y' 2 vw sinf?. which is a more familiar form for the magnitude of the area of the parallelogram formed by the vectors v and w. See do Carmo [6] for more detailed exercises concerning the geometric interpretation of determinants and inner products.
PAGE 115
107 ^ t x ? ^ ^ ty ^ < ^ ^ ^y?^y ^ 1/2 = 1. Alternately, in polar coordinates, the curves formed by fixing each coordinate 9 and r in turn while allowing the other to vary with time yields the following coordinate curves: c r {t) = [r(t) cos 6 0 , r(t) sin 6 0 ] and ce(t ) = [r 0 cos 9(t), r 0 sin 0(f)]. The coordinate induced tangent vectors are, thus, given by t r = [cos 9, sin 9] and tg = [Â— r sin 0, r cos 0]. The magnitude of the area of the rectangle formed by these two vectors is then given by ^ tr 5 t r ^ ^ ^ 1/2 1 0 t r 0 r 2 Here, the magnitude of these vectors is given by t r  = 1 and tg = r. It is noted that the quantity r appears in the area element dA = r drd9. In general, if (U,x) is a coordinate chart on an ndimensional semiRiemannian manifold M , the volume element on U, in terms of the coordinates (aq,. . . ,x n ), has the form dV f{^X \, . . . , x n ) dx\ . . . dx n , where f ( x \ , . . . , x n ) Â— < t Xl , t Xl > T 1/2 < t x n 5 t XÂ„ > . represents the magnitude of the volume of the parallelepiped formed by the coordinate induced tangent vectors [t Xl , . . . , t x J.
PAGE 116
108 The relationship between different coordinate representations of the volume element is demonstrated as follows: Let (V,y) be another coordinate chart on M such that U fl V 7^ On the common intersection of U and V, (zi, (yi, Â• Â• Â• ,2/n) such that 1 1/2 < ^l/n > ^ y n > J . x n ) are differentiable functions of = Zi(2/i,...,2/ n ) Â— X n {y\i . . . , 2/n)(8.4) Fixing each coordinate t/,for i = 1 , . . . , n in turn while allowing the others to vary with time yields expressions for the coordinate induced tangent vectors on (V,y) in terms of the coordinate induced tangent vectors on (U, x). These are given by V1 " fefiyi u Vn A dx, Thus, the two sets of coordinate induced tangent vectors are related by the Jacobian matrix of the coordinate transformation given by (8.4). Therefore,
PAGE 117
109 J yi Vn . 5(^1, Â• . . , d(yi,...,y n ) 1 t Xl J nXn . t *n . Hence, g{yu,yn ) = ^(^ 1 ( 2 / 1 , Â• Â• Â• , y n ), Â• Â• Â• , x n (yi , . . . , y n )) yn dxj j. yn ^ 2^j=l g yi l Xi, 2^i=l dyi *>Xi > s' \^ n j5Â£i+ yn dxj x v ^ Z^i=i 9j/n i*; , 2^i = 1 9u Â„ lx, > 9j/n d[x \ , . . . , x n ) t j Â’ ^(2/1, Â• Â• , 2/e) . /(Â• 3 'l(?/l) Â• Â• Â• 1 2/n)) Â• Â• Â• j X n (j)\ j Â• Â• Â• ) 2/n)) 5(a^i , . . . , X n ) .ye). 1/2 1/2 Thus fi , (j/l) , *?2/n) f Â• ^yn) 1 Â• Â• Â• 1 Â®n(j/l) Â• Â• Â• , J/n)) Â• 1 Xn) L ^( 2 / 1 , Â• * , 2 / e ) J d(xi,. .d(yi,. dyi,...,dy n The above summarises the effect of a change of coordinates on the volume element and demonstrates the previous case of R 2 where \d{x,y) cos 9 sin 6 [d(r,6) Â— rsin# rcos6 = r. See Boothby [2] and do Carmo [6] for a generalised treatment of volume elements on differentiable manifolds.
PAGE 118
110 z Figure 8.2. Parameterization of the Surface of the Sphere As one final example, consider the use of spherical coordinates to parameterize the surface of the sphere shown in Figure 8.2. The goal is to find the area element on the surface of the sphere and then to integrate this element over the sphere to determine the surface area. When x = a sin cos 9 y = a sin sin 9 z = a cos , the coordinate induced tangent vectors on the surface of the sphere are given by t e = [Â— a sin (j> sin 9, a sin cos 0,0] = [a cos cos 9, a cos ^>sin 0, Â— a sin
PAGE 119
Ill < tg, t# > 1/2 a 2 sin 2 0 a 2 Figure 8.3. Tangent Plane to the Sphere A metric on the tangent bundle is defined via the standard inner product on R 3 . That is, the tangent space to the sphere simply inherits the metric of the ambient space R 3 . The inner product of two vectors in a tangent plane to the sphere is, therefore, defined to be the inner product of these two vectors as seen from R 3 . The magnitude of the area of the square formed by the vectors is given by 1/2 = a 2 sin . Thus, the area element for the surface of the sphere is given by dA = a 2 sin (f>d9d(f>. Integrating this area element over the surface of the sphere then yields r2ir rir A = / / a 2 sin dddd> = in a 2 , Je = o J= o which is just the surface area of the sphere. The above examples are presented to clarify the concept of a volume element, and to show how it can be applied to a variety of differentiable manifolds. The form of the volume element is, of course, dependent upon the metric chosen for the
PAGE 120
112 Figure 8.4. Definition of Planar Parameters manifold. Any meaningful definition of volume must be invariant with respect to the coordinate parameterization of the manifold, much as the concept of volume in physical space is. 8.3 Planar Motion Before applying the volume element to a manipulator capable of both rotational and translational motion, it may be instructive to investigate the simple case of planar motion. Let T denote a fixed frame in E 2 . Let T denote a moving frame in E 2 . Let g be the mapping of the fixed frame T to the moving frame ~T such that This is interpreted as the position and orientation, with respect to the two frames, of a planar body in a planar Euclidean space and is uniquely specified by the three parameters (x,y,0) in the manifold R 2 x [0,27 t]. See Figure 8.4 for a depiction of this parameterization. Proceeding in a manner similar to that of Section 3.3, but using the parameterization given by (x,y,6) i Â— Â» g,
PAGE 121
113 one specifies g by the matrix g = cos 9 sin 9 0 Â— sin0 x cos 9 y 0 1 If h = \i(xh,,yh,9h) and g = g (x g ,y g ,9 g ) represent finite planar motions then the composition of the two motions results in a matrix of the form cos 9h Â— sin 9h Xh ' COS 9g Â— sin 9 g Xg fig = sin 9k cos 9h Vh sin 9 g cos 9 g y a 0 0 1 0 0 i cos (9 h + 9 g ) Â—sin(9h + 0 g ) x g cos 9 h Â— y g sin 9 h (xh sin(9 h + 9 g ) cos (9 h + 9 g ) x g sin 9 h + y g cos 9 h + yh 0 0 1 Hence, x hg = X g cos 9 h y g sin 9 h + x h y hg = x g sin 9 h + y g cos 9 h + y h @hg = 9h + 9 g . From Sections 5.2 and 5.3, it is known that if h = h(f) is function of time and g go is fixed, then h(f)g 0 represents the same motion of the body in space and time, but with a change in the moving frame. Similarly, if h = h 0 and g = g(<), then fiog( t) is the same motion of the body in space and time, but with a change in the fixed frame. A volume element on this manifold must be invariant with respect to these coordinate changes if it is to be meaningful. In proceeding to define a volume element, the coordinate induced tangent vectors to the motion h(i)go are examined first. These are given by
PAGE 122
114 t x = [1,0,0] ty = [0,1,0] t* = [Â— Xjsin^ y g cosO h ,x g cos6 h y g smO h , 1]. (8.5) Similarly, the coordinate induced tangent vectors to the motion h 0 g(i) are given by t x = [cos Oh, sin Oh, 0] ty = [Â—sinOh, cos 0 h ,0] tfl = [0,0,1]. (8.6) If the standard inner product on a three dimensional space is chosen as the metric, it is found that the magnitude of the volume of the parallelepipeds formed by (8.5) and (8.6) are the same. In particular, the magnitude is given by 1/2 ^ t y> t X ^ "C ty, ty > < ty,t# ]> ^ tj, t X > < t^,ty > < t$, > = 1 . Thus, the volume element for the manifold is given by dV Â— dOdxdy and the quantity V = J dddxdy, (8.7) when integrated over some subset of all possible planar motions, yields an invariant quantity representing the area over which one can translate an object times the average angle through which the object can be rotated at each point 2 . 2 It is noted that, while the volume given by (8.7) is invariant, the metric from which it is derived is not. Thus, the metric imposed on the planar group of motions does not represent a geometrically meaningful quantity. However the resulting volume element does. It is further noted that one can also approach the concept of volume via differential forms which omits the need for a metric. Arguably, this approach does not convey the relationship of Lie groups to screws as readily, but is more succinct in form.
PAGE 123
115 Figure 8.5. Planar RRR Robot Consider, now, the planar RRR robot shown in Figure 8.5. The position and orientation of the end effector space with respect to the base space is restricted by the configuration of the manipulator. This induces a reparameterization of the manifold R 2 x 27 r in terms of the joint angles 01 , 02 , 03 Â• The original parameterization is related to the joint angle parameterization via the forward analysis for the manipulator, and yields X = d\2 COS 0\ +
PAGE 124
116 t 0i te 2 te 3 Â—ai 2 sin(#i) a 23 sin(6h + 0 2 ) a 34 sin(0 a + 0 2 + 0 3 ) 012 cos($i) + a 23 cos(0 4 + 9 2 ) + a 34 cos(0i + 0 2 + O3) 1 Â— a 23 sin(#i + 9 2 ) Â— a 34 sin(#i + 9 2 + 9 3 ) a 2 3 cos(0i + 6 2 ) + a 34 cos(0j + @2 T $ 3 ) 1 Â— a 34 sin(^i + 62 + 9 3 ) a 34 cos(#j + 62 + $ 3 ) 1 The magnitude of the volume of the parallelepiped formed by these tangent vectors is given by < , tg 1 > < tflj , tg 2 > ^ 1^2 ) ^$1 ^ ^ f #2 1 ^$2 ^ < tg 3 , tgj > < t$ 3 , t g 2 > ^ t^l 5 t$3 ^ ^ ^#2 > ^$3 ^ ^ ^#3 > ^#3 ^ 1/2 a 12 a 23  sin 0 2 . ( 8 . 8 ) Hence, the volume element, in terms of the joint angle parameterization, is given by dV = ai 2 a 23  sin ^ 2 d^ 1 d^ 2 d^ 3 . It is interesting to note that dV = 0 when sin0 2 = 0, a 12 = 0, or a 23 = 0. At any of these values, the three linearly independent tangent vectors forming the parallelepiped collapse to form a twosystem. The tangent vectors represent the instantaneous motions of the end effector. Hence, the loss of one or more of these vectors represents a loss in a degree of freedom, and the volume element degenerates precisely when the robot is in a singularity configuration. The volume, or what is referred to as the motion capability , achieved by the robot, assuming all joints can rotate 27 t radians, is given by V = r 2 jt r 2 ir j2 tr J6 1 =0 Jo 2=0 Jo 3=0 Oi2023\sm92\d9id0 2 d6 3 = 167r 2 ai 2 a 23 . This is further expressed in the form
PAGE 125
117 Figure 8.6. Physical Workspace of Planar RRR Robot V 167r 2 a 12 ct23 = 47 r x [7r(ai 2 + a 2 3) 2 7r (a 12 a 23 ) 2 ]. As can be seen in Figure 8.6, the motion capability of robot is 47 r times the area of the shaded annulus. This annulus is called the physical workspace of the robot. It is noted that the physical workspace is independent of the selection of frames used to parameterize the base and end effector space. It is the actual area over which the end effector space can translate with respect to the base space. The factor 47 T = 2 x 2ir radians indicates that there is a double covering of the physical workspace, and that the lobot can rotate the body 2ir radians about any point in the physical workspace. More generally, the geometric interpretation for the motion capability of a planar robot is the area of the physical workspace times the average angle (inclusive of multiple coverings) over this workspace through which the end effector space can rotate with respect to the base space. To aid in understanding motion capability further, it may be useful to consider another planar robot design. Consider the PRP robot shown in Figure 8.7. This
PAGE 126
118 robot induces a reparameterization of the manifold R 2 x 2i r via the forward analysis which yields x = Si + s 2 cos 0i y = s 2 sin 0i 0 = 0i. The coordinate induced tangent vectors are then given by tÂ«2 Â— dx/dsi dx/ds 2 dx/d0\ dy/ds! dy/ds 2 dy/d0 1 d0/ds\ d0/ds 2 d0/d0 1 t Si t s2 1 0 0 COS 01 sin 0i 0 This yields
PAGE 127
119 Figure 8.8. Physical Workspace of Planar PRP Robot Â— s 2 sin 6\ s 2 cos 0\ 1 The magnitude of the volume of the parallelepiped formed by these tangent vectors is given by < t S2 , t Sl > < i t Sl > < t Sl , t S2 > < , tflj > 1/2 =  sin$i. Thus, the volume element in terms of this parameterization is dV =  sin Oi\ddidsids 2 . Again, the volume element correctly predicts the singularities of the robot which occur when sin 9 X = 0. The motion capability of the robot, assuming the revolute joint can rotate radians and the prismatic joints are restricted to G [0,p x ] and s 2 Â€ [0,p 2 ], is given by V = sin0i\d0ids\ds 2 = Apip 2 .
PAGE 128
120 The relationship between this quantity and the area of the robotÂ’s physical workspace, which is 2pip 2 + 7rp 2 2 and is illustrated in Figure 8.8, is not as obvious as it is in the case of the RRR robot. This is because the PRP robot does not achieve a simple integral multiple covering of its workspace. Furthermore, the angle through which the robot can rotate the end effector space with respect to the base space varies with position and is also dependent on the parameters p\ and p 2 . This average angle is, in fact, 4pip 2 radians. 2pip 2 + 7TP2 2 2 + 7T^ It may now be interesting to determine those parameters which will optimize the motion capabilities of the PRP and RRR robots, subject to certain practical constraints, and then to draw a comparison and conclude which design is superior. Imposing a restriction on the size of the physical workspace of the RRR robot via the equation ai 2 + a 23 = 2a, where a is a constant, yields the motion capability as a function of, say, ai 2 . Thus, ^( 012 ) = 167r 2 a 12 (2a ai 2 ). It can easily be deduced that the maximum motion capability is attained when ai 2 = a 23 = a. At this value, the void in figure 8.6 disappears and the physical workspace covers a circle of radius a 12 + a 23 = 2a. This maximum motion capability shall be denoted by Vrrr = 2 x 27 t x 7r(2a) 2 . Dividing this result by the area of the physical workspace of the robot yields Vrrr 7t( 2 a) 2 = 2 x 27 r. (8.9)
PAGE 129
121 Equation (8.9) shows that the RRR robot achieves a double covering of its physical workspace and is able to rotate the end effector space 2k radians about any point in the physical workspace. Similarly, imposing a restriction on the size of physical workspace of the PRP robot via the equation p x +p 2 = p, where p is a constant, yields the motion capability as a function of, say, p x . Thus, V(Pi) = 4pi(ppi). Here, the maximum motion capability is attained when p x = p 2 = \p and it is given by VpRP = p 2 . Dividing this result by the area of the physical workspace of the robot yields VpRP A. VW) = ^r+2 ~ ,78 radians ( 8 10 ) 4 Equation (8.10) shows that the PRP robot, in contrast to the RRR robot, can rotate the end effector space an average of 44.5 degrees about every point in its physical workspace. These results demonstrate that the motion capability of the the planar RRR robot is superior to that of the planar PRP robot. 8.4 Redundant Planar Motion Consider, now, the redundant planar 4 R robot shown in Figure 8.9. The redundancy introduced complicates the problem of defining the motion capability of the robot. However, it is still possible to obtain a geometrically invariant result. The forward analysis for the robot is given by
PAGE 130
122 X = 0,12 cos 0 a + a 23 cos(0x + 0 2 ) + a 3 4 cos(0! + 02 + 0 3 ) + a 45 cos(0i + 02 + 0 3 + 04) y = 012 sin 0J + a 23 sin(0! + 0 2 ) + a 34 sin(0i + 0 2 + 0 3 ) + a 45 sm(0j + 0 2 + 0 3 + 0 4 ) 0 = 0i + 0 4 + 0 3 + 0 4 . The redundancy is manifested by the fact that the three dimensional group of planar motions, given by the variables (x,y,6), has been reparameterized in terms of the four variables (0i, 0 2 , 0 3 , 0 4 ). This results in four coordinate induced tangent vectors existing in a three dimensional tangent space at each point on the manifold. These are given by More explicitly ^#2 ^#3 . u * . dx/ddi dy/de i de/ddi dx/de 2 dy /( 902 d 0/d9 2 dx/de 3 d y /de 3 oe/de 3 dx/d& 4 d y /dd 4 do/de 4 ' t, ' . a i 2 sin(0i) Â— a23sin(0! )0 2 ) Â— a3 4 sin(0! + 0 2 + 0 3 ) Â— a 45 sin(0x + 0 2 f 0 3 + 0 4 ) a 12 cos(0! ) + a 23 cos(0i + 0 2 ) + a 34 cos(0i + 0 2 + 0 3 ) + a 45 cos(0! + 0 2 + 0 3 + 0 4 ) 1
PAGE 131
123 U 3 tÂ»4 Â—023 sin($i 4 @ 2 ) 034 sin(#i + d 2 + $3) Â— a 45 sin(#i 4 0 2 4 O3 + O4) 023 COs(
PAGE 132
124 Further examination of V 2 (# 2 ) reveals that the motion capability of the resultant threedegreeoffreedom robot is a relative maximum when 0 2 = (2n + 1)^ and a relative minimum when 0 2 = nf for n = 0, . . . , 3. Precisely the same results can be deduced from f 3 which is a function of the missing joint angle 9 3 . It is interesting to note that the expression for f 4 is the same as (8.8) which is the volume element of the RRR robot analyzed in the previous section. This is consistent, since keeping the last joint fixed is equivalent reparameterizing the end effector space of the RRR robot. This is an action with respect to which all results are invariant. In the same way, the expression for f 4 appears similar to (8.8) with the appropriate change in a link length and joint angle. Keeping the first joint fixed is equivalent to reparameterizing the base space of the RRR robot. This is again an action with respect to which all results are invariant. Integrating each function Vi(0,), for * = 1, ... ,4, with respect to the previously fixed angle 9i, over the range 0 < 9{ < 2x, and dividing by 2n yields an average value of the motion capability of each RRR robot which is dependent on the configuration of each redundant joint 3 . The integration and averaging of each V{[9i) is denoted by 1 /** Mi = Â— Viddi I'K J0i= 0 1 r 2i r J Q\ y ...,Q 4 Â—o In particular, these intermediate values of motion capability are given by fi d9 4 d9 2 d9 3 d9 4 .Mi 167r 2 a 2 3a34 3 Tlhs procedure applies the arithmetic mean to the function V t . It is possible that other means could be used which do not treat each joint equally, but emphasise or deemphasise the contribution of a particular joint based on the intended application of the robot.
PAGE 133
125 M 2 = 167ra 34 (7ra23 + 4ai 2 ) M 3 = 167rai 2 (7ra 23 + 4a 34 ) M 4 = 167r 2 a 23 ai 2 . (811) Finally, the motion capability of the 4 R robot is defined to be the average of the intermediate values M;. Hence, M Â— Â—(Mi T M 2 T M 3 T M. j) 4 1 4 r 2 * / f i d0 1 dd 2 d9 3 d0 4 . 4 x 27 r Â£Â£Je 1 ,..., 0 i=o ( 8 . 12 ) Equation (8.12) represents an invariant definition of motion capability for a redundant planar 4 R robot. It is the average of the intermediate values of motion capability. These intermediate values reflect the importance of each joint . This claim is demonstrated by the following analysis: First optimize the design by imposing a restriction on the physical workspace of the 4 R robot via the equation ai 2 fa 23 +a 34 = 3a. One can deduce that the intermediate values in (8.11) are maximized when Â«i 2 = Â«23 = a 34 = a. These are given by Mimax = 167T 2 a 2 M 2 max = 167T 2 a 2 (l + ) 7 r M 3max = 167r 2 a 2 (l + ) 7 r M 4max = 1 67 r a . (8.13) It is clear that M 2max and M 3max are the largest intermediate values. These values correspond to the average motion capability of the resultant RRR robots formed by freezing the second and third joints respectively. It is noted that freezing
PAGE 134
126 these joints eliminates their contribution to the motion capability of the resultant RRR robots. Since the associated intermediate values are the largest, this implies that the RRR designs which actually use the second and third joints generate smaller intermediate values. Thus, the second and third joints are the least important joints of the 4 R robot. In contrast, the first and fourth joints are the most important joints, as the associated intermediate values are the smallest. It is interesting to note that the intermediate value representing the motion capability of the resultant RRR robot formed by freezing the first or fourth joint is independent of the particular angle at which these joints may be frozen. In fact, the values of Mi max and M 4max are identical with the RRR robot examined in Section 8.3. This is because the magnitude of the volume of the parallelepiped formed by omitting the first or fourth joint, given by V(6i) or V(0 4 ), is independent of the the first or fourth joint respectively. Hence, these joints, which are the most important to the 4 R robot, appear to leave the associated intermediate values of motion capability invariant. One can proceed to define the motion capability of a 5 R robot in a similar fashion, by freezing two joints at a time and in turn integrating the volume of the resultant parallelepiped over these redundant joints. It can be seen that this will result in ten intermediate values of motion capability which must then be averaged to determine the motion capability of the 5 R robot. 8.5 Euclidean Motion The concept of a volume element will now be applied to the Euclidean group G. Let T be a frame at rest with respect to a fixed space E 3 , and let T be a frame at rest with respect to a moving space E . Let g be the mapping which takes the fixed frame F to the moving frame T such that
PAGE 135
127 g.T^T. Then g uniquely gives the position and orientation of the body with respect to the two frames. From Section 3.3, it is known that g is specified by the six parameters (
PAGE 136
128 ' 0 ' COS (j> 0 sin (f) 1 0 y J Xtf Â— Â—2 sin Â— X z cos 0 x sin < f> Â— y sin ^ X * = sin sin 9 cos (f> sin 9 cos 9 y cos 9 + z cos sin 9 Â—x cos 9 + z sin q i sin 9 Â—x cos (f>s'm9 Â— y sin (f > sin 9 i 0 1 1 o o 0 0 0 0 0 0 1 5 Xy Â— 0 , X, Â— 0 0 1 0 1 o 1 1 o 1 . 1 . Using the invariant metric defined in Chapter 7, the magnitude of the volume of the parallelepiped spanned by the above vectors is given by < x^, > < X^,X^ > < X#, Xg > < X 0 , X x > < X^, Xy > < x 0 ,x* > < Xe, x^ > < Xg,X^, > < x # ,xÂ» > < X*,Xy > < x*,x, > < X*. X* > < X,p , Xfj, > < X^, , Xg > x^ , X x > < Xfp , Xy > < Xy j X 2 > x* > < X x ,X^, > < X r ,Xy > < x*,x 2 > ^ Xy , XfJj > <[ Xy , X r > 0 0 0 0 0 1 1/2 0 0 0 cos sin<^ 0 0 0 0 sin sin 9 cos sin 9 cos 9 0 cos 4> sin sin 9 0 0 0 0 sin cos
PAGE 137
129 Hence, the volume element for the Euclidean group is given by dV = sin 9d,9) Â€ [0, 27r) x [0,2*) x [0, 7r] , then V = y sin 9d(j)d9dxl)dxdydz = Sn 2 abc. (8.16) The quantity abc is the physical volume over which the body can translate. The value 8tt 2 can be shown to be the volume of the subgroup of rotations, S'0(3), when the standard inner product of the angular velocity vector is the metric of choice. Hence, the volume of the subset of the Euclidean Group represented by (8.16) is the product of the volume of 50(3) and the physical volume of the space over which the body can translate. 8.6 Application to a Typical Industrial Robot The volume element is now applied to a typical industrial robot with six revolute joints. Consider figure 8.10 which shows a skeletal model of three adjacent joints in a manipulator. The joint axes are labeled sequentially by with the vectors S,_i, S S,+i. The direction of the common normal between the two successive joints axes S, and S, + i is labeled with the vector a t>t+1 . The length of the vector a , it+1 is denoted by a,,i+i. The mutual perpendicular distances between pairs of successive links a,_ lit and a !,t+i are labeled Si and are called offsets. The twist angles are labeled a, tl+1 and are defined by the angle measured by a righthanded rotation of S, into S.+i about the
PAGE 138
130 axis a, jt+1 . The joint angles are labeled and are defined by the angle measured by a righthand rotation of into a , )1+1 about the axis S,. The vectors a,_i ( < and S, define the x and zaxes of a frame T respectively. The vectors a , it+1 and S,+i define the x and zaxes of a frame T respectively. The sequence of transformations of the frame T to T are defined in terms of the above vectors and angles as follows: Let 0 0 0 0 ' 0 10 0 0 0 1 Si 0 0 0 1 to be the translation required to map the point T q to the intersection of the vectors Sj and a^, +1 . Define = ^giNext, let Â’ cos 6i Â— sin 0i 0 0 sin cos 9i 0 0 0 0 10 .0 0 0 1 g2 =
PAGE 139
131 applied to T\ is a rotation about T\ z in the positive sense. Define 2 = 1 g2 Â• Then is collinear with T x . Next, let 1 0 0 a i>t + 1 0 10 0 0 0 1 0 0 0 0 1 applied to Ti is a translation along Fix in the positive direction. Define ^3 = ^2g3 Â• Then is coincident with F x . Next, let 0 0 ' sin Q i)t+1 0 cos a, Â•,,Â•+! 0 oÂ’ 1 . applied to Tz is a rotation about Tz x in the positive sense. Then 1 0 0 cos a,,, +1 0 sin a t)t+1 0 0 ? = ^3g4Thus, ? = ^glg2g3g4 = *g, g = cos 0,sin 0, 0 0 Â— cos a,)t + i sin 0, cos cos 0,sin a iti+1 0 sin a tt+ i sin 0,a,it+1 cos 6 t Â— sin a,, l+ i cos 0, a, t , +1 sin 0,cos a, ,,Â•+! Si 0 1 where
PAGE 140
132 Now consider the General Electric P60 industrial robot. A kinematic model of the GE P60 is given in Figure 8.11 showing the definitions of the joint angles 0j, twist angles or tJ , offsets Sj and link lengths a,y. It is noted that only the joint angles are the variable quantities for the manipulator. All other parameters have constant values which are presented in Table 8.1. Using these parameters, the mapping of a frame T at rest with respect to the base space of the robot, to a frame T at rest with respect to the end effector space of the robot is given by the matrix i=6 g = n t=i cos 0, Â— cos a.,,+1 sin 0,sin a, )l+ i sin 0,a,,,+i cos 0, sin 0,cos a ti i + i cos 0; Â— sin a, it+1 cos 0, a ti , + i sin 0,0 sma, )i+1 cos a, il+1 S ,Â• 0 0 0 1 where each matrix in the product represents the mapping of the frame, identified with the i th joint into the (i f l) th joint. This is a rather lengthy matrix whose elements are a function solely of the joint angles 0i . . . 0 6 . This matrix is given explicitly in Appendix A. For brevity, this matrix is denoted by g = 011 012 013 9x 021 022 023 g y 031 032 033 02 0 0 0 1 (8.17) Allowing 6i for i = 1, . . . , 6 to vary with time, while keeping all other joint angles fixed, results in a curve with a coordinate induced tangent vector given by X, = X^4X Â— 4X ^4X dx L Y dy . Y dz Â’ *de, + Â‘ae, + + + + x Â‘ae,' Thus, the joint angle coordinate induced tangent vectors are related to the Euler coordinate induced tangent vectors by the Jacobian matrix of the coordinate transformation, and is given by
PAGE 141
133 5 Q 67 Ol2 = 0 cm ai2 = 90 Â° s 2 = 0.0 cm <*23 = 70 cm Â«23 = 0 0 s 3 = 0.0 cm Â°34 Â— 90 cm C*3 4 = 0 Â° s 4 = 9.8 cm a 45 = 0 cm 0 4 5 = 90 0 = 14.5 cm a 56 = 0 cm C*56 = CO O o Table 8.1. Mechanism Parameters for the GE P60 Robot
PAGE 142
134 r x* i r x 0 ] XÂ„ 2 x, X 5s d(,0,ip,x,y,z) Xv, X 04 p{9\, 02, 03, 04, 05, 9&) 6x6 x x x* 5 X, LX* 6 j L x, J (8.18) The magnitude of the volume of the parallelepiped spanned by the joint angle induced basis is given by < X#j , Xgj > . . . 1 1/2 Â• Â• Â• < Xfl 6 , Xe 6 > . \9(,0,ip,x,y,zy t < Xj,, X^ > . . . : 'd( d(0i,...,0e) J Â— sin 6 ' d(4>,6,ip,x,y,z) 1 . d(9 u ...,0 6 ) J ' (8.19) By comparing (8.14) and (8.17), one can deduce the expressions which relate the initial parameterization of E 3 , in terms of (cp,6,ip,x,y,z) to the parameterization of E 3 using the joint angles, 0 1 ,...,0 6 . This yields tan (j) ~ Â— < 713 / 9' cos 9 = 933 tan ip 931 / 932 X = 9x y = 9y z = 9z Hence,
PAGE 143
135 Furthermore, Thus, d
PAGE 144
136 dv =
PAGE 145
137 one or more degrees of freedom. The geometry of the robot configurations corresponding to these singularities are illustrated in Figures 8.12, 8.13, and 8.14. They are interpreted as follows: Figure 8.12 depicts a loss in translational capability in the direction parallel to the line through the center of the second, third and fourth joints. Figure 8.13 depicts a loss in translational capability in the direction parallel to the second, third, fourth and sixth joints. Figure 8.14 depicts a loss in translational
PAGE 146
138 Figure 8.14. GE P60 singularity S 5 sin 0 432 + a 34 cos 0 32 + a 23 cos 0 2 = 0 capability in the direction parallel to the second, third and fourth joints. In this figure, the first and sixth joints are collinear. One may proceed to numerically integrate the volume element function and produce a quantity representing the motion capability of the 6 R robot. This number provides an unambiguous quantitative comparison of the GE P60 robot with other robots possessing six degrees of freedom, under some reasonable criterion relating the size of the workspace or scale of each individual design. This comparison is omitted in favour of applying the procedure to the more interesting case of redundant manipulators that follows in the next section. 8.7 Redundant Manipulators Consider, now, a practical example in which the volume element can assist in determining the efficacy of two alternate designs for a redundant manipulator. The manipulator considered is the Flight Telerobotic Servicer Manipulator System (FTSMS) which is currently being developed by the National Aeronautics and Space Administration. Two alternate designs proposed for the FTSMS are shown in figures
PAGE 147
139 8.15 and 8.16. Kinematic models for these manipulators are shown in figures 8.17 and 8.18. Their constant parameters are presented in Tables 8.2 and 8.3. The mapping of a frame Jat rest with respect to the base space of the manipulator to a frame T at rest with respect to the end effector space of the manipulator is given by the matrix S = n cos 0,sin 0,0 0 cos a, ,,Â•+! sin 0, sin a,,, +1 sin 0,a,,, +1 cos 0, ' cos cos 0,Â— sin cos 0,a 1>t+1 sin 0, sina t>i+1 cos a, it+1 0 0 1 This matrix is given explicitly in Appendix B. Now, the joint angle coordinate induced tangent vectors are related to the Euler coordinate induced tangent vectors by
PAGE 148
140 $ ns s. Figure 8.18. Kinematic Model of the FTSMS Design B X 01 X* X * 3 X, 4 x* 5 x * 6 X, 7 d(,6,i/),x,y,z) d(9i, ...,0 7 ) 7x6 Using the substitutions given in (8.20) the 7 x 6 matrix in the above equation is expressed solely in terms of the joint angles as
PAGE 149
141 a 12 = 0 in Â£*12 = CO O 0 S 2 = 8.25 in a 23 = 9 in Â£*23 = 90 0 S 3 = .00 in Â«34 = 22 in Â£*34 = 0 0 1 S 4 Â— .00 in <*45 = 3 in Â£*45 = O O S 5 = 22.00 in a 56 Â— 0 in Â£*56 = CO 0 0 S$ = .00 in <*67 = 4 in Â£*67 = 0 0 Table 8.2. Mechanism Parameters for the FTSMS Design CZ 12 = 0 in Â£*12 = 0 0 S 2 = 8.25 in Â°23 = 9 in Â£* 23 = 0 0 o S 3 = .00 in 0*34 = 22 in #34 = 0 0 *5*4 = .00 in a 45 = 22 in Â£*45 = 0 0 S 5 = .00 in Â«56 = 4 in Â£*56 = 0 0 Se = .00 in Â«67 = 0 in Â£*67 = 0 0 Table 8.3. Mechanism Parameters for the FTSMS Design B J{Q (pis + glz ) 2 Since the seven vectors , . . . , X$ 7 exist in the six dimensional tangent space of T e G, they must be linearly dependent. However, any six of these vectors form a parallelepiped. The magnitude of the volume of the parallelepiped formed by omitting X 0 , is given by applying (8.19) to the appropriate six vectors and yields sin 6 d((f>,9,ip,x,y,z) \Ji\ (013 + 023 ) 2 Â’ where the symbol 0,indicates that this index value is omitted and J, represents the 6x6 minor obtained by omitting the i th row of the 7x6 matrix J. A more detailed discussion and explicit expressions from which the /, are derived are given in Appendix B.
PAGE 150
142 Following the procedure adopted for the redundant planar case in Section 8.4, Integrating each function V;(0 ( ) for i = 1, . . . , 7, with respect to the previously fixed angle 0,, over the range 0 < 0, < 2k, and dividing by 2n yields an average value of the Finally, the motion capability of the redundant manipulator is then given by Applying (8.23) to the two designs of the FTSMS yields the numerical results presented in Table 8.4. The equation was evaluated using a twelve point GaussLegendre quadrature algorithm. The details of the calculation are in Appendix B Thus, the motion capabilities of the two manipulators are M designA = 183334309.28477 Â± 1.0155834348312 % error MdesignB = 191517556.68370 i .69027903074872 % error . The motion capability of design B is found to exceed that of design A by at most 6.3 percent and by at least 2.7 percent. One concludes that, while the motion capability of both designs are similar, design B is superior. the function K'(0Â») represents the motion capability of the 6 R manipulator formed by fixing the i th joint. It is given by motion capability of each 6 R manipulator which is dependent on the configuration of each redundant joint. This yields (8.23)
PAGE 151
143 Design A Design B M: : 250844855.67039 Â± 3325009.6937743 M 2 : 161115045.63591 Â± 2494407.4716735 M 3 : 188508976.86723 Â± 2378264.5364942 M 4 : 131584521.44226 Â± 1122182.3118614 M 5 : 239486755.40225 Â± 2355489.8951430 M 6 : 123321454.12099 Â± 1239637.5821382 M 7 : 188478555.85433 Â± 118398.63712385 245647868.62494 Â± 1543852.1261107 156681912.80218 Â± 1527313.4799180 191422227.20226 Â± 1276049.5328190 138980526.32664 Â± 250611.68582666 206152193.55928 Â± 198886.00864637 156597816.70722 Â± 1307732.0180155 245140351.56339 Â± 3149593.8865930 Table 8.4. Intermediate Values of Motion Capability for the FTSMS Designs It is of more interest to take note of the intermediate values M, which reveal more specific information about each manipulator configuration. Af 4 and M 6 of both designs are the smallest intermediate values of motion capability. These values correspond to the average motion capability of the 6R manipulator formed by fixing the fourth joint or sixth joint. The small values indicate that the fourth and sixth joints are the most important joints of the system in the sense explained at the end of Section 8.4. It is interesting to note that the joints which are the least important are the first and fifth joints of design A and the first and seventh joints of design B. These joints have the common trait of being parallel to the general axis or length of their respective designs as is seen by Figures 8.15 and 8.16.
PAGE 152
CHAPTER 9 CONCLUSIONS This work has attempted to demonstrate the richness and power inherent in the application of Lie groups to the field of robotics. The fundamental aspects of screw theory have been shown to arise as a natural consequence of the group and differential geometric structure of the Euclidean group. The Lie group approach has also been used to define an invariant measure with which to measure the concept of motion capability of a robot manipulator. The application of this concept has been shown to be global in scope, addressable to manipulators of arbitrary design and thus, independent of the type and number of joints, and the parameterization of the manipulator. The measure has been shown to predict the singularities of a manipulator. When aplied to redundant manipulators, it has been shown to quantify the effectiveness of the redundancy of each joint of the manipulator. The measure has been demonstrated on a typical sixrevolute industrial robot and has been used in determining the efficacy of two design variations of the space based sevenrevolute Flight Telerobotic Servicer Manipulator System currently being studied by the National Aeronautics and Space Administration. Further applications of motion capability are predicted in the task of optimization of manipulator designs. In particular, the measure appears to predict the well known advantage of decoupling of the rotational and translational capabilities of a 144
PAGE 153
145 manipulator. Thus, it may be possible to determine the optimum design which maximizes motion capability for six and sevenrevolute manipulators, the most commonly encountered classes of manipulators. The future holds many more applications of Lie groups to robotics. The theory of the kinematics of manipulators is currently far better understood than the dynamics of manipulators. This work dealt exclusively with the tangent bundle which corresponds to the study of the kinematic aspects of manipulators. It is felt that the investigation of the cotangent bundle of the Euclidean group will lead to breakthroughs in the dynamical apsects of manipulators since the cotangent bundle is related to forces and torques. The analogous geometric entity is called a wrench in screw theory. Unfortunately, as in the case of twists, the screw theory approach precludes information about the finite motions from which the forces and torques and derived. The human arm can be modeled as a sevenrevolute manipulator. The simple task of rotating a crank, or sliding a finger along the edge of a table for example, are very difficult to emulate in robotics. The ability to control position, force and velocity simultaneously, lie at the heart of these tasks. While the study of the dynamics of manipulators is only in its infacy, it is felt that the Lie group approach will play a critical role.
PAGE 154
APPENDIX A THE GENERAL ELECTRIC P60 ROBOT The mapping of a frame T at rest with respect to the base space of the GE P60 robot to a frame T at rest with respect to the end effector space of the robot is given by the matrix cos 0,Â— cos Qj t j + 1 sin 0,sin a<,,+i sin 0,a, i>+1 cos 0, sin 0,cos a t , t+1 cos 0,Â— sin a, it+ i cos 0, a;,i+i sin 0, 0 sin a t , t+ i cos c*,,,+i Si 0 0 0 1 where each matrix in the product represents the mapping of the frame identified with the i th joint into the ( i + l)
PAGE 155
147 The matrix elements are given as g(i, j) = 9ij The joint angles are given as thl = 0 1 th6 = 0 6 The link lengths are given as al2 = G 12 a67 = a 67 The joint offsets are given as si = Si s6 = Sq Thus the matrix g is given as follows:
PAGE 156
148 g(l , 1) = cos(thl)*(cos(th2)*(cos(th3)*(sin(th4)*sin(th6)+cos(th4)* Sc cos (th5) *cos (th6) ) sin(th3) * (sin(th4) *cos (th5) *cos (th6) cos (th4 & )*sin(th6)))sin(th2)*(sin(th3)*(sin(th4)*sin(th6)+cos(th4)*cos & Cth5) *cos (th6) ) +cos (th3) * (sin(th4) *cos (th5) *cos (th6) cos (th4) *s & in(th6) ) ) ) +sin(thl) *sin(th5) *cos (th6) g ( 1 , 2) = cos (thl) * (cos (th2) * (cos (th3) * (sin(th4) *cos (th6) cos (th4) * & cos(th5)*sin(th6))sin(th3)*(sin(th4)*cos(th5)*sin(th6)cos(th Sc 4)*cos(th6) ))sin(th2)*(cos(th3)*(sin(th4)*cos(th5)*sin(th6)c Sc os(th4)*cos(th6))+sin(th3)*(sin(th4)*cos(th6)cos(th4)*cos(th5) Sc *sin(th6)) ) )sin(thl)*sin(th5)*sin(th6) g(l ,3) = cos(thl)*(cos(th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3)*s & in(th4)*sin(th5))sin(th2)*(cos(th3)*sin(th4)*sin(th5)+sin(th3) & *cos (th4) *sin(th5) ) ) sin (thl) *cos (th5) g(l ,4) = cos(thl)*(sin(th2)*(s5*sin(th3)*sin(th4)s5*cos(th3)*cos & (th4) +a34*sin(th3) ) +cos (th2) * (s5*cos (th3) *sin(th4) +s5*sin(th3) * Sc cos(th4)+a34*cos(th3))+a23*cos(th2) )+s4*sin(thl) g(2, 1) = sin(thl)*(cos(th2)*(cos(th3)*(sin(th4)*sin(th6)+cos(th4)* & cos (th5) *cos (th6) ) sin(th3) * (sin(th4) *cos (th5) *cos (th6) cos (th4 & )*sin(th6) ))sin(th2)*(sin(th3)*(sin(th4)*sin(th6)+cos(th4)*cos & (th5) *cos (th6) ) +cos (th3) * (sin(th4) *cos (th5) *cos (th6) cos (th4) *s & in(th6) )))cos(thl)*sin(th5)*cos(th6) g(2,2) = sin(thl)*(cos(th2)*(cos(th3)*(sin(th4)*cos(th6)cos(th4)* & cos(th5)*sin(th6))sin(th3)*(sin(th4)*cos(th5)*sin(th6)cos(th & 4)*cos(th6) ))sin(th2)*(cos(th3)*(sin(th4)*cos(th5)*sin(th6)c & os (th4) *cos (th6) ) +sin(th3) * (sin(th4) *cos (th6) cos (th4) *cos (th5) & *sin(th6))))+cos(thl)*sin(th5)*sin(th6) g(2,3) = sin(thl)*(cos(th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3)*s & in(th4)*sin(th5))sin(th2)*(cos(th3)*sin(th4)*sin(th5)+sin(th3) & *cos (th4) *sin(th5) ) ) +cos (thl) *cos (th5) g(2,4) = sin(thl)*(sin(th2)*(s5*sin(th3)*sin(th4)s5*cos(th3)*cos & (th4)+a34*sin(th3))+cos(th2)*(s5*cos(th3)*sin(th4)+s5*sin(th3)* Sc cos (th4) +a34*cos (th3) ) +a23*cos (th2) ) s4*cos (thl) g(3 Â» 1) = cos(th2)*(sin(th3)*(sin(th4)*sin(th6)+cos(th4)*cos(th5)*c Sc os (th6) ) +cos (th3) * (sin(th4) *cos (th5) *cos (th6) cos (th4) *sin(th6) & ) ) +sin(th2) * (cos (th3) * (sin(th4) *sin(th6) +cos (th4) *cos (th5) *cos ( Sc th6) ) sin(th3) * (sin(th4) *cos (th5) *cos (th6) cos (th4) *sin(th6) ) ) g(3 Â»2) = sin(th2) * (cos (th3) * (sin(th4) *cos (th6) cos (th4) *cos (th5) *s Sc in(th6) )sin(th3)*(sin(th4)*cos (th5)*sin(th6) cos (th4) *cos(th6 Sc )))+cos(th2)*(cos(th3)*(sin(th4)*cos(th5)*sin(th6)cos(th4)*co Sc s (th6) ) +sin(th3)*(sin(th4) *cos (th6) cos (th4) *cos (th5) *sin(th6) ) Sc ) g(3.3) = sin(th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3)*sin(th4)*si Sc n(th5))+cos(th2)*(cos(th3)*sin(th4)*sin(th5)+sin(th3)*cos(th4)* & sin(th5)) g(3 >4) = cos(th2)*(s5*sin(th3)*sin(th4)s5*cos(th3)*cos(th4)+a34*s Sc in(th3))+sin(th2)*(s5*cos(th3)*sin(th4)+s5*sin(th3)*cos(th4)+a3 Sc 4*cos(th3))+a23*sin(th2) g(4,l) = 0 g(4,2) = 0 g(4 ,3) = 0 g(4,4) = 1
PAGE 157
149 In a similar fashion, the function in the volume element dv = 1 ' 1 JMMMMMfle (#13 + 9 23 ) is given explicity with the following symbolic substitutions: Â— Jji denom = g\ z + With the above symbolic substitutions, the matrix J and the denominator are given as follows: J(1 , 1) = (cos(thl)*(cos(th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3)* & sin(th4) *sin(th5) ) sin(th2) * (cos (th3) *sin(th4) *sin(th5) +sin(th3 & )*cos(th4)*sin(th5)))sin(thl)*cos(th5))**2(sin(thl)*(cos(th2 & )*(cos(th3)*cos(th4)*sin(th5)sin(th3)*sin(th4)*sin(th5))sin(t & h2) * (cos (th3) *sin(th4) *sin(th5) +sin(th3) *cos (th4) *sin(th5) ) ) co & s (thl) *cos (th5) ) * (sin(thl) * (cos (th2) * (cos (th3) *cos (th4) *sin(th5 & )sin(th3)*sin(th4)*sin(th5))sin(th2)*(cos(th3)*sin(th4)*sin(t & h5) +sin(th3) *cos (th4) *sin(th5) ) ) +cos (thl) *cos (th5) ) J(l,2) = sin(thl)*(sin(th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3)* & sin(th4)*sin(th5))cos(th2)*(cos(th3)*sin(th4)*sin(th5)+sin(th3 a )*cos(th4)*sin(th5)))*(cos(thl)*(cos(th2)*(cos(th3)*cos(th4)*si a n(th5)sin(th3)*sin(th4)*sin(th5))sin(th2)*(cos(th3)*sin(th4)* a sin(th5)+sin(th3)*cos(th4)*sin(th5)))sin(thl)*cos(th5))cos(th a D*(sin(th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3)*sin(th4)*sin a (th5) ) cos (th2) * (cos (th3) *sin(th4) *sin(th5) +sin(th3) *cos (th4) *s a in(th5)))*(sin(thl)*(cos(th2)*(cos(th3)*cos(th4)*sin(th5)sin(t a h3)*sin(th4)*sin(th5))sin(th2)*(cos(th3)*sin(th4)*sin(th5)+sin a (th3)*cos(th4)*sin(th5)))+cos(thl)*cos(th5)) J(l,3) = sin(thl)*(cos(th2)*(cos(th3)*sin(th4)*sin(th5)sin(th3)* a cos (th4) *sin(th5) ) sin(th2) *(cos (th3) *cos (th4) *sin(th5) sin(th3 a )*sin(th4)*sin(th5)))*(cos(thl)*(cos(th2)*(cos(th3)*cos(th4)*si a n(th5)sin(th3)*sin(th4)*sin(th5))sin(th2)*(cos(th3)*sin(th4)* a sin(th5)+sin(th3)*cos(th4)*sin(th5)))sin(thl)*cos(th5))cos(th a D*(cos(th2)*(cos(th3)*sin(th4)*sin(th5)sin(th3)*cos(th4)*sin a (th5))sin(th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3)*sin(th4)*s a in(th5)))*(sin(thl)*(cos(th2)*(cos(th3)*cos(th4)*sin(th5)sin(t a h3)*sin(th4)*sin(th5))sin(th2)*(cos(th3)*sin(th4)*sin(th5)+sin a (th3) *cos (th4) *sin(th5) ) )+cos (thl) *cos (th5) ) J(1 >4) = sin(thl)*(cos(th2)*(cos(th3)*sin(th4)*sin(th5)sin(th3)* a cos(th4)*sin(th5))sin(th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3 a )*sin(th4)*sin(th5)))*(cos(thl)*(cos(th2)*(cos(th3)*cos(th4)*si
PAGE 158
150 ft n(th5)sin(th3)*sin(th4)*sin(th5))sin(th2)*(cos(th3)*sin(th4)* ft sin(th5)+sin(th3)*cos(th4)*sin(th5)) )sin(thl)*cos(th5) )cos(th ft D*(cos(th2)*(cos(th3)*sin(th4)*sin(th5)sin(th3)*cos(th4)*sin ft (th5) )sin(th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3)*sin(th4)*s & in(th5lll*(sin(thl)*(cos(th2l*(cos(th3l*cos(th4)*sin(th5)sin(t ft h3)*sin(th4)*sin(th5) )sin(th2)*(cos(th3)*sin(th4)*sin(th5)+sin ft (th3)*cos(th4)*sin(th5)))+cos(thl)*cos(th5) ) J ( 1 ,5) = (sin(thl)*(cos(th2)*(cos(th3)*cos(th4)*cos(th5)sin(th3)* ft sin(th4)*cos(th5))sin(th2)*(cos(th3)*sin(th4)*cos(th5)+sin(th3 & 1 *cos (th4) *cos (th5) ) ) cos (thl) *sin(th5) ) * (cos (thl) * (cos (th2) * (c & os(th3)*cos(th4)*sin(th5)sin(th3)*sin(th4)*sin(th5))sin(th2)* & (cos(th3)*sin(th4)*sin(th5)+sin(th3)*cos(th4)*sin(th5)))sin(th & l)*cos(th5))(sin(thl)*sin(th5)+cos(thl)*(cos(th2)*(cos(th3)*co & s(th4)*cos(th5)sin(th3)*sin(th4)*cos(th5))sin(th2)*(cos(th3)* & sin(th4)*cos(th5)+sin(th3)*cos(th4)*cos(th5) )) )* (sin (thl)* (cos ( & th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3)*sin(th4)*sin(th5))si & n(th2) * (cos (th3) *sin(th4) *sin(th5)+sin(th3) *cos (th4) *sin(th5) ) ) ft +cos(thl)*cos(th5)) J(1 ,6) = 0 J(2,l) = 0 J(2,2) = sin(th2)*(cos(th3)*sin(th4)*sin(th5)+sin(th3)*cos(th4)*si & n(th5))cos(th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3)*sin(th4)* ft sin(thS)) J(2,3) = cos(th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3)*sin(th4)*s & in(th5) )sin(th2)*(cos(th3)*sin(th4)*sin(th5)sin(th3)*cos(th4 ft )*sin(th5)) J(2,4) = cos(th2)*(cos(th3)*cos(th4)*sin(th5)sin(th3)*sin(th4)*s ft in(th5))sin(th2)*(cos(th3)*sin(th4)*sin(th5)sin(th3)*cos(th4 ft )*sin(th5)) J(2,5) = sin(th2)*(cos(th3)*cos(th4)*cos(th5)sin(th3)*sin(th4)*c ft os(th5))cos(th2)*(cos(th3)*sin(th4)*cos(th5)+sin(th3)*cos(th4) ft *cos(th5ll J(2,6) = 0 J(3,l) = 0 J(3,2) = (cos(th2)*(cos(th3)*(sin(th4)*sin(th6)+cos(th4)*cos(th5)* ft cos(th6))sin(th3)*(sin(th4)*cos(th5)*cos(th6)cos(th4)*sin(th6 & )))sin(th2)*(sin(th3)*(sin(th4)*sin(th6)+cos(th4)*cos(th5)*cos ft (th6) )+cos(th3)*(sin(th4)*cos(th5)*cos(th6)cos(th4)*sin(th6))) ft )*(sin(th2)*(cos(th3)*(sin(th4)*cos(th6)cos(th4)*cos(th5)*sin( ft th6))sin(th3)*(sin(th4)*cos(th5)*sin(th6)cos(th4)*cos(th6))) & +cos(th2)*(cos(th3)*(sin(th4)*cos(th5)*sin(th6)cos(th4)*cos(t ft h6))+sin(th3)*(sin(th4)*cos(th6)cos(th4)*cos(th5)*sin(th6)) lift (cos(th2)*(sin(th3l*(sin(th4l*sin(th6l+cos(th4l*cos(th5l*cos(th & 61 1+cos (th3l * (sin(th4l *cos (th5l*cos(th6l cos (th4l *sin(th6l 1 1+si ft n(th2l*(cos(th3l*(sin(th4)*sin(th6l+cos(th4!*cos(th5!*cos(th6)l ft sin(th3l*(sin(th4)*cos(th5l*cos(th6lcos(th4l*sin(th6Hll*(cos ft (th2l * (cos (th3l * (sin(th4l *cos (th6l cos (th4l *cos (th5l *sin(th6l 1 ft sin(th3l*(sin(th4l*cos(th5l*sin(th6lcos(th4)*cos(th6lllsin(t ft h2)*(cos(th3)*(sin(th4l*cos(th5)*sin(th6lcos(th4)*cos(th6ll+s ft in(th3l*(sin(th4)*cos(th6lcos(th4l*cos(th5l*sin(th6)lll J(3,3) = (sin(th2)*(sin(th3l*(sin(th4l*sin(th6l+cos(th4l*cos(th5l
PAGE 159
151 ft *cos (th6) ) cos (th3) * (sin(th4) *cos (th5) *cos(th6) cos (th4) *sin(th ft 6) ))+cos(th2)*(cos(th3)*(sin(th4)*sin(th6)+cos(th4)*cos(th5)*co ft s(th6) )sin(th3)*(sin(th4)*cos(th5)*cos(th6)cos(th4)*sin(th6)) ft ))*(sin(th2)*(cos(th3)*(sin(th4)*cos(th6)cos(th4)*cos(th5)*sin ft (th6))sin(th3)*(sin(th4)*cos(th5)*sin(th6)cos(th4)*cos(th6)) ft )+cos(th2)*(cos(th3)*(sin(th4)*cos(th5)*sin(th6)cos(th4)*cos( ft th6) ) +sin(th3) * (sin(th4) *cos (th6l cos (th4) *cos (th5) *sin(th6) ) ) ) ft (cos(th2)*(sin(th3l*(sin(th4)*sin(th6)+cos(th4)*cos(th5)*cos(t ft h6) )+cos(th3)*(sin(th4)*cos(th5)*cos(th6)cos(th4)*sin(th6) ) )+s ft in(th2) * (cos (th3) * (sin(th4) *sin(th6l +cos (th4) *cos (th5) *cos (th6) ft )sin(th3)*(sin(th4)*cos(th5)*cos(th6)cos(th4)*sin(th6))))*(co & s (th2) * (cos (th3) * (sin(th4) *cos (th6) cos (th4) *cos (th5) *sin(th6) ) & sin(th3)*(sin(th4)*cos(th5)*sin(th6)cos(th4)*cos(th6)))+sin( & th2)*(cos(th3)*(sin(th4)*cos(th5)*sin(th6)cos(th4)*cos(th6) ) & sin(th3) * (sin(th4) *cos (th6) cos (th4) *cos (th5) *sin(th6) ) ) ) J(3,4) = (sin(th2)*(cos(th3)*(cos(th4)*sin(th6)sin(th4)*cos(th5)* & cos(th6) )sin(th3)*(sin(th4)*sin(th6)+cos(th4)*cos(th5)*cos(th6 & )))+cos(th2)*(cos(th3)*(sin(th4)*sin(th6)+cos(th4)*cos(th5)*cos & (th6) )+sin(th3)*(cos(th4)*sin(th6)sin(th4)*cos(th5)*cos(th6) )) & )*(sin(th2)*(cos(th3)*(sin(th4)*cos(th6)cos(th4)*cos(th5)*sin( & th6))sin(th3)*(sin(th4)*cos(th5)*sin(th6)cos(th4)*cos(th6))) & +cos(th2)*(cos(th3)*(sin(th4l*cos(th5l*sin(th6lcos(th4)*cos(t & h6))+sin(th3)*(sin(th4)*cos(th6)cos(th4)*cos(th5)*sin(th6)) lift (cos(th2l*(sin(th3)*(sin(th4)*sin(th6l+cos(th4l*cos(th5l*cos(th ft 6))+cos(th3l*(sin(th4l*cos(th5)*cos(th6lcos(th4l*sin(th6ll)+si ft n(th2)*(cos(th3)*(sin(th4l*sin(th6l+cos(th4!*cos(th5l*cos(th6l! ft Sin(th3l*(sin(th4)*cos(th5l*cos(th6lcos(th4l*sin(th6llll*(cos ft (th2) * (sin(th3) * (sin(th4) *cos (th5l *sin(th6l+cos (th4l *cos (th6l 1+ ft cos (th3l * (sin(th4) *cos (th6l cos (th4l *cos (th5l *sin(th6l 1 1 +sin(th ft 2l*(cos(th3)*(sin(th4!*cos(th5)*sin(th6)+cos(th4l*cos(th6llsin ft (th3) * (sin(th4) *cos (th6l cos(th4) *cos (th5) *sin(th6l 1 1 1 J(3,5l = (sin(th2l*(sin(th3l*sin(th4)*sin(th5)*cos(th6lcos(th3l*c ft os(th4l*sin(th5l*cos(th6ll+cos(th2l*(cos(th3l*sin(th4)*sin(th5 & )*cos(th6lsin(th3l*cos(th4l*sin(th5l*cos(th6)ll*(sin(th2l*(cos ft (th3l * (sin(th4) *cos (th6l cos (th4l *cos (th5l *sin(th6) 1 sin(th3l * ( ft sin(th4l *cos (th5) *sin(th6l cos (th4l *cos (th6l 1 ) +cos (th2l * (cos (t ft h3)*(sin(th4)*cos(th5l*sin(th6lcos(th4l*cos(th6l!+sin(th3l*(s ft in(th4)*cos(th6)cos(th4l*cos(th5)*sin(th6)lll(sin(th2l*(cos(t ft h3l*cos(th4l*sin(th5)*sin(th6lsin(th3l*sin(th4l*sin(th5l*sin(t ft h6l 1+cos (th2) * (cos (th3) *sin(th4l *sin(th5l *sin(th6l+sin(th3l *cos ft (th4l*sin(th5)*sin(th6!l)*(cos(th2)*(sin(th3)*(sin(th4l*sin(th6 ft 1+cos (th4l *cos (th5l*cos (th6l 1+cos (th3l * (sin(th4l *cos (th5l *cos (t ft h6l cos (th4l *sin(th6l 1 l+sin(th2) * (cos (th3l* (sin(th4l *sin(th6l+c ft os(th4l*cos(th5l*cos(th6llsin(th3l*(sin(th4l*cos(th5l*cos(th6l ft cos(th4l*sin(th6))H J(3,6) = (sin(th2l*(cos(th3l*(sin(th4l*cos(th6lcos(th4)*cos(th5)* ft sin(th6)lsin(th3)*(sin(th4l*cos(th5)*sin(th6lcos(th4l*cos(th & 6ll)+cos(th2l*(cos(th3)*(sin(th4)*cos(th5)*sin(th6lcos(th4l*c & os(th6)l+sin(th3l*(sin(th4)*cos(th6lcos(th4)*cos(th5l*sin(th6l ft )ll**2(cos(th2)*(sin(th3l*(sin(th4l*sin(th6lcos(th4l*cos(th5 ft )*cos(th6l 1+cos (th3l* (cos (th4l*sin(th6lsin(th4l*cos(th5l*cos(t
PAGE 160
152 & h6) ) ) +sin(th2) * (cos (th3) * (sin(th4) *sin(th6) cos (th4) *cos (th5) * & cos (th6) ) sin(th3) * (cos (th4) *sin(th6) sin(th4) *cos (th5) *cos (th6 & ))))*(cos(th2)*(sin(th3)*(sin(th4)*sin(th6)+cos(th4)*cos(th5)*c & os (th6) ) +cos (th3) * (sin(th4) *cos (th5) *cos (th6) cos (th4) *sin(th6) & ) ) +sin(th2) * (cos (th3) * (sin(th4) *sin(th6) +cos (th4) *cos (th5) *cos ( & th6))sin(th3)*(sin(th4)*cos(th5)*cos(th6)cos(th4)*sin(th6)))) J(4, 1) = s4*cos(thl)sin(thl)*(sin(th2)*(s5*sin(th3)*sin(th4)s5* & cos(th3)*cos(th4)+a34*sin(th3))+cos(th2)*(s5*cos(th3)*sin(th4)+ & s5*sin(th3)*cos(th4)+a34*cos(th3) )+a23*cos(th2)) J(4 ,2) = cos(thl)*(cos(th2)*(s5*sin(th3)*sin(th4)s5*cos(th3)*cos & (th4)+a34*sin(th3) )sin(th2)*(s5*cos(th3)*sin(th4)+s5*sin(th3)* & cos (th4) +a34*cos (th3) ) a23*sin(th2) ) J(4,3) = cos(thl)*(cos(th2)*(s5*sin(th3)*sin(th4)+s5*cos(th3)*cos & (th4)a34*sin(th3) )sin(th2)*(s5*cos(th3)*sin(th4)+s5*sin(th3)* & cos(th4)+a34*cos(th3))) J(4,4) = cos(thl)*(cos(th2)*(s5*cos(th3)*cos(th4)s5*sin(th3)*sin( & th4))sin(th2)*(s5*cos(th3)*sin(th4)+s5*sin(th3)*cos(th4)) ) J(4,5) = 0 J(4,6) = 0 J(5, 1) = cos(thl)*(sin(th2)*(s5*sin(th3)*sin(th4)s5*cos(th3)*cos & (th4)+a34*sin(th3))+cos(th2)*(s5*cos(th3)*sin(th4)+s5*sin(th3)* & cos (th4) +a34*cos (th3) )+a23*cos (th2) )+s4*sin(thl) J(5,2) = sin(thl)*(cos(th2)*(s5*sin(th3)*sin(th4)s5*cos(th3)*cos & (th4)+a34*sin(th3) )sin(th2)*(s5*cos(th3)*sin(th4)+s5*sin(th3) * & cos (th4) +a34*cos (th3) ) a23*sin(th2) ) J(5,3) = sin(thl)*(cos(th2)*(s5*sin(th3)*sin(th4)+s5*cos(th3)*cos & (th4)a34*sin(th3) )sin(th2)*(s5*cos(th3)*sin(th4)+s5*sin(th3)* & cos(th4)+a34*cos(th3))) J(5,4) = sin(thi)*(cos(th2)*(s5*cos(th3)*cos(th4)s5*sin(th3)*sin( & th4) )sin(th2)*(s5*cos(th3)*sin(th4)+s5*sin(th3)*cos(th4))) J(5,5) = 0 J(5,6) = 0 J(6 , 1) = 0 Â•1(6,2) = sin(th2)*(s5*sin(th3)*sin(th4)s5*cos(th3)*cos(th4)+a34* & sin(th3))+cos(th2)*(s5*cos(th3)*sin(th4)+s5*sin(th3)*cos(th4)+a & 34*cos (th3) )+a23*cos (th2) J(6 ,3) = sin(th2)*(s5*sin(th3)*sin(th4)+s5*cos(th3)*cos(th4)a34* & sin(th3))+cos(th2)*(s5*cos(th3)*sin(th4)+s5*sin(th3)*cos(th4)+a & 34*cos(th3)) J(6Â»4) = sin(th2)*(s5*cos(th3)*cos(th4)s5*sin(th3)*sin(th4))+cos( & th2)* (s5*cos (th3) *sin(th4)+s5*sin(th3) *cos(th4) ) J(6,5) = 0 J(6,6) = 0 denom = (sin(thl)*(cos(th2)=Kcos(th3)*cos(th4)*sin(th5)sin(th3)* & sin(th4) *sin(th5) )sin(th2) *(cos(th3) *sin(th4)*sin(th5)+sin(th3 & ) *cos (th4) *sin(th5) ) ) +cos (thl) *cos (th5) ) **2+ (cos (thl ) * (cos (th2) & *(cos(th3)*cos(th4)*sin(th5)sin(th3)*sin(th4)*sin(th5))sin(th & 2)*(cos(th3)*sin(th4)*sin(th5)+sin(th3)*cos(th4)*sin(th5)))sin & (thl)*cos(th5))**2
PAGE 161
APPENDIX B THE FLIGHT TELEROBOTIC SERVICER MANIPULATOR SYSTEM The mapping of a frame T at rest with respect to the base space of the FTSMS designs to a frame T at rest with respect to the end effector space of the manipulators is given by the matrix cos Oi Â— cos sin 0,sin a, t , +1 sin 0, a;,;+i cos 0, sin 0,cos a, , 1+1 cos 0, Â— sin a, it+1 cos 0,a,,,+i sin 0,0 sina i
PAGE 162
The matrix elements are 9H The joint angles are 0i 06 The link lengths are a 12 ^78 The joint offsets are S 7 = g(iJ) = th(l) = th(6) = al2 = a78 = si = s7 Thus, the matrix g for the FTSMS Design A is given as follows:
PAGE 163
155 g(l , 1) = cos(th(l) )*(cos(th(2) )*(cos(th(3) )*(cos(th(4) )*(sin(th(5) & )*sin(th(7))+cos(th(5))*cos(th(6))*cos(th(7)))+sin(th(4))*sin(t & h(6))*cos(th(7)))sin(th(3))*(sin(th(4))*(sin(th(5))*sin(th(7)) & +cos(th(5))*cos(th(6))*cos(th(7)))cos(th(4))*sin(th(6))*cos(th a (7))))+sin(th(2))*(sin(th(5))*cos(th(6))*cos(th(7))cos(th(5))* & sin(th(7))))+sin(thd))*(cos(th(3))*(sin(th(4))*(sin(th(5))*sin & (th(7))+cos(th(5))*cos(th(6))*cos(th(7)))cos(th(4))*sin(th(6)) & *cos(th(7)))+sin(th(3))*(cos(th(4))*(sin(th(5))*sin(th(7))+cos( & th(5))*cos(th(6))*cos(th(7)))+sin(th(4))*sin(th(6))*cos(th(7))) & ) g(l ,2) = cos(th(i))*(cos(th(2) )*(cos(th(3))*(cos(th(4) )*(sin(th(5) & )*cos(th(7))cos(th(5))*cos(th(6))*sin(th(7)))sin(th(4))*sin(t & h(6))*sin(th(7)))sin(th(3))*(sin(th(4))*(sin(th(5))*cos(th(7)) & cos(th(5))*cos(th(6))*sin(th(7)))+cos(th(4))*sin(th(6))*sin(th & (7))))+sin(th(2))*(sin(th(5))*cos(th(6))*sin(th(7))cos(th(5)) & *cos(th(7) ) ) )+sin(th(l))*(cos(th(3) )*(sin(th(4) )*(sin(th(5))*co & s(th(7))cos(th(5))*cos(th(6))*sin(th(7)))+cos(th(4))*sin(th(6) & )*sin(th(7) ) )+sin(th(3))*(cos(th(4))*(sin(th(5) )*cos(th(7))cos a (th(5) )*cos(th(6))*sin(th(7) ) )sin(th(4) )*sin(th(6) )*sin(th(7) ) & )) g(l ,3) = cos(th(l) )*(cos(th(2) )*(cos(th(3) )*(cos(th(4) )*cos(th(5)) & *sin(th(6))sin(th(4))*cos(th(6)))sin(th(3))*(sin(th(4))*cos(t & h(5))*sin(th(6))+cos(th(4))*cos(th(6))))+sin(th(2))*sin(th(5))* & sin(th(6)))+sin(thd))*(cos(th(3))*(sin(th(4))*cos(th(5))*sin(t & h(6))+cos(th(4))*cos(th(6)))+sin(th(3))*(cos(th(4))*cos(th(5))* & sin(th(6) )sin(th(4) )*cos(th(6) ) ) ) g(l,4) = cos(thd))*(cos(th(2))*(cos(th(3))*(sin(th(4))*(s5+sin(th & (6))*a67)+cos(th(4))*cos(th(5))*cos(th(6))*a67+cos(th(4))*a45)& sin(th(3))*(cos(th(4))*(s5+sin(th(6))*a67)+sin(th(4))*cos(th(5 & ))*cos(th(6))*a67+sin(th(4))*a45)+cos(th(3))*a34)+sin(th(2))*si & n(th(5))*cos(th(6))*a67+cos(th(2))*a23)+sin(thd))*(sin(th(3))* & (sin(th(4))*(s5+sin(th(6))*a67)+cos(th(4))*cos(th(5))*cos(th(6) & )*a67+cos(th(4))*a45)+cos(th(3))*(cos(th(4))*(s5+sin(th(6))*a6 & 7)+sin(th(4))*cos(th(5))*cos(th(6))*a67+sin(th(4))*a45)+s2+sin( & th(3) ) *a34) g(2,l) = sin(thd) )*(cos(th(2))*(cos(th(3))*(cos(th(4) )*(sin(th(5) & )*sin(th(7))+cos(th(5))*cos(th(6))*cos(th(7)))+sin(th(4))*sin(t & h(6))*cos(th(7)))sin(th(3))*(sin(th(4))*(sin(th(5))*sin(th(7)) & +cos(th(5))*cos(th(6))*cos(th(7)))cos(th(4))*sin(th(6))*cos(th & (7))))+sin(th(2))*(sin(th(5))*cos(th(6))*cos(th(7))cos(th(5))* & sin(th(7))))cos(th(l))*(cos(th(3))*(sin(th(4))*(sin(th(5))*sin & (th(7))+cos(th(5))*cos(th(6))*cos(th(7)))cos(th(4))*sin(th(6)) & *cos(th(7)))+sin(th(3))*(cos(th(4))*(sin(th(5))*sin(th(7))+cos( a th(5))*cos(th(6))*cos(th(7)))+sin(th(4))*sin(th(6))*cos(th(7))) a ) g(2Â»2) = sin(th(l))*(cos(th(2))*(cos(th(3))*(cos(th(4))*(sin(th(5) a )*cos(th(7))cos(th(5))*cos(th(6))*sin(th(7)))sin(th(4))*sin(t a h(6))*sin(th(7)))sin(th(3))*(sin(th(4))*(sin(th(5))*cos(th(7)) a cos(th(5) )*cos(th(6) )*sin(th(7)))+cos(th(4))*sin(th(6))*sin(th & (7))))+sin(th(2))*(sin(th(5))*cos(th(6))*sin(th(7))cos(th(5)) a *cos(th(7))))cos(thd))*(cos(th(3))*(sin(th(4))*(sin(th(5))*co
PAGE 164
156 & s(th(7))cos(th(5))*cos(th(6))*sin(th(7)))+cos(th(4))*sin(th(6) & )*sin(th(7)))+sin(th(3))*(cos(th(4))*(sin(th(5))*cos(th(7))cos ft (th(5))*cos(th(6))*sin(th(7)))sin(th(4))*sin(th(6))*sin(th(7)) & )) g(2,3) = sin(th(l))*(cos(th(2))*(cos(th(3))*(cos(th(4))*cos(th(5)) & *sin(th(6))sin(th(4))*cos(th(6)))sin(th(3))*(sin(th(4))*cos(t & h(5) )*sin(th(6) )+cos(th(4) )*cos(th(6))) )+sin(th(2))*sin(th(5))* & sin(th(6)))cos(th(l))*(cos(th(3))*(sin(th(4))*cos(th(5))*sin(t & h(6))+cos(th(4))*cos(th(6)))+sin(th(3))*(cos(th(4))*cos(th(5))* & sin(th(6) )sin(th(4) )*cos(th(6) ) ) ) g(2,4) = sin(th(l))*(cos(th(2))*(cos(th(3))*(sin(th(4) )*(s5+sin(th ft (6))*a67)+cos(th(4))*cos(th(5))*cos(th(6))*a67+cos(th(4))*a45)& sin(th(3))*(cos(th(4))*(s5+sin(th(6))*a67)+sin(th(4))*cos(th(5 ft ))*cos(th(6))*a67+sin(th(4))*a45)+cos(th(3))*a34)+sin(th(2))*si ft n(th(5))*cos(th(6))*a67+cos(th(2))*a23)cos(th(l))*(sin(th(3))* ft (sin(th(4))*(s5+sin(th(6))*a67)+cos(th(4))*cos(th(5))*cos(th(6) ft )*a67+cos(th(4))*a45)+cos(th(3))*(cos(th(4))*(s5+sin(th(6))*a6 ft 7)+sin(th(4) )*cos(th(5))*cos(th(6) )*a67+sin(th(4))*a45)+s2+sin( ft th(3))*a34) g(3, 1) = sin(th(2))*(cos(th(3))*(cos(th(4))*(sin(th(5))*sin(th(7)) & +cos(th(5))*cos(th(6))*cos(th(7)))+sin(th(4))*sin(th(6))*cos(th ft (7)))sin(th(3))*(sin(th(4))*(sin(th(5))*sin(th(7))+cos(th(5))* ft cos(th(6))*cos(th(7)))cos(th(4))*sin(th(6))*cos(th(7))))cos(t ft h(2))*(sin(th(5))*cos(th(6))*cos(th(7))cos(th(5))*sin(th(7))) g(3,2) = sin(th(2))*(cos(th(3))*(cos(th(4))*(sin(th(5))*cos(th(7)) ft cos(th(5))*cos (th(6) )*sin(th(7) ) )sin(th(4) )*sin(th(6) )*sin(th ft (7)))sin(th(3))*(sin(th(4))*(sin(th(5))*cos(th(7))cos(th(5))* ft cos(th(6))*sin(th(7)))+cos(th(4))*sin(th(6))*sin(th(7))))cos(t ft h(2))*(sin(th(5))*cos(th(6))*sin(th(7))cos(th(5))*cos(th(7))) g(3,3) = sin(th(2))*(cos(th(3))*(cos(th(4))*cos(th(5))*sin(th(6))& sin(th(4))*cos(th(6)))sin(th(3))*(sin(th(4))*cos(th(5))*sin(th ft (6))+cos(th(4))*cos(th(6))))cos(th(2))*sin(th(5))*sin(th(6)) g(3,4) = sin(th(2))*(cos(th(3))*(sin(th(4))*(s5+sin(th(6))*a67)+co ft s(th(4))*cos(th(5))*cos(th(6))*a67+cos(th(4))*a45)sin(th(3))*( ft cos(th(4))*(s5+sin(th(6))*a67)+sin(th(4))*cos(th(5))*cos(th(6) ft )*a67+sin(th(4))*a45)+cos(th(3))*a34)+sllcos(th(2))*sin(th(5)) ft *cos(th(6))*a67+sin(th(2))*a23 g(4 , 1) = 0 g(4,2) = 0 g(4,3) = 0 g(4 ,4) = 1
PAGE 165
157 Also, the matrix g for the FTSMS Design B is given as follows: g(l,l) = cos(th(l))*(cos(th(2))*(cos(th(3))*(cos(th(4))*(sin(th(5) Sc )*sin(th(7))+cos(th(5))*cos(th(6))*cos(th(7)))sin(th(4))*(sin( & th(5))*cos(th(6))*cos(th(7))cos(th(5))*sin(th(7))))sin(th(3)) & *(sin(th(4) )*(sin(th(5))*sin(th(7))+cos(th(5))*cos(th(6) )*cos(t & h(7) ) )+cos(th(4) )*(sin(th(5))*cos(th(6) )*cos(th(7))cos(th(5) )* Sc sin(th(7)))))+sin(th(2))*sin(th(6))*cos(th(7)))+sin(th(l))*(cos & (th(3))*(sin(th(4))*(sin(th(5))*sin(th(7))+cos(th(5))*cos(th(6) Sc )*cos(th(7)))+cos(th(4))*(sin(th(5))*cos(th(6))*cos(th(7))cos( Sc th(5) )*sin(th(7) ) ))+sin(th(3))*(cos(th(4) )*(sin(th(5) )*sin(th(7 & ))+cos(th(5))*cos(th(6))*cos(th(7)))sin(th(4))*(sin(th(5))*cos & (th(6))*cos(th(7))cos(th(5))*sin(th(7))))) g ( 1 ,2) = cos(th(l))*(cos(th(2))*(cos(th(3))*(cos(th(4))*(sin(th(5) Sc )*cos(th(7) )cos(th(5) )*cos(th(6))*sin(th(7)))sin(th(4))*(sin Sc (th(5) )*cos(th(6) )*sin(th(7) )cos(th(5))*cos(th(7) )))sin(th(3) Sc )*(cos(th(4))*(sin(th(5))*cos(th(6))*sin(th(7))cos(th(5))*cos Sc (th(7) ) )+sin(th(4) )*(sin(th(5))*cos(th(7) )cos(th(5))*cos(th(6) Sc )*sin(th(7)))))sin(th(2))*sin(th(6))*sin(th(7)))+sin(th(l))*(s Sc in(th(3))*(cos(th(4))*(sin(th(5))*cos(th(7))cos(th(5))*cos(th( Sc 6) )*sin(th(7) ))sin(th(4))*(sin(th(5) )*cos(th(6))*sin(th(7))c Sc os(th(5))*cos(th(7))))+cos(th(3))*(cos(th(4))*(sin(th(5))*cos( Sc th(6))*sin(th(7))cos(th(5))*cos(th(7)))+sin(th(4))*(sin(th(5)) Sc *cos(th(7))cos(th(5))*cos(th(6))*sin(th(7))))) g ( 1 ,3) = cos(th(l))*(cos(th(2))*(cos(th(3))*(cos(th(4))*cos(th(5)) Sc *sin(th(6))sin(th(4))*sin(th(5))*sin(th(6)))sin(th(3))*(cos(t Sc h(4))*sin(th(5))*sin(th(6))+sin(th(4))*cos(th(5))*sin(th(6)) ))Sc sin(th(2))*cos(th(6)))+sin(th(l))*(sin(th(3))*(cos(th(4))*cos(t Sc h(5))*sin(th(6) )sin(th(4))*sin(th(5))*sin(th(6)) )+cos(th(3))*( Sc cos(th(4))*sin(th(5))*sin(th(6))+sin(th(4))*cos(th(5))*sin(th(6 Sc )))) g(l,4) = sin(th(l))*(s2+sin(th(3))*(sin(th(4))*sin(th(5))*a56+cos Sc (th(4))*cos(th(5))*a56+cos(th(4))*a45)+cos(th(3))*(cos(th(4))*s Sc in(th(5))*a56+sin(th(4))*cos(th(5))*a56+sin(th(4))*a45)+sin(th( Sc 3) )*a34)+cos(th(l))*(cos(th(2))*(cos(th(3) )*(sin(th(4) )*sin(th & (5) ) *a56+cos (th(4) ) *cos (th(5) )*a56+cos (th(4) )*a45) sin(th(3) ) *( Sc cos(th(4))*sin(th(5))*a56+sin(th(4))*cos(th(5))*a56+sin(th(4))* Sc a45)+cos(th(3) )*a34)+cos(th(2))*a23) g(2,l) = sin(th(l) )*(cos(th(2) )*(cos(th(3) )*(cos(th(4))*(sin(th(5) Sc )*sin(th(7))+cos(th(5))*cos(th(6))*cos(th(7)))sin(th(4))*(sin( & th(5))*cos(th(6))*cos(th(7))cos(th(5))*sin(th(7))))sin(th(3)) Sc *(sin(th(4))*(sin(th(5))*sin(th(7))+cos(th(5))*cos(th(6))*cos(t & h(7)))+cos(th(4))*(sin(th(5))*cos(th(6))*cos(th(7))cos(th(5))* Sc sin(th(7)))))+sin(th(2))*sin(th(6))*cos(th(7)))cos(th(l))*(cos & (th(3))*(sin(th(4))*(sin(th(5))*sin(th(7) )+cos(th(5))*cos(th(6) Sc )*cos(th(7)))+cos(th(4))*(sin(th(5))*cos(th(6))*cos(th(7))cos( Sc th(5))*sin(th(7))))+sin(th(3))*(cos(th(4))*(sin(th(5))*sin(th(7 Sc ))+cos(th(5))*cos(th(6))*cos(th(7)))sin(th(4))*(sin(th(5))*cos Sc (th(6))*cos(th(7))cos(th(5))*sin(th(7))))) g(2.2) = sin(th(l))*(cos(th(2))*(cos(th(3))*(cos(th(4) )*(sin(th(5) Sc )*cos(th(7))cos(th(5))*cos(th(6) )*sin(th(7) ))sin(th(4))*(sin
PAGE 166
158 Sc (th(5))*cos(th(6))*sin(th(7))cos(th(5))*cos(th(7))))sin(th(3) Sc )*(cos(th(4))*(sin(th(5) )*cos(th(6))*sin(th(7))cos(th(5) )*cos Sc (th(7)))+sin(th(4))*(sin(th(5))*cos(th(7))cos(th(5))*cos(th(6) & ) *sin(th(7) ) ) ) ) sin(th(2) ) *sin(th(6) )*sin(th(7) ) )cos(th(l) ) *(s & in(th(3))*(cos(th(4) )*(sin(th(5))*cos(th(7) )cos(th(5))*cos(th( & 6))*sin(th(7)))sin(th(4))*(sin(th(5))*cos(th(6))*sin(th(7))c Sc os(th(5))*cos(th(7))))+cos(th(3))*(cos(th(4))*(sin(th(5))*cos( Sc th(6))*sin(th(7))cos(th(5))*cos(th(7)))+sin(th(4))*(sin(th(5)) Sc *cos(th(7))cos(th(5))*cos(th(6))*sin(th(7))))) g(2,3) = sin(th(l))*(cos(th(2))*(cos(th(3))*(cos(th(4))*cos(th(5)) Sc *sin(th(6))sin(th(4))*sin(th(5))*sin(th(6)))sin(th(3))*(cos(t Sc h(4))*sin(th(5))*sin(th(6))+sin(th(4))*cos(th(5))*sin(th(6))))Sc sin(th(2))*cos(th(6)))cos(th(l))*(sin(th(3))*(cos(th(4))*cos(t Sc h(5))*sin(th(6))sin(th(4))*sin(th(5))*sin(th(6)))+cos(th(3))*( Sc cos(th(4))*sin(th(5))*sin(th(6))+sin(th(4))*cos(th(5))*sin(th(6 & )))) g(2,4) = sin(th(l))*(cos(th(2))*(cos(th(3))*(sin(th(4))*sin(th(5) Sc )*a56+cos(th(4))*cos(th(5))*a56+cos(th(4))*a45)sin(th(3))*(cos Sc (th(4) )*sin(th(5) ) *a56+sin(th(4) )*cos(th(5) )*a56+sin(th(4) )*a45 Sc )+cos(th(3))*a34)+cos(th(2))*a23)cos(th(l))*(s2+sin(th(3))*(s Sc in(th(4))*sin(th(5))*a56+cos(th(4))*cos(th(5))*a56+cos(th(4))*a Sc 45)+cos(th(3))*(cos(th(4))*sin(th(5))*a56+sin(th(4))*cos(th(5)) Sc *a56+sin(th(4))*a45)+sin(th(3))*a34) g(3,l) = sin(th(2))*(cos(th(3))*(cos(th(4))*(sin(th(5))*sin(th(7)) Sc +cos(th(5))*cos(th(6))*cos(th(7)))sin(th(4))*(sin(th(5))*cos(t & h(6))*cos(th(7))cos(th(5))*sin(th(7))))sin(th(3))*(sin(th(4)) Sc *(sin(th(5))*sin(th(7))+cos(th(5))*cos(th(6))*cos(th(7)))+cos(t Sc h(4))*(sin(th(5))*cos(th(6))*cos(th(7))cos(th(5))*sin(th(7)))) Sc )cos(th(2))*sin(th(6))*cos(th(7) ) g(3,2) = sin(th(2))*(cos(th(3))*(cos(th(4))*(sin(th(5) )*cos(th(7) ) Sc cos(th(5))*cos(th(6))*sin(th(7)))sin(th(4))*(sin(th(5))*cos( Sc th(6))*sin(th(7))cos(th(5))*cos(th(7))))sin(th(3))*(cos(th(4) Sc )*(sin(th(5))*cos(th(6))*sin(th(7))cos(th(5))*cos(th(7)))+sin Sc (th(4) )*(sin(th(5) )*cos(th(7) )cos(th(5))*cos(th(6))*sin(th(7) ) Sc )))+cos(th(2))*sin(th(6))*sin(th(7)) g(3 ,3) = sin(th(2))*(cos(th(3))*(cos(th(4))*cos(th(5))*sin(th(6))Sc sin(th(4))*sin(th(5))*sin(th(6)))sin(th(3))*(cos(th(4))*sin(th Sc (5))*sin(th(6))+sin(th(4))*cos(th(5))*sin(th(6))))+cos(th(2))*c Sc os(th(6)) g(3,4) = sll+sin(th(2))*(cos(th(3))*(sin(th(4))*sin(th(5))*a56+co Sc s(th(4))*cos(th(5))*a56+cos(th(4))*a45)sin(th(3))*(cos(th(4))* Sc sin(th(5) ) *a56+sin(th(4) ) *cos (th(5) ) *a56+sin(th(4) ) *a45)+cos (th Sc (3))*a34)+sin(th(2))*a23 g(4, 1) = 0 g(4,2) = 0 g(4,3) = 0 g(4,4) = 1
PAGE 167
159 Now, from Section 8.7, the motion capability of the redundant manipulators is given by 1 t=l where 1 f 2w Mi = Â— VidOi 2sk J$i= o J_ J. 2tt J61 8 7 =o d0 \ . . .dOi . . . d0 7 . (<7i3 + ^23) 2 These integrals were evaluated using a twelve point GaussLegendre quadrature algorithm. The following programmes were developed to implement this algorithm: VOLUME: This is the main programme. It comprises one main loop which is repeated seven times to evaluate M t for i = 1, . . . , 7 for a given design of the FTSMS. PERMUTATION: This subroutine defines a 720 x 7 array whose elements are used as a pointer to the appropriate elements of a 6 x 6 minor of the 7x6 matrix J. The pointers, when applied to the minor J,, yield the complete 720 term expansion of its determinant. QUADRATURE: This subroutine applies a twelve point GaussLegendre quadrature technique and integrates a function of, in general, n variables over specified limits. FUNCTION: This function evaluates the expression 1J.I (# i 2 3 + ah) 2 (B.l)
PAGE 168
160 which is a function of the seven joint angles, and represents the magnitude of the volume of the parallelepiped of the six coordinate induced tangent vectors tg 1 , . . . , t$, . . . , t(j 7 , where the symbol indicates that this index value is omitted. This function is actually independent of the the joint angle 6\, since the value of 0\ is dependent on the parameterization of the base space. Thus, the expression for B.l is symbolically derived by substituting the value of zero for 6\. This significantly reduces its complexity. After integration, the result is then multiplied by the factor 2n to complete the integration over the fist angle. NUMERATOR: This subroutine evaluates J, which represents the determinant of the i th 6x6 minor of the matrix J. Two versions of this subroutine exist, one for each design of the FTSMS. DENOMINATOR: This subroutine evaluates g\ 3 + g\ 3 . Two versions of this subroutine exist, one for each design of the FTSMS.
PAGE 169
161 C******************************************** ******** ********* ****** c******************************************************************* c** c** name: VOLUME c** c** purpose: main programme to evaluate the seven integrals c** in the sum representing the motion capability c** for a given design of the FTSMS c** c** called routines: PERMUTATION, QUADRATURE, FUNCTION c** c** variables: C** c** x vector giving lower limit of integration c** y vector giving upper limit of integration c** result result of integral c ** errest error estimate of integral c** p 720x7 pointer array from which the complete 720 term c** expansion of the determinant of the ith 6x6 minor of c** the 7x6 matrix J c** c****** ************************************************* ********** ** c*************************************** ************* *************** integer j , n double precision x(6) , y(6) , result, errest double precision twopi double precision f external quad, f integer p(720,7), skip common twopi, p c define dimension of integral n = 6 twopi=2 . 0d0*3 . 1415926535897932384626434d0 c define limits of integration do 10 j=l ,6 x(j) = O.OdO y(j) = twopi 10 continue c main loop begins and is repeated for each of the seven c integrals appearing in the motion capability equation do 20 skip=l,7 c define pointer array which yields complete 720 term c expansion of the determinant of the ith 6x6 minor of the 7x6 matrix J call permutation(p.skip)
PAGE 170
162 c evaluate the integral call quadrature (f , n, x, y, result, errest) c complete the integration about first joint result = twopi*result 20 write (6,*) result, errest stop end
PAGE 171
C********************************************** ****** ******* ******** c** c** name: PERMUTATION c** c** purpose: subroutine to define a 720x7 pointer array from which c** the complete 720 term expansion of the determinant c** of the ith 6x6 minor of the 7x6 matrix J is derived c** c** calling routine: VOLUME c** c ** usage: call permutation(p , skip) c** c** arguments: c** c** p 720x7 array (output) c** skip integer indicating row of 7x6 matrix J to omit c** to form 6x6 minor (input) c** c******************************************************************* C* ***************************** ***************************Â„,*,*Â„<*Â„<**** subroutine permutation(p,skip) integer p(720,7), skip integer b(6), factor integer c2(6) ,c3(6) ,c4(6) ,c5(6) ,c6(6) integer i,j,k,l,m,n c define the basic vector to permute do 10 i=l,6 if(i .It. skip) then b(i) = i c6(i) = i else b(i) = i + 1 c6(i) = i + 1 end if 10 continue c permute the vector such that p(i,l) ... p(i,6) contains the c permutation and p(i,7) contains the sign of the permuation i = 1 factor = 1 do 60 j = 1 , 6 call equate (c5,b) do 50 k=l ,5 call equate(c4,b) do 40 1=1,4 call equate(c3,b) do 30 m=l,3
PAGE 172
164 call equate (c2,b) do 20 n=l ,2 p(i,l)=b(l) p(i,2)=b(2) p(i,3)=b(3) p(i,4)=b(4) p(i,5)=b(5) p(i,6)=b(6) p(i,7)=factor i = i + 1 20 call perm2(c2,b, factor) call perm3(c3,b, factor) 30 call equate (c3,b) call perm4(c4,b, factor) 40 call equate (c4,b) call perm5(c5,b, factor) 50 call equate(c5,b) call perm6(c6,b, factor) 60 call equate(c6,b) return end subroutine equate (m,n) integer m(6),n(6),i do 100 i=l ,6 100 m(i)=n(i) return end subroutine perm2(a, b, factor) integer a(6), b(6), factor b ( 1 ) = a(l) b(2) = a(2) b(3) = a(3) b(4) = a(4) b(5) = a(6) b(6) = a(5) factor = factor * (1) return end subroutine perm3(a, b, factor) integer a(6), b(6), factor b ( 1 ) = a(l) b(2) = a(2) b(3) = a(3) b(4) = a(5)
PAGE 173
165 b(5) = a(6) b(6) = a(4) factor = factor * (+1) return end subroutine perm4(a, b, factor) integer a(6) , b(6), factor b(l) = a(l) b(2) = a(2) b(3) = a(4) b(4) = a(5) b(5) = a(6) b(6) = a(3) factor = factor * (1) return end subroutine perm5(a, b, factor) integer a(6), b(6), factor b(l) = a(l) b(2) = a(3) b(3) = a(4) b(4) = a(5) b(5) = a(6) b(6) = a(2) factor = factor * (+1) return end subroutine perm6(a, b, factor) integer a(6) , b(6), factor b(l) = a(2) b(2) = a(3) b(3) = a(4) b(4) = a(5) b(5) = a(6) b(6) = a(l) factor = factor * (1) return end
PAGE 174
166 C******************************************************************* C******************************************************************* C** c** c** C** c** c** c** c** C** c** C** c** c** c** c** c** c** c** c** c** c** c** c** C************************************* ******* ******** *************** C******** ***************************** ***** ************************* subroutine quadrature (f , n, a, b, result, errest) c declaration of arguments integer n double precision f, a(n) , b(n), result, errest, external f c declaration of absicissas and weight vectors double precision t(255), w(255) integer i, j, m(20) , nn, nn2, nni double precision bma(20), bpa(20) , bwt, tint, & tt(256) , wt, ww(256) , x(*) , temp external iset c define absicissas and weight factors for twelve c point integration (modify for accuracy desired) data t(l), t(2) , t(3), t(4), t(5), t(6)/ & . 9815606342467 19d0 , . 904117256370475d0 , & . 769902674194305d0 , .587317954286617d0, & . 367831498998180d0, . 12523340851 1469d0/ data w ( 1 ) , w(2) , w(3), w(4), w(5), w(6)/ name : quadrature purpose: subroutine to integrate a function of n variables over an n dimensional hyperrectange usage: call quadrature(f , n, a, b, result, errest) arguments : f function to be integrated (input) n dimension of hyperrectangle (input) a vector giving lower limits of integration (input) b vector giving upper limits of integration (input) result estimate of integral over byperrectangle (output) errest estimate of absolute value of the error (output) remarks: 1] this routine can be easily modified to vary the accuracy of the integration by defining alternate sets of abscissas and weight factors as specified 2] the value of n, the dimension of the hyperrectangle, must be less than or equal to 20
PAGE 175
167 & . 047 175336386512d0 , . 106939325995318d0 , Sc . 160078328543346d0 , .203167426723066d0, Sc . 233492536538355d0 , . 249147045813403d0/ result = O.OdO bwt = 1 . OdO do 10 i=l,n bma(i) = (b(i)a(i))*0.5d0 bpa(i) = (b(i)+a(i))*0.5d0 bwt = bwt*bma(i) 10 continue c use nn point gaussian formula in each dimension c (modify for dimension of hyperrectangle) nn = 12 nn2 = nn/2 do 20 i=l, nn2 nni = nn + 1 i tt(i) = t(i) = tt(i) w(i) = ww(i) tt(nni) ww(i) = ww(nni) 20 continue call iset m(l) = 0 tint = O.OdO (n, 1, m, 1) c the following is equivalent to n nested doloops 30 m(l) = m(l) + 1 if (n .eq. 1) go to 50 do 40 i=2, n if (m(il) .le. nn) go to 40 m(il) = 1 m(i) = m(i) + 1 40 continue 50 if (m(n) .gt. nn) go to 70 wt = bwt do 60 i=l, n j = m(i) wt = wt*ww(j) x(i) = bpa(i) + tt(j)*bma(i) 60 continue temp = f(n,x) tint = tint + temp*wt go to 30 70 result = tint continue return end
PAGE 176
c set the components of a vector to a scalar, all integer, c arguments : c c n length of vector ix. (input) c ia integer scalar. (input) c ix integer vector of length n*incx. (input /output) c iset replaces ix(i) with ia for i=l,...,n. ix(i) c refers to a specific element of ix. see incx argument c description. c incx displacement between elements of ix. (input) c ix(i) is defined to be ix(l+(il)*incx) . incx must be c greater than zero. subroutine iset (n, ia, ix, incx) c declaration of arguments integer n, ia, incx, ix(*) c declaration of local variables integer i, m, mpi, nincx if (n .gt. 0) then if (incx .ne. 1) then c code for increment not equal to 1 nincx = n*incx do 10 i=l, nincx, incx ix(i) = ia 10 continue else do 20 i=l, n ix(i) = ia 20 continue end if end if return end
PAGE 177
169 c * ************************************** **************************** c * ****** *********************************************** ************* c** c** name : NUMERATOR (FTSMS design A) c** c** purpose: subroutine to evalutate the 6x6 minor of c** of the matrix J at the joint angles specified c** c** calling routine: FUNCTION c** c** usage: call numerator (minor , costh, sinth) c** c** arguments: c** c** minor 6x6 minor of J evaluated at specified c** joint angles (output) c** costh vector of cosines of joint angles (input) c** sinth vector of sines of joint angles (input) c** C* ********************************************************** ******** subroutine numerator (minor , costh, sinth) double precision minor(6,7), costh(7) , sinth(7) double precision a23, a34, a45, a67, s22, s55 a23 = 9 . OdO a34 = 22. OdO a45 = 3. OdO a67 = 4. OdO s22 = 8 . 25d0 s55 = 22. OdO minor (1 , 1) = (costh (2)* (costh (3)* (costh (4) *costh(5)*sinth(6) sinth 1 (4)*costh(6))sinth(3)*(sinth(4)*costh(5)*sinth(6)+costh(4)*cos 2 th(6)))+sinth(2)*sinth(5)*sinth(6))**2(costh(3)*(sinth(4)*cos 3 th(5)*sinth(6)+costh(4)*costh(6))sinth(3)*(costh(4)*costh(5)*s 4 inth(6)sinth(4)*costh(6)))*(costh(3)*(sinth(4)*costh(5)*sinth( 5 6)+costh(4)*costh(6) )+sinth(3)*(costh(4)*costh(5)*sinth(6)sint 6 h(4)*costh(6))) minor (1 ,2) = (costh(3)*(sinth(4)*costh(5)*sinth(6)+costh(4)*cost 1 h(6) )sinth(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*costh(6)))* 2 (costh(2)*sinth(5)*sinth(6)sinth(2)*(costh(3)*(costh(4)*costh( 3 5)*sinth(6)sinth(4)*costh(6) )sinth(3)*(sinth(4)*costh(5)*sint 4 h(6)+costh(4)*costh(6)))) minor (1,3) = (sinth(3)*(sinth(4)*costh(5)*sinth(6)+costh(4)*costh( 1 6))costh(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*costh(6)))*(c 2 osth(2)*(costh(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*costh(6) 3 )sinth(3)*(sinth(4)*costh(5)*sinth(6)+costh(4)*costh(6) ))+sint 4 h(2)*sinth(5)*sinth(6))costh(2)*(costh(3)*(sinth(4)*costh(5)* 5 sinth(6)+costh(4) *costh(6) )sinth(3) *(costh(4)*costh(5)*sinth(6
PAGE 178
170 6 )sinth(4)*costh(6)))**2 minor (1 ,4) = (sinth(3)*(sinth(4)*costh(5)*sinth(6)costh(4)*cost 1 h(6))costh(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*costh(6)))* 2 (costh(2)*(costh(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*costh( 3 6) )sinth(3)*(sinth(4)*costh(5)*sinth(6)+costh(4)*costh(6)))+si 4 nth(2)*sinth(5)*sinth(6))costh(2)*(costh(3)*(sinth(4)*costh(5 5 )*sinth(6)costh(4)*costh(6))sinth(3)*(costh(4)*costh(5)*sinth 6 (6)sinth(4)*costh(6)))*(costh(3)*(sinth(4)*costh(5)*sinth(6)+ 7 costh(4)*costh(6) )sinth(3)*(costh(4)*costh(5) *sinth(6) sinth(4 8 )*costh(6))) minor(l ,5) = (costh(3)*sinth(4)*sinth(5)*sinth(6)+sinth(3)*costh(4 1 )*sinth(5)*sinth(6))*(costh(2)*(costh(3)*(costh(4)*costh(5)*sin 2 th(6)sinth(4)*costh(6))sinth(3)*(sinth(4)*costh(5)*sinth(6)+c 3 osth(4)*costh(6)))+sinth(2)*sinth(5)*sinth(6))(costh(3)*(sint 4 h(4)*costh(5)*sinth(6)+costh(4)*costh(6))sinth(3)*(costh(4)*co 5 sth(5)*sinth(6)sinth(4)*costh(6) ) )*(costh(2)*(sinth(3)*sinth(4 6 )*sinth(5)*sinth(6)costh(3)*costh(4)*sinth(5)*sinth(6))+sinth( 7 2)*costh(5)*sinth(6)) minor(l ,6) = (sinth(3)*(sinth(4)*sinth(6)+costh(4)*costh(5)*costh 1 (6) )costh(3)*(sinth(4)*costh(5)*costh(6)costh(4)*sinth(6)))*( 2 costh(2)*(costh(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*costh(6 3 ))sinth(3)*(sinth(4)*costh(5)*sinth(6)+costh(4)*costh(6)) )+sin 4 th(2)*sinth(5)*sinth(6))(costh(3)*(sinth(4)*costh(5)*sinth(6) 5 +costh(4)*costh(6))sinth(3)*(costh(4)*costh(5)*sinth(6)sinth( 6 4)*costh(6)))*(costh(2)*(costh(3)*(sinth(4)*sinth(6)+costh(4)*c 7 osth(5)*costh(6))sinth(3)*(sinth(4)*costh(5)*costh(6)costh(4) 8 *sinth(6)) )+sinth(2)*sinth(5)*costh(6)) minor (1,7) = O.OdO minor (2,1) = O.OdO minor (2, 2) = costh(2)*(costh(3)*(costh(4)*costh(5)*sinth(6)sinth 1 (4)*costh(6))sinth(3)*(sinth(4)*costh(5)*sinth(6)+costh(4)*cos 2 th(6) ))sinth(2)*sinth(5)*sinth(6) minor (2, 3) = sinth(2)*(costh(3)*(sinth(4)*costh(5)*sinth(6)+cost 1 h(4)*costh(6))sinth(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*co 2 sth(6) ) ) minor ( 2 , 4) = sinth(2)*(costh(3)*(sinth(4)*costh(5)*sinth(6)cost 1 h(4)*costh(6))sinth(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*co 2 sth(6) ) ) minor (2, 5) = costh(2)*costh(5)*sinth(6)sinth(2)*(sinth(3)*sinth(4 1 )*sinth(5)*sinth(6) costh(3) *costh(4)*sinth(5)*sinth(6) ) minor (2, 6) = costh(2)*sinth(5)*costh(6)sinth(2)*(costh(3)*(sinth( 1 4)*sinth(6)+costh(4)*costh(5)*costh(6))sinth(3)*(sinth(4)*cost 2 h(5)*costh(6)costh(4)*sinth(6) ) ) minor (2, 7) = O.OdO minor (3,1) = O.OdO minor (3, 2) = (costh(2)*(costh(3)*(costh(4)*(sinth(5)*sinth(7)+cost 1 h(5)*costh(6)*costh(7))+sinth(4)*sinth(6)*costh(7))sinth(3)*(s 2 inth(4)*(sinth(5)*sinth(7)+costh(5)*costh(6)*costh(7))costh(4) 3 *sinth(6)*costh(7) ) )+sinth(2)*(sinth(5)*costh(6)*costh(7)costh 4 (5)*sinth(7) ) )*(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*costh(7) 5 costh(5)*costh(6)*sinth(7))sinth(4)*sinth(6)*sinth(7))sinth(
PAGE 179
171 6 3)*(sinth(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7))+cos 7 th(4)*sinth(6)*sinth(7)))costh(2)*(sinth(5)*costh(6)*sinth(7) 8 costh(5)*costh(7)))(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*si 9 nth(7)+costh(5)*costh(6)*costh(7) )+sinth(4) *sinth(6)*costh(7) ): sinth(3)*(sinth(4)*(sinth(5)*sinth(7)+costh(5)*costh(6)*costh(7 ; ))costh(4)*sinth(6)*costh(7)))costh(2)*(sinth(5)*costh(6)*cos < th(7)costh(5)*sinth(7)) )*(costh(2)*(costh(3)*(costh(4)*(sinth( = 5)*costh(7)costh(5)*costh(6)*sinth(7))sinth(4)*sinth(6)*sinth > (7))sinth(3)*(sinth(4)*(sinth(5)*costh(7)costh(5)*costh(6)*si ? nth (7) )+costh(4)*sinth(6)*sinth(7) ) )+sinth(2)*(sinth(5)*costh( 0 6)*sinth(7)costh(5)*costh(7))) minor (3, 3) = sinth(2)*(costh(3)*(sinth(4)*(sinth(5)*sinth(7)+cost 1 h(5)*costh(6)*costh(7))costh(4)*sinth(6)*costh(7) )sinth(3)*(c 2 osth(4)*(sinth(5)*sinth(7)+costh(5)*costh(6)*costh(7) )+sinth(4) 3 *sinth(6)*costh(7) ) )*(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*co 4 sth(7)costh(5)*costh(6)*sinth(7) )sinth(4)*sinth(6)*sinth(7))5 sinth(3)*(sinth(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7 6 ))+costh(4)*sinth(6)*sinth(7)))costh(2)*(sinth(5)*costh(6)*si 7 nth(7)costh(5)*costh(7)))sinth(2)*(costh(3)*(sinth(4)*(sinth 8 (5)*costh(7)costh(5)*costh(6)*sinth(7))+costh(4)*sinth(6)*sint 9 h(7))sinth(3)*(costh(4)*(sinth(5)*costh(7)costh(5)*costh(6)*s : inth(7))sinth(4)*sinth(6)*sinth(7)))*(sinth(2)*(costh(3)*(cost ; h(4)*(sinth(5)*sinth(7)+costh(5)*costh(6)*costh(7))+sinth(4)*si < nth(6)*costh(7) )sinth(3) * (sinth(4) *(sinth(5)*sinth(7)+costh(5) = *costh(6)*costh(7))costh(4)*sinth(6)*costh(7)))costh(2)*(sint > h(5)*costh(6)*costh(7)costh(5) *sinth(7) ) ) minor (3, 4) = sinth(2)* (costh(3)*(costh(4)*sinth(6)*costh(7)sinth( 1 4)*(sinth(5)*sinth(7)+costh(5)*costh(6)*costh(7)))sinth(3)*(co 2 sth(4)*(sinth(5)*sinth(7)+costh(5)*costh(6)*costh(7))+sinth(4)* 3 sinth(6)*costh(7)))*(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*cos 4 th(7)costh(5)*costh(6)*sinth(7))sinth(4)*sinth(6)*sinth(7))s 5 inth(3)*(sinth(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7) 6 )+costh(4)*sinth(6)*sinth(7)))costh(2)*(sinth(5)*costh(6)*sin 7 th(7)costh(5)*costh(7)))sinth(2)*(costh(3)*(sinth(4)*(sinth( 8 5)*costh(7)costh(5)*costh(6)*sinth(7))costh(4)*sinth(6)*sinth 9 (7) )sinth(3)*(costh(4)*(sinth(5)*costh(7)costh(5)*costh(6)*si nth(7))sinth(4)*sinth(6)*sinth(7)))*(sinth(2)*(costh(3)*(costh ; (4)*(sinth(5)*sinth(7)+costh(5)*costh(6)*costh(7))+sinth(4)*sin < th(6)*costh(7))sinth(3)*(sinth(4)*(sinth(5)*sinth(7)+costh(5)* = costh(6)*costh(7))costh(4)*sinth(6)*costh(7)))costh(2)*(sinth > (5) *costh(6)*costh(7)costh(5)*sinth(7) ) ) minor (3, 5) = (sinth(2)*(costh(3)*costh(4)*(costh(5)*sinth(7)sinth 1 (5)*costh(6)*costh(7) )sinth(3)*sinth(4)*(costh(5)*sinth(7)sin 2 th(5)*costh(6)*costh(7)))costh(2)*(sinth(5)*sinth(7)+costh(5)* 3 costh(6)*costh(7)))*(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*cos 4 th(7)costh(5)*costh(6)*sinth(7) ) sinth(4) *sinth(6)*sinth(7) )s 5 inth(3)*(sinth(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7) 6 )+costh(4)*sinth(6)*sinth(7) ) )costh(2)*(sinth(5)*costh(6)*sin 7 th(7)costh(5)*costh(7)) )(sinth(2)*(costh(3)*costh(4)*(sinth(5 8 )*costh(6)*sinth(7)+costh(5)*costh(7))sinth(3)*sinth(4)*(sinth 9 (5)*costh(6)*sinth(7)+costh(5)*costh(7) ) ) costh(2) *(sinth(5)*co
PAGE 180
172 : sth(7)costh(5)*costh(6)*sinth(7)))*(sinth(2)*(costh(3)*(costh( ; 4)*(sinth(5)*sinth(7)+costh(5)*costh(6)*costh(7) )+sinth(4)*sint < h(6)*costh(7) )sinth(3)*(sinth(4)*(sinth(5)*sinth(7)+costh(5)*c = osth(6)*costh(7))costh(4)*sinth(6)*costh(7) ))costh(2)*(sinth( > 5)*costh(6)*costh(7)costh(5)*sinth(7) ) ) minor (3, 6) = (sinth(2)*(costh(3)*(sinth(4)*costh(6)*costh(7)costh 1 (4)*costh(5)*sinth(6)*costh(7))sinth(3)*(sinth(4)*costh(5)*si 2 nth(6)*costh(7)costh(4)*costh(6)*costh(7) ) )+costh(2)*sinth(5)* 3 sinth(6)*costh(7))*(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*cost 4 h(7)costh(5)*costh(6)*sinth(7))sinth(4)*sinth(6)*sinth(7))si 5 nth(3)*(sinth(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7)) 6 +costh(4)*sinth(6)*sinth(7)) )costh(2)*(sinth(5)*costh(6)*sint 7 h(7)costh(5)*costh(7) ))(sinth(2)*(costh(3)*(costh(4)*costh(5) 8 *sinth(6)*sinth(7)sinth(4)*costh(6)*sinth(7))sinth(3)*(sinth( 9 4)*costh(5)*sinth(6)*sinth(7)+costh(4)*costh(6)*sinth(7)))cost : h(2)*sinth(5)*sinth(6)*sinth(7))*(sinth(2)*(costh(3)*(costh(4)* ; (sinth(5)*sinth(7)+costh(5)*costh(6)*costh(7))+sinth(4)*sinth(6 < )*costh(7))sinth(3)*(sinth(4)*(sinth(5)*sinth(7)+costh(5)*cost = h(6)*costh(7))costh(4)*sinth(6)*costh(7)))costh(2)*(sinth(5)* > costh(6)*costh(7)costh(5)*sinth(7)) ) minor (3 ,7) = (sinth(2)*(costh(3)*(costh(4)*(sinth(5)*costh(7)cost 1 h(5)*costh(6)*sinth(7))sinth(4)*sinth(6)*sinth(7))sinth(3)*(s 2 inth(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7))+costh(4) 3 *sinth(6)*sinth(7)))costh(2)*(sinth(5)*costh(6)*sinth(7)cost 4 h(5)*costh(7)))**2(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*sin 5 th(7)costh(5)*costh(6)*costh(7))sinth(4)*sinth(6)*costh(7))s 6 inth(3)*(sinth(4)*(sinth(5)*sinth(7)costh(5)*costh(6)*costh(7 7 ))+costh(4)*sinth(6)*costh(7)))costh(2)*(costh(5)*sinth(7)sin 8 th(5)*costh(6)*costh(7)))*(sinth(2)*(costh(3)*(costh(4)*(sinth( 9 5)*sinth(7)+costh(5)*costh(6)*costh(7))+sinth(4)*sinth(6)*costh : (7))sinth(3)*(sinth(4)*(sinth(5)*sinth(7)+costh(5)*costh(6)*co ; sth(7))costh(4)*sinth(6)*costh(7)))costh(2)*(sinth(5)*costh(6 < )*costh(7)costh(5)*sinth(7))) minor (4,1) = sinth(3)*(sinth(4)*(s55+sinth(6)*a67)+costh(4)*costh( 1 5)*costh(6)*a67+costh(4)*a45)+costh(3)*(costh(4)*(s55+sinth(6) 2 *a67)+sinth(4)*costh(5)*costh(6)*a67+sinth(4)*a45)+s22+sinth(3) 3 *a34 minor (4, 2) = sinth(2)*(costh(3)*(sinth(4)*(s55+sinth(6)*a67)+cost 1 h(4)*costh(5)*costh(6)*a67+costh(4)*a45)sinth(3)*(costh(4)*(s 2 55+sinth(6)*a67)+sinth(4)*costh(5)*costh(6)*a67+sinth(4)*a45)+c 3 osth(3)*a34)+costh(2)*sinth(5)*costh(6)*a67sinth(2)*a23 minor (4, 3) = costh(2)*(sinth(3)*(sinth(4)*(s55+sinth(6)*a67)+cost 1 h(4)*costh(5)*costh(6)*a67+costh(4)*a45)costh(3)*(costh(4)*(s 2 55+sinth(6)*a67)+sinth(4)*costh(5)*costh(6)*a67+sinth(4)*a45)s 3 inth(3)*a34) minor (4 ,4) = costh(2)*(costh(3)*(costh(4)*(s55+sinth(6)*a67)sinth 1 (4)*costh(5)*costh(6)*a67sinth(4)*a45)sinth(3)*(sinth(4)*(s55 2 +sinth(6)*a67)+costh(4)*costh(5)*costh(6)*a67+costh(4)*a45)) minor(4,5) = costh(2)*(sinth(3)*sinth(4)*sinth(5)*costh(6)*a67cos 1 th(3)*costh(4)*sinth(5)*costh(6)*a67)+sinth(2)*costh(5)*costh(6 2 )*a67
PAGE 181
173 minor (4 ,6) = costh(2)*(costh(3)*(sinth(4)*costh(6)*a67costh(4)*co 1 sth(5)*sinth(6)*a67)sinth(3)*(sinth(4)*costh(5)*sinth(6)*a672 costh(4)*costh(6)*a67) )sinth(2)*sinth(5)*sinth(6)*a67 minor (4, 7) = O.OdO minor (5, 1) = costh(2)*(costh(3)*(sinth(4)*(s55+sinth(6)*a67)+costh 1 (4) *costh(5) *costh(6)*a67+costh(4) *a45)sinth(3)*(costh(4)* (s5 2 5+sinth(6)*a67)+sinth(4)*costh(5)*costh(6)*a67+sinth(4)*a45)+co 3 sth(3)*a34)+sinth(2)*sinth(5)*costh(6)*a67+costh(2)*a23 minor (5, 2) = O.OdO minor (5, 3) = costh(3)*(sinth(4)*(s55+sinth(6)*a67)+costh(4)*costh 1 (5)*costh(6)*a67+costh(4)*a45)+sinth(3)*(costh(4)*(s55+sinth(6 2 )*a67)+sinth(4)*costh(5)*costh(6)*a67+sinth(4)*a45)costh(3)*a3 3 4 minor (5, 4) = costh(3)*(sinth(4)*(s55+sinth(6)*a67)+costh(4)*costh 1 (5)*costh(6)*a67+costh(4)*a45)sinth(3)*(costh(4)*(s55+sinth(6) 2 *a67)sinth(4)*costh(5)*costh(6)*a67sinth(4)*a45) minor (5, 5) = costh(3)*sinth(4)*sinth(5)*costh(6)*a67+sinth(3)*cost 1 h(4)*sinth(5)*costh(6)*a67 minor (5, 6) = costh(3)*(sinth(4)*costh(5)*sinth(6)*a67costh(4)*c 1 osth(6)*a67)sinth(3)*(sinth(4)*costh(6)*a67costh(4)*costh(5)* 2 sinth(6)*a67) minor(5,7) = O.OdO minor (6,1) = O.OdO minor (6, 2) = costh(2)*(costh(3)*(sinth(4)*(s55+sinth(6)*a67)+costh 1 (4)*costh(5)*costh(6)*a67+costh(4)*a45)sinth(3)*(costh(4)*(s5 2 5+sinth(6)*a67)+sinth(4)*costh(5)*costh(6)*a67+sinth(4)*a45)+co 3 sth(3)*a34)+sinth(2)*sinth(5)*costh(6)*a67+costh(2)*a23 minor (6, 3) = sinth(2)*(sinth(3)*(sinth(4)*(s55+sinth(6)*a67)+cost 1 h(4)*costh(5)*costh(6)*a67+costh(4)*a45)costh(3)*(costh(4)*(s 2 55+sinth(6)*a67)+sinth(4) *costh(5)*costh(6)*a67+sinth(4) *a45) s 3 inth(3)*a34) minor (6, 4) = sinth(2)*(costh(3)*(costh(4)*(s55+sinth(6)*a67)sinth 1 (4)*costh(5)*costh(6)*a67sinth(4)*a45)sinth(3)*(sinth(4)*(s55 2 +sinth(6)*a67)+costh(4)*costh(5)*costh(6)*a67+costh(4)*a45)) minor (6, 5) = sinth(2)*(sinth(3)*sinth(4)*sinth(5)*costh(6)*a67cos 1 th(3)*costh(4)*sinth(5)*costh(6)*a67)costh(2)*costh(5)*costh(6 2 )*a67 minor (6, 6) = sinth(2)*(costh(3)*(sinth(4)*costh(6)*a67costh(4)*co 1 sth(5)*sinth(6)*a67)sinth(3)*(sinth(4)*costh(5)*sinth(6)*a672 costh(4)*costh(6)*a67))+costh(2)*sinth(5)*sinth(6)*a67 minor(6,7) = O.OdO return end
PAGE 182
174 c********************** ******** ************** ********** ******* ****** c******************************************************************* c** c** name: NUMERATOR (ftsms design B) c** c** purpose: subroutine to evalutate 6x6 minor of c** of the matrix J at the joint angles specified c** c** calling routine: FUNCTION c** c** usage: call numerator (minor , costh, sinth) c** c** arguments : c** c** minor 6x6 minor of j evaluated at specified c** joint angles (output) c** costh vector of cosines of joint angles (input) c** sinth vector of sines of joint angles (input) c** c ******************************************************************* c******************************************************************* subroutine numerator (minor , costh, sinth) double precision minor(6,7), costh(7) , sinth(7) double precision a23, a34, a45, a56, s22 a23 = 9.0d0 a34 = 22 . OdO a45 = 22. OdO a56 = 4. OdO s22 = 8 . 25d0 minor ( 1 , 1 ) = (costh(2)*(costh(3)*(costh(4)*costh(5)*sinth(6)sinth 1 (4)*sinth(5)*sinth(6))sinth(3)*(costh(4)*sinth(5)*sinth(6)+sin 2 th(4)*costh(5)*sinth(6)))sinth(2)*costh(6))**2(sinth(3)*(cos 3 th(4)*costh(5)*sinth(6)sinth(4)*sinth(5)*sinth(6))costh(3)*(c 4 osth(4)*sinth(5)*sinth(6)+sinth(4)*costh(5)*sinth(6)))*(sinth(3 5 )*(costh(4)*costh(5)*sinth(6)sinth(4)*sinth(5)*sinth(6) )+costh 6 (3)*(costh(4)*sinth(5)*sinth(6)+sinth(4)*costh(5)*sinth(6))) minor(l ,2) = (sinth(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*sint 1 h(5)*sinth(6) )costh(3)*(costh(4)*sinth(5)*sinth(6)+sinth(4)*co 2 sth(5)*sinth(6) ))*(sinth(2)*(costh(3)*(costh(4)*costh(5)*sinth 3 (6)sinth(4)*sinth(5)*sinth(6))sinth(3)*(costh(4)*sinth(5)*sin 4 th(6)+sinth(4)*costh(5)*sinth(6) ) )costh(2)*costh(6)) minor(l ,3) = (sinth(3)*(costh(4)*sinth(5)*sinth(6)+sinth(4)*costh( 1 5)*sinth(6) )costh(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*sint 2 h(5)*sinth(6)))*(costh(2)*(costh(3)*(costh(4)*costh(5)*sinth(6) 3 sinth(4)*sinth(5)*sinth(6) ) sinth (3)* (costh (4) *sinth(5) *sinth( 4 6)+sinth(4)*costh(5)*sinth(6)))sinth(2)*costh(6))costh(2)*(s 5 inth(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*sinth(5)*sinth(6) ) 6 costh(3)*(costh(4)*sinth(5)*sinth(6)+sinth(4)*costh(5)*sinth(6
PAGE 183
175 7 )))**2 minor (1 ,4) = (costh(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*sinth 1 (5)*sinth(6) )sinth(3)*(costh(4)*sinth(5)*sinth(6)sinth(4)*co 2 sth(5)*sinth(6)))*(costh(2)*(costh(3)*(costh(4)*costh(5)*sinth( 3 6)sinth(4)*sinth(5)*sinth(6))sinth(3)*(costh(4)*sinth(5)*sint 4 h(6)+sinth(4)*costh(5)*sinth(6) ))sinth(2)*costh(6) )costh(2)*( 5 costh(3)*(costh(4)*sinth(5)*sinth(6)sinth(4)*costh(5)*sinth(6 6 ))sinth(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*sinth(5)*sinth 7 (6)) )*(sinth(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*sinth(5)* 8 sinth(6))costh(3)*(costh(4)*sinth(5)*sinth(6)+sinth(4)*costh(5 9 )*sinth(6))) minor (1 ,5) = (costh(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*sinth 1 (5)*sinth(6) )sinth(3)*(costh(4)*sinth(5)*sinth(6)sinth(4)*co 2 sth(5)*sinth(6) ) )*(costh(2)*(costh(3)*(costh(4)*costh(5)*sinth( 3 6)sinth(4)*sinth(5)*sinth(6) )sinth(3)*(costh(4)*sinth(5)*sint 4 h(6)+sinth(4)*costh(5)*sinth(6) ) )sinth(2)*costh(6))costh(2)*( 5 costh(3)*(costh(4)*sinth(5)*sinth(6)sinth(4)*costh(5)*sinth(6 6 ) )sinth(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*sinth(5)*sinth 7 (6) ) )*(sinth(3)*(costh(4)*costh(5)*sinth(6)sinth(4)*sinth(5)* 8 sinth(6))costh(3)*(costh(4)*sinth(5)*sinth(6)+sinth(4)*costh(5 9 )*sinth(6))) minor (1 ,6) = (sinth(3)*(costh(4)*costh(5)*costh(6)sinth(4)*sinth 1 (5)*costh(6))costh(3)*(costh(4)*sinth(5)*costh(6)+sinth(4)*cos 2 th(5)*costh(6)))*(costh(2)*(costh(3)*(costh(4)*costh(5)*sinth(6 3 )sinth(4)*sinth(5)*sinth(6) )sinth(3)*(costh(4)*sinth(5)*sinth 4 (6)+sinth(4)*costh(5)*sinth(6)))sinth(2)*costh(6) )(sinth(2)*s 5 inth(6)+costh(2)*(costh(3)*(costh(4)*costh(5)*costh(6)sinth(4) 6 *sinth(5)*costh(6))sinth(3)*(costh(4)*sinth(5)*costh(6)+sinth( 7 4)*costh(5)*costh(6))))*(sinth(3)*(costh(4)*costh(5)*sinth(6)~ 8 sinth(4)*sinth(5)*sinth(6) )costh(3)*(costh(4)*sinth(5)*sinth(6 9 )+sinth(4)*costh(5)*sinth(6) ) ) minor(l,7) = O.OdO minor (2,1) = O.OdO minor (2, 2) = sinth(2)*costh(6)costh(2)*(costh(3)*(costh(4)*costh( 1 5)*sinth(6)sinth(4)*sinth(5)*sinth(6))sinth(3)*(costh(4)*sint 2 h(5)*sinth(6)+sinth(4)*costh(5)*sinth(6))) minor (2, 3) = sinth(2)*(sinth(3)*(costh(4)*costh(5)*sinth(6)sint 1 h(4)*sinth(5)*sinth(6) )costh(3)*(costh(4)*sinth(5)*sinth(6)+si 2 nth(4)*costh(5)*sinth(6))) minor (2, 4) = sinth(2)*(costh(3)*(costh(4)*sinth(5)*sinth(6)sint 1 h(4)*costh(5)*sinth(6))sinth(3)*(costh(4)*costh(5)*sinth(6)si 2 nth(4)*sinth(5)*sinth(6))) minor (2, 5) = sinth(2)*(costh(3)*(costh(4)*sinth(5)*sinth(6)sint 1 h(4)*costh(5)*sinth(6) )sinth(3)*(costh(4)*costh(5)*sinth(6)si 2 nth(4)*sinth(5)*sinth(6) ) ) minor (2, 6) = costh(2)*sinth(6)sinth(2)*(costh(3)*(costh(4)*costh( 1 5)*costh(6)sinth(4)*sinth(5)*costh(6))sinth(3)*(costh(4)*sint 2 h(5)*costh(6)+sinth(4)*costh(5)*costh(6))) minor(2,7) = O.OdO minor (3,1) = O.OdO minor (3, 2) = (costh(2)*(costh(3)*(costh(4)*(sinth(5)*sinth(7)+cost
PAGE 184
176 1 h(5)*costh(6)*costh(7) )sinth(4)*(sinth(5)*costh(6)*costh(7)co 2 sth(5)*sinth(7)))sinth(3)*(sinth(4)*(sinth(5)*sinth(7)+costh(5 3 )*costh(6)*costh(7) )+costh(4)*(sinth(5)*costh(6)*costh(7)costh 4 (5)*sinth(7) )))+sinth(2)*sinth(6)*costh(7) )*(sinth(2)*(costh(3) 5 *(costh(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7))sinth 6 (4)*(sinth(5)*costh(6)*sinth(7)costh(5)*costh(7) ) )sinth(3)*( 7 costh(4) *(sinth(5)*costh(6)*sinth(7)costh(5)*costh(7) )+sinth( 8 4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7)) ))+costh(2)*si 9 nth(6)*sinth(7))(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*sinth( : 7)+costh(5)*costh(6)*costh(7) )sinth(4)*(sinth(5)*costh(6)*cost ; h(7)costh(5)*sinth(7)))sinth(3)*(sinth(4)*(sinth(5)*sinth(7)+ < costh(5)*costh(6)*costh(7) )+costh(4)*(sinth(5)*costh(6)*costh(7 = )costh(5)*sinth(7) ) ) )costh(2)*sinth(6)*costh(7))*(costh(2)*(c > osth(3)*(costh(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7) ? )sinth(4)*(sinth(5)*costh(6)*sinth(7)costh(5)*costh(7)))sin 0 th(3)*(costh(4)*(sinth(5)*costh(6)*sinth(7)costh(5)*costh(7)) 1 +sinth(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7)) ) )sint 2 h(2)*sinth(6)*sinth(7)) minor (3, 3) = sinth(2)*(costh(3)*(sinth(4)*(sinth(5)*sinth(7)+cost 1 h(5)*costh(6)*costh(7))+costh(4)*(sinth(5)*costh(6)*costh(7)co 2 sth(5)*sinth(7)))sinth(3)*(costh(4)*(sinth(5)*sinth(7)+costh(5 3 )*costh(6)*costh(7))sinth(4)*(sinth(5)*costh(6)*costh(7)costh 4 (5)*sinth(7))) )*(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*costh(7 5 )costh(5)*costh(6)*sinth(7))sinth(4)*(sinth(5)*costh(6)*sint 6 h(7)costh(5)*costh(7)))sinth(3)*(costh(4)*(sinth(5)*costh(6) 7 *sinth(7)costh(5)*costh(7))+sinth(4)*(sinth(5)*costh(7)costh( 8 5)*costh(6)*sinth(7)) ) )+costh(2)*sinth(6)*sinth(7))sinth(2)*(9 sinth(3)*(costh(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7 : ))sinth(4)*(sinth(5)*costh(6)*sinth(7)costh(5)*costh(7)))co ; sth(3)*(costh(4)*(sinth(5) *costh(6)*sinth(7)costh(5)*costh(7) < )+sinth(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7))))*(si = nth(2)*(costh(3)*(costh(4)*(sinth(5)*sinth(7)+costh(5)*costh(6) > *costh(7))sinth(4)*(sinth(5)*costh(6)*costh(7)costh(5)*sinth( ? 7) ))sinth(3)*(sinth(4)*(sinth(5)*sinth(7)+costh(5)*costh(6)*co 0 sth(7))+costh(4)*(sinth(5)*costh(6)*costh(7)costh(5)*sinth(7)) 1 ))costh(2)*sinth(6)*costh(7)) minor (3, 4) = sinth(2)*(costh(3)*(sinth(4)*(sinth(5)*sinth(7)+cost 1 h(5)*costh(6)*costh(7) )costh(4)*(sinth(5)*costh(6)*costh(7)co 2 sth(5)*sinth(7) ) ) sinth(3)*(costh(4) *(sinth(5) *sinth(7)+costh(5 3 )*costh(6)*costh(7))sinth(4)*(sinth(5)*costh(6)*costh(7)costh 4 (5)*sinth(7))))*(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*costh(7 5 )costh(5)*costh(6)*sinth(7))sinth(4)*(sinth(5)*costh(6)*sint 6 h(7)costh(5)*costh(7)))sinth(3)*(costh(4)*(sinth(5)*costh(6) 7 *sinth(7)costh(5)*costh(7))+sinth(4)*(sinth(5)*costh(7)costh( 8 5)*costh(6)*sinth(7) )))+costh(2)*sinth(6)*sinth(7) )sinth( 2 )*(c 9 osth(3)*(costh(4)*(sinth(5)*costh(6)*sinth(7)costh(5)*costh( : 7))sinth(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7)))si ; nth(3)*(costh(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7)) < sinth(4)*(sinth(5)*costh(6)*sinth(7)costh(5)*costh(7))))*(si = nth(2)*(costh(3)*(costh(4)*(sinth(5)*sinth(7)+costh(5)*costh(6) > *costh(7))sinth(4)*(sinth(5)*costh(6)*costh(7)costh(5)*sinth(
PAGE 185
177 ? 7)) )sinth(3)*(sinth(4)*(sinth(5)*sinth(7)+costh(5)*costh(6)*co 0 sth(7))+costh(4)*(sinth(5)*costh(6)*costh(7)costh(5)*sinth(7) ) 1 ))costh(2)*sinth(6)*costh(7)) minor (3, 5) = sinth(2)*(costh(3)*(costh(4)*(costh(5)*sinth(7)sinth 1 (5)*costh(6)*costh(7))sinth(4)*(sinth(5)*sinth(7)+costh(5)*cos 2 th(6)*costh(7) ) )sinth(3)*(costh(4)*(sinth(5)*sinth(7)+costh(5) 3 *costh(6)*costh(7) )+sinth(4)*(costh(5)*sinth(7)sinth(5)*costh( 4 6)*costh(7)) ) )*(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*costh(7) 5 costh(5)*costh(6)*sinth(7) )sinth(4)*(sinth(5)*costh(6)*sinth 6 (7)costh(5)*costh(7) ) )sinth(3)*(costh(4)*(sinth(5)*costh(6)* 7 sinth(7)costh(5)*costh(7) )+sinth(4)*(sinth(5)*costh(7)costh(5 8 )*costh(6)*sinth(7))))+costh(2)*sinth(6)*sinth(7))sinth(2)*(co 9 sth(3)*(costh(4)* (sinth(5) *costh(6)*sinth(7)+costh(5) *costh(7) ) : sinth(4)*(sinth(5) *costh(7)costh(5)*costh(6) *sinth(7) ) )sinth ; (3)*(sinth(4)*(sinth(5)*costh(6)*sinth(7)+costh(5)*costh(7))+co < sth(4)*(sinth(5)*costh(7)costh(5)*costh(6)*sinth(7))) )*(sinth( = 2)*(costh(3)*(costh(4)*(sinth(5)*sinth(7)+costh(5)*costh(6)*cos > th(7))sinth(4)*(sinth(5)*costh(6)*costh(7)costh(5)*sinth(7))) ? sinth(3) * (sinth(4)*(sinth(5) *sinth(7)+costh(5)*costh(6)*costh( @ 7))+costh(4)*(sinth(5)*costh(6)*costh(7)costh(5)*sinth(7))))c 1 osth(2)*sinth(6)*costh(7) ) minor (3 ,6) = (sinth(2)*(costh(3)*(sinth(4)*sinth(5)*sinth(6)*costh 1 (7)costh(4)*costh(5)*sinth(6)*costh(7))sinth(3)*(costh(4)*si 2 nth(5)*sinth(6)*costh(7)sinth(4)*costh(5)*sinth(6)*costh(7)))~ 3 costh(2)*costh(6)*costh(7))*(sinth(2)*(costh(3)*(costh(4)*(sint 4 h(5)*costh(7)costh(5)*costh(6)*sinth(7))sinth(4)*(sinth(5)*c 5 osth(6)*sinth(7)costh(5)*costh(7)) )sinth(3)*(costh(4)*(sinth 6 (5)*costh(6)*sinth(7)costh(5)*costh(7))+sinth(4)*(sinth(5)*cos 7 th(7)costh(5)*costh(6)*sinth(7))))+costh(2)*sinth(6)*sinth(7)) 8 (sinth(2)*(costh(3)*(costh(4)*costh(5)*sinth(6)*sinth(7)sinth 9 (4)*sinth(5)*sinth(6)*sinth(7))sinth(3)*(costh(4)*sinth(5)*sin : th(6)*sinth(7)+sinth(4)*costh(5)*sinth(6)*sinth(7)))+costh(2)*c ; osth(6)*sinth(7) )*(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*sinth < (7)+costh(5)*costh(6)*costh(7))sinth(4)*(sinth(5)*costh(6)*cos = th(7)costh(5)*sinth(7)))sinth(3)*(sinth(4)*(sinth(5)*sinth(7) > +costh(5)*costh(6)*costh(7))+costh(4)*(sinth(5)*costh(6)*costh( ? 7)costh(5)*sinth(7))))costh(2)*sinth(6)*costh(7)) minor (3, 7) = (sinth(2)*(costh(3)*(costh(4)*(sinth(5)*costh(7)cost 1 h(5)*costh(6)*sinth(7))sinth(4)*(sinth(5)*costh(6)*sinth(7)c 2 osth(5)*costh(7)))sinth(3)*(costh(4)*(sinth(5)*costh(6)*sinth 3 (7)costh(5)*costh(7) )+sinth(4) *(sinth(5) *costh(7)costh(5)*cos 4 th(6) *sinth(7) ) ) )+costh(2)*sinth(6)*sinth(7) )**2(sinth(2) *(cos 5 th(3)*(costh(4)*(sinth(5)*sinth(7)costh(5)*costh(6)*costh(7)) 6 sinth(4) *(costh(5)*sinth(7)sinth(5)*costh(6) *costh(7) ) )sinth 7 (3)*(sinth(4)*(sinth(5)*sinth(7)costh(5)*costh(6)*costh(7))+c 8 osth(4)*(costh(5)*sinth(7)sinth(5)*costh(6)*costh(7))))+costh( 9 2)*sinth(6)*costh(7))*(sinth(2)*(costh(3)*(costh(4)*(sinth(5)*s : inth(7)+costh(5)*costh(6)*costh(7))sinth(4)*(sinth(5)*costh(6) ; *costh(7)costh(5)*sinth(7)))sinth(3)*(sinth(4)*(sinth(5)*sint < h(7)+costh(5)*costh(6)*costh(7))+costh(4)*(sinth(5)*costh(6)*co = sth(7)costh(5)*sinth(7) ) ) )costh(2)*sinth(6)*costh(7) )
PAGE 186
178 minor (4, 1) = s22+sinth(3)*(sinth(4)*sinth(5)*a56+costh(4)*costh(5 1 )*a56+costh(4)*a45)+costh(3)*(costh(4)*sinth(5)*a56+sinth(4)*co 2 sth(5)*a56+sinth(4)*a45)+sinth(3)*a34 minor (4 ,2) = sinth(2)*(costh(3)*(sinth(4)*sinth(5)*a56+costh(4)* 1 costh(5)*a56+costh(4)*a45)sinth(3)*(costh(4)*sinth(5)*a56+sint 2 h(4)*costh(5)*a56+sinth(4)*a45)+costh(3)*a34)sinth(2)*a23 minor (4, 3) = costh(2)*(sinth(3)*(sinth(4)*sinth(5)*a56+costh(4)* 1 costh(5)*a56+costh(4)*a45)costh(3)*(costh(4)*sinth(5)*a56+sint 2 h(4) *costh(5) *a56+sinth(4) *a45) sinth(3) *a34) minor (4, 4) = costh(2)*(costh(3)*(costh(4)*sinth(5)*a56sinth(4)*c 1 osth(5)*a56sinth(4)*a45)sinth(3)*(sinth(4)*sinth(5)*a56+cost 2 h(4)*costh(5)*a56+costh(4)*a45) ) minor (4,5) = costh(2)*(costh(3) * (costh(4) *sinth(5) *a56sinth(4) *c 1 osth(5)*a56)sinth(3)*(costh(4)*costh(5)*a56sinth(4)*sinth(5)* 2 a56) ) minor (4, 6) = O.OdO minor (4, 7) = O.OdO minor (5, 1) = costh(2)*(costh(3)*(sinth(4)*sinth(5)*a56+costh(4)*c 1 osth(5)*a56+costh(4)*a45)sinth(3)*(costh(4)*sinth(5)*a56+sinth 2 (4) *costh(5) *a56+sinth(4)*a45)+costh(3)*a34)+costh(2)*a23 minor (5, 2) = O.OdO minor (5, 3) = costh(3)*(sinth(4)*sinth(5)*a56+costh(4)*costh(5)*a 1 56+costh(4)*a45)+sinth(3)*(costh(4)*sinth(5)*a56+sinth(4)*costh 2 (5)*a56+sinth(4)*a45)costh(3)*a34 minor (5, 4) = costh(3)*(sinth(4)*sinth(5)*a56+costh(4)*costh(5)*a 1 56+costh(4)*a45)sinth(3)*(costh(4)*sinth(5)*a56sinth(4)*cost 2 h(5)*a56sinth(4)*a45) minor (5, 5) = costh(3)*(costh(4)*costh(5)*a56sinth(4)*sinth(5)*a5 1 6)sinth(3)*(costh(4)*sinth(5)*a56sinth(4)*costh(5)*a56) minor(5,6) = O.OdO minor(5,7) = O.OdO minor(6,l) = O.OdO minor (6, 2) = costh(2)*(costh(3)*(sinth(4)*sinth(5)*a56+costh(4)*c 1 osth(5)*a56+costh(4)*a45)sinth(3)*(costh(4)*sinth(5)*a56+sinth 2 (4)*costh(5)*a56+sinth(4)*a45)+costh(3)*a34)+costh(2)*a23 minor (6, 3) = sinth(2)*(sinth(3)*(sinth(4)*sinth(5)*a56+costh(4)* 1 costh(5)*a56+costh(4)*a45)costh(3)*(costh(4)*sinth(5)*a56+sint 2 h(4)*costh(5)*a56+sinth(4)*a45)sinth(3) *a34) minor (6 ,4) = sinth(2)*(costh(3)*(costh(4)*sinth(5)*a56sinth(4)*c 1 osth(5)*a56sinth(4)*a45)sinth(3)*(sinth(4)*sinth(5)*a56+cost 2 h(4)*costh(5)*a56+costh(4)*a45) ) minor (6, 5) = sinth(2)*(costh(3)*(costh(4)*sinth(5)*a56sinth(4)*c 1 osth(5)*a56)sinth(3)*(costh(4)*costh(5)*a56sinth(4)*sinth(5)* 2 a56) ) minor (6, 6) = O.OdO minor (6, 7) = O.OdO return end
PAGE 187
179 C * Jit******************!)!************************* ********************* Q******************************************************************* c** C** c** C** C** c** C** c** c** c** c** c** c** c** C** c** C** C******************************************************************* C******************************************************************* subroutine denominator (denom2, costh, sinth) double precision denom2, costh(7) , sinth(7) c declare constant manipulator parameters double precision a23, a34, a45, a67, s22, s55 c define constant manipulator parameters a23 = 9 .OdO a34 = 22. OdO a45 = 3. OdO a67 = 4. OdO s22 = 8 . 25d0 s55 = 22. OdO denom2 = (costh(2)*(costh(3)*(costh(4)*costh(5)*sinth(6)sinth(4)* 1 costh(6))sinth(3)*(sinth(4)*costh(5)*sinth(6)+costh(4)*costh(6 2 ) ))+sinth(2)*sinth(5)*sinth(6))**2+(costh(3)*(sinth(4)*costh(5 3 )*sinth(6)+costh(4)*costh(6))sinth(3)*(costh(4)*costh(5)*sinth 4 (6)sinth(4)*costh(6)))**2 return end name: DENOMINATOR (FTSMS design A) purpose: subroutine to evaluate the denominator of the integrand at the joint angles specified calling routine: FUNCTION usage: call denominator(denom2, costh, sinth) arguments : denom2 denominator evaluated at specified joint angles (output) costh vector of cosines of joint angles (input) sinth vector of sines of joint angles (input)
PAGE 188
c * *********** *********************** *********************** ********* c ******************************************************************* c** c** name: DENOMINATOR (FTSMS design B) c** c** purpose: subroutine to evaluate the denominator of c** the integrand at the joint angles specified c** c** calling routine: FUNCTION c** c** usage: call denominator(denom2, costh, sinth) c** c** arguments: c** c** denom2 denominator evaluated at specified c** joint angles (output) c** costh vector of cosines of joint angles (input) c** sinth vector of sines of joint angles (input) c** c******************************************************************* c* ********************************************************** ******** subroutine denominator (denom2 , costh, sinth) double precision denom2, costh(7), sinth(7) c declare constant manipulator parameters double precision a23, a34, a45, a56, s22 c define constant manipulator parameters a23 = 9 .OdO a34 = 22. OdO a45 = 22. OdO a56 = 4. OdO s22 = 8 . 25d0 denom2 = (costh (2) * (costh(3)*(costh(4) *costh(5) *sinth(6)sinth(4)* 1 sinth(5)*sinth(6) )sinth(3)*(costh(4)*sinth(5)*sinth(6)+sinth(4 2 )*costh(5)*sinth(6)))sinth(2)*costh(6))**2+(sinth(3)*(costh(4 3 )*costh(5)*sinth(6)sinth(4)*sinth(5)*sinth(6))costh(3)*(costh 4 (4)*sinth(5)*sinth(6)+sinth(4)*costh(5)*sinth(6) ))**2 return end 180
PAGE 189
REFERENCES [1] Robert S. Ball. A Treatise on the Theory of Screws. University Press, Cambridge, England, 1900. [2] William M. Boothby. An Introduction to Differentiable Manifolds and Riemannian Geometry. Academic Press, Orlando, Florida, 1975. [3] 0. Bottema and B. Roth. Theoretical Kinematics. NorthHolland, New York, New York, 1979. [4] Roger W. Brockett. Robotic manipulation and the product of exponentials formula. In P. A. Fuhrmann, editor, Mathematical Theory of Networks and Systems. SpringerVerlag, New York, New York, 1984. [5] William Kingdon Clifford. Mathematical Papers. Macmillan and Company, London, England, 1882. [6] Manfredo P. do Carmo. Differential Geometry of Curves and Surfaces. Prentice Hall, Englewood Cliffs, New Jersey, 1976. [7] I.M. GelÂ’fand, R.A. Minlos, and Z.Y. Shapiro. Representations of the Rotation and Lorentz Groups and their Applications. Macmillan Company, New York, New York, 1963. [8] K.H. Hunt. Kinematic Geometry of Mechanisms. Oxford University Press, Oxford, England, 1978. [9] Adolf Karger. Geometry of the motion of robot manipulators. Manuscripta Mathematical 62:115126, 1988. [10] Adolf Karger. Curvature properties of six parametric robot manipulators. Manuscripta Mathematical 65:31 1Â—328, 1989. [11] Adolf Karger and Josef Novak. Space Kinematics and Lie Groups. Gordon and Breach, New York, New York, 1985. [12] Josip Loncaric. Geometrical Analysis of Compliant Mechanisms in Robotics. PhD thesis, Harvard University, Cambridge, Massachusetts, 1985. [13] James R. Munkres. Topology: a first course. Prentice Hall, Englewood Cliffs, New Jersey, 1975. [14] Barrett OÂ’Neill. SemiRiemannian Geometry. Academic Press, New York, New York, 1983. 181
PAGE 190
182 [15] Jose Maria Rico. Representations of the Euclidean Group and its Applications to the Kinematics of Spatial Chains. PhD thesis, University of Florida, Gainesville, Florida, 1988. [16] N.J. Vilenkin. Special Functions and the Theory of Group Representations. American Mathematical Society, Providence, Rhode Island, 1968. [17] Frank W. Warner. Foundations of Differentiable Manifolds and Lie Groups. SpringerVerlag, New York, New York, 1983.
PAGE 191
BIOGRAPHICAL SKETCH Udai Basavaraj received his bachelorÂ’s degree in the fields of mathematics and physics at the University of Waterloo. He received his masterÂ’s degree in mathematics at the Johns Hopkins University. He completed his Ph.D. in the field of robotics at the University of Florida. He will soon be conducting research at the Robotics and Automation Laboratory at the University of Toronto. 183
PAGE 192
I certify that I have read this study and that in my opinion it conforms to acceptable standards of scholarly presentation and is fully adequate, in scope and quality, as a dissertation for the degree oj^c^tor ^>f philosophy. Neil White, Chairman Professor of Mathematics I certify that I have read this study and that in my opinion it conforms to acceptable standards of scholarly presentation and is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. Josepl Graduate Resear cfi"Professor of Mechanical Engineering I certify that I have read this study and that in my opinion it conforms to acceptable standards of scholarly presentation and is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. ^ . Paul Ehrlich Professor of Mathematics I certify that I have read this study and that in my opinion it conforms to acceptable standards of scholarly presentation and is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. QL Paul Robinson Assistant Professor of Mathematics I certify that I have read this study and that in my opinion it conforms to acceptable standards of scholarly presentation and is fully adequate, in scope and quality, as a dissertation for the degree aLDoctor of Philosophy. CarFCrane Assistant Professor of Mechanical Engineering This dissertation was submitted to the Graduate Faculty of the Department of Mathematics in the College of Liberal Arts and Sciences and to the Graduate School and was accepted as partial fulfillment of the requirements for the degree of Doctor of Philosophy. December 1991 Dean, Graduate School

