In this section, we're going to review the study of kinematics, which is related to the motion of bodies. This is distinct from dynamics, because we don't consider the forces that cause the accelerations of these bodies. First, we define the phrase degrees of freedom. These are the number of parameters that fully define the system in its space. A rigid body and ambient space has six degrees of freedom. Typically, they are x, y, and z, which are three positions, and roll, pitch, and yaw, which are three angles. In this figure, we see a plane who's degrees of freedom have been highlighted in the typical convention. In robotics, we're interested in both active degrees of freedom, which are explicitly controlled by actuators, as well as the passive degrees of freedom that are governed by the system's dynamics. Most robots are highly underactuated. This means that the majority of the degrees of freedom are passive and not controlled by the system's actuators. In this video, we see the pendulum robot. The body of the robot has only two degrees of freedom, as it is constrained on a boom. The leg also has two degrees of freedom. One of which, the rotation, is active as it is controlled by the motor. The other is the extension of the leg, which is simply governed by the attached spring. Joints are an example of a holonomic constraint and reduce the number of degrees of freedom of a system. In this video, we see a leg from the minitaur robot demonstrating multiple revolute joints. In this video, we see a similar leg jumping on a linear rail. All of the pin joints in the minitaur leg and the linear rail constrain the attached links to only one degree of freedom. Another example of a joint that has one degree of freedom is a screw even though the translation and rotation are coupled. An example of a two degree of freedom joint in the plane is an idealized wheel spinning on ice. The rotation and translation are completely decoupled. Kutzbach's equation determines the number of degrees of freedom in a planar system. M is the number of degrees of freedom, N is the number of links in the system, J1 is the number of one-degree of freedom joints, and J2 is the number of two-degree of freedom joints. Once solved, if M is equal to zero, the system is fully constrained and can't move. Another class of constraints are called non-holonomic, meaning they cannot be described using the position of the system. These constraints that are not only a function of position can, for example, be a function of velocity. In this video, we see that the car wants to move sideways into the parking spot. However, there's a non-holonomic constraint preventing any lateral velocity. The car can however translate in that direction using a parallel parking manuever. We are now interested in establishing a relationship between the position of the robots end effector, X, in its free space, and all of the machines joint angles, theta. The forward kinematics are when the joint angles are known and the position of the end effector is to be determined. Typically, in robot arms, the joint angles are known as they are instrumented, and so it is of interest to figure out where the end effector will be given a set of joint angles. Inverse kinematics pose the opposite problem where the position of the end effector is known and a joint angles are to be computed. In this video, we see a robot arm doing a welding task. The end effector needs to follow a desired trajectory in ambiance space and so inverse kinematics must be use back out the joint angles. These joint angles are then passed to the machine as desired angles for the motor. Here we see a much simpler revolute-revolute robot arm. The angle between the first link and the base is theta one and the angle between the first link and the second link is theta two. It's important to note that theta two is a relative angle. Since the position of the end effector, X, is a function, F, of the joint angles, theta, calculating F represents the forward kinematics. Some dimensions have been broken out in this image to help solve the problem of forward kinematics. Using the same revolute-revolute arm, if the end effector position is known, inverse kinematics can let us solve for the joint angles. Since the forward kinematics are known, this represents a system of non-linear equations. The inverse kinematics can be found from the forward kinematics by solving a system of equations. Generally, this system of equations is non-linear and can be solved with trigonometric identities. Simpler cases can be solved in MATLAB by making the desired variables symbolic and using the solve function. Solving the inverse kinematics amounts to inverting the system of equations represented by the function F. All the previous linkages that we've considered are serial in that there's only one chain between the ground and the end effector. Parallel mechanisms have multiple chains connecting the end effector to the ground. Solving the kinematics of parallel mechanism is much more difficult than for serial mechanisms. Here we will go over a concrete example using the minitaur leg. In this figure we see the minitaur leg with the motor angles theta one and theta two Illustrated. We would like to solve the forward kinematics and so get a solution for X and Y as a function of theta one and theta two. This task greatly simplified if we use a couple of coordinate changes. The first coordinate change that will be helpful is to go from theta one and theta two to alpha and beta, the mean and different coordinates. Once alpha and beta are computed, a further coordinate change to polar coordinates help solve the problem. We now consider the infinitesimal kinematics for these linkages. This is done by computing the matrix of partial derivatives of the system known as the Jacobian. Here we see the Jacobian, J, computed where the rows represent the system of equations and the columns represent the partial derivatives of the different joint angles. By multiplying the Jacobian by DT over DT and rearranging, we see that the Jacobian describes the relationship between joint velocities and velocities at the end effector. Thanks to the principle of virtual work the Jacobian transpose can be used to relate the forces at the end effector to the torques at the joints. This Jacobian transpose inverse represents the effective mechanical advantage for the system. It scales the torques at the joint into forces at the end effector.