200 likes | 288 Views
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
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