Читать книгу Robot Modeling and Control - Mark W. Spong - Страница 70
2.6.1 Homogeneous Transformations
ОглавлениеOne can easily see that the calculation leading to Equation (2.61) would quickly become intractable if a long sequence of rigid motions were considered. In this section we show how rigid motions can be represented in matrix form so that composition of rigid motions can be reduced to matrix multiplication as was the case for composition of rotations.
In fact, a comparison of Equations (2.63) and (2.64) with the matrix identity
(2.65)
where 0 denotes the row vector (0, 0, 0), shows that the rigid motions can be represented by the set of matrices of the form
(2.66)
Transformation matrices of the form given in Equation (2.66) are called homogeneous transformations. A homogeneous transformation is therefore nothing more than a matrix representation of a rigid motion and we will use SE(3) interchangeably to represent both the set of rigid motions and the set of all 4 × 4 matrices of the form given in Equation (2.66).
Using the fact that is orthogonal it is an easy exercise to show that the inverse transformation is given by
(2.67)
In order to represent the transformation given in Equation (2.58) by a matrix multiplication, we must augment the vectors and by the addition of a fourth component of 1 as follows,
(2.68)
(2.69)
The vectors and are known as homogeneous representations of the vectors and , respectively. It can now be seen directly that the transformation given in Equation (2.58) is equivalent to the (homogeneous) matrix equation
(2.70)
A set of basic homogeneous transformations generating SE(3) is given by
(2.71)
(2.72)
(2.73)
for translation and rotation about the x, y, z-axes, respectively.
The most general homogeneous transformation that we will consider may be written now as
(2.74)
In the above equation n = (nx, ny, nz) is a vector representing the direction of x1 in the o0x0y0z0 frame, s = (sx, sy, sz) represents the direction of y1, and a = (ax, ay, az) represents the direction of z1. The vector d = (dx, dy, dz) represents the vector from the origin o0 to the origin o1 expressed in the frame o0x0y0z0. The rationale behind the choice of letters n, s, and a is explained in Chapter 3.
The same interpretation regarding composition and ordering of transformations holds for 4 × 4 homogeneous transformations as for 3 × 3 rotations. Given a homogeneous transformation H01 relating two frames, if a second rigid motion, represented by H ∈ SE(3) is performed relative to the current frame, then
whereas if the second rigid motion is performed relative to the fixed frame, then
Example 2.10.
The homogeneous transformation matrix that represents a rotation by angle α about the current x-axis followed by a translation of b units along the current x-axis, followed by a translation of d units along the current z-axis, followed by a rotation by angle θ about the current z-axis, is given by