20 likes | 117 Views
n (collision normal). h 0 +h b. h 0 +h b. b. o. h 0 +h a. p 0. a. h 0. h 0 +h a. h 0. Can’t calculate moment of friction force. Friction force. Contact area(previous). Friction force. Contact area(previous). Contact area ( current ).
E N D
n(collision normal) h0+hb h0+hb b o h0+ha p0 a h0 h0+ha h0 Can’t calculate moment of friction force Friction force Contact area(previous) Friction force Contact area(previous) Contact area (current) Real-time Rigid Body Simulation Based on Volumetric Penalty MethodShoichi Hasegawa, Nobuaki Fujii, Yasuharu Koike, Makoto SatoPrecision and Intelligence Laboratory, Tokyo Institute of Technologyhttp://sklab-www.pi.titech.ac.jp hase@hi.pi.titech.ac.jp • Goal • Real-time rigid body simulator 200Hz or faster update rate for Haptic. • For natural virtual object manipulations. • Haptic interfaces have been developed. It requires fast update. • Objects should move under the law of motion. • For simple virtual world for educational / training / entertainment applications. • Choice of algorithm for contact solver • D. Baraff: “Analytical methods for dynamic simulation of non-penetrating rigid bodies” (1989) • B. Mirtich: “Impulse-based Simulation of Rigid Bodies” (1995) • Penalty methods, which convert constraints into penalty force by spring and damper model.H. Keller: ”Virtual Mechanics” (1993) … • Invention • Previous penalty method regards contacts occurs at a point. We regards contact area and integrate forces: Normal forces Friction forces • Where should we put spring damper models? • Put on the most penetrating point? • Integrate penetration over the contact area • Where should we put Coulomb ‘s friction model? • Put on the application point of the normal force? • Integrate forces from Coulomb model over the contact area Unstable Contact area (current) Stable • Proposed simulator • The simulation step is consists from following procedure 1 Contact detection 3 Integrate normal forces and torques • The intersection is convex polyhedron We integrate penalty by each face. • Find collision normal and common pointGilbert, Johnson, and Keerthi (GJK) algorithm = ー Upper bound Lower bound Intersecting part 2 Contact Analysis • Find penetrating part = Intersection of two convexes Half space representation Dual transform Vertex of intersection Convex hull Dual transform (Fs: force from spring models, Ms: torque from spring models) D. E. Muller and F.P.Preparata 1978
0.05 0.05 0 0 -0.05 -0.1 -0.1 0 100 200 0 100 200 Number of step Number of step [10ms] [10ms] Measure the angular momentum 2m×2m×2m 1kg gravity:9.8m/s 0.1rad Simple method Proposed method Angular Momentum [Nm] Angular Momentum [Nm] -0.05 • Proposed simulator (continue) 4 Friction forces and torques • Dynamic friction • Integrate dynamic friction force (fdy) over the contact area • Static friction • Object does not slip =Constraint → Convert into penalty force. • State Transition fdy vp Spring-damper model for translation Spring-damper model Object at previous step Spring-damper model for rotation Object at current step Distributed models can be replaced by two models Static friction force > maximum friction force (= m0/m Dynamic friction force) Static friction Dynamic friction Static friction force < dynamic friction force • Evaluation • Compare stability on two simulators • Proposed: Integrate forces over the intersection. • Simple: Spring model is put on the most penetrating point. • Simulate same virtual world: • Result • Haptic interaction • Choose a virtual object as a proxy object of haptic interface Display force and torque Set position and orientation Haptic interface(SPIDAR) • Conclusion • We proposed a rigid body motion simulator which can: • Run at haptic rate (200Hz or faster) with simple virtual world. • Treat dynamic and friction forces.