Stable Pushing Implementation
Kevin Lynch and Costa Nikou
We have developed a planner that finds stable pushing plans to move an
object from one place to another. A graphical user interface (GUI)
makes it easy to specify problems for the push planner and to display
the results of the planner. The output of the planner can be dumped
to the Adept 550 robot in our lab to execute the plan in the real
world.
The code for the planner (in C) and the GUI
(in Tcl/Tk) is available online.
You can experiment with a WWW implementation of the planner
here.
This is a shot of our Adept executing a pushing plan found by the planner.
This is a screen shot of the GUI and a problem specification. The
object to be manipulated is the pentagon. The top, red pentagon is
the start position, and the bottom, green pentagon is the goal
position. In this example, the object can only be pushed on the two
horizontal edges. We performed a mechanics analysis to determine sets
of pushing directions that are guaranteed to keep the object fixed to
the pusher. By using only these pushing directions, the plan can be
executed without sensing.
The push planner is a modification of a planner for car-like robots
due to Barraquand and Latombe. After 30 seconds running time on a
Sparc 20, the planner finds the following path.
The planner is not exact, as it only finds a path to a goal region.
In this example, the plan minimizes the number of contact changes
necessary.
Go to my home page
or the Manipulation Lab home page.
lynch@ri.cmu.edu