Chương 03
Chương 03
Chương 03
Robotics
1
Tài liệu tham khảo
2
Contents
Topic 1: Introduction
Topic 2: Basic robotic concepts
Topic 3.1: Spatial Representations of Rigid Bodies (Part I)
Topic 3.2: Spatial Representations of Rigid Bodies (Part II)
3
• - Topic 2 -
- Week 1 -
Outline
1. Exponential Coordinates
2. Parameterizations of the rotation
2.1. Axis/angle representation
2.2. Euler angles
2.2. Roll, pitch, yaw angles
2.3. Quaternions
3. Homogeneous transformations
Exponential Coordinates
Derivative of a Rotation Matrix
1. For all rotation matrices:
3. Skew-symmetric matrix
definition
5. Solution when
Remark: 𝜔
ෝ represents
the angular velocity
Exponential Coordinates
Derivative of a Rotation Matrix
1. Skew-symmetric matrix
Consider a vector ω:
Cross product: p = ˆ p
Exponential Coordinates
Derivative of a Rotation Matrix
1. Example:
A rotation matrix R represents a rotation of θ about axis x. Find the angular velocity
associated with this rotation
Solution
- The angular velocity is represented by the skew-symmetric matrix ˆ = RRT
0 0 0 1 0 0 0 0 0
− cos 0 cos sin = 0 0 −
ˆ = RRT = 0 − sin
0 cos − sin 0 − sin cos 0 0
Angular
= 0 velocity in x
0
Exponential Coordinates
Matrix Exponential
1. Objective: compute
2. Procedure
Taylor expansion:
Properties:
1. Exponential coordinates
2. Parameterizations of the Orientation
2.1. Axis/angle representation
2.2. Euler angles
2.2. Roll, pitch, yaw angles
2.3. Quaternions
3. Homogeneous transformations
Outline
1. Exponential coordinates
2. Parameterizations of the rotation
2.1. Axis/angle representation
2.2. Euler angles
2.2. Roll, pitch, yaw angles
2.3. Quaternions
3. Homogeneous transformations
Euler Angles
z z' z ''
z' zf
𝜙1 z '' 𝜙3
y' yf
y ''
y y' y ''
𝜙2
x x' x ''
x' x '' xf
2. Equivalent rotation matrix:
Rotation matrix
from ZYZ Euler
angles
Euler Angles
Euler Angles ZYZ
1. ZYZ Euler angles from rotation matrix
X X
X X
sin ϕ2 ≠ 0
b) Find the rotation matrix equivalent to the ZYZ Euler angles (-150°, -50°, -90°)
1. Exponential coordinates
2. Parameterizations of the rotation
2.1. Axis/angle representation
2.2. Euler angles
2.2. Roll, Pitch, Yaw Angles
2.3. Quaternions
3. Homogeneous transformations
Roll, Pitch, Yaw Angles
cos ϕp ≠ 0
1. Example
Given the following rotation matrix, find the two equivalent sets of Roll, Pitch, Yaw angles
−0.5 −0.557 0.663
R = 0.866 −0.321 0.383
0 0.766 0.643
Solution
1. Exponential coordinates
2. Parameterizations of the rotation
2.1. Axis/angle representation
2.2. Euler angles
2.2. Roll, pitch, yaw angles
2.3. Quaternions
3. Homogeneous transformations
Outline
1. Exponential coordinates
2. Parameterizations of the rotation
2.1. Axis/angle representation
2.2. Euler angles
2.2. Roll, pitch, yaw angles
2.3. Quaternions
3. Homogeneous Transformations
Homogeneous Transformations
1. Point P of frame {B} in frame {A}: P zB
B
2. In a more compact way: p yB
zA
A
p
A
A t B : Origin of frame B
tB with respect to
xB frame A
yA
xA A
p = At B + A RB B p
A p A RB A
tB B p
=
A
p
Homogeneous
coordinates
1 0 1 1 B
p
A B
p A
TB p
Homogeneous
transformation matrix
Homogeneous Transformations
1. They represent the position and orientation (pose) of a frame with respect to another frame
2. Parts
Rotation
r11 tx (orientation)
r12 r13
r r22 r23 t y R t translation
T = 21 =
(position)
r31
r32 r33 tz 0 1
0 0 0 1
R 0 I t
4. Pure transformations T = T =
0 1 0 1
Pure rotation Pure translation
Homogeneous Transformations
Pure Transformations
Pure rotations: Pure translations:
1 0 0 0 1 0 0 d
0 cos − sin 0 0 1 0 0
Rot x ( ) = Transx (d ) =
0 sin cos 0 0 0 1 0
0 0 0 1 0 0 0 1
cos 0 sin 0 1 0 0 0
0 1 0 0 0 1 0 d
Rot y ( ) = Trans y (d ) =
− sin 0 cos 0 0 0 1 0
0 0 0 1 0 0 0 1
cos − sin 0 0 1 0 0 0
sin cos 0 0 0 1 0 0
Rot z ( ) = Transz (d ) =
0 0 1 0 0 0 1 d
0 0 0 1 0 0 0 1
Homogeneous Transformations
Composition
1. When a transformation is applied with respect to the fixed frame:
- A pre-multiplication is used
2. When a transformation is applied with respect to the mobile (current, new) frame
- A post-multiplication is used
3. Example
A frame {A} is rotated 90° about x, and then it is translated a vector (6, -2, 10) with respect to the
fixed (initial) frame. Find the homogeneous transformation that describes {B} with respect to {A}
A
TB = Trans(6, −2,10) Rot x (90)
1 0 0 6 1 0 0 0 1 0 0 6
0 1 0 −2 0 cos 90 − sin 90 0 0 0 −1 −2
= =
0 0 1 10 0 sin 90 cos 90 0 0 1 0 10
0 0 0 1 0 0 0 1 0 0 0 1
Homogeneous Transformations
Composition
1. Example
Find the homogeneous transformation matrix that represents a rotation of an angle α about the x
axis, followed by a translation of b units along the new x axis, followed by a translation of d units
along the new z axis, followed by a rotation of an angle θ about the new z axis
Solution
A
TB = Rot x ( )Transx (b)Transz (d ) Rot z ( )
cos − sin 0 b
cos sin cos cos − sin −d sin
=
sin sin sin cos cos d cos
0 0 0 1
Homogeneous Transformations
Composition
1. Decomposition in pure transformations
Any homogeneous transformation can be decomposed in 2 components:
R t I t R 0
T = = 0 1
0 1 0 1
translation rotation
t R
2. Interpretations of the (de)composition of T
Interpretation 1:
1. First, it applies a translation of t units
2. Then, it applies a rotation R with respect to the new frame
Interpretation 2:
1. First, it applies a rotation R
2. Then, it applies a translation of t units with respect to the fixed (initial) frame
Homogeneous Transformations
Uses
1. They represent the pose (position+orientation) of a frame (rigid body) with respect to another frame
2. They change the reference frame in which a point is represented (using a linear relation):
A
p = ATB B
p
Note: the point must be represented using homogeneous coordinates (its notation uses ~)
3. They apply a transformation (rotation + translation) to a point in the same reference frame
Homogeneous Transformations
Uses
• Example 1
Consider frame {A} and {B}. Point P in frame {B} is given by (2, 0, 1), find its coordinates with
respect to frame {A} using a homogeneous transformation matrix
P zB
zA xB
4
yB
6
yA
xA
Solution
0 1 0 −4 2 −4
−4
A p A RB A
tB B p A p −1 0 0 6 0 4
= = = A
p = 4
1 0 1 1 1 0 0 1 0 1 1
1
0 0 0 1 1 1
Homogeneous Transformations
Uses
1. Example 2
A frame {A} is rotated 90° about x, and then it is translated a vector (6, -2, 10) with respect to the
fixed (initial) frame. Consider a point p = (-5, 2, -12) with respect to the new frame {B}. Determine
the coordinates of that point with respect to the initial frame
Solution
- Homogeneous transformation
1 0 0 6 1 0 0 0 1 0 0 6
0 1 0 −2 0 cos 90 − sin 90 0 0 0 −1 −2
A
TB = Trans (6, −2,10) Rot x (90) = =
0 0 1 10 0 sin 90 cos 90 0 0 1 0 10
0 0 0 1 0 0 0 1 0 0 0 1
- Transformed point:
1 0 06 −5 1
0 0 −1 −10 2 2
A
p = TB p =
A B
=
0 1 0 −2 −12 0
0 0 0 1 1 1
Homogeneous Transformations
Properties
1. Inverse of a homogeneous transformation:
R t −1 RT − RT t
T = T =
0 1 0 1
R1 t1 R2 t2 R1 R2 R1t 2 + t1
T1 = T2 = T1T2 =
0 1 0 1 0 1
It is not commutative
Homogeneous Transformations
1. Example:
The figure shows a robot whose base is 1m away from the base
of the table. The table is 1m height and its surface is a square.
Frame {1} is fixed on a corner of the table. A 20 cm cube is
located on the middle of the table, and it has frame {2} attached
to its center. A camera is located 2m above the table, just over the
cube, and it has frame {3} attached to it.
a) Find the homogeneous transformations that relate each of
these frames with the base system {0}
b) Find the homogeneous transformation that relates the cube
frame {2} with respect to the camera frame {3}
Homogeneous Transformations
1. Example: Solution
a) By inspection, the homogeneous transformations that relate
each of the frames with respect to the base frame {0} are:
1 0 0 0 1 0 0 −0.5 0 1 0−0.5
0 1 0 1 0 1 0 1.5 1 0 0 1.5
0
T1 = 0
T2 = 0
T3 =
0 0 1 1 0 0 1 1 0 0 −1 3
0 0 0 1 0 0 0 1 0 0 0 1
59
Coordination systems
60
Homogeneous Transformations
1. Example:
Consider that the transformations of the belt and of the robot base with respect to a reference frame
{W} are known. The transformation of the object with respect to the belt, as well as the
transformation of the end effector with respect to the robot base are also known.
a) Find the pose of the object with respect to the base of the robot
b) Find the pose of the object with respect to the end effector
End effector
{E}
object
{O}
{F}
belt
{B}
base
{W}
world
Homogeneous Transformations
1. Example:
Consider that the transformations of the belt and of the robot base with respect to a reference frame
{W} are known. The transformation of the object with respect to the belt, as well as the transformation
of the end effector with respect to the robot base are also known.
a) Find the pose of the object with respect to the base of the robot
End effector
b) Find the pose of the object with respect to the end effector
{E}
Solution
- Known transformations: W TF , W TB , FTO , BTE object
{O}
a) Desired pose (in terms of the known transformations): BTO
{F}
B
TO = ( TW )( TO ) = ( T
B W W
B
−1
) (( W
TF )( TO ) F
) {B}
belt
base
b) Desired pose (in terms of the known transformations): ETO {W}
TO = ( ETW )( W TO ) = ( W TE−1 )( W TF )( FTO ) = (( T )( T ) ) ( TF )( FTO )
−1 world
E W B W
B E
= ( BTE ) ( TB ) ( TF )( FTO )
−1 W −1 W
Important Points
63
John J. Craig, Introduction to Robotics: Mechanics and Control (3rd Edition),
Chapter 2: Spatial descriptions and transformations
• 2.1, 2.2, 2.3, 2.4,
• 2.27, 2.28, 2.29, 2.30. 2.31, 2.32, 2.33, 2.34,
• MATLAB Exercise 2A (a,b,c).
• MATLAB Exercise 2B (a,b,c,d).
64
References
• Siciliano, Bruno, Sciavicco, Lorenzo, Villani, Luigi, y Oriolo, Giuseppe. Robotics: Modelling,
Planning and Control. Springer Science & Business Media, 2010 (Chapter 2.4-2.7)
• Murray, Richard. M., Li, Z., Sastry, S. S., & Sastry, S. S. A Mathematical Introduction to Robotic
Manipulation. CRC press, 1994 (Capítulo 2.2-2.3)
• Spong, M. W., Hutchinson, S., & Vidyasagar, M. Robot Modeling and Control, Jon Wiley & Sons,
2006 (Chapter 2.5-2.7)
65
Thank you for your listening
66