View
18
Download
0
Category
Preview:
Citation preview
Lecture 3: Kinematics:
Rigid Motions and Homogeneous Transformations
• Composition of Rotations:◦ Rotations with Respect to the Current Frame◦ Rotations with Respect to the Fixed Frame◦ Example
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 1/15
Lecture 3: Kinematics:
Rigid Motions and Homogeneous Transformations
• Composition of Rotations:◦ Rotations with Respect to the Current Frame◦ Rotations with Respect to the Fixed Frame◦ Example
• Parameterizations of Rotations:◦ Euler Angles◦ Roll, Pitch and Yaw Angles◦ Axis/Angle Representation
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 1/15
Lecture 3: Kinematics:
Rigid Motions and Homogeneous Transformations
• Composition of Rotations:◦ Rotations with Respect to the Current Frame◦ Rotations with Respect to the Fixed Frame◦ Example
• Parameterizations of Rotations:◦ Euler Angles◦ Roll, Pitch and Yaw Angles◦ Axis/Angle Representation
• Rigid Motions and Homogeneous Transformations
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 1/15
What Have We Learned:
Given N -frames in the 3-dimensional space
(o0, x0, y0, z0), (o1, x1, y1, z1), . . . (oN−1, xN−1, yN−1, zN−1)
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 2/15
What Have We Learned:
Given N -frames in the 3-dimensional space
(o0, x0, y0, z0), (o1, x1, y1, z1), . . . (oN−1, xN−1, yN−1, zN−1)
If we are given (N − 1)-rotation matrices
R01, R1
2, . . . , R(N−2)(N−1)
that represent consecutive rotation between the current frames
{(x0y0z0), (x1y1z1)
},
{(x1y1z1), (x2y2z2)
}, . . . ,
{(xN−2yN−2zN−2), (xN−1yN−1zN−1)
}
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 2/15
What Have We Learned:
Given N -frames in the 3-dimensional space
(o0, x0, y0, z0), (o1, x1, y1, z1), . . . (oN−1, xN−1, yN−1, zN−1)
If we are given (N − 1)-rotation matrices
R01, R1
2, . . . , R(N−2)(N−1)
that represent consecutive rotations between the current frames
{(x0y0z0), (x1y1z1)
},
{(x1y1z1), (x2y2z2)
}, . . . ,
{(xN−2yN−2zN−2), (xN−1yN−1zN−1)
}
The formula to compute the position of the point in the 0-framehaving known its position in the 1-frame
p0 = R01p1
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 2/15
What Have We Learned:
Given N -frames in the 3-dimensional space
(o0, x0, y0, z0), (o1, x1, y1, z1), . . . (oN−1, xN−1, yN−1, zN−1)
If we are given (N − 1)-rotation matrices
R01, R1
2, . . . , R(N−2)(N−1)
that represent consecutive rotations between the current frames
{(x0y0z0), (x1y1z1)
},
{(x1y1z1), (x2y2z2)
}, . . . ,
{(xN−2yN−2zN−2), (xN−1yN−1zN−1)
}
The formula to compute the position of the point in the 0-framehaving known its position in the 2-frame
p0 = R01p1, p1 = R1
2p2
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 2/15
What Have We Learned:
Given N -frames in the 3-dimensional space
(o0, x0, y0, z0), (o1, x1, y1, z1), . . . (oN−1, xN−1, yN−1, zN−1)
If we are given (N − 1)-rotation matrices
R01, R1
2, . . . , R(N−2)(N−1)
that represent consecutive rotations between the current frames
{(x0y0z0), (x1y1z1)
},
{(x1y1z1), (x2y2z2)
}, . . . ,
{(xN−2yN−2zN−2), (xN−1yN−1zN−1)
}
The formula to compute the position of the point in the 0-framehaving known its position in the (N − 1)-frame
p0 = R01p1, p1 = R1
2p2, . . . , p(N−2) = R(N−2)(N−1)p
(N−1)
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 2/15
What Have We Learned:
Given N -frames in the 3-dimensional space
(o0, x0, y0, z0), (o1, x1, y1, z1), . . . (oN−1, xN−1, yN−1, zN−1)
If we are given (N − 1)-rotation matrices
R01, R1
2, . . . , R(N−2)(N−1)
that represent consecutive rotations between the current frames
{(x0y0z0), (x1y1z1)
},
{(x1y1z1), (x2y2z2)
}, . . . ,
{(xN−2yN−2zN−2), (xN−1yN−1zN−1)
}
The formula to compute the position of the point in the 0-framehaving known its position in the (N − 1)-frame is
p0 = R01 R1
2 R23 · · · R
(N−2)(N−1) p(N−1)
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 2/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 3/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
The total rotation will be then
R = Rx,θRz,φ
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 3/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
The total rotation will be then
R = Rx,θRz,φ
For any point of the 2-frame with coordinates p2 =[x2, y2, z2
]T
its coordinates in the 0-frame are computed simply as
p0 = R p2 =[Rx,θRz,φ
]p2
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 3/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
• 3: A rotation of α about the fixed axis z
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 4/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
• 3: A rotation of α about the fixed axis z
The total rotation will be then
R = Rx,θRz,φR3
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 4/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
• 3: A rotation of α about the fixed axis z
The total rotation will be then
R = Rx,θRz,φR3
We have computed this rotation as
R3 =[Rx,θRz,φ
]−1
· Rz,α ·[Rx,θRz,φ
]
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 4/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
• 3: A rotation of α about the fixed axis z
The total rotation will be then
R = Rx,θRz,φR3 = Rz,αRx,θRz,φ
We have computed this rotation as
R3 =[Rx,θRz,φ
]−1
· Rz,α ·[Rx,θRz,φ
]
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 4/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
• 3: A rotation of α about the fixed axis z
• 4: A rotation of β about the current axis y
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 5/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
• 3: A rotation of α about the fixed axis z
• 4: A rotation of β about the current axis y
The total rotation will be then
R = Rx,θRz,φR3 Ry,β =[Rz,αRx,θRz,φ
]Ry,β
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 5/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
• 3: A rotation of α about the fixed axis z
• 4: A rotation of β about the current axis y
• 5: A rotation of δ about the fixed axis x
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 6/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
• 3: A rotation of α about the fixed axis z
• 4: A rotation of β about the current axis y
• 5: A rotation of δ about the fixed axis x
The total rotation will be then
R = Rz,αRx,θRz,φRy,βR5
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 6/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
• 3: A rotation of α about the fixed axis z
• 4: A rotation of β about the current axis y
• 5: A rotation of δ about the fixed axis x
The total rotation will be then
R = Rz,αRx,θRz,φRy,βR5
We have computed this rotation as
R5 =[Rz,αRx,θRz,φRy,β
]−1
· Rx,δ ·[Rz,αRx,θRz,φRy,β
]
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 6/15
Example 2.8:
Find the rotation R defined by the following basic rotations:
• 1: A rotation of θ about the current axis x;
• 2: A rotation of φ about the current axis z
• 3: A rotation of α about the fixed axis z
• 4: A rotation of β about the current axis y
• 5: A rotation of δ about the fixed axis x
The total rotation will be then
R = Rx,δ · Rz,α · Rx,θ · Rz,φ · Ry,β
We have computed this rotation as
R5 =[Rz,αRx,θRz,φRy,β
]−1
· Rx,δ ·[Rz,αRx,θRz,φRy,β
]
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 6/15
Lecture 3: Kinematics:
Rigid Motions and Homogeneous Transformations
• Composition of Rotations:◦ Rotations with Respect to the Current Frame◦ Rotations with Respect to the Fixed Frame◦ Example
• Parameterizations of Rotations:◦ Euler Angles◦ Roll, Pitch and Yaw Angles◦ Axis/Angle Representation
• Rigid Motions and Homogeneous Transformations
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 7/15
Parameterizations of Rotations:
Any rotation matrix R is• of dimension 3 × 3, i.e. it is 9-numbers
• belongs to SO(3), i.e.◦ its 3 columns are vectors of length 1 (3 equations)
◦ its 3 columns are orthogonal to each other (3 equations)
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 8/15
Parameterizations of Rotations:
Any rotation matrix R is• of dimension 3 × 3, i.e. it is 9-numbers
• belongs to SO(3), i.e.◦ its 3 columns are vectors of length 1 (3 equations)
◦ its 3 columns are orthogonal to each other (3 equations)
Except the particular cases, only 3 of 9
numbers that parameterize the rotation matrix,
can be assigned freely!
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 8/15
Euler Angles:
Euler angles are angles of 3 rotations about current axes
RZYZ := Rz,φ · Ry,θ · Rz,ψ
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 9/15
Euler Angles:
Euler angles are angles of 3 rotations about current axes
RZYZ :=
cφ −sφ 0
sφ cφ 0
0 0 1
· Ry,θ · Rz,ψ
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 9/15
Euler Angles:
Euler angles are angles of 3 rotations about current axes
RZYZ :=
cφ −sφ 0
sφ cφ 0
0 0 1
·
cθ 0 sθ
0 1 0
−sθ 0 cθ
· Rz,ψ
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 9/15
Euler Angles:
Euler angles are angles of 3 rotations about current axes
RZYZ :=
cφ −sφ 0
sφ cφ 0
0 0 1
·
cθ 0 sθ
0 1 0
−sθ 0 cθ
·
cψ −sψ 0
sψ cψ 0
0 0 1
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 9/15
Roll, Pitch Yaw Angles:
Roll, pitch and yaw angles are angles of 3 rotations about thefixed axes x, y and z
Rxyz := Rz,φ · Ry,θ · Rx,ψ
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 10/15
Roll, Pitch Yaw Angles:
Roll, pitch and yaw angles are angles of 3 rotationsabout the fixed axes x, y and z
Rxyz := Rz,φ · Ry,θ ·
1 0 0
0 cψ −sψ
0 sψ cψ
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 10/15
Roll, Pitch Yaw Angles:
Roll, pitch and yaw angles are angles of 3 rotationsabout the fixed axes x, y and z
Rxyz := Rz,φ ·
cθ 0 sθ
0 1 0
−sθ 0 cθ
·
1 0 0
0 cψ −sψ
0 sψ cψ
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 10/15
Roll, Pitch Yaw Angles:
Roll, pitch and yaw angles are angles of 3 rotationsabout the fixed axes x, y and z
Rxyz :=
cφ −sφ 0
sφ cφ 0
0 0 1
·
cθ 0 sθ
0 1 0
−sθ 0 cθ
·
1 0 0
0 cψ −sψ
0 sψ cψ
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 10/15
Axis/Angle Representation for a Rotation Matrix:
Any rotational matrix can be expressed as a rotation of angle θ
about an axis k = [kx, ky, kz]T
R~k,θ = R · Rz,θ · R−1, R = Rz,α · Ry,β
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 11/15
Lecture 3: Kinematics:
Rigid Motions and Homogeneous Transformations
• Composition of Rotations:◦ Rotations with Respect to the Current Frame◦ Rotations with Respect to the Fixed Frame◦ Example
• Parameterizations of Rotations:◦ Euler Angles◦ Roll, Pitch and Yaw Angles◦ Axis/Angle Representation
• Rigid Motions and Homogeneous Transformations
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 12/15
Rigid Motions
A rigid motion is an ordered pair (R, d), where R ∈ SO(3) andd ∈ R3. The group of all rigid motions is known as SpecialEuclidean Group denoted by SE(3).
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 13/15
Rigid Motions
A rigid motion is an ordered pair (R, d), where R ∈ SO(3) andd ∈ R3. The group of all rigid motions is known as SpecialEuclidean Group denoted by SE(3).
It is the way to compute coordinates in different frames
p0 = R01p1 + d0
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 13/15
Rigid Motions
A rigid motion is an ordered pair (R, d), where R ∈ SO(3) andd ∈ R3. The group of all rigid motions is known as SpecialEuclidean Group denoted by SE(3).
It is the way to compute coordinates in different frames
p0 = R01p1 + d0
If there are 3 frames corresponding to 2 rigid motions
p1 = R12p2 + d1
2
p0 = R01p1 + d0
1
then the overall motion is
p0 = R01R1
2p2 + R01d1
2 + d01
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 13/15
Concept of Homogeneous Transformation
HT is just a convenient way to write the formula
p0 = R01R1
2 p2 + R01d1 + d0
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 14/15
Concept of Homogeneous Transformation
HT is just a convenient way to write the formula
p0 = R01R1
2 p2 + R01d1 + d0
Given two rigid motions (R01, d0
1) and (R12, d1
2), consider theproduct of two matrices
[
R01 d0
1
01×3 1
] [
R12 d1
2
01×3 1
]
=
[
R01R1
2 R01d1
2 + d01
01×3 1
]
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 14/15
Concept of Homogeneous Transformation
HT is just a convenient way to write the formula
p0 = R01R1
2 p2 + R01d1 + d0
Given two rigid motions (R01, d0
1) and (R12, d1
2), consider theproduct of two matrices
[
R01 d0
1
01×3 1
] [
R12 d1
2
01×3 1
]
=
[
R01R1
2 R01d1
2 + d01
01×3 1
]
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 14/15
Concept of Homogeneous Transformation
HT is just a convenient way to write the formula
p0 = R01R1
2 p2 + R01d1 + d0
Given two rigid motions (R01, d0
1) and (R12, d1
2), consider theproduct of two matrices
[
R01 d0
1
01×3 1
] [
R12 d1
2
01×3 1
]
=
[
R01R1
2 R01d1
2 + d01
01×3 1
]
Given a rigid motion (R, d) ∈ SE(3), the 4 × 4-matrix
H =
[
R d
01×3 1
]
is called homogeneous transformation associated with (R, d)
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 14/15
Concept of Homogeneous Transformation
To use HTs in computing coordinates of points, we need toextend the vectors p0 and p1 by one coordinate. Namely
P 0 =
[
p0
1
]
, P 1 =
[
p1
1
]
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 15/15
Concept of Homogeneous Transformation
To use HTs in computing coordinates of points, we need toextend the vectors p0 and p1 by one coordinate. Namely
P 0 =
[
p0
1
]
, P 1 =
[
p1
1
]
Then
P 0 =
[
p0
1
]
=
[
R01p1 + d0
1
]
=
[
R01 d0
01×3 1
]
︸ ︷︷ ︸
H01
[
p1
1
]
︸ ︷︷ ︸
P 1
that is in shortP 0 = H0
1P 1
c©Anton Shiriaev. 5EL158: Lecture 3 – p. 15/15
Recommended