lecture 3
DESCRIPTION
Introduction to roboticsTRANSCRIPT
-
Introduction to Robotics
-
Lecture 3
-
Lecture Contents
Spatial Descriptions and Transformations
Descriptions: positions, orientations and frames
Mapping: Changing descriptions from frame to frame
-
Central Topic
Problem Robotic manipulators, by definition,
implies that parts and tools will be moving around in space by the manipulator mechanism
This requires representation of positions and orientations of the parts, tools and the mechanism itself
Solution Mathematical tools for representing
position and orientation of objects/frames in a 3D space
-
Coordinate System
-
Coordinate System
-
Universe Coordinate System
Assume, there is a Universe Coordinate System to which everything can be referenced
All positions and orientations will be described with respect to the Universe Coordinate System or with respect to other Cartesian Coordinate System which are( or could be) defined relative to the Universe Coordinate System
-
Description of a Position
The location of any point in space can be described as a 3x1 position vector in a reference coordinate system
Coordinate system
Position Vector
-
Description of a Position
Vectors will be written with a leading superscript indicating the coordinate system to which they are referenced, for example AP
This means that the components of AP have numerical values which indicate distances along the axes of { A }
Each of these distances along an axis can be thought of as the result of projecting the vector onto the corresponding axis
-
Description of an Orientation
The orientation of a body is described by attaching coordinate system to the body {B} and then defining the relationship between the body and the reference {A} using the rotation matrix
Position : AP
Orientation : AXB , AYB ,
A ZB
-
Description of Orientation
Thus, positions of points are described with vectors and orientations of bodies are described with an attached coordinate system
One way to describe the body attached to the coordinate system, {B}, is to write the unit vectors of its three principal axes in terms of the coordinate system {A}
The unit vectors giving the principal directions of coordinate system {B} as
XB ,YB , ZB When written in terms of coordinate system {A}, they are
called as AXB ,
AYB , A ZB
-
Rotation Matrix
It is convenient to stack these three unit vectors together as the columns of a 3X3 matrix, in the order
The matrix is then called as rotation matrix, and because this particular rotation matrix describes {B} relative to {A}, it is named with the notation
Reference Frame
Body Frame
-
Rotation Matrix
In summary, a set of three vectors may be used to specify an orientation
For convenience, construct a 3X3 matrix that has these three vectors as its columns
Hence, whereas the position of a point is represented with a vector, the orientation of a body is represented with a matrix
The expressions for scalars rij can be computed by noting that components of any vector are simply the projections of that vector onto the unit directions of its reference frame and so can be written as the dot product of a pair of unit vectors
-
Rotation Matrix
AXB = ARB
BX
AXB = ARB
1
0
0
AYB = ARB
0
1
0
AZB = ARB
0
0
1
Rotation matrix describes {B} relative to {A}
AXB = . . .
Components of XB in {A}
-
Rotation Matrix
BZAT
-
Description of an Orientation
Since the dot product of two unit vectors yields the cosine of the angle between them, the components of rotation matrices are often referred to as direction cosines
The rows of the rotation matrix ARB are the unit vectors of {A} expressed in {B}, that is
= BART
-
Description of an Orientation
Hence, BAR the description of {A} relative to {B} is given by the transpose of ABR , that is
This means that the inverse of a rotation matrix is equal to its transpose
-
Description of an Orientation
{A}
{B}
ZA YB
XA XB
ZB YA
Example 1 1 0 0 0 0 -1 0 1 0
ABR =
-
Rotated frames General Notation
-
Description of a Frame
The information needed to completely specify the whereabouts of the manipulator hand is a position and an orientation
The point on the body whose position is described could be chosen arbitrarily
For convenience, however, the point whose position will be described is chosen as the origin of the body attached frame
The situation of a position and an orientation pair arises so often in robotics that an entity is defined for it called as frame
-
Description of a Frame
The frame is a set of four vectors giving position and orientation information
For example, one vector locates the fingertip position and three more describe its orientation
Equivalently, the description of a frame can be thought of as a position vector and a rotation matrix
Thus, frame is a coordinate system, where in addition to the orientation, a position vector is given which locates its origin relative to some other embedding frame
-
Description of a Frame
For example, frame {B} is described by ABR and APBORG is the vector that locates the origin of the frame {B}
{A}
{B}
APBORG {B}={ ABR APBORG }
Rotation matrix describing frame {B} relative to frame {A}
The origin of frame {B} relative to frame {A}
-
Description of a Frame
There are three frames shown along with the universe coordinate system
Frame{A} and {B} are known relative to universe coordinate system and frame {C} is known relative to frame {A}
-
Description of a Frame A frame is depicted by 3
arrows representing unit vectors defining the principal axes of the frame
An arrow representing a vector is drawn from one origin to another
This vector represents the position of origin at the head of arrow in terms of the frame at the tail of the arrow
-
Description of a Frame
The direction of this locating arrow tells us, for example, that {C} is known relative to {A} and not vice versa
In summary, frame can be used as a description of one coordinate system relative to another
-
Mappings Mappings refer to changing the description of a point(or vector) in space
from one frame to another
The second frame has three possibilities in reference to first frame:
1. Second-frame is moved away from the first, the axes of both frames remain parallel, respectively. This is a translation of the origin of the second frame from the first frame in space
2. Second-frame is rotated with respect to the first; the origin of both the frames is same. In robotics this referred as changing the orientation
3. Second-frame is rotated with respect to the first and moved away from it, that is, the second frame is translated and its orientation is also changed
-
Mappings: Translated Frames In this figure, position is
defined by the vector BP with respect to frame {B}
Now, need to express this point in space in terms of frame {A} has the same orientation as frame {B}
In this case, frame {B} differs from frame {A} only by a translation which is given by APBORG , a vector which locates origin of frame {B} relative to frame {A}
Changing the position description of a point P
-
Mappings: Translated Frames
Note, that only in special case of equivalent orientations may we add vectors which are defined in terms of different frames
This idea of mapping is important concept, quantity itself ( here a point in space) is not changed; only description is changed
Point described by BP is not translated, but remains the same, and instead a new description of the same point was computed, but now with respect to frame {A}
The vector APBORG defines this mapping, since all information needed to perform the change in description is contained in APBORG (along with the knowledge that the frames has equivalent orientation)
-
Mappings: Rotated Frames
The rotation matrix describes frame {B} relative to frame {A}, it was named with ABR
By definition, the columns of a rotation matrix all have unit magnitude, and further, these unit vectors are orthogonal
A consequence of this is:
Therefore, since the columns of ABR are the unit vectors of {B} written in {A}, then rows of ABR are the unit vectors of {A} written in {B}
-
Mappings: Rotated Frames
If P is given in {B}: BP
AP = BP BP = BAR
AP
-
Mappings: Rotated Frames
Figure shows a frame {B} which is rotated relative to frame {A} about Z-axis by 30 degrees
Here Z is pointing out of the page
Writing the unit vectors of {B} in terms of {A} and stacking them as the columns of the rotation matrix obtain:
ABRZ( ) =
-
Mappings: Rotated Frames
Here, ABR acts as a mapping that is used to describe BP relative to frame
{A} , AP
Important to remember is that, viewed as a mapping, the original vector P is not changed in space
Rather, a new description of the vector is computed relative to another frame
-
Mappings: General transform
Here, the origin of frame {B} is not coincident with that of frame {A} but has a general vector offset
The vector that locates {B}s origin is called APBORG
Also {B} is rotated with respect to {A} as described by ABR
Given, BP we wish to compute AP
-
Mappings: General Transform
First change BP to its description relative to an intermediate frame that has the same orientation as {A}, but whose origin is coincident with the origin of {B}
This is done by multiplying by ABR
Then account for the translation between origins by simple vector addition and obtain: