1 / 51

Haptic interaction with rigid bodies by SPIDAR

Haptic interaction with rigid bodies by SPIDAR. Shoichi Hasegawa Makoto Sato’s group Precision and Intelligence Lab. Tokyo Institute of Technology. Contents. Control of SPIDAR Characteristics of SPIDAR Position measuring, Force displaying Update rate of haptic rendering

arnav
Download Presentation

Haptic interaction with rigid bodies by SPIDAR

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Haptic interaction with rigid bodies by SPIDAR Shoichi Hasegawa Makoto Sato’s group Precision and Intelligence Lab. Tokyo Institute of Technology

  2. Contents • Control of SPIDAR • Characteristics of SPIDAR • Position measuring, Force displaying • Update rate of haptic rendering • Rigid body simulation • Contact force modeling • Haptic rendering for 6DOF • Simulation of articulated body • Demo • For demonstration, please visit our booth.

  3. Hardware of SPIDAR Motor and encoder Present force to user. Measure length of string. SPIDAR

  4. Hardware performance • SPIDAR is the best device in performance • Stiff and light

  5. 7DOF 8Strings 3DOF 4Strings 6DOF 8Strings Reconfigurable hardware • Any DOF and arrangements are designable. • Same control algorithm can be used

  6. q1 l1 q2 p1 l2 p2 r qm pm lm p3 l3 q3 Position measurement r : posture vector (x,y,z,qx , qy , qz ) pi :tied point of string on the grip qi :position of a motor li:length of string

  7. Jp# Jr# Position measurement Solve r by iterative method

  8. Displaying force • Simple solution t2 f2 t1 f1 tensions f t3 Directions of strings f3

  9. Displaying force • Discontinuous problem Tension Present the same force and move the pointer. Position

  10. Displaying force • Simple solution • Use smaller tension • Limitation • Finally Quadratic programming problem

  11. λ =0 Displaying force 20 Full presentation area Partial presentation area λ =0.1 Calculated tension [N] 10 λ =0.2 λ =1.0 0 (-0.2,-0.2,-0.2) (0,0,0) (0.2,0.2,0.2) Position of end effecter [m]

  12. 6 λ= 0 λ= 0.1 λ= 0.2 4 λ= 0.3 Expanded figure x component of presentation force [N] 2 0 -0.1 0 0.1 0.2 0.3 x coordinate of end effecter [m] Displaying force

  13. Haptic rendering and update rate Virtual World Force display 1 2 3 F=kx • Measure finger position • Collision detection and force calculation • Display the force

  14. Finger position Out of the object In the object time F=kx penetration Stiff objects (large k) make too much force Haptic rendering and update rate • Problem on slow update rate

  15. Finger position Stable contact Out of the object In the object time • Stiff object requires fast update. • It is commonly said that 1kHz or more is needed. Haptic rendering and update rate • Solution by fast update rate

  16. 0.2 0.2 0.1 0.1 0 0 -0.2 -0.1 0 0.1 -0.2 -0.1 0 0.1 Effect of fast update • Advantage of stiffness • Display of friction disturbs display of shapes. But, enough stiffness realizes both. Virtual object (gear) Virtual object (gear) 2N/mm, 1kHz 20N/mm, 10kHz Trajectory of the haptic pointer on surfaces with friction (m=0.5)

  17. Real-time Rigid Body Simulationfor Haptic Interactions

  18. Haptic interaction • Touch the virtual world • User feels contact force from haptic interface Virtual Real

  19. Haptic interaction • Touch the virtual world • User feels contact force from haptic interface • The touched object receives force from the user. • The response : Dynamics Virtual Real

  20. Video Darumaw

  21. Contact force F=mv N=Iw v(t+D t)= v(t) + F/mDt w(t+D t)=w(t)+ I-1NDt Haptic pointer Contact force fordynamics simulation Contact forceto feedback user

  22. Contact model Normal force • Normal force • Prevent penetration • Friction force (coulomb’s model) • Static friction • Prevent sliding motion • Dynamic friction • Proportional to normal force Friction force |ff |< |m0fn | |ff |= |mfn |

  23. (eq. of motion) (normal) (friction) Solving constraints(1) • Analytical method • David Baraff SIGGRAPH `89 … Drawbacks • Much computation time for one step. O(n3 ) • A virtual coupling is needed to connect a haptic interface. • Coulomb's friction model comes to NP complete problem. Advantages • Object motions are stable.Wide time steps are affordable. • Solves constraints accurately.Completely rigid.

  24. Solving constraints(2) • Penalty method . penetration d,penetrating velocityd Spring Damper . slide l,sliding velocityl Spring Damper Drawbacks • Stability and rigidity requires small time steps.(Haptic interfaces also need this.) • Treatment of large contact area makes instability or takes a lot of computation time. Advantages • Very fast for one step. O(n) • Direct connection to haptic interfaces. • Coulomb’s friction model is easily realized. • Integration of other models are easy. (e.g. Featherstone’s method)

  25. ? Problem on large contact area • Where should we put spring-damper model? On the most penetrating point

  26. Problem on large contact area • Where should we put spring-damper model? ? On vertices Top view

  27. Problem on large contact area • Where should we put spring-damper model? Will works well. But, it will takes muchcomputation time and memory. ? Many points

  28. ! Distributed model Proposal for the problem • Integrate forces from distributed model for each triangle.

  29. Steps • Finding Contact force: • Find contact point and normal. • Find the shape of the contact volume. • Integrate forces over the contact area.

  30. Contact detection • Gilbert, Johnson, and Keerthi (GJK) algorithm. • Find closest points of two convex shapes. • A complex shape can be represented by a set of convex shapes. • After the contact, GJK can’t find closest points, So… t=t0 t=t1 New closest points

  31. Contact Analysis • Contact part = Intersection of two convexes. • D. E. Muller and F.P.Preparata:“Finding the intersection of two convex” (1978) • For given two convex and a point in the intersection. • Find the intersection.

  32. Contact Analysis(2) • Finding the intersection of two convex Half space representation

  33. Contact Analysis(3) • Finding the intersection of two convex(2) Half space representation Dual transform Vertex of intersection Dual transform Quick hull

  34. Integration of force • Penalty force • Dynamic friction force • Maximum static friction force Integrate forces from distributed model for each triangle.

  35. p2 p3 h3 h2 p1 Integration for a triangle p3 Force from spring model: Torque from from spring model:

  36. = Distributed model = Static friction force • Spring-damper model for sliding constraint. Two (translation and rotation) models

  37. Evaluation • Compare three simulators • Proposed • Penalty method • distributed model. • Point based • Penalty method • A model on the most penetrating point. • Analytic • Analytical method • Open Dynamics Engine (Smith R. 2000)

  38. 60 Proposed simulator 50 Point based method Analytical method 40 30 3 Average computation time[ms] 20 10 0 0 5 10 15 5 Number of blocks 13 Computation time

  39. angular momentum 2m3 g=9.8m/s 0.1rad Stability on normal force • A cube on a floor. • Measure angular momentum. 1 Proposed method Point based penalty method Analytical method Angular momentum [Nms] 0 -1 0 1 2 time[s]

  40. Motion of top

  41. Cardboard floor m0=0.265 m =0.160 2.0kg weightwrapped by paper spring 400N/m Tension force Velocity 0.0642m/s Friction force Stick-slip motion • State transition between static and dynamic friction makes stick-slip motion. m0=0.265 m =0.160 2kg 0.0642m/s Spring 400N/m friction force

  42. friction force friction force friction force friction force position of object position of object position of object position of object Result Real world Analytical simulator 0.1 0.1 5 5 Force[N] Position[m] Position[m] Force[N] 0 0 -5 -5 0 0 0 1 2 0 1 2 Time[s] Time[s] Proposed simulator Point based simulator 0.1 0.1 5 5 Position[m] Position[m] Force[N] Force[N] 0 0 -5 -5 0 0 0 1 2 0 1 2 Time[s] Time[s]

  43. Both hand 6DOF haptic interaction

  44. A B The computation time for the Simulation 3 B D A C C 2 Force integration Computation time [ms] 1 Contact volume analysis Contact detection D Simulation iterations Update rate of the simulation • Update rate > 300Hz

  45. Articulated body • Constraints of joints should strictly be kept. • Small errors can be magnified by mechanisms. • To solve generic constraints, we need much computation time. But, • Efficient computation method is affordable under some restriction of structure. • Restriction: Tree structure without ring many rings one ring

  46. 3 D C 2 B 1 A Generic method A’s eq of motion: Constraint of 1: B’s・・・・・・・・・・・・・・・・ So, we can write: Many 0,sparse matrix: There can be fast calculation method.

  47. D D 3 3 C C 2 2 B B 1 1 A A Featherstone’s method • Suppose whole rigid bodies are one rigid body. Then find the acceleration. Find the acceleration of A • Suppose two rigid bodies of A and others. • Find the force applied to the joint 1 • Find the acceleration of B • Suppose three rigid bodies of A and B and others.…

  48. 3 D C 2 B 1 A Featherstone’s method • Look the method from a viewpoint of the sparse matrix: 1. From the leaves to the root we merge M 2.Find acceleration .

  49. Featherstone’s method 3.Find from the root to the leaves.

  50. Demo

More Related