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.