LEDAS Solutions for Mechanical System Modeling and Related Problems Egor Ermolin (LEDAS)

Slides:



Advertisements
Similar presentations
Real-Time Game Physics
Advertisements

Chapter 4.2 Collision Detection and Resolution. 2 Collision Detection Complicated for two reasons 1. Geometry is typically very complex, potentially requiring.
Product Configurator for Marketing to Manufacturing design automation.
Collision Detection CSCE /60 What is Collision Detection?  Given two geometric objects, determine if they overlap.  Typically, at least one of.
Collision Detection and Resolution Zhi Yuan Course: Introduction to Game Development 11/28/
Geometry Primer Lines and rays Planes Spheres Frustums Triangles Polygon Polyhedron.
3.2. I NTRODUCTION TO R EAL - TIME P HYSICS Overview of core principles behind real-time physics systems.
Manipulator Dynamics Amirkabir University of Technology Computer Engineering & Information Technology Department.
Week 14 - Monday.  What did we talk about last time?  Bounding volume/bounding volume intersections.
LECTURE 3 Geometric Modelling
Dynamics of Articulated Robots Kris Hauser CS B659: Principles of Intelligent Robot Motion Spring 2013.
T-FLEX Dynamics is a general- purpose motion simulation add- on application for studying the physics-based motion behavior of a CAD design without leaving.
1Notes  Reference  Witkin and Baraff, “Physically Based Modelling” course, SIGGRAPH 2001  Link on the course website.
SolidWorks Simulation. Dassault Systemes 3 – D and PLM software PLM - Product Lifecycle Management Building models on Computer Engineering Analysis and.
Chapter 4.2 Collision Detection and Resolution. 2 Collision Detection Complicated for two reasons 1. Geometry is typically very complex, potentially requiring.
Parallel Decomposition-based Contact Response Fehmi Cirak California Institute of Technology.
1 Geometry A line in 3D space is represented by  S is a point on the line, and V is the direction along which the line runs  Any point P on the line.
Adapted from: CULLIDE: Interactive Collision Detection Between Complex Models in Large Environments using Graphics Hardware Naga K. Govindaraju, Stephane.
UNC Chapel Hill S. Redon - M. C. Lin Rigid body dynamics II Solving the dynamics problems.
OBBTree: A Hierarchical Structure for Rapid Interference Detection Gottschalk, M. C. Lin and D. ManochaM. C. LinD. Manocha Department of Computer Science,
Manipulator Dynamics Amirkabir University of Technology Computer Engineering & Information Technology Department.
Haptic Cloth Rendering 6th Dutch-Belgian Haptics Meeting TUDelft, 21 st June 2006 Lode Vanacken Expertise centre for Digital Media (EDM) Hasselt University.
Introduction What is this ? What is this ? This project is a part of a scientific research in machine learning, whose objective is to develop a system,
Single Point of Contact Manipulation of Unknown Objects Stuart Anderson Advisor: Reid Simmons School of Computer Science Carnegie Mellon University.
1 Numerical geometry of non-rigid shapes Non-Euclidean Embedding Non-Euclidean Embedding Lecture 6 © Alexander & Michael Bronstein tosca.cs.technion.ac.il/book.
Collision Detection CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2004.
Collision Detection David Johnson Cs6360 – Virtual Reality.
Computer graphics & visualization Collision Detection – Narrow Phase.
3.7. O THER G AME P HYSICS A PPROACHES Overview of other game engine physics approaches.
CS 4730 Physical Simulation CS 4730 – Computer Game Design.
Introduction to virtual engineering László Horváth Budapest Tech John von Neumann Faculty of Informatics Institute of Intelligent Engineering.
Spring Topic Outline for Physics 1 Spring 2011.
Lecture VII Rigid Body Dynamics CS274: Computer Animation and Simulation.
CSI315 Web Technology and Applications
Goal: Understand the stages in design process and the role of computer aided design. Objectives: After this chapter, you should understand the following.
CSE 380 – Computer Game Programming Box2D Box2D TestBed.
CSE 381 – Advanced Game Programming Quickhull and GJK.
Collision handling: detection and response
Spring Rigid Body Simulation. Spring Contents Unconstrained Collision Contact Resting Contact.
3D Graphics for Game Programming Chapter XII Physics-based Simulation.
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Collisions & Contact.
DELMIA DPM Assembly This is the Master “Presentation title” page. Type the title of your presentation in the "Presentation title” field. Cette page est.
© 2011 Autodesk Freely licensed for use by educational institutions. Reuse and changes require a note indicating that content has been modified from the.
Developing An Educational Rigid Body Dynamics Physics Engine By Neal Milstein.
Introduction to Design Engineer Analysis
Image courtesy of National Optical Astronomy Observatory, operated by the Association of Universities for Research in Astronomy, under cooperative agreement.
Chipmunk Physics Remember that we talked about this a bit when we did collision handlers for the space ship integration task (SpritesActionsPhysicsSound).
Spring Rigid Body Simulation. Spring Contents Unconstrained Collision Contact Resting Contact.
Geometric Modelling 2 INFO410 & INFO350 S Jack Pinches
Computer Game Design and Development
CS274 Spring 01 Lecture 7 Copyright © Mark Meyer Lecture VII Rigid Body Dynamics CS274: Computer Animation and Simulation.
Lecture 6 - Single Variable Problems & Systems of Equations CVEN 302 June 14, 2002.
New Product Development Page 1 Teddy Concurrent Engineering by Teddy Sjafrizal.
Advanced Games Development Game Physics CO2301 Games Development 1 Week 19.
Havok Xtra Training
Concepts for Programming a Rigid Body Physics Engine Part 2 Presented by Scott Hawkins.
Physically Based Simulations For Games
2D Simulation of Rigid Bodies
Collision Detection Spring 2004.
3.7. Other Game Physics Approaches
Chapter 4.2 Collision Detection and Resolution
Handling of Resting Contact
Manipulator Dynamics 2 Instructor: Jacob Rosen
GENERAL VIEW OF KRATOS MULTIPHYSICS
Motion in Real and Virtual Worlds
Computer Animation Algorithms and Techniques
Collision Detection.
Advanced Games Development Game Physics
GPAT – Chapter 7 Physics.
Presentation transcript:

LEDAS Solutions for Mechanical System Modeling and Related Problems Egor Ermolin (LEDAS)

10 April 2008SBRAS/ Intel GeometrySeminar 2 | 42 Agenda LEDAS Company LEDAS Phoenix and Related Projects: –History Mechanical simulation engine –Functionality –Architecture: Dynamic Engine, Collision Detection, Collision Resolution Impulse-based Collision Resolution Geometry: –Calculation of Dynamic Properties –Effective Collision Detection –Narrowing broad phase Demos Key Features Development Perspective

10 April 2008SBRAS/ Intel GeometrySeminar 3 | 42 LEDAS Company Positioning Mission Competence Customers Isicad-2008

10 April 2008SBRAS/ Intel GeometrySeminar 4 | 42 Positioning of LEDAS LEDAS Ltd. is an independent software development company founded in 1999 in Novosibirsk, Russia Using proprietary mathematical technologies, LEDAS provides computational components and services for software development companies in the fields of PLM (including CAD, CAM, CAE, PDM) and ERP The company also provides services for manufacturers: –Custom application development, integration & localization –Creation of 3D models using different CAD systems –Consulting, reselling, trainings Information on LEDAS is available at

10 April 2008SBRAS/ Intel GeometrySeminar 5 | 42 Mission We at LEDAS perceive our mission as the automation of key industrial processes – design, simulation and planning –These are areas where system users require a set of intelligent functions in order to accelerate product development and planning of related processes and resources LEDAS does not develop end-user nor enterprise software, but it collaborates actively with both CAD/CAM/CAE/PDM software development companies and manufacturing enterprises by offering them –Computational software components –Software development & 3D modeling –Consulting, reselling, training –Places where they can meet together CAD/CAM/CAE/PDM development company Manufacturing enterprise LEDAS Development Marketing Deployment Customization

10 April 2008SBRAS/ Intel GeometrySeminar 6 | 42 LEDAS Competence Mathematics & Computer Science –Numerical analysis –Constraint satisfaction –Computational geometry –Scheduling algorithms Software Development –Development Processes –Quality Assurance –Available platforms –Programming skills –Software tools CAD/CAM/CAE/PDM skills –Creation of 3D models –Custom application development –Translation & localization –Certified training –Reselling –Consulting Publishing & Conferencing –Web sites –Books –Conferences

10 April 2008SBRAS/ Intel GeometrySeminar 7 | 42 LEDAS Customers Dassault Systèmes (France) –Development of core computational components for CATIA V5 products –Software localization for Russian market –Total cost of development projects is about 80 person-years since 1999 Sukhoi Civil Aircrafts (Russia), AVTOVAZ (Russia), and others –Consulting & training on CATIA/CAA solutions –Custom software development (add-on applications for CATIA and NX) in the field of computational geometry, data translation and CAD application integration Proficiency (Israel), ADEM Technologies (Russia), AWV (Switzerland), Tecnos (Italy), Evo.Solutions (Japan), and others –Licensees of LEDAS Geometric Solver (LGS) software components –Cooperation on integration of LGS into different CAD applications: sketcher, assembly design, data translation Exigen (USA), CTRUE (Israel), and others –Development of advanced software packages based on LEDAS competence in optimization algorithms, resource scheduling, and computational geometry VirtualCAD (Canada) –Creation of libraries of parametric 3D models and web-catalogues of CAD parts Purdue Unviversity (USA), Novosibirsk Technical University (Russia) –Education & research

10 April 2008SBRAS/ Intel GeometrySeminar 8 | 42 Isicad-2008 Third international multi-vendor PLM forum –June 4-6, Novosibirsk, Russia About 500 attendees representing large, medium and small manufacturing enterprises More than 30 CAD, CAM, CAE, PDM solution providers –Autodesk, Siemens PLM, PTC and Dassault are traditional participants –All leading Russian CAD/PLM R&D companies Leading Russian mass media Multi-format –Invited talks –Plenary session talks –Technical section talks –Company’s seminar –Round table and press conference –Rich social program More information at

10 April 2008SBRAS/ Intel GeometrySeminar 9 | 42 We are here LEDAS Company LEDAS Phoenix and Related Projects: –History Mechanical simulation engine –Functionality –Architecture: Dynamic Engine, Collision Detection, Collision Resolution Impulse-based Collision Resolution Geometry: –Calculation of Dynamic Properties –Effective Collision Detection –Narrowing broad phase Demos Key Features Development Perspective

10 April 2008SBRAS/ Intel GeometrySeminar 10 | 42 The Phoenix Project The LEDAS Phoenix Project is oriented to a creation of competitive mechanical simulation engine with broad spectrum of applications D prototype was implemented. Segments and circular arcs were used for a geometrical representation. Gravity, springs, user-defined forces, sliding friction. Collision detection and resolution A full-scale 3D engine is under development. Simple 3D Collision detection. Scalable architecture 20053D Collision Detection is implemented 2007Convex Hull 3D and Minimal Bounding Box algorithms are implemented

10 April 2008SBRAS/ Intel GeometrySeminar 11 | 42 A Mechanical Simulation Engine Modeling of 2D/3D rigid bodies motion according to physical laws Modeling of forces with different nature –Gravity –Springs –Dynamically acting user-defined forces Collision detection and resolution –Avoiding interpenetration Motion modeling under geometrical constraints –Assembly constraints

10 April 2008SBRAS/ Intel GeometrySeminar 12 | 42 Architecture Application Collision Resolution Dynamic Engine Collision Detection Rigid bodies data Getting/updating coordinates and velocities Getting a geometrical data Getting a physical data Updating velocities Passing list of colliding bodies Passing list of moved bodies Getting list of colliding bodies

10 April 2008SBRAS/ Intel GeometrySeminar 13 | 42 Dynamic Engine Manages Collision Detection and Collision Resolution modules Models motion of rigid bodies with account of external forces Gravity Springs Dynamically acting user-defined forces Uses simple explicit difference scheme

10 April 2008SBRAS/ Intel GeometrySeminar 14 | 42 Collision Resolution is aimed to correct rigid bodies velocities in order to avoid interpenetrations Known approaches Collision Resolution Penalty method Constraints based techniques for contact resolution Impulse-based methods Chosen approach

10 April 2008SBRAS/ Intel GeometrySeminar 15 | 42 Basic assumptions –Collision time is infinitely small –Collision forces are infinitely large –Increments of impulses are finite There are two phases of collision –Compression phase –Restitution phase Total impulse obtained by a body during collision takes into account both phases: Impulse-based approach Initial assumptions where is a coefficient of restitution, and impulse obtained during compression phase

10 April 2008SBRAS/ Intel GeometrySeminar 16 | 42 Some definitions Relative velocity at the point is calculated from first body to second: Normal at collision point is taken from first body Case scalar product : < 0 interpenetration point = 0 contact point > 0 leaving point

10 April 2008SBRAS/ Intel GeometrySeminar 17 | 42 Approach Overview Consider contact points with negative normal relative velocities, such that bodies are penetrating Assume that force acts in contact point Express velocities of the bodies after a compression phase via unknown compression impulses Consider contact points with negative normal relative velocities, such that bodies are penetrating Assume that force acts in contact point With known expressions for velocities express relative normal velocities of the bodies in the contact point

10 April 2008SBRAS/ Intel GeometrySeminar 18 | 42 Impulse-based approach Linear system Condition of vanishing of the relative normal velocities at the end of the compression phase leads to the following linear mxm system of equations We can obtain compression impulses via SVD-method and full impulses passed between bodies due to collision in i-th point is After determination of the impulses we can compute new velocities of the bodies

10 April 2008SBRAS/ Intel GeometrySeminar 19 | 42 Impulse-based approach Iterative scheme With known new velocities we should check other contact points for which initially no penetration occurred If there are points in which the bodies are penetrating we repeat impulses computation for these new set of points As practice showed this iterations are converged for e≤1

10 April 2008SBRAS/ Intel GeometrySeminar 20 | 42 Joints Handling This approach can be used for a modeling of joints Joint is modeled via three (or two for 2D) collision points with e=0 considered on each time step On each time step relative velocities of the bodies in the joint point coincide Impulses corrections have to be calculated from a condition of coordinates coincidence not velocities

10 April 2008SBRAS/ Intel GeometrySeminar 21 | 42 We are here LEDAS Company LEDAS Phoenix and Related Projects: –History Mechanical simulation engine –Functionality and applications –Architecture: Dynamic Engine, Collision Detection, Collision Resolution Impulse-based Collision Resolution Geometry: –Calculation of Dynamic Properties –Effective Collision Detection –Narrowing broad phase Demos Key Features Development Perspective

10 April 2008SBRAS/ Intel GeometrySeminar 22 | 42 From Dynamic to Geometry: Calculation Of Dynamic Properties Given a manifold 3D triangular mesh, we can compute mass and inertia tensor properties of encapsulated volume Mirtich in 1996 proposed to use divergence and Green’s theorems to reduce complex 3D integral to line integrals:

10 April 2008SBRAS/ Intel GeometrySeminar 23 | 42 Collision Detection Broad phase: test collision for only for bodies which have bounding primitives intersecting Solution: encapsulate objects by simple shells with inexpensive intersection test Optimization of this phase: don’t check intersection for shells that obviously don’t intersect (rule?) In 2D prototype implementation we use pair-wise check on broad phase using circles as bounding primitives

10 April 2008SBRAS/ Intel GeometrySeminar 24 | 42 Collision Detection Narrow phase: pair-wise element check – test each geometry primitive of one body with each another’s Various space partitions can be applied to reduce number of pairs to check In 2D prototype implementation we use direct check of all pairs Detects collisions and returns coordinates of a contact points and normal vectors It supports line segments and arcs as geometry primitives and uses direct collision detection with rejection of bodies which are situated far apart

10 April 2008SBRAS/ Intel GeometrySeminar 25 | 42 Collision Detection 3D Implementation Based on OBB-approach (inertia axis) in narrow phase, collision detection library OPCODE 1.3 is used for reference. Current implementation consumes less memory than OPCODE (about 10%), but is 1.7 times slower*. However, performance optimization was not the objective Broad phase uses O(n 2 ) pairwise OBB-comparison. This stage can be optimized up-to O(nlogn) comparison (in practice O(n)), but even this is not top of high- performance… * Data is based on LEDAS collision detection report (in Russian)

10 April 2008SBRAS/ Intel GeometrySeminar 26 | 42 Collision Detection: narrowing broad phase The problem is that OBB is usually better heuristics of bounding volume than AABB (in terms of volume), but it is not minimal bounding box for body in general case The advantage is obvious: the less volume BB has, the less number of false narrow phase triggering will happen AABBOBBMinimal BB Which pattern better fits the broken window?

10 April 2008SBRAS/ Intel GeometrySeminar 27 | 42 Finding Minimal Boxes: LEDAS Implementations 2D case only requires body to be convex, algorithm is quite straightforward and can be described by “rotating calipers” model 3D case also operates on convex mesh and involves Gaussian sphere structure to test configuration. It requires polynomial trigonometric equation solver to find minimum of volume function

10 April 2008SBRAS/ Intel GeometrySeminar 28 | 42 Computational effectiveness of BB 2D3D AABBO(n) OBBO(n) Minimal BB O(n) convex O(nlogn) general O(n 3 ) Minimal 3D BB with heuristics -O(n 2 ) Conclusion: minimal BB can be used in applications which allow preprocessing and require maximum performance or have scenes with great number of objects

10 April 2008SBRAS/ Intel GeometrySeminar 29 | 42 We are here LEDAS Company LEDAS Phoenix and Related Projects: –History Mechanical simulation engine –Functionality and applications –Architecture: Dynamic Engine, Collision Detection, Collision Resolution Impulse-based Collision Resolution Geometry: –Calculation of Dynamic Properties –Effective Collision Detection –Narrowing broad phase Demos Key Features Development Perspective

10 April 2008SBRAS/ Intel GeometrySeminar 30 | 42 Demos Unstable stack

10 April 2008SBRAS/ Intel GeometrySeminar 31 | 42 Demos Domino effect

10 April 2008SBRAS/ Intel GeometrySeminar 32 | 42 Demos Springs

10 April 2008SBRAS/ Intel GeometrySeminar 33 | 42 Demos Telescopic mast

10 April 2008SBRAS/ Intel GeometrySeminar 34 | 42 Demos Door latch

10 April 2008SBRAS/ Intel GeometrySeminar 35 | 42 Demos Engine

10 April 2008SBRAS/ Intel GeometrySeminar 36 | 42 Demos Jib

10 April 2008SBRAS/ Intel GeometrySeminar 37 | 42 Demos 3D Collision

10 April 2008SBRAS/ Intel GeometrySeminar 38 | 42 Industrial Application Integration of Minimal Bound Box solution into CATIA (customer SCAC) is in process At LEDAS convergence of BB code is performed

10 April 2008SBRAS/ Intel GeometrySeminar 39 | 42 We are here LEDAS Company LEDAS Phoenix and Related Projects: –History Mechanical simulation engine –Functionality and applications –Architecture: Dynamic Engine, Collision Detection, Collision Resolution Impulse-based Collision Resolution Geometry: –Calculation of Dynamic Properties –Effective Collision Detection –Narrowing broad phase Demos Key Features Development Perspective

10 April 2008SBRAS/ Intel GeometrySeminar 40 | 42 Key Features of Phoenix Project Approach doesn’t need decomposition of bodies into convex parts Absolute elastic (energy-preserving) and inelastic adjustability Native support of geometrical constraints Collision detection in 3D with near-industrial characteristics is ready If preprocessing allowed, bounding volumes can be very tight

10 April 2008SBRAS/ Intel GeometrySeminar 41 | 42 Implementation Summary 2D dynamic engine with segment-arc geometry, resolves collision, supports springs and joints Computation of mass and inertia properties for triangular mesh 3D dynamic engine based on triangular meshes OBB collision detection 3D convex hull module (Preparata’s divide-and- conquer) Module for calculating minimal bounding box for triangle mesh

10 April 2008SBRAS/ Intel GeometrySeminar 42 | 42 Development Perspective We have advanced results in mechanical modeling and computational geometry related problems Some of our implementations already have applications, but our solutions have much greater potential Thus we are looking for partner/customer to bring our ideas to life