200 likes | 303 Vues
This presentation outlines a sensorless method for orienting polygonal parts using a revolutionary algorithm. The algorithm covers precise motion planning, compliant motion planning, and open-loop, sensorless techniques for part feeders. Previous works, assumptions, definitions, and the detailed algorithm are explained. Further, the correctness, completeness, and complexity of the algorithm are discussed along with practical considerations and future improvements.
E N D
Orienting Polygonal Parts without Sensors Kenneth Y. Goldberg Presented by Alan Chen
Outline • Background • Assumptions • Algorithm: Grasper • Push – Grasp • Proof • Discussion/Conclusion
Part Feeder • Hardware vs. Software • Redesigned vs. Reprogrammed • No sensors
Exact motion planning Compliant motion planning Open loop, sensorless Corner example Preimage backchaining Mechanical part feeders Vibrations Bowl feeder Bad for fragile parts Previous Work • Fence • Grasper/Pusher
Grasper • Squeeze action • No sensors
Assumptions • All motions in plane and inertial forces are negligible • Gripper consists of two parallel linear jaws • Gripper motion orthogonal to jaws • Convex hull treated as rigid planar polygon • Part is isolated • Part’s initial position is constrained within jaws • * Jaws make contact simultaneously • Once contact made, surfaces remain in contact • Zero friction between part and jaws
Q Definitions • Diameter function q s() • Squeeze function
Symmetry • S(q+T) = s(q)+T; T period • T= 2p / r(1+(r mod 2)) • r - rotational symmetry • r = 1 T = p: no symmetry • r = 3 T = p/3: equilateral triangle • r = 4 T = p/2: square
Parts Feeding Problem • “Given a list of n vertices describing the convex hull of a polygonal part, find the shortest sequence of squeeze actions guaranteed to orient the part up to symmetry.” (Goldberg, 11)
Algorithm • Compute the squeeze function • Find widest step in the squeeze function and set Q1 = corresponding s-interval • While there exists |s(Q)| < |Qi| • Set Qi+1 = widest s-interval • Increment i • Return the list (Q1,Q2…) • Continue until |Qi| = T
a=atan2(3,2) a 2 3 s() = = = 0 +a +a 3/2 3/2 2-a 2-a 0 0 -a -a a a a a
Given plans Recovering the Plan for j between 1 ~ A plan
s() Q1 Q2
Push-Grasp vs Grasp • Jaws do not contact simultaneously • Radius function • Push function
Correctness • Plan will orient the part up to symmetry • r2 = (a1,a2) • No shorter plan orients up to symmetry Compare plans rj’ vs ri where j < i |Qj’| > |Qj| Algorithm |Q1’| < |Q1| |Qk’| < |Qk| & |Qk+1’| > |Qk+1| Cannot happen so no shorter plan
Completeness Theorem – For any polygonal part, we can always find a plan to orient the part up to symmetry h – measure of some s-interval
Complexity • For a polygon of n sides, the algorithm runs in time O(n2 log n) and finds plans of length O(n2) • Compute squeeze function in O(n) • Step 2 takes O(n) time • Squeeze function defines O(n2) s-intervals • Traverse list once I is O(n2) • Sorting O(n2 log n)
Discussions • Plan verified experimentally • Carnegie Mellon University using a PUMA robot w/ electric LORD Co. gripper • USC using an IBM robot w/ pneumatic Robotics and Automation Corp. gripper • Occasionally failed: not enough pushing distance • Practicality • Feed rate: i actions with 1 gripper vs. i grippers performing 1 action • 1 D.O.F. not constrained • Limited to flat 2-D polygons • Working on curved edges • 3-D orient the part so its sitting on its most stable face before grasping
Conclusions • Algorithm that rapidly analyzes part geometry • Sensorless and easily reprogrammable • Complete and correct • Not practical for industry