Geometric Reasoning About Mechanical Assembly

Slides:



Advertisements
Similar presentations
1 Motion and Manipulation Configuration Space. Outline Motion Planning Configuration Space and Free Space Free Space Structure and Complexity.
Advertisements

Motion Planning for Point Robots CS 659 Kris Hauser.
Activity relationship analysis
Motion Planning CS 6160, Spring 2010 By Gene Peterson 5/4/2010.
1 Computer Graphics Chapter 7 3D Object Modeling.
CS447/ Realistic Rendering -- Solids Modeling -- Introduction to 2D and 3D Computer Graphics.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 9 3D Modeling.
1Notes  Handing assignment 0 back (at the front of the room)  Read the newsgroup!  Planning to put 16mm films on the web soon (possibly tomorrow)
Robot Modeling and the Forward Kinematic Solution ME 4135 Lecture Series 4 Dr. R. Lindeke – Fall 2011.
Geometric reasoning about mechanical assembly By Randall H. Wilson and Jean-Claude Latombe Henrik Tidefelt.
Assembly Planning. Levels of Problems  Parts are assumed free-flying  Assembly sequence planning  Tools/fixtures are taken into account  Entire manipulation.
Geometric Reasoning About Mechanical Assembly By Randall H. Wilson and Jean-Claude Latombe Presented by Salik Syed and Denise Jones.
CS 326 A: Motion Planning Assembly Planning.
Geometric Reasoning About Mechanical Assembly Randall H. Wilson and Jean-Claude Latombe Andreas Edlund Romain Thibaux.
Multi-Arm Manipulation Planning (1994) Yoshihito Koga Jean-Claude Latombe.
Planning Paths for Elastic Objects Under Manipulation Constraints Florent Lamiraux Lydia E. Kavraki Rice University Presented by: Michael Adams.
2003 by Jim X. Chen: Introduction to Modeling Jim X. Chen George Mason University.
A Study on Object Grasp with Multifingered Robot Hand Ying LI, Ph.D. Department of Mechanical Engineering Kagoshima University, Japan.
CS 326 A: Motion Planning Assembly Planning.
Randomized Planning for Short Inspection Paths Tim Danner Lydia E. Kavraki Department of Computer Science Rice University.
Chapter 3 2D AND 3D SPATIAL DATA REPRESENTATIONS 김 정 준.
Complex Model Construction Mortenson Chapter 11 Geometric Modeling
Introduction to Robot Motion Planning. Example A robot arm is to build an assembly from a set of parts. Tasks for the robot: Grasping: position gripper.
1 Single Robot Motion Planning Liang-Jun Zhang COMP Sep 22, 2008.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 O’Rourke Chapter 8 Motion Planning.
Assembly Planning “A Framework for Geometric Reasoning About Tools in Assembly” Randall H. Wilson Presentation by Adit Koolwal & Julie Letchner.
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
Laplacian Surface Editing
Mathematical Fundamentals
An introduction to the finite element method using MATLAB
University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Introduction to computer vision Chapter 2: Image.
11.3 Principle of Virtual Work for a System of Connected Rigid Bodies Method of virtual work most suited for solving equilibrium problems involving a system.
Solid Modeling. Solid Modeling - Polyhedron A polyhedron is a connected mesh of simple planar polygons that encloses a finite amount of space. A polyhedron.
1cs426-winter-2008 Notes  Will add references to splines on web page.
Two Finger Caging of Concave Polygon Peam Pipattanasomporn Advisor: Attawith Sudsang.
Graphs. Graph Definitions A graph G is denoted by G = (V, E) where  V is the set of vertices or nodes of the graph  E is the set of edges or arcs connecting.
Assembly Planning. Levels of Problems  Parts are assumed free-flying  Assembly sequence planning  Tools/fixtures are taken into account  Entire manipulation.
1 Double-Patterning Aware DSA Template Guided Cut Redistribution for Advanced 1-D Gridded Designs Zhi-Wen Lin and Yao-Wen Chang National Taiwan University.
CS552: Computer Graphics Lecture 28: Solid Modeling.
Robotics Chapter 3 – Forward Kinematics
CMPS 3130/6130 Computational Geometry Spring 2017
Math Fundamentals Maths revisit.
Bitmap Image Vectorization using Potrace Algorithm
CSC 421: Algorithm Design & Analysis
CSC 421: Algorithm Design & Analysis
We propose a method which can be used to reduce high dimensional data sets into simplicial complexes with far fewer points which can capture topological.
Transformations contd.
8.7Systems of Linear Equations – Part 1
The minimum cost flow problem
Morphing and Shape Processing
CSC 421: Algorithm Design & Analysis
Introduction A chef takes a knife and slices a carrot in half. What shape results? Depending on the direction of the cut, the resulting shape may resemble.
Direct Manipulator Kinematics
Forging new generations of engineers
Machine Learning Basics
Forging new generations of engineers
CHAPTER 2 FORWARD KINEMATIC 1.
Finding Heuristics Using Abstraction
Craig Schroeder October 26, 2004
CSC4820/6820 Computer Graphics Algorithms Ying Zhu Georgia State University Transformations.
Computer Aided Engineering Design
Forging new generations of engineers
Algorithms for Budget-Constrained Survivable Topology Design
Criticality-Based Motion Planning (2)
CSC 421: Algorithm Design & Analysis
CSC 421: Algorithm Design & Analysis
Mathematics Vectors a b c LabRat Scientific © 2019.
Chapter 4 . Trajectory planning and Inverse kinematics
For Friday Read chapter 9, sections 2-3 No homework
Linear Constrained Optimization
Presentation transcript:

Geometric Reasoning About Mechanical Assembly By Randall H. Wilson and Jean-Claude Latombe Presented by Salik Syed and Denise Jones

Goals and uses of Assembly Planning Understand how objects are assembled, and their complexity. Can be used to guide designers and engineers to create more efficient products by allowing them to understand service and manufacturing costs at design time.

Generalized Motion Planning approach We can look at this as a general Motion planning problem. Problems: Complicated planning Key issues such as grasping are not known We don't know what the manipulator will be. We can instead use a “Virtual Manipulation system”

Hierarchical approach Instead we can abstract the notion of manipulators into a “virtual manipulation system”. Solve a succession of simplified but increasingly more realistic planning problems. Different levels of abstraction Free flying objects then at lower levels abstractions of different grippers/machines introduced The paper assumes the most simplified manipulation system (all objects are free flying)

Assembly Tree

Criticality based decomposition The space is divided based on criticalities of the translational freedoms of part pairs This is done using the notion of a “Non-Directional Blocking Graph”

Directional Blocking Graph of a Simple Assembly (translation only)

Non Directional Blocking Graph Unit Circle S1 represents directions Regions are determined by comparing the local freedoms of two parts. Every such region is regular : in the sense that the Directional Blocking graph remains constant when d varies over it. Denoted as G(R,A) A B Each region has a DBG associated with it. C D

The NDGB We can look at the complete NDGB of an assembly as an implicit representation of the set of all possible assembly algorithms. However, these algorithms may or may not be correct given accessibility constraints

Work backwards from assembled state when generating NDGB Goal state generally more constrained than initial configuration.... contacts in goal can be used to filter out impossible motions

Generating Algorithms NDGB is used to determine candidate algorithms and candidate portions The set of all candidate portions is computed in O(r^2u) time where r is the number of pairs of parts and u is the number of candidate partitioning Generating a candidate algorithm takes O(r^2n) time where n is the number of parts in an assembly.

Calculating DBG for Adjacent Regular Regions Simple way to optimize calculating adjacent regions. Start by computing G(R1) To generate G(R2) Take each contact edge in G(R1) that is parallel to D (Ek ). (where D is the diameter of S1 that ends at R2) If the inner product of any direction in R1 and the outgoing normal to Pi in Ek is strictly positive then retract 1 from the weight of the arc connecting Pi to Pj

Visual Note : If R1 is a singleton, then we ADD rather than Subtract weights S1: A R1 B R2 Normal dot D is positive for all D in R1 R2 R1 DGB(R1): DGB(R2): A B A B

Problems with using only infinitesimal translations Doesn't guarantee accessibility Doesn't allow rotational motions There may be times when a translation is not possible but a rotation is: Assembly cannot be decomposed into translations. The set of translational DBGs cannot be represented discretely

Infinitesimal generalized motions Extension from 2d to 3d: Partition S2 rather than S1 (translation in 3d) To extend this to general motion we must use 6D vectors. Regions are now partitions of S5. S1 S2 S5 (ish?)

Generalized motion dX = (dx,dy,dz,da,dβ,dץ( Motion of Vertex V of Pi is JvdX Where Jv Is the Jacobian of transform that gives coordinates of V in the frame of Pj NF JvdX ≥ 0 if the face does not intersect. NF JvdX = 0 defines a 5D hyperplane in 6D space. These planes define the boundaries of our regions. A1 A2 A3 A4 A5 A6 B1 B2 B3 B4 B5 B6 C1 C2 C3 C4 C5 C6 dX JvdX JvdX In this case NF JvdX<0 NF

Addressing Accessibility A new variant of the NDGB : Analyzes interferences for a family of non-infinitesimal motions (infinite translation) Two parts A,B (may or not be touching)... B blocks the “infinite translation” of A if the swept volume of A along d Important because the swept volume guarantees accessibility, while infinite translation does not. Set of direction where A is blocked is where Minkowski difference of A,B blocks origin. D A A A A A A A A A A A A A A A A A A A A A B B

Further Extensions Each NDGB is defined for a limited family of motions and describes only the class of assembly algorithms for these motions. One can imagine other NDBGs (for instance moving K+1 assemblies together simultaneously) This can be represented by the partitioning of S^3m-1 (3 directions for translation)

Computation time A singleton occurs only when 5 hyperplanes intersect, this means the arrangement contains O(K^5) regions where K is number of vertices Constructed in O(K^5) time using a mutli- dimensional topological sweep (?) DBG build in O(K) time, Crossing rule can be used to make NDBG in O(RK^5) time. Where is R is O(N^2) (number of pairs of contacts)

Results from Testing Not good Good

Assess Complexity

Complexity Admissibility : Admits at least one correct assembly algorithm Monotonicity : Each of its instructions merges a moved set into a complete subassembly P-handed: require P + 1 hands (includes one stabilizing hand) Prismatic : Extended translation Linearizable Minimal Length Algorithm Stack product: 1-prismatic, 1-handed, monotonic product that admits an algorithm where all instructions specify translation in the same direction. Number of Fingers

Form closure of order q prevents up to q+1 parts from moving. Number of Fingers Fingers are used to grasp and fix objects within a set from moving relative to each other Form closure if no element in the grasped set can move in any direction Form closure of order q prevents up to q+1 parts from moving.

Conclusion Automatically generate assembly algorithms Construct NDBGs by analyzing blocking relationships Determine the complexity of the algorithm to assess feasibility

The End!