Homogeneous transformation matrices for 2D chains

We are now prepared to determine the location of each link. The location in $ {\cal W}$ of a point in $ (x,y) \in {\cal A}_1$ is determined by applying the 2D homogeneous transformation matrix (3.35),

$\displaystyle T_1 = \begin{pmatrix}\cos\theta_1 & -\sin\theta_1 & x_t \sin\theta_1 & \cos\theta_1 & y_t 0 & 0 & 1  \end{pmatrix}.$ (3.51)

As shown in Figure 3.10, let $ a_{i-1}$ be the distance between the joints in $ {\cal A}_{i-1}$. The orientation difference between $ {\cal A}_i$ and $ {\cal A}_{i-1}$ is denoted by the angle $ \theta _i$. Let $ T_i$ represent a $ 3 \times 3$ homogeneous transformation matrix (3.35), specialized for link $ {\cal A}_i$ for $ 1 < i \leq m$,

$\displaystyle T_i = \begin{pmatrix}\cos\theta_i & -\sin\theta_i & a_{i-1}  \sin\theta_i & \cos\theta_i & 0  0 & 0 & 1  \end{pmatrix} .$ (3.52)

This generates the following sequence of transformations:
  1. Rotate counterclockwise by $ \theta _i$.
  2. Translate by $ a_{i-1}$ along the $ x$-axis.
The transformation $ T_i$ expresses the difference between the body frame of $ {\cal A}_i$ and the body frame of $ {\cal A}_{i-1}$. The application of $ T_i$ moves $ {\cal A}_i$ from its body frame to the body frame of $ {\cal A}_{i-1}$. The application of $ T_{i-1} T_i$ moves both $ {\cal A}_i$ and $ {\cal A}_{i-1}$ to the body frame of $ {\cal A}_{i-2}$. By following this procedure, the location in $ {\cal W}$ of any point $ (x,y) \in {\cal A}_m$ is determined by multiplying the transformation matrices to obtain

$\displaystyle T_1 T_2 \cdots T_m \begin{pmatrix}x  y  1  \end{pmatrix} .$ (3.53)

Example 3..3 (A 2D Chain of Three Links)   To gain an intuitive understanding of these transformations, consider determining the configuration for link $ {\cal A}_3$, as shown in Figure 3.11. Figure 3.11a shows a three-link chain in which $ {\cal A}_1$ is at its initial configuration and the other links are each offset by $ \pi/4$ from the previous link. Figure 3.11b shows the frame in which the model for $ {\cal A}_3$ is initially defined. The application of $ T_3$ causes a rotation of $ \theta_3$ and a translation by $ a_2$. As shown in Figure 3.11c, this places $ {\cal A}_3$ in its appropriate configuration. Note that $ {\cal A}_2$ can be placed in its initial configuration, and it will be attached correctly to $ {\cal A}_3$. The application of $ T_2$ to the previous result places both $ {\cal A}_3$ and $ {\cal A}_2$ in their proper configurations, and $ {\cal A}_1$ can be placed in its initial configuration. $ \blacksquare$

Figure 3.11: Applying the transformation $ T_2 T_3$ to the model of $ {\cal A}_3$. If $ T_1$ is the identity matrix, then this yields the location in $ {\cal W}$ of points in $ {\cal A}_3$.
...l A}_3$ in ${\cal A}_1$'s body frame \\

For revolute joints, the $ a_i$ parameters are constants, and the $ \theta _i$ parameters are variables. The transformed $ m$th link is represented as $ {\cal A}_m(x_t,y_t,\theta_1,\ldots,\theta_m)$. In some cases, the first link might have a fixed location in the world. In this case, the revolute joints account for all degrees of freedom, yielding $ {\cal A}_m(\theta_1,\ldots,\theta_m)$. For prismatic joints, the $ a_i$ parameters are variables, instead of the $ \theta _i$ parameters. It is straightforward to include both types of joints in the same kinematic chain.

Steven M LaValle 2012-04-20