Corrections and improvements to Mechanics of Robotic Manipulation,
2001, as of December 2, 2019.
Thanks to Yan-Bin Jia, Jeff Trinkle, Kevin Lynch, Ed Clarke, Alberto
Rodriguez, Dimitris Kanoulas, Shuang Su, and Alex LaGrassa for these
corrections. Please email any additional corrections and suggestions
to matt.mason@cs.cmu.edu.
Paqe 12. Equation in top line should read
d(D_1, D_2) = \max \{ d(D_1(x_i), D_2(x_i)) \}$
Page 14. There is a misleading remark in the proof of Theorem 2.2.
It suggests that changing the order of the decomposition would yield
the same translation and a different rotation, which is wrong.
You generally get a different translation but the same rotation.
The book defines an alternative decomposition, but note that S is
*not* a rotation about the given O, it is a rotation about D(O).
Matrix representation is useful here. although it isn't introduced
until later in the book. Define T and R as in the book. Let the
rotation R be represented as a rotation matrix, and let T be the
translation mapping x to x+t. That is, t is the vector from O to
O^\prime. Now define U to be a displacement U = R^{-1} \circ D. Then
we have the desired decomposition
D = R \circ U
provided we can show that U is a translation. Substituting for D
in the definition of U we obtain
U = R^{-1} \circ T \circ R.
Writing it out using matrix representation we get
U(x) = R^{-1} (t + Rx)
= R^{-1}t + R^{-1}Rx
= R^{-1}t + x
Showing that that U is indeed a translation, different from but
related to T.
Page 18. 5th line from bottom: "instant instant" ==> "instant"
Page 30. The analysis of the unicycle would be clearer if we add that
the set of possible motions of the unicycle may be described as
\dot q = v \vv g_1 + \omega \vv g_2, where v and \omega are arbitrary reals.
Page 38. Exercise 2.3 is often misinterpreted and should be
clarified. It says a sequence of three rotations, and that is
precisely what you should construct: three discrete rotations. Do
*not* plan three motions that the robot could actually execute.
Imagine the robot is so stupid that it doesn't know wheels won't go
sideways. So the robot plans three motions, and each motion is a
rotation about a single rotation center. Incidentally, when you have
a sequence of discrete rotations as in this example, the centrode is
not a smooth curve. Rather it is a sequence of points, which you may
join with straight edges to form the \emph{central polygon}. So in
fact the moving and fixed centrodes in this exercise are both
triangles. The answer to the question at the end of the exercise, is,
of course, that the robot cannot really do these rotations because
wheels do not slip.
Page 53. Equation 3.70. 1 + cos theta/2 should be in parens, and
1 - cos theta/2 should too.
Page 57 and 58. E^4 should be set in bold roman rather than math italic.
Page 66. The formula s cross s0 / s.s follows very easily from the
formula for plucker coordinates q cross q0 / q.q. Unfortunately the
plucker coordinate formula does not appear in the text, but it is
easily derived. q0 = r x q where r is on the line. q cross ( r x q )
= q.q r - q.r q. If r is closest to origin, then vector r is perp to
the line, and q.r is 0. so q cross q0 / q.q = r.
Page 69. Equation 3.150, and first line of text after equation 3.152.
u should have a hat.
Page 97. Fifth line from bottom. "twist" ==> "wrench"
Page 110. Line 6 of section 5.7. n ==> n_z
Page 116. Figure 5.19. There should be an equals sign between the
two lower arrangements involving five points. Add a remark in the
text and bibliographic entry, referring to Chandler Davis, "Theory of
Positive Linear Dependence", American Journal of Mathematics, v76 n4,
October 1954, pp 733-746.
Page 118. Exercise 5.3. Change last line to "In each case show the
labelled regions and the line of action of one of the possible
resultant wrenches."
Page 119. Exercise 5.7 is too difficult to do by hand. It is
feasible if the locus of force duals, the zigzag locus, is given.
See the file http://www.cs.cmu.edu/~mason/Problem1skeleton2.pdf.
Page 122. Figure 6.1. Change f_f to f_t, both on the drawing and the
graph axis label.
Page 126. Last line of page, insert ", so that $\vv p_c = (p_{ct}, p_{cn})"
Page 140. Exercise 6.3. Both contacts are frictionless.
Page 150. Figure 7.5. x_r ==> x_{IC}
Pages 157--161. Section "Computing stable push motions". The argument in
this section is not compelling. See the paper by Lynch and myself (1996).
Page 165. Bottom of page. s(theta) ==> push(theta)
Page 193. "intertia" ==> "inertia"
Page 199. Equation 8.110. There is a missing \dot\theta.