Stable Pushing
Kevin Lynch
For planar manipulation problems, pushing provides an option
for robots lacking the size, strength, or dexterity to grasp
and carry an object. For example, it is usually easier to
push a couch into position than to grasp and lift it.
Unfortunately, the motion of a pushed object is usually unpredictable
due to an uncertain distribution of support forces. With multiple
contact points between the pusher and the slider, however, it is
possible to find pushing directions that cause the object to remain
fixed to the manipulator. These are called stable pushing
directions. These stable pushing directions can be used to find
pushing plans to maneuver objects among obstacles. The stable pushing
directions amount to a set of nonholonomic inequality constraints.
Our focus has been on stable pushing with line contact. Given the
geometry of a polygonal part, its center of mass (strictly, its center
of friction), a set of pushing edges, and the friction coefficient
at the pushing edges, we first calculate the set of stable pushing
directions. These stable pushes are then used to automatically
find a pushing sequence to move the object to a goal position.
An example plan is shown below.

A pushing plan using only two pushing edges.
The plans are implemented on an Adept 550 robot. The planner's
graphical user interface, and the automatic programming of the Adept
robot, was done by Costa Nikou.
This work was done at the Robotics Institute, Carnegie Mellon
University. More information can be found at the sites below.
- Abstracts and postscript versions of papers on
pushing and
parts feeding using pushing.
- Stable pushing web demo,
created by Costa Nikou. This site contains more information about
the mechanics analysis and the planner, along with a demo that allows
you to experiment with the planner.
- A description of the planner's
graphical user interface, the implementation on the robot, and
a download page for the planner and GUI.
Go to Kevin Lynch's home page,
the Laboratory for Intelligent Mechanical
Systems at Northwestern,
or the Carnegie Mellon
Manipulation Lab home page.