Question 3 of 7: Axis assignment, DH table and forward kinematics (20 marks)
Nivaar worked solution (AI-drafted; not reviewed by a licensed engineer)
Notes on this paper
Paper format. National Exams, May 2016 — 07-Mec-B12 Robot Mechanics, 3 hours. CLOSED BOOK, with one 8.5″×11″ formula sheet (both sides) and an approved non-programmable calculator permitted. FIVE questions constitute a complete paper and each question is of equal value (20 marks); the first five as they appear in the answer book are marked. All seven questions are worked here.
Reference texts. J. J. Craig, Introduction to Robotics: Mechanics and Control, 4th ed. (the exam's leading-super/subscript notation and the Z–Y–Z Euler convention follow this text directly); M. W. Spong, S. Hutchinson and M. Vidyasagar, Robot Modeling and Control, 2nd ed.; S. B. Niku, Introduction to Robotics: Analysis, Control, Applications, 3rd ed.; K. M. Lynch and F. C. Park, Modern Robotics, 1st ed.
Notation (from the exam's own nomenclature page). A leading superscript names the frame a quantity is referenced to, so $^{A}V$ is the vector $V$ expressed in frame $\{A\}$. A leading subscript together with a leading superscript names a transformation: $^{B}_{A}T$ describes frame $\{A\}$ relative to frame $\{B\}$, and therefore maps coordinates the other way, $^{B}P = {}^{B}_{A}T\,{}^{A}P$. Keeping that direction straight is the single most common source of lost marks on this paper, so every question below states explicitly which way the given transform points.
Check: sign convention for the revolute joint. Figure 1 shows the direction of positive motion with a curved arrow but does not label a sense on the base triad. Throughout Questions 3–6 the base frame is taken as $x_{0}$ along the horizontal arm, $z_{0}$ vertically up and $y_{0}$ completing the right-handed set, with positive $q_{2}$ following the right-hand rule about $+x_{0}$. Every result below is stated in that frame; a candidate who assigns the opposite sense obtains the same magnitudes with $q_{2}\rightarrow-q_{2}$.
Given. The arm of Figure 1 read off the source drawing: a prismatic joint sliding along the horizontal arm, a revolute joint turning about that same horizontal axis, and a second prismatic joint sliding perpendicular to it, with the printed link lengths 1, 1 and 2.
Given data — structure read from Figure 1
Element
Type
Axis at rest
Constant length
joint 1, variable $q_{1}$
prismatic
horizontal, along the arm
1 (base to joint 2)
joint 2, variable $q_{2}$
revolute
horizontal, along the arm
1 (joint 2 to joint 3)
joint 3, variable $q_{3}$
prismatic
vertical
2 (joint 3 to point $e$)
frame $\{e\}=\{3\}$
—
$z_{e}$ up, $x_{e}$ along the arm
—
Find. (a) a consistent set of frame assignments; (b) the four DH parameters for each of the three links; (c) the forward-kinematic transform $^{0}_{3}T$.
[Figure not reproduced: Figure 3.1 — part (a). The manipulator redrawn in its rest pose with the axis assignments marked. Joints 1 and 2 share the horizontal arm axis; joint 3 slides perpendicular to it and its direction turns with q₂. See the official exam paper.]
Approach. Place a $z$ axis along every joint axis, read the four DH parameters off the resulting geometry, then multiply the three link transforms.
Assign the base and end frames (part a). Take the base triad of Figure 1 as $x_{0}$ along the horizontal arm, $z_{0}$ vertically up and $y_{0}$ completing the right-handed set, which makes the drawn end frame $\{e\}$ (with $z_{e}$ up and $x_{e}$ along the arm) parallel to $\{0\}$ in the rest pose. This is the assignment shown in Figure 3.1 and it is the one used for every stated result below.
Place a $z$ axis on each joint axis, as the DH convention demands. Joint 1 slides along the arm and joint 2 turns about the arm, so those two joint axes are collinear; joint 3 slides perpendicular to them. The DH $z$ axes are therefore$$z_{0}\parallel z_{1}\parallel \hat{x}_{0}\ \text{(the arm)},\qquad z_{2}\perp z_{1},\ \text{vertical at rest}.$$Note that the DH base frame necessarily has its $z$ along the arm, which is a relabelling of the drawn triad, not a different physical frame — a constant change of basis relates the two, and it is applied once at the end.
Read the four parameters for link 1. Because $z_{0}$ and $z_{1}$ are collinear there is no common-normal offset and no twist, so $a_{1}=0$ and $\alpha_{1}=0$. The joint is prismatic, so $\theta_{1}=0$ is constant and the variable is the offset along $z_{0}$, which comprises the fixed 1 unit from the base to joint 2 plus the stroke:$$d_{1}=1+q_{1}.$$
Read the four parameters for link 2. The revolute joint turns about $z_{1}$, and the axes $z_{1}$ and $z_{2}$ intersect at joint 3 and are perpendicular, giving $a_{2}=0$ and $\alpha_{2}=+90^\circ$. The 1 unit from joint 2 to joint 3 lies along $z_{1}$, so $d_{2}=1$. Aligning $x_{1}$ with $x_{2}$ in the rest pose costs a constant quarter turn, hence$$\theta_{2}=90^\circ+q_{2}.$$That constant offset is a bookkeeping consequence of the axis assignment, not a physical feature of the arm; a different but equally valid assignment moves it elsewhere.
Read the four parameters for link 3. The second prismatic joint slides along $z_{2}$ and carries the 2-unit link out to the end point, so $a_{3}=0$, $\alpha_{3}=0$ and$$d_{3}=2+q_{3},$$with $\theta_{3}=90^\circ$ constant, chosen so that $x_{3}$ lands on the $x_{e}$ drawn in Figure 1. Collecting all twelve entries gives the DH table.
Part (b) — DH table (classic convention, $A_{i}=\mathrm{Rot}_{z}(\theta_{i})\,\mathrm{Trans}_{z}(d_{i})\,\mathrm{Trans}_{x}(a_{i})\,\mathrm{Rot}_{x}(\alpha_{i})$)
Link $i$
$a_{i}$
$\alpha_{i}$
$d_{i}$
$\theta_{i}$
Joint type
1
0
$0^\circ$
$1+q_{1}$
$0^\circ$
prismatic
2
0
$90^\circ$
$1$
$90^\circ+q_{2}$
revolute
3
0
$0^\circ$
$2+q_{3}$
$90^\circ$
prismatic
Multiply the link transforms and express the result in the drawn base frame (part c). Forming $A_{1}A_{2}A_{3}$ and rewriting in the $(x_{0}\ \text{along the arm},\ z_{0}\ \text{up})$ frame of Figure 3.1 gives the forward kinematics$$\boxed{^{0}_{3}T=\begin{bmatrix}1 & 0 & 0 & 2+q_{1}\\0 & \cos q_{2} & -\sin q_{2} & -(2+q_{3})\sin q_{2}\\0 & \sin q_{2} & \cos q_{2} & (2+q_{3})\cos q_{2}\\0 & 0 & 0 & 1\end{bmatrix}}$$The structure is worth reading aloud: the orientation is a pure rotation $R_{x}(q_{2})$, the $x$ coordinate of the tip is the two fixed unit links plus the first stroke, and the remaining two coordinates are the second link swung round a circle of radius $2+q_{3}$.
Check the transform at two poses that can be read straight off the drawing. At the rest pose $q=(0,0,0)$ the matrix reduces to the identity rotation with translation $(2,0,2)$ — two units along the arm and two units up, exactly as Figure 1 shows. Turning only the revolute joint to $q_{2}=90^\circ$ moves the tip to $(2,-2,0)$, i.e. the vertical link has swung down into the horizontal plane, which is the physically correct response to a right-handed rotation about $+x_{0}$. Both checks are geometric rather than algebraic, so they would catch a sign error that re-deriving the same algebra would not.
Question 3 — results
Part
Quantity
Result
(a)
axis assignment
Figure 3.1; $z_{0}\parallel z_{1}$ along the arm, $z_{2}$ along the joint-3 stroke