Complete Algorithms for Feeding Polyhedral Parts using Pivot Grasps

Anil Rao, David Kriegman, Ken Goldberg

IEEE Transactions on Robotics and Automation, To appear April, 1996


To rapidly feed industrial parts on an assembly line, Carlisle {\em et.~al.\ } proposed a flexible part feeding system that drops parts on a flat conveyor belt, determines position and orientation of each part with a vision system, and then moves them into a desired orientation~\cite{pivotI93}. When a part is grasped with two hard finger contacts and lifted, it pivots under gravity into a stable configuration. We refer to the sequence of picking up the part, allowing it to pivot, and replacing it on the table as a {\em pivot grasp}. We show that under idealized conditions, a robot arm with 4 degrees of freedom (DoF) can move (feed) parts arbitrarily in 6 DoF using pivot grasps. This paper considers the planning problem: given a polyhedral part shape, coefficient of friction, and a pair of stable configurations as input, find pairs of grasp points that will cause the part to pivot from one stable configuration to the other. For a part with $n$ faces and $m$ stable configurations, we give an $O(m^2 n\log n)$ algorithm to generate the $m \times m$ matrix of pivot grasps. When the part is star shaped, this reduces to $O(m^2 n)$. Since pivot grasps may not exist for some transitions, multiple steps may be needed. Alternatively, we consider the set of grasps where the part pivots to a configuration within a ``capture region'' around the stable configuration; when the part is released, it will tumble to the desired configuration. Both algorithms are complete in that they are guaranteed to find pivot grasps when they exist.