Kinematics
We model robots as tree-like structures with a collection of rigid links, connected via joints.
Joints
A joint allows a relative motion between the two links it interconnects, and is often modelled as either a revolute or prismatic joint. A revolute joint allows a relative rotation between the two links, while a prismatic joint allows a relative translation.
Forward Kinematics
The position of any link can be computed by the forward kinematics of the robot, which is a function of the joint angles. The forward kinematics for a serial chain robot is given by:
where is the homogeneous transformation matrix from frame to frame along the robot's kinematic chain. Note, the forward kinematics of a non-serial chain robot is non-trivial to compute using the above equation but it must be ensured that the correct path is taken from the source to the target link in the kinematic chain.
Jacobian
The jacobian is a matrix which gives the relationship between the joint velocities and the linear and angular velocity of the robots end effector/point of interest.
We can split the jacobian two parts, the linear velocity jacobian and the angular velocity jacobian:
with
where and are the linear and angular velocity of the end effector/point of interest respectively, and are the linear and angular velocity jacobians respectively, and is the joint velocity vector.
Computing the Jacobian
Computing the Jacobian is relatively simple, each column is related to a joint, the entries of the column depend on whether the joint is prismatic or revolute: