Purpose The purpose of this chapter is to introduce you to the Homogeneous Transformation This simple 4 x 4 transformation is used in the geometry engines of CAD systems and in the kinematics model in robot controllers It is very useful for examining rigidbody position and orientation pose o ID: 483236
Download Presentation The PPT/PDF document "Homogeneous Transformations" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Homogeneous Transformations
Purpose:
The purpose of this chapter is to introduce you to the Homogeneous Transformation. This simple 4 x 4 transformation is used in the geometry engines of CAD systems and in the kinematics model in robot controllers. It is very useful for examining rigid-body position and orientation (pose) of a sequence of robotic links and joint frames.
Slide2
In particular, you will
Examine the structure of the HT (homogeneous transform).
See how orientation and position are represented within one matrix.
Apply the HT to pose (position and orient) a frame (xyz set of axes) relative to another reference frame.
Examine the HT for simple rotations about an axis.
See the effect of multiplying a series of HT’s.
Interpret the order of a product of HT’s relative to base and body-fixed frames.
See how the HT is used in robotics.Slide3
Script Notation:Pre super and sub-scripts are often used to denote frames of reference
= transformation of frame C relative to frame B
Cp = vector located in frame CTsai uses a pre and post script notation = transformation of frame C relative to frame B Cp = vector located in frame CNote that we may not use the scripting approach, but instead graphically interpret the frame representations.
T
B
C
T
B
CSlide4
1
d
3
d
2
d
1
p
z
c
z
b
z
a
z
p
y
c
y
b
y
a
y
p
x
c
x
b
x
a
x
H
=
Homogeneous Transformation
H
can represent translation, rotation, stretching or shrinking (scaling), and perspective transformations
Slide5
1
0
0
0
p
z
c
z
b
z
a
z
p
y
c
y
b
y
a
y
p
x
c
x
b
x
a
x
H
=
Interpreting the HT as a frame
a
,
b
, and
c
form an orientation sub-matrix denoted by
R (3 x 3)
, while
p (3 x 1)
is the frame’s origin offset.
a b c
p
RSlide6
What do the terms represent?
a
is a vector ( set of direction cosines a
x, ay, and az ) that orients the frame’s x axis relative to the base X, Y, and Z axes, respectively. Similar interpretations are made for the frame’s y and z axes through the direction cosine sets represented by vectors
b and
c.p is a vector of 3 components representing the frame’s origin relative to the reference axes.
a
z
a
y
a
x
a
=
p
Base frame
FrameSlide7
Interpreting the HT used to locate a vector in the base frame
Given a fixed vector
u
, its transformation v is represented by v = H u
Note that this form doesn’t work for free vectors !
Frame Interpretation
Slide8
u
z
u
y
u
x
u
=
1
The position vector u having components u
x
, u
y
, u
z
must be expanded to a 4 x 1 vector by adding a 1.
Transforming vectors
Note: To transform an orientation vector, only use the orientation sub-matrix R, and drop the 1 from the vector so that you are multiplying a (3 x 3) matrix times a (3 x 1) vector.Slide9
u
z
u
y
u
x
1
Interpreting the HT
R
p
1
0
T
= R u + p
The 1 adds in the frame origin, while the R resolves the vector u into the base frame
v = Slide10
Pure rotation
Special cases:
1
0
0
0
0
c
z
b
z
a
z
0
c
y
b
y
a
y
0
c
x
b
x
a
x
H
=
Slide11
Special cases:
Pure translation
1
0
0
0
p
z
1
0
0
p
y
0
1
0
p
x
0
0
1
H
=
Slide12
Pure rotation
about x
Rotational forms
R(x,
q)
=
x
cos
q
sin
q
0
-sin
q
cos
q
0
0
0
1
q
qSlide13
Pure rotation
about y
Rotational forms
R(y,
q)
=
cos
q
0
-sin
q
0
1
0
sin
q
0
cos
q
Pure rotation
about z
R(z,
q
)
=
1
0
0
0
cos
q
sin
q
0
-sin
q
cos
qSlide14
Example -
Rotate u by 90
o
about +Z and 90o about +Y, where XYZ are the fixed base reference axes. What are the final coordinates of the vector u after these two rotations in the base XYZ axes? If the rotation order changed, will the final coordinates be the same? Let uT = [0 1 0].
Soln:
v = R (Z,90˚) u "rotate u to v"
w = R (Y,90˚) v "rotate v to w"
Thus, w = R (Y,90˚) R (Z,90˚) u Slide15
R(Y,90˚
)
=
0
0
-1
0
1
0
1
0
0
R(Z,
90
˚
)
=
1
0
0
0
0
1
0
-1
0Slide16
w
=
Graphical interpretation
Z, z', y"
Y, x', x"
X,z"
90
°
90
°
y'
(0,1,0)
(0,0,1)Slide17
w
=
Change order?
-
0
0
1
0
1
0
1
0
0
-
1
0
0
0
0
1
0
1
0
0
1
0
Not commutative!Slide18
Order of p and R: first R, then p
p
RSlide19
Order of p and R: first p, then R
Note the difference in the final matrix form.
Can you explain the difference?
p
RSlide20
Understanding HT multiplication order
If we postmultiply a transformation (A B) representing a frame (relative to base axes) by a second transformation (relative to the frame of the first transformation), we make the transformation with respect to the frame axes of the first transformation. Premultiplying the frame transformation by the second transformation (B A) causes the transformation to be made with respect to the base reference frame.
Slide21
Example
-
Given frame
and transformation
locate frame X = H C and frame Y = C H
. Note the differences. Slide22
Results : HC
C
HSlide23
Results : CH
C
HSlide24
Inverse Transformations
Given
u
and the rotational transformation
R
, the coordinates of
u
after being rotated by
R
are defined by
v
=
Ru
. The inverse question is given
v,
what
u
when rotated by
R
will give
v
?
Answer:
u = R
-1
v = R
T
vSlide25
Inverse Transformations
Similarly for any displacement matrix
H
(
R, p
), we can pose a similar question to get
u
=
H
-1
v.
What is the inverse of a displacement transformation? Without proof:
H
-1
=
=Slide26
Operational rules for square
matrices of full rank
:Slide27
HT summary
Homogeneous transformation consists of three components:
·
rotational, orthogonal 3x3 sub-matrix which is comprised
of columns of direction cosines used to orient the axes of one frame relative to another.
·
column vector in 4th column represents the origin of second frame relative to first frame, resolved in the first frame.
·
0's in 4
th
row except for 1 in 4,4 position.Slide28
HT summary
The homogeneous transformation effectively merges a frame orientation matrix and frame translation vector into one matrix. The order of the operation should be viewed as rotation first, then translation. Slide29
HT summary
The homogeneous transformation can be viewed as a position/orientation relationship of one frame relative to another frame called the reference frame.
Slide30
HT summary
A B
can be interpreted as frame
A
described relative to the first or base frame while frame
B
is described relative to frame
A
(usual way). We can also interpret
B
in the base frame transformed by
A
in the base frame. Both interpretations give same result.