Title: Haptic interaction with rigid bodies by SPIDAR
1Haptic interaction with rigid bodies by SPIDAR
- Shoichi Hasegawa
- Makoto Satos group
- Precision and Intelligence Lab.
- Tokyo Institute of Technology
2Contents
- 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.
3Hardware of SPIDAR
Motor and encoder Present force to
user. Measure length of string.
SPIDAR
4Hardware performance
- SPIDAR is the best device in performance
- Stiff and light
5Reconfigurable hardware
- Any DOF and arrangements are designable.
- Same control algorithm can be used
6Position 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
7Position measurement
Solve r by iterative method
8Displaying force
t2
f2
t1
f1
tensions
f
t3
Directions of strings
f3
9Displaying force
Tension
Present the same force and move the pointer.
Position
10Displaying force
- Simple solution
- Use smaller tension
- Limitation
- Finally
Quadratic programming problem
11Displaying force
20
Full presentation area
Partial presentation area
?
0.1
Calculated tension N
10
?
0.2
?
1.0
0
(0,0,0)
(-0.2,-0.2,-0.2)
(0.2,0.2,0.2)
Position of end effecter m
12Displaying force
13Haptic rendering and update rate
Force display
Virtual World
1
2
3
Fkx
- Measure finger position
- Collision detection and force calculation
- Display the force
14Haptic rendering and update rate
- Problem on slow update rate
15Haptic rendering and update rate
- Solution by fast update rate
16Effect 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 (m0.5)
17Real-time Rigid Body Simulationfor Haptic
Interactions
18Haptic interaction
- Touch the virtual world
- User feels contact force from haptic interface
Virtual
Real
19Haptic 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
20Video Darumaw
21Contact force
Fmv NIw v(tD t) v(t) F/mDt w(tD t)w(t)
I-1NDt
Haptic pointer
Contact force fordynamics simulation
Contact forceto feedback user
22Contact model
Normal force
- Normal force
- Prevent penetration
- Friction force (coulombs model)
- Static friction
- Prevent sliding motion
- Dynamic friction
- Proportional to normal force
Friction force
ff lt m0fn
ff mfn
23Solving constraints(1)
- Analytical method
- David Baraff SIGGRAPH 89
- Advantages
- Object motions are stable.Wide time steps are
affordable. - Solves constraints accurately.Completely rigid.
- 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.
24Solving constraints(2)
.
penetration d,penetrating velocity d
Spring
Damper
.
slide l,sliding velocity l
Spring
Damper
- Advantages
- Very fast for one step. O(n)
- Direct connection to haptic interfaces.
- Coulombs friction model is easily realized.
- Integration of other models are easy. (e.g.
Featherstones method)
- 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.
25Problem on large contact area
- Where should we put spring-damper model?
On the most penetrating point
26Problem on large contact area
- Where should we put spring-damper model?
?
On vertices
Top view
27Problem on large contact area
- Where should we put spring-damper model?
Will works well. But, it will takes
muchcomputation time and memory.
?
Many points
28Proposal for the problem
- Integrate forces from distributed model for each
triangle.
29Steps
- Finding Contact force
- Find contact point and normal.
- Find the shape of the contact volume.
- Integrate forces over the contact area.
30Contact 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 cant find closest points,
So
tt0
tt1
New closest points
31Contact Analysis
- Contact part Intersection of two convexes.
- D. E. Muller and F.P.PreparataFinding the
intersection of two convex (1978) - For given two convex and a point in the
intersection. - Find the intersection.
32Contact Analysis(2)
- Finding the intersection of two convex
Half space representation
33Contact Analysis(3)
- Finding the intersection of two convex(2)
Half space representation
Dual transform
Vertex of intersection
Dual transform
Quick hull
34Integration of force
- Penalty force
- Dynamic friction force
- Maximum static friction force
-
Integrate forces from distributed model for each
triangle.
35Integration for a triangle
p3
Force from spring model
Torque from from spring model
36Static friction force
- Spring-damper model for sliding constraint.
Two (translation and rotation) models
37Evaluation
- 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)
38Computation time
39Stability 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
times
40Motion of top
41 Stick-slip motion
- State transition between static and dynamic
friction makes stick-slip motion.
m00.265 m 0.160
2kg
0.0642m/s
Spring 400N/m
friction force
42Result
Real world
Analytical simulator
0.1
0.1
5
5
ForceN
Positionm
Positionm
ForceN
0
0
-5
-5
0
0
0
1
2
0
1
2
Times
Times
Proposed simulator
Point based simulator
0.1
0.1
5
5
ForceN
Positionm
ForceN
Positionm
0
0
-5
-5
0
0
0
1
2
0
1
2
Times
Times
43Both hand 6DOF haptic interaction
44Update rate of the simulation
45Articulated 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
46Generic method
As eq of motion
Constraint of 1
Bs
So, we can write
Many 0,sparse matrix There can be fast
calculation method.
47Featherstones 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.
48Featherstones method
- Look the method from a viewpoint of the sparse
matrix
1. From the leaves to the root we merge M
2.Find acceleration .
49Featherstones method
3.Find from the root to the leaves.
50Demo
51Our booth
We are here
Our booth (1F)
5 minutes walk