RVC3-MATLAB icon indicating copy to clipboard operation
RVC3-MATLAB copied to clipboard

Possible wrong definition of analytical Jacobian

Open mrkjankovic opened this issue 5 months ago • 0 comments

Errors in books are a nightmare for the readers and the authors! If you spot something that is wrong, or something could be improved (clearer, less confusing, less ambiguous) please log it here. This will help fellow readers of the book, and will improve future editions of the book.

Where is the error? On page 334 of the book the analytical Jacobian is defined (using MATLAB's notation) as: J_a = [eye(3), zeros(3); zeros(3) inv(A)] * J where J is the geometric Jacobian. Moreover on the same page the code for computing the analytical Jacobian is defined as: Ja = [ones(3) zeros(3); zeros(3) inv(A)] * J

What is the error? The possible errors in my view are two:

  1. Considering that within the book the geometric Jacobian is defined as J = [J_o; J_p], with J_o being the matrix relating the contribution of the joint velocities to the end-effector angular velocity and J_p being the matrix relating the contribution of the joint velocities to the end-effector linear velocity (due to the fact that the v_o_e = [w_x, w_y, w_z, v_x, v_y, v_z]), the analytical Jacobian should in my view be defined (using MATLAB's notation) as: J_a = [inv(A), zeros(3); zeros(3), eye(3)] * J.
  2. With this in mind the code for computing the analytical Jacobian should replace ones(3) with eye(3) and should reflect the changed formulation, as outlined above.

mrkjankovic avatar Jun 19 '25 10:06 mrkjankovic