Contact: Peter Allen<allen@cs.columbia.edu>
A set of primitive manipulations is defined, encompassing six fundamentally different techniques. Each manipulation defines a basic translation or rotation of an object with either circular or rectangular cross section and can be performed with a number of different grasp configurations. Taken together, the set of primitives enables the hand to rotate or translate objects in any direction in an object-centered frame. Defining basic strategies, an analog to motor control programs, simplifies the planning requirements of a robot system. Once a high-level planner has decided that a particular object motion is required, the action is performed autonomously. Manipulations are parametrized to cope with different task requirements, including grasp force, motion distance, and speed. It is assumed that the tasks are performed slowly enough to require quasistatic analysis, that the objects are rigid (though a precise object model is not required), and that force and position control are available. The elements of the tasks are: (1) a description of fingertip trajectories, (2) an analysis of the hand's workspace, (3) a method of maintaining grasp stability during manipulation, for which hybrid force/position control is used for task partitioning. Trajectories define the finger contact motions during manipulation. A hand's workspace is generally complex and does not admit a closed-form solution. For object manipulation, allowable fingertip trajectories for all contacts must be found simultaneously. A configuration-space analysis is performed that yields the maximum object motion distance for given sized objects, as well as the initial grasping positions and wrist positions in a global frame. This information is required to position the robot arm for maximum object manipulability, that is, to move it during the reach phase of a manipulation. Task partitioning, the specification of force- and position-controlled directions, simplifies the maintenance of grasp forces during manipulation and often yields a straightforward method to control the external object forces.
A number of experiments have been performed with a Utah/MIT hand system. In addition to the elementary tasks (2-D translations and rotations), complex tasks involving sequential manipulations (for example, removing the top of a child-proof bottle and rotating a rectangular block) have been analyzed. These complex tasks often involve extending the elementary motor-control programs to include task-specific requirements and suggest limits to the generalizability of such motor control programs.
Click for an mpeg video of our experiment WARNING!!! the video is 4880128 bytes long so you may have to wait a while...