Grasping and Manipulation
Grasping and Manipulation
This video introduces Chapter 12 of “Modern Robotics” on grasping and other types of manipulation. Examples of non-grasping (nonprehensile) manipulation include pushing, carrying a tray of glasses, vibratory transport, and the meter-stick trick. Such manipulation tasks are analyzed based on contact kinematics, contact forces, and rigid-body dynamics. This video also introduces the definitions of the linear span, positive (conical) span, and convex span of a set of vectors, concepts that are commonly used in robot manipulation.
In this chapter we focus on robot manipulation. One example of manipulation is grasping and carrying, and questions we could pose include: "How many fingers are needed to grasp the object firmly?" and "Where should the fingertips be placed?"
We answer these questions in this chapter. Grasping is attractive because, once we have a firm grasp of the object, then it follows the hand exactly, and controlling the motion of the object is as easy as controlling the motion of the hand. But manipulation is much more than just grasping and carrying. Manipulation occurs whenever a robot applies motions or forces to purposefully change the state of an object, and manipulation primitives include pushing, kicking, throwing, tapping, sliding, rolling, pivoting, toppling, and others. These manipulation primitives allowing the robot to manipulate objects too large to be grasped or too heavy to be carried. They also allow a robot to manipulate several objects simultaneously.
To automate planning and execution of robot manipulation, we need an understanding of the mechanics of contact. For example, to plan how to push an object on the floor, the robot should be able to predict whether the object will stay fixed to the pusher, or move relative to it.
The robot should also be able to predict if a pushed object will slide, or if it will topple over.
If a robot waiter carries a tray of glasses, it needs to know the motion constraints that keep the glasses from falling.
Also, a robot that can reason about friction can use vibration to manipulate several sliding parts on a flat plate.
With a good understanding of contact mechanics, we can solve the riddle of the meter stick trick. The center of mass of this stick is at its center. If I support the stick by two fingers, with one finger close to the center of mass, and I move that finger toward the stationary finger, what happens to the stick? Does it fall? No, in fact the stick moves so that the center of mass always stays between the two fingers. You'll be able to predict this behavior using the tools in Chapter 12.
We assume that the objects are rigid bodies. To analyze manipulation of rigid bodies, we need 3 ingredients:
First, contact kinematics tells us how a contact between two rigid bodies constrains the motion of each.
Second, we need a model of forces that can be transmitted through a contact, including frictional forces.
Third, rigid-body dynamics, as we studied in Chapter 8, tells us the relationship between forces and motions of rigid bodies. If motions are slow, then we can assume that velocity and acceleration terms are negligible, and therefore contact forces and gravity forces must balance. This is called the quasistatic assumption.
Chapter 12 focuses on the first two topics, and applies the ideas to several different manipulation problems.
Throughout this chapter, I'll be talking about linear combinations of vectors, so let's define the linear span, positive span, and convex span of a set of vectors.
Let's define A as a set of vectors a_1 through a_j in an n-dimensional space, drawn as arrows emanating from an origin. In the drawing here, the vectors live in a 2-dimensional space. Then the linear span of A is the set of all linear combinations of these vectors. For the three vectors shown here, the linear span is the entire two-dimensional space; any point in the plane can be obtained by a linear combination of these vectors. In fact, any point can be represented as a linear combination of any two of these vectors.
Next we define the positive span, also called the nonnegative span or the conical span. It's defined as the set of all linear combinations where the combination coefficients are nonnegative. All points inside the cone shown can be obtained by a nonnegative linear combination of the vectors. In fact, we could get rid of the vector inside the cone, since it doesn't change the positive span.
Finally, we define the convex span, where the coefficients are all nonnegative and sum to one. The convex span is indicated by the triangle and its interior. Clearly the convex span is a subset of the positive span which is a subset of the linear span.
The following facts will also be useful: The space R^n can be linearly spanned by n vectors, but no fewer, and the space R^n can be positively spanned by n+1 vectors, but no fewer.
In the next video we begin our study of contact kinematics.