A Constraint-Based Approach to Rigid Body Dynamics for Virtual Reality Applications

A Constraint-Based Approach to Rigid Body Dynamics for Virtual Reality Applications

A Constraint-Based Approach to Rigid Body Dynamics for Virtual Reality Applications J¨org Sauer Elmar Sch¨omer Daimler-Benz AG Universit¨at des Saarlandes Research and Technology Lehrstuhl Prof. Hotz P.O.Box 2360 Im Stadtwald D-89013 Ulm D-66123 Saarbruc¨ ken Germany Germany email: [email protected] email: [email protected] Abstract classified according to figure 1: The GALILEO-system is a developmental state-of-the-art rig- id body simulation tool with a strong bias to the simulation GALILEO of unilateral contacts for virtual reality applications. On Unilateral the one hand the system is aimed at closing the gap be- Bilateral Constraints tween the ‘paradigms of impulse-based simulation’ and of Constraints ‘constraint-based simulation’. On the other hand the cho- sen simulation techniques enable a balancing of the trade-off between the real-time demands of virtual environments (i.e. non-permanent permanent contacts 15-25 visualizations per second) and the degree of physi- contacts cal correctness of the simulation. The focus of this paper lies on the constraint-based simulation approach to three- dimensional multibody systems including a scalable friction SIMULATION Impulse-based Constraint-based model. This is only one of the two main components of CAPABILITY Simulation the GALILEO-software-module. A nonlinear complementar- ity problem (NCP) describes the equations of motion, the contact conditions of the objects and the Coulomb friction Figure 1: The classification of contact situations. model. Further on we show, as an interesting evaluation ex- ample from the field of ‘classical mechanics’, the first rigid In the GALILEO-module (that is part of the VR-software- body simulation of the tippe-top. platform DBView developed at the VRCC) we concentrate on unilateral contact situations, although the approaches 1 Introduction would also be appropriate for the simulation of bilateral con- tact situations. The impulse-based technique due to Mir- We believe virtual reality (VR) to be one of the ‘leading- tich and Canny ([MC94], [MC95]), that is itself based on edge’ technologies of the next decade that will have a sig- Stronge ([St90], [St91]), Keller [Ke86] and Hahn [Ha88], is nificant impact on animation and simulation. The physical especially suitable for the simulation of temporary contacts modeling of virtual objects and based on it the simulation at one contact point. We reimplemented their approach. of rigid body dynamics in virtual environments will play a The constraint-based technique is based on a work of Stew- very important role throughout the whole manufacturing- art and Trinkle [ST95], who themselves developed further and engineering-industry. No matter whether automotive, [Mo86] and [MM93]. It rather is a simulation approach for aircraft or railway industry, simulation in the early prod- problems with multiple (permanent) contacts between mul- uct development cycles becomes more and more important. tiple objects. Former work in the computer graphics com- That already is our experience at the Virtual Reality Com- munity is from Moore and Wilhelms [MW88], Barzel and petence Center (VRCC) of Daimler-Benz Research. Vir- Barr [BB88], Witkin, Gleicher and Welch [WGW90] and es- tual Reality helps to shorten product development times and pecially from Baraff ([Ba89], see [Ba93] for an overview of therefore cuts costs. In the following we present the design his early work). One of the great open problems in the field of our state-of-the-art system for the real-time simulation of rigid body simulation, as also formulated by Mirtich in of three-dimensional multibody problems in the presence of his Ph.D.-thesis [Mi96], is the design and implementation sticking-, sliding- and rolling-friction (see also [SS98]). of a hybrid simulation system that combines both types of Contact situations in virtual worlds could generally be simulation paradigms. The solution of this problem is the long-term scientific objective of the GALILEO-simulation en- vironment. The above distinction of the techniques is not only justified by the observation of the occurring real contact situations, but also by the fact, that for one contact point configurations a ‘physically much more correct modeling’ is possible than for the multibody problems. (See classical problems: energy-dissipation, transition from static to dy- namic friction, paradoxa of Painlev´e, static indeterminacy, jamming and wedging etc.). the vector to the k-th contact point and fk is the magnitude In the following section we present the constraint-based of the contact force acting in direction k in the absence of approach, which provides an iterative solution of linear com- friction. kl = l points from the center of mass of k − plementarity problems, and we evaluate the simulation tech- object Bl (l = 1, . , n) to the k-th contact point. l is the nique with an example from the field of classical dynamics. orientation of object Bl described as a quaternion. If the The simulation of the tippe-top shows the physical mod- object Bl is fixed in space, then for its mass holds ml = , ∞ eling capabilities of the approach and especially the advan- its inertia matrix is Il = E and the velocities are l = 3 3 ∞ tages of the scalable friction model. Because of the real-time l = 0. E IR × is the identity matrix. The generalized ∈ demands of virtual reality applications a scalable friction Newton-Euler equations of motion for the objects Bl and model for time-critical computing is of utmost importance. k := fk k are: The simulation of mechanical configurations with unilateral contacts is very useful in the industrial field e.g. when ˙ l = l, 1 it comes to the simulation of fitting-operations in engine- ˙ = (quaternion multiplication), design. Beyond that the physically correct behaviour of ob- l 2 l l jects in virtual worlds helps to increase the feeling of immer- 1 1 ˙ l = m− k m− k + , sion for the user. l − l k j =l k i =l { X| k } { X| k } 1 1 1 2 The constraint-based approach ˙ l = I− kl k I− kl k I− l Il l l × − l × − l × k j =l k i =l { X| k } { X| k } Our objective is to determine the constraint-forces k for k = 1, . , K. To give up the component-wise description 3 the following vectors and matrices are quite useful: The 3 6n B3 generalized velocity vector IR 32 B4 ∈ 33 T = [ 1, 1, . , n, n] , 3 42 B2 4 4 2 the generalized position and orientation vector IR7n 23 44 4 ∈ 12 T = [ 1, 1, . , n, n] , 1 1 K 2 21 the vector of the magnitudes of the contact forces IR 11 ∈ 2 1 T = [f1, f2, . , fK ] , B1 the vector of external forces IR6n ext ∈ T = [m1 , 1 I1 1, . , mn , n In n] , Figure 2: A two-dimensional multibody system example. ext − × − × 7n 6n the matrix S IR × The virtual objects either behave according to the laws ∈ of Newtonian physics or they are interactively moved by E 0 a user with e.g. a space-mouse or a data-glove. In both Q1 . cases the current contact points and the geometrical and S = .. dynamical configurations of the objects in contact serve as E an input to the algorithm in every frame of the simulation. 0 Qn The provision of this information is guaranteed by the inter- play of the collision detection with the dynamics simulation T 4 4 3 with := [ql0, . , ql3] IR and Ql IR × module. Therefore our approach is suitable for a physical l ∈ ∈ modeling of virtual worlds as well as for animation purposes ql1 ql2 ql3 − − − or interactively specified object behaviour. 1 ql0 ql3 ql1 Ql = − , 2 ql3 ql0 ql2 − 2.1 The frictionless case ql2 ql1 ql0 − 6n 6n For reasons of simplicity we assume in our first approach the generalized mass matrix M IR × that there is no friction. Suppose the multibody system has ∈ n objects in mutual contact at K contact points as in figure m1E 0 2. The geometric configuration is described by a contact I1 data table: . M = .. , k ik jk k k 1 1 2 mnE 2 1 3 · · 0 In · · 3 2 3 3K K 4 2 4 · · the matrix of contact normals N IR × · · ∈ 1 0 For the k-th contact point the normal vector k is directed from the contact object with the smaller index to the contact 2 N = . , object with the larger index: if the normal is directed from .. Bi to Bj , then ik < jk with 1 ik, jk n. denotes k k k 0 K ≤ ≤ 6n 3K T K T K and the matrix of contact conditions J IR × with = [ν1, . , νK ] IR and 0 = [0, . , 0] IR . ∈ We insert equation (2) in∈to equation (3) and obtain:∈ E for l = 2ik 1 − − rk×i for l = 2ik T T 1 T T t 1 − k N J M− JN∆t + N J ( + ∆tM− ext) 0 . J = E for l = 2jk 1 . − ∆t ≥ lk − r× for l = 2jk kjk This is a linear complementarity problem (LCP) of the form 0 in all other cases 3 3 A + 0 compl. to 0 r× IR × is theskew-symmetric matrix ≥ ≥ ∈ K K K with A IR × and , IR . It can be solved with the 0 r3 r2 ∈ ∈ − classical Lemke-algorithm as e.g. described in the mono- r× = r3 0 r1 − graph [CPS92]. We now describe the structure of the matrix " r2 r1 0 # − T T 1 3 A = N J M− JN with r× = for IR . Every column of the ma- × ∈ trix J corresponds to one contact point and every row to in more detail. It is symmetric and positive definite, because one object. The column of every contact point contains two the generalized mass matrix M has these properties.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    9 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us