The most fundamental question you can ask about a robot is, "Where is it?"

The answer to this question is the robot's configuration, which is a specification of

the positions of all the points of the robot.

In this book, robots are constructed of rigid bodies, like this one.

We often call these rigid bodies links.

These links are connected together by joints, like this revolute joint of my tinkertoy robot.

Since the links are rigid and have a constant shape, we typically only need a few numbers

to represent the configuration of a robot.

Compare to trying to represent the configuration of this pillow, which can be deformed in a

wide variety of ways.

Some robots, called soft robots, are like this pillow, but we don't cover soft bodies

in this book.

So, the configuration of a robot is a representation of the positions of all the points of the

robot.

The configuration space, which we often call the C-space for short, is the space of all

configurations of the robot.

The number of degrees of freedom is the dimension of the C-space, or the minimum number of real

numbers you need to represent the configuration.

As an example, this two-joint tinkertoy robot has two degrees of freedom, given by the angles

of the two joints.

I can visualize the angle of joint 2 as a point on a circle, and the angle of joint

1 as a point on another circle.

To visualize the full C-space, let's rotate the circle for joint 1 to be perpendicular

to the circle for joint 2.

At each angle of joint 1, there is a circle of possible joint angles for joint 2, so I

can replicate the joint 2 circle at every angle of joint 1.

Therefore, the C-space of the two-joint robot can be visualized as the two-dimensional surface

of a torus.

Now, for every configuration of the robot, there is a unique point on the torus, and

for every point on the torus, there is a unique configuration of the robot.

As I mentioned earlier, the dimension of a robot's C-space is the number of degrees of

freedom.

Since a robot consists of rigid bodies, the number of degrees of freedom of a robot depends

on the number of degrees of freedom of a rigid body.

A rigid body in three-dimensional space has 6 degrees of freedom, but how do we determine

that?

First, let's choose the position of one point on the body; let's call that point A. The

x-y-z coordinates of point A are three numbers.

Next, we can choose the x-y-z coordinates of a second point B. But because this is a

rigid body, we can't choose the three coordinates arbitrarily; B's constant distance to point

A places one constraint on its location.

The point B has to be somewhere on the surface of a sphere centered at A, and we only need

two numbers to represent a point on a sphere, like latitude and longitude.

Now that we've fixed points A and B, there are two constraints on point C: it has to

be on the circle at the intersection of spheres centered at A and B.

We only need one number to specify a point on a circle.

Once we've fixed the location of points A, B, and C, provided they are not all on the

same line, the body is fixed in space.

Therefore, a rigid body has six degrees of freedom: three to specify the location of

point A, two to specify point B, and one to specify point C.

To summarize, let's count, for each point on the body, the number of coordinates, the

number of constraints on those coordinates, and therefore the number of real freedoms

in choosing each point.

Point A has three coordinates, and no constraints on how we choose them.

Point B has three coordinates, but they are subject to one constraint, so we only have

two real freedoms.

Point C has three coordinates, but they are subject to two constraints, so there is only

one real freedom.

All other points have three coordinates but are subject to three independent constraints,

so there are no further freedoms.

Thus a rigid body in space has six total degrees of freedom, three of which are linear, or

x-y-z, and three of which are angles, sometimes called roll, pitch, and yaw.

We could use the same process to learn that a rigid body in a two-dimensional plane has

three degrees of freedom, two of which are linear and one of which is an angle.

We could even study a rigid body in four-dimensional space, and learn that it has ten degrees of

freedom, four of which are linear and six of which are angles.

We can summarize what we've learned in this video with the following general rule, which

holds for any system, not just rigid bodies: The dimension of the C-space, or the number

of degrees of freedom, equals the sum of the freedoms of the points minus the number of

independent constraints acting on those points.

Since our robots are made of rigid bodies, we can express the number of degrees of freedom

more simply as the sum of the freedoms of the bodies minus the number of independent

constraints acting on the bodies.

As an example, we can take the 6-degree-of-freedom spatial body and turn it into a 3-degree-of-freedom

planar body by adding the three constraints that the z-coordinates of points A, B, and

C are all equal to zero.

In the next video we will use what we've learned to understand the number of degrees of freedom

of a general mechanism.