5.1.2. Body Jacobian

This video introduces the body Jacobian, the Jacobian relating joint velocities to the end-effector twist expressed in the body frame (a frame at the end-effector).

In the previous video, we learned how to take the joint screw axes S_1 to S_n, defined in the space frame {s} when the robot is at the zero configuration, and transform them to the n columns of the space Jacobian at any arbitrary joint configuration theta. In this video, we construct the 6 by n body Jacobian J_b from the screw axes B_1 to B_n, expressed in the end-effector frame {b}. The body Jacobian transforms joint velocities to the body twist.

To derive the body Jacobian J_b, let's use the 5R arm from the previous video as an example. To derive J_b, we need to define the end-effector frame {b}, but we don't need an {s} frame. J_b has five columns, one for each joint, and in this video we will focus on J_b3, the third column, corresponding to the end-effector twist when joint 3 moves with unit velocity.

First we set all joint angles equal to zero. At this configuration, J_b3 is just B_3, the screw axis of joint 3 expressed in the {b} frame when the arm is at its zero configuration.

Now we rotate joint 1. Notice that this rotation of joint 1 does not change the relationship between joint 3 and the {b} frame, so J_b3 is still equal to B_3.

Now we rotate joint 2. Again, the relationship between joint 3 and the {b} frame is unaffected by joint 2's motion, so J_b3 is still equal to B_3.

Now we rotate joint 3. As with joints 1 and 2, J_b3 is unaffected by joint 3's motion.

Now we rotate joint 4 by theta_4. This motion changes the configuration of joint 3 relative to the {b} frame, so J_b3 changes. We define the frame {b-double-prime} to be the {b} frame before joint 4 is rotated, and the frame {b-prime} to be the {b} frame after joint 4 is rotated. The relationship between the two is given by T_b-double-prime_b-prime equals e to the bracket B_4 times theta_4. We define the {b-double-prime} frame because the screw axis for joint 3 is just B_3 in this frame.

Finally, we rotate joint 5 by theta_5, giving us the final end-effector frame {b}, obtained by rotating the frame {b-prime} about the joint 5 screw axis by theta_5. To find the {b} frame relative to the {b-double-prime} frame, we postmultiply T-b-double-prime-b-prime by the body-frame transformation corresponding to rotation about the body screw axis B_5, giving us the equation shown here. What we really want, though, is the configuration of the {b-double-prime} frame relative to the {b} frame, so we reverse the subscripts, which is the same as taking the inverse of the transformation matrix. Making use of the fact that the inverse of A times B, where A and B are invertible matrices, is just B-inverse times A-inverse, we can rewrite T_b_b-double-prime in this form.

Since the screw axis of joint 3 is just B_3 in the {b-double-prime} frame, to find J_b3 we just need to use our rule for changing the frame of reference of a twist. The final expression for the J_b3 column depends on the screw axis for joint 3 as well as the joint angles and screw axes for joints 4 and 5.

The same reasoning applies for any joint, so we can generalize to this definition of the body Jacobian J_b. The last column of the body Jacobian is just the screw axis B_n when the robot is at its zero configuration. It does not depend on the joint positions, because no joint is between joint n and the {b} frame. Any other column i of the body Jacobian is given by the screw axis B_i premultiplied by the transformation that expresses the screw axis in the {b} frame for arbitrary joint positions. You can see that J_b1 depends on the positions of joints 2 through n, J_b2 depends on the positions of joints 3 through n, etcetera. You can also see that the body Jacobian is independent of the choice of the space frame {s}.

Since each column of a Jacobian is a twist, we can use our rule for representing a twist in a different frame to translate between the space Jacobian J_s and the body Jacobian J_b. J_b is obtained from J_s by the matrix adjoint of T_bs, and J_s is obtained from J_b by the matrix adjoint of T_sb.

In the next video we will see that the Jacobian is used not only to convert joint velocities to end-effector twists, but also to understand how end-effector wrenches are related to torques and forces at the joints.