-
COLLISION DETECTION AND RESPONSE AND
HAPTIC INTERACTION IN VIRTUAL ENVIRONMENT
SIMULATIONS WITH DEFORMABLE OBJECTS
by
PAUL D. JACOBS
Submitted in partial fulfillment of the requirements
for the degree of Master of Science
Thesis Advisor:
Dr. M. Cenk Çavuşoğlu
Department of Electrical Engineering and Computer Science
CASE WESTERN RESERVE UNIVERSITY
May, 2006
-
Contents
List of Tables iii
List of Figures v
Abbreviations vi
Abstract vii
1 Introduction 1
1.1 Thesis Contributions . . . . . . . . . . . . . . . . . . . .
. . . . . . . 2
1.2 Thesis Outline . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 2
2 Background and Related Literature 3
2.1 Haptic Devices and Surgical Simulation . . . . . . . . . . .
. . . . . . 3
2.2 Deformable Surface Models . . . . . . . . . . . . . . . . .
. . . . . . 6
2.3 Multi-Rate Simulation in Haptic Interaction . . . . . . . .
. . . . . . 8
3 Methods 10
3.1 Multi-Rate Simulation Algorithm Outline . . . . . . . . . .
. . . . . . 10
3.2 Local Model Construction . . . . . . . . . . . . . . . . . .
. . . . . . 13
i
-
3.2.1 Two Dimensional Case - Sample Construction of the Local
Lin-
ear Approximation Model . . . . . . . . . . . . . . . . . . . .
17
3.3 Collision Detection and Response in Multi-Rate Simulation .
. . . . . 21
3.3.1 1D Example of Hybrid Collision Resolution . . . . . . . .
. . 22
3.3.2 Hybrid Collision Resolution in 3D MSD models . . . . . . .
. 25
3.4 Mesh Deformation in Collision Response . . . . . . . . . . .
. . . . . 28
3.5 Determination of Constraint Forces . . . . . . . . . . . . .
. . . . . . 28
3.5.1 Sticking Constraint . . . . . . . . . . . . . . . . . . .
. . . . . 30
3.5.2 Sliding Constraint . . . . . . . . . . . . . . . . . . . .
. . . . . 32
3.5.3 Frictional Sliding Contact Constraint . . . . . . . . . .
. . . . 34
3.6 Implementation . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 36
4 Results 38
4.1 Comparison of Local and Global Model Simulations . . . . . .
. . . . 40
4.2 Pure Slipping Constraint Results . . . . . . . . . . . . . .
. . . . . . 42
4.3 Pure Sticking Constraint Results . . . . . . . . . . . . . .
. . . . . . 45
4.4 Stick-Slip Frictional Sliding Friction Results . . . . . . .
. . . . . . . 47
5 Discussion 49
5.1 Extensions to Literature . . . . . . . . . . . . . . . . . .
. . . . . . . 49
5.2 Limitations . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 50
5.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 50
5.4 Future Work . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 51
Bibliography 52
ii
-
List of Tables
4.1 Parameters used in MSD model simulation . . . . . . . . . .
. . . . . 39
iii
-
List of Figures
2.1 The PHANTOM Premium 1.5 Haptic Interface [18]. . . . . .
4
2.2 The da Vinci robotic surgical system [17]. . . . . . . . . .
. . . 5
2.3 2D Mass-Spring-Damper Model . . . . . . . . . . . . . . . .
. . 6
3.1 Haptic Simulation Block Diagram . . . . . . . . . . . . . .
. . . 11
3.2 Haptic Simulation Block Diagram, Previous Work . . . . . . .
12
3.3 Local Model Order Reduction . . . . . . . . . . . . . . . .
. . . 16
3.4 Four node fully connected 2-D mass-spring-damper model . .
17
3.5 1-D Example of hybrid collision resolution model . . . . . .
. 23
3.6 One dimensional hybrid collision resolution model flowchart
24
3.7 Three dimensional hybrid collision resolution model
flowchart 27
3.8 Triangle displacement in sticking and sliding mode.
Diagram
a. shows the position of the instrument at the beginning
and end of a time step. Diagram b. illustrates the sliding
displacement. Diagram c. illustrates the sticking displacement.
29
3.9 Baryocentric Co-ordinates . . . . . . . . . . . . . . . . .
. . . . . 29
4.1 Haptic simulation screenshot . . . . . . . . . . . . . . . .
. . . . 38
4.2 Screenshot showing contact between the instrument and
the
deformable object . . . . . . . . . . . . . . . . . . . . . . .
. . . . 39
iv
-
4.3 Multi-rate simulation results. Dotted line is global
model
running at 1000 Hz. Dashed line is global model running at
30 Hz. Solid line is local model running at 1000 Hz. . . . . .
41
4.4 Multi-rate simulation results, y-position of test node vs
time.
Solid line is global model running at 30 Hz, dashed line is
local model running at 1000 Hz. . . . . . . . . . . . . . . . .
. . 43
4.5 Pure Slipping constant contact results. . . . . . . . . . .
. . . . 44
4.6 Pure Slipping dragging contact results. . . . . . . . . . .
. . . . 45
4.7 Pure Sticking contact results. Solid line is magnitude of
nor-
mal force, dotted line is magnitude of tangential force. . . . .
46
4.8 Hybrid stick-slip dragging results, co-efficient of friction
1.0.
Solid line is magnitude of force normal, dotted line is
magni-
tude of tangential force. . . . . . . . . . . . . . . . . . . .
. . . . 47
v
-
Abbreviations
MSD - Mass-Spring-Damper
FEM - Finite Element Model
HCI - Human-Computer Interface
DOF - Degree of Freedom
vi
-
Collision Detection and Response and Haptic Interaction in
Virtual
Environment Simulations With Deformable Objects
Abstract
by
PAUL D. JACOBS
An increasingly common new modality in human-computer
interaction is haptic in-
terfacing, especially in the field of medical simulation. The
order-of-magnitude dif-
ference in update rates between graphical deformable object
simulations and haptic
interfaces can be bridged using local low-order approximations.
However, providing
force feedback using local models complicates collision
detection and response with
the virtual tool, since the user interacts with lower-order
proxies rather than the full
simulated objects, and instability can result. A novel approach
focusing on rolling
contact with stick-slip friction is presented where all
collision detection and response
with the virtual tool is performed at the local level at the
haptic time-scale, utilizing
linearized low-order local models that approximate the behavior
of the full model for
the short time steps and small deformations involved.
vii
-
Chapter 1
Introduction
The value of haptic interaction in surgical simulation has led
to a great deal of research
interest into the challenges involved in providing haptic
force-feedback in virtual en-
vironment simulations with deformable surfaces. The key obstacle
to overcome in
haptic interaction is the difference in update rates of the
virtual environment simula-
tion, which is typically linked to the graphical update rate of
between 10 and 60 Hz,
and the update rate of the haptic interface, which must be on
the order of 1 KHz in
order to be convincing to the operator. One method of bridging
this gulf is through
multi-rate simulation, where the virtual environment in its full
complexity is simula-
tion at the visual update rate, while a simpler simulation,
often encompassing only
parts of the environment local to the virtual instrument, is run
in parallel at the hap-
tic update rate and periodically re-synchronized with the full
model. The purpose
of this project is to explore multi-rate simulation techniques
involving performing
collision response using a stick-slip friction model in the
haptic-rate simulation.
1
-
1.1 Thesis Contributions
First, a novel method of constructing local approximation models
of mass-spring-
damper networks was developed for use in multi-rate simulation.
Second, a collision
response algorithm capable of providing stick-slip frictional
interaction was developed.
Finally, these methods were used to implement a virtual
environment simulation using
the PHANTOM(TM) 1.5 Haptic Interface.
1.2 Thesis Outline
Background information and existing research on surgical
simulation, haptic inter-
faces, and deformable surface models are presented in the
chapter on Background
and Related Literature (ch. 2). The Methods chapter (ch. 3)
describes the algo-
rithms developed in this work and the implementation of the
simulation. Findings
are reported in the Results chapter (ch. 4) and extensions to
literature, limitations
of the study, and future research directions are described in
the Discussion chapter
(ch. 5).
2
-
Chapter 2
Background and Related Literature
This section will discuss information regarding haptic devices,
multi-rate simulation
techniques, and commonly used deformable surface models.
2.1 Haptic Devices and Surgical Simulation
Although the term ‘haptics’ refers to any human-computer
interface (HCI) device that
provides force feedback, including “rumble-packs” common to
consumer video game
controllers and actuated yokes and steering wheels for driving
and flying simulations,
the type of haptic interface focused on here are multi-link
rigid armatures capable
of three-dimensional force feedback and possessing at least
three degrees of freedom.
This type of haptic armature significantly predates surgical
simulation; the first haptic
devices were electrically actuated teleoperators built in the
1950s at the Argonne
National Laboratory to handle radioactive materials. Haptic
interaction was added
to the teleoperators in order to handle glassware without
crushing it, which proved
to be an extremely challenging task without force feedback.
The specific haptic device considered here is the PHANTOM
Premium 1.5 Haptic
3
-
Figure 2.1: The PHANTOM Premium 1.5 Haptic Interface [18].
Interface developed by Sensable Technologies shown in Figure
2.1[18]. The PHAN-
TOM interface is commonly used in virtual environments haptic
simulations due to
it’s relatively large workspace and low inertia and friction.
The frequency response
of the PHANTOM has a large resonance at 125 Hz which denotes the
highest fre-
quency signal that can accurately be represented by the PHANTOM
due to mechan-
ical damping and limitations of the electronics. This response
is considered sufficient
for surgical simulation applications [3].
The advent of minimally invasive surgery ushered in a new role
for haptics both
in surgical simulation and surgical robotics. While surgical
simulation of traditional
surgery is still an open research problem, training simulation
systems have been devel-
oped that take advantage of the more limited types of
interaction present in minimally
invasive surgeries, where the surgeon interacts with the patient
only through a series
4
-
Figure 2.2: The da Vinci robotic surgical system [17].
of long instruments inserted through small incisions. This often
makes laparoscopic
surgeries more difficult to perform, especially since they
require a skill set distinct
from that required by open surgical methods. At the same time,
the fact that the sur-
geon interacts with the patient through a highly constrained and
specialized interface
with limited degrees of freedom is a boon for surgical
simulation, since these factors
greatly simplify the task of providing haptic interaction. The
difficulty, unfamiliarity,
and relative rarity of some of these surgeries also make them
attractive prospects for
a training simulator. For these reasons, existing surgical
haptic simulations focus on
endoscopic surgical techniques using interfaces that closely
mimic endoscopic-specific
surgical tools. Numerous research groups have constructed
simulators for tasks such
as laparoscopic cholecystectomy, colon endoscopy, arthroscopy,
bronchoscopy, spinal
biopsy, hysteroscopy, and radiosurgery, among others. [19] [13]
[15] [2]. Haptic teleop-
erators have also been developed as part of robotic surgical
systems. In systems like
the da Vinci Surgical System [17], complex robotic instruments
capable of dexterous
5
-
manipulation are inserted through narrow incisions and operated
remotely with a
haptic device. The use of a force-reflecting teleoperator in the
actual surgery makes
this type of procedure an excellent candidate for future work in
surgical simulation.
Relatively few researchers have investigated the extremely
challenging open re-
search problem of simulating more traditional types of surgery
in which the surgeon
interacts directly with the patient through hand-held as opposed
to fixed surgical in-
struments. Morris describes a temporal bone surgery simulator,
but the interaction is
focused on bone drilling, which utilizes rigid-body interaction
and avoids deformable
surfaces [14]. A simulator for curvilinear capsulorhexis
cataract surgery has been built
by Webster et. al., but uses a very specific model not suitable
for modeling general
soft body structures [20]. Work has also been done on developing
haptic techniques
for simulating needle insertion procedures [7] [8].
2.2 Deformable Surface Models
Figure 2.3: 2D Mass-Spring-Damper ModelSpring-damper pairs are
represented by damped springs.
6
-
Several different types of deformable surface model have been
suggested for use in
haptic interaction. Lumped mass-spring-damper (MSD) models
represent deformable
objects with layers of masses connected by spring-damper pairs
or damped springs.
MSD models are a common choice for surgical simulation for their
ease and simplicity
in modeling and for their low computational requirements [10]. A
significant drawback
to the mass-spring-damper approach is the difficulty in modeling
a volumetric object
using mass-spring elements. Although the appearance of volume
can be obtained
through the use of cross-springs binding the mass elements into
a three-dimensional
grid, there is no clear procedure to match the properties of a
real substance to the
spring and damper parameters in the model. The main alternative
to MSD systems
are finite-element models (FEM), which provide a continuum model
that is strongly
physically based. However, FEM models incur larger computational
costs [11]. These
concerns lead many FEM implementations to include off-line
computation, which
limits their use in interactive haptic simulations.
Other volumetric methods have been suggested to capture the
realism of FEM
techniques with lower computational requirements. Kim and
Srinivasan have devel-
oped a method involving dynamically subdividing a volumetric
element into a col-
lection of randomly ‘sprinkled’ spherical volume elements
referred to as the method
of finite spheres [10]. Mendoza, Sundaraj, and Laughier have
suggested the “Long
Element Model” in which a body is broken down into columns of
incompressible fluid
governed by Pascal’s Principle [11]. Although these models have
been found to be
useful in haptic simulation, the discussion here is limited to
the more widely used
mass-spring-damper and FEM models.
7
-
2.3 Multi-Rate Simulation in Haptic Interaction
A major difficulty in providing high-fidelity force feedback is
the extremely demanding
update rate requirements of haptic feedback. The human sense of
touch is remarkably
sensitive, and can distinguish between changes in force into the
range of hundreds of
Hz. It is generally accepted that the update rate of the haptic
interface must be
five to seven times higher than the highest frequency event that
is to be simulated.
Therefore, in order to render events in the 100 to 200 Hz range
matching the capa-
bilities of the PHANTOM and similar haptic interfaces, 1 KHz is
widely considered
the minimum update rate for realistic haptic feedback [6].
Real-time virtual envi-
ronment simulations, on the other hand, are tailored towards
visual update rates,
and typically run between 10 - 60Hz, and it is infeasible to
significantly increase the
update rate of the physical simulation due to computational
limitations. Overcoming
this orders-of-magnitude difference in update rate has been the
focus of the bulk of
haptic research. As of the late 1990’s, the typical practice was
to low-pass filter the
generated force to the bandwidth of the model update rate [19].
This was found to
not be an adequate solution, as this effectively reduced the
haptic update rate to the
visual update rate.
Several methods have been proposed to solve this problem through
multi-rate
simulation. Multi-rate simulation techniques aim to divide a
virtual environment
simulation into two parallel simulations, one running at the
visual update rate, the
other at the haptic update rate. The visual update rate
simulation models the vir-
tual environment in its full complexity, and provides visual
feedback to the user, while
the haptic update rate simulation uses a simpler and more
computationally tractable
model to provide only force feedback. Commonly, the visual
update rate simulation
models the entire virtual environment, while the haptic rate
simulation models only
8
-
an area local to the point of haptic interaction. Cavusoglu and
Tendick used a local
linearization of mass-spring-damper models, and showed that the
spacial dependence
of the state variables of each node of the linearized system is
primarily on nearby
nodes, and therefore a local model consisting of only a few
layers surounding the con-
tact point can be used to provide satisfactory haptic
interaction [5]. Multi-resolution
methods with coarser meshes used for the entire model and more
detailed meshes
for areas of local interest have also been used successfully in
multi-rate simulation.
[1][21][9].
9
-
Chapter 3
Methods
In order to test novel approaches to multi-rate simulation and
collision response in
haptic virtual environments, a haptic implementation was built
using a 3 DOF manip-
ulator using mass-spring-damper as the modeling technique for
deformable surfaces.
The twin focuses of this chapter are a low-order linearization
technique for building
local approximation models for MSD deformable surfaces, and a
collision response
system that incorporates ideas from traditional constraint and
penalty-based contact
resolution algorithms.
3.1 Multi-Rate Simulation Algorithm Outline
The core of the approach to multi-rate simulation in this work
is to divide the neces-
sary computational tasks into those that must be performed at
the servo-loop update
rate of the haptic interface and those that can be performed at
the same rate as the
overall simulation. The methods presented here were initially
developed in [5] and
[2]. Like other multi-rate methods, the algorithm is divided
into two basic blocks,
as shown in Figure 3.1. The ‘global’ simulation incorporates the
entire virtual envi-
10
-
ronment and runs at the visual update rate in the order of
magnitude of 10 Hz. A
‘local’ simulation runs at or near the haptic server loop update
rate, and simulates
the behavior of a subset of the global model.
GlobalSimulation
LocalSimulation
Haptic Device
10 Hz 1,000 Hz
geometry
force model
geometry
force
instrumentposition
Figure 3.1: Haptic Simulation Block Diagram
After each global update is generated at 100 ms intervals
corresponding to the
10 Hz update rate, a local linear approximation model is
generated and passed to a
second simulation, running either in a separate process or
thread in single-computer
operation, or running on a second computer in networked
operation. This second
simulation uses the local linear approximation model to provide
force output to the
user and then sends the state of the local model and haptic
instrument back to the
global model, which incorporates this information back into the
global model, and
then re-computes a new linear approximation for the next
cycle.
This approach differs significantly from previous work in that
the flow of informa-
tion back from the local to the global model includes geometric
information. Typi-
cally, haptic simulations follow the outline of Figure 3.2. The
flow of information from
the local model to the global model is very simple and consists
only of position and
velocity information from the haptic instrument. Either
contact-resolving collision
response is done only on the global model, or else collision
response is performed in
11
-
GlobalSimulation
LocalSimulation
Haptic Device
10 Hz 1,000 Hz
force model
instrumentposition
force
instrumentposition
Figure 3.2: Haptic Simulation Block Diagram, Previous Work
parallel on both global and local simulations but any
deformations made to the local
model are discarded every time a new local model is
constructed.
This type of algorithm has several drawbacks. First, it
restricts the rate that input
from the haptic instrument to the virtual environment to the
global simulation update
rate. At first glance, this may not seem to be an important
constraint; voluntary
motion of humans in tasks such as handwriting tops out at a
motion frequency of
about 6 Hz, and a study of hand motions of eye surgeons has
indicated that a motion
frequency of 2 Hz accounts for most voluntary motion [16].
However, in the case of
stick-slip frictional contact, an instrument skipping across a
rough surface would be
restricted from changing mode of contact faster than the visual
update rate. Second,
it introduces latency between haptic input and changes in the
global model that may
result in a haptically apparent discontinuity. Since the altered
local model that results
from interaction with the haptic instrument is discarded at the
end of the haptic time
step and replaced with a new local model that is computed based
solely on the new
position of the haptic instrument, the new model may have a
large discontinuity in
force output. While it is possible to interpolate between force
values generated at the
end of one global time-step with the initial forces generated by
the next local model,
12
-
if the discontinuity is large and the global time step is long,
then the force output
may seem to be ‘muddy’ or delayed.
The alternative method presented here is built on the hypothesis
that these draw-
backs can be avoided by including model geometry in the feedback
from the local to
the global model. Therefore, any changes to the local model that
have been made
at the haptic update rate are incorporated back into the global
model, under the
assumption that if collision detection and resolution techniques
are performed at the
haptic rate on a model local to the point of haptic interaction,
then a higher-fidelity
haptic experience can be provided. The challenging case of
stick-slip frictional contact
is used as a testbed for this algorithm. This approach has
several requirements; first,
the local model must accurately simulate the behavior of the
global model, at least for
the short time intervals and small deformations involved.
Second, the collision and
detection response algorithm needs to operate effectively with
the highly demanding
1 ms time-step.
3.2 Local Model Construction
At each global time-step, a local linearized approximation model
of the deformable
surface is constructed and sent to the local model simulation
for simulating the dy-
namic behavior at the haptic update rate. In this work,
mass-spring-damper network
are used as the global model, but a similar treatment is
possible using finite element
models but not presented here. This method is an extension of
the method developed
by Cavusoglu in work originally presented in [2].
The model used for deformable objects under consideration here
is a network of n
masses connected by damped springs which is being deformed by a
virtual instrument
at a single contact point on the outer surface of the mesh. The
outer surface of the
13
-
mesh is composed of an array of triangular polygons which are
constructed using
the mass nodes as vertices. The behavior of the system is
governed by a non-linear
differential equation of the form
d
dt
XẊ
= Ẋ
M−1f(X, Ẋ)
(3.1)where X and Ẋ are respectively the state vectors
containing the positions and veloc-
ities of each node, f(X, Ẋ) is a function that maps the state
vectors to a vector of
forces on each node, and M−1 is a 3n× 3n matrix of the form
M−1 =
1m1
1m1
1m1
0
. . .
0
1mn
1mn
1mn
(3.2)
where mi is the mass of the node with index i. The computational
requirements
of this relatively simple deformable model prevent it from being
simulated at the
haptic update rate. For the relatively small 15x4x15 node
networks used for testing,
update rates of about 120 Hz were achievable. Therefore, at each
global time step, a
14
-
linearized discrete model is constructed by taking the tangent
behavior of the system:
d
dt
XẊ
≈
Ẋ
M−1
f0 + F ∆X
∆Ẋ
(3.3)
where
f0 = f(X0, Ẋ0)
∆X = X −X0
∆Ẋ = Ẋ − Ẋ0
F =
[∂f
∂X
∂f
∂Ẋ
]∣∣∣∣X=X0
Ẋ=Ẋ0
(3.4)
The linearization process does not reduce the order of the
model, and so a re-
duction of the model to components spacially close to the
virtual instrument contact
point is needed to reduce the computational complexity so as to
arrive at a model
that can be simulated at the haptic update rate. The method used
here to construct
a low order approximation follows the method of Cavusoglu and
Tendick that in-
cludes in the low order approximation the closest node on the
surface of the mesh
to the contact point and the immediately adjacent nodes, as well
as all the springs
and dampers connected to any of these nodes [5]. The springs and
dampers connect-
ing these nodes to the rest of the deformable model are replaced
with springs and
dampers with the same parameters connected to a stationary and
immovable ‘wall’
with the justification that the high frequency response of the
model depends mostly
15
-
on contributions from the nodes that are immediate neighbors,
and only secondarily
on the rest of the mass-spring-damper network, and so for the
high-frequency de-
pendent haptic interaction, the remainder of the nodes can be
considered stationary
during each haptic time step.
Figure 3.3: Local Model Order Reduction
At each time step of the virtual environment simulation, a local
linearization is
constructed from the global deformable object simulation and
used to provide haptic
feedback in between the updates of the global simulation. The
agreement of the local
simulation with the results provided by the global simulation
are naturally imperfect.
However, the haptic feedback is qualitatively similar enough to
be convincing to the
16
-
user, and can both be computed from the local model rapidly at
every global update
cycle and also simulated at the haptic update rate.
3.2.1 Two Dimensional Case - Sample Construction of the
Local Linear Approximation Model
x x
x x
1 2
3 4
Figure 3.4: Four node fully connected 2-D mass-spring-damper
model
Consider the two dimensional model shown in Figure 3.4
consisting of four nodes
fully connected by damped springs represented by spring and
damper pairs. We wish
to linearize each spring and damper. Let p = [p1, p2] and q =
[q1, q2] be the location
of a pair of nodes np and nq in the network. For a spring with
natural length L0 and
spring constant k connecting nodes ns and nt, the force on node
np is given by
fs = k
[(‖q − p‖ − L0)
(q − p)‖q − p‖
]= k
[(q − p)− L0
q − p‖q − p‖
](3.5)
17
-
We wish to find a linearized equation for fs in the form
fs ≈ fs0 +[
∂fs∂p
∂fs∂q
] ∆p∆q
(3.6)Define
Apqi = −∂fsi∂pi
= k
[1− L0
‖q − p‖‖q − p‖2 − (qi − pi)2
‖q − p‖2
]
Bpqi,j = −∂fsi∂pj
= k
[L0
‖q − p‖(qi − pi)(qj − pj)
‖q − p‖2
], i 6= j
(3.7)
Kp,q =
Apq1 Bpq1,2Bpq2,1 A
pq2
(3.8)Then, define
K =
[Kp,q −Kp,q
](3.9)
so that the action of the spring is linearized by
fs ≈ fs0 + K
∆p∆q
(3.10)The construction of the linearization of each damper is
similar. Let w = [w1, w2]
and v = [v1, v2] be the velocities of the nodes np and nq. For a
damper with damping
constant b, the force fd on node np due to the damper is given
by
fd = b
[(w − v)T (q − p)
‖q − p‖
](q − p)‖q − p‖
(3.11)
We wish to find a linearized equation for fd in the form
18
-
fd ≈ fd0 +[
∂fd∂p
∂fd∂q
] ∆p∆q
+ [ ∂fd∂w
∂fd∂v
] ∆w∆v
(3.12)Define
Cpqi = b
[(wi − vi)
qi − pi‖q − p‖2
+ ((w − v)T (q − p))‖q − p‖2 + 2(qi − pi)2
‖q − p‖4
]Dpqi,j = b
[(wj − vj)
qi − pi‖q − p‖2
+ ((w − v)T (q − p))2(qi − pi)(qj − pj)‖q − p‖4
]Epqi = b
(qi − pi)2
‖q − p‖2
F pqi,j = b(qi − pi)2
‖q − p‖2(3.13)
V p,q =
Cpq1 Dpq1,2Dpq2,1 C
pq2
Bp,q =
Epq1 F pq1,2F pq2,1 E
pq2
(3.14)Then, define
V =
[V p,q −V p,q
](3.15)
B =
[Bp,q −Bp,q
](3.16)
so that the action of the spring-damper pair is linearized
by
19
-
ftotal ≈ fs0 + fd0 + (K + V )
∆p∆q
+ B ∆w
∆v
(3.17)The linearization of all the springs and dampers in the
network of figure 3.4 would be
f ≈ f0 + P∆X + B∆Ẋ = fo + F
∆X∆Ẋ
(3.18)with
F =
[P B
](3.19)
with P and B being n× n matrices of the forms
P =
−K1,2−K1,3−K1,4
−V 1,2−V 1,3−V 1,4K1,2+V 1,2 K1,3+V 1,3 K1,4+V 1,4
K2,1+V 2,1−K2,1−K2,3−K2,4
−V 2,1−V 2,3−V 2,4K2,3+V 2,3 K2,4+V 2,4
K3,1+V 3,1 K3,2+V 3,2−K3,1−K3,2−K3,4
−V 3,1−V 3,2−V 3,4K3,4+V 3,4
K4,1+V 4,1 K4,2+V 4,2 K4,3+V 4,3−K4,1−K4,2−K4,3
−V 4,1−V 4,2−V 4,3
(3.20)
20
-
B =
−B1,2−B1,3−B1,4 B1,2 B1,3 B1,4
B2,1 −B2,1−B2,3−B2,4 B2,3 B2,4
B3,1 B3,2 −B3,1−B3,2−B3,4 B3,4
B4,1 B4,2 B4,3 −B4,1−B4,2−B4,3
(3.21)
3.3 Collision Detection and Response in Multi-
Rate Simulation
The method explored here incorporates a novel local collision
detection algorithm
in which the local simulation performs collision detection and
response ‘in-between’
frames of the global model. The rationale behind performing
collision detection and
response at the local level is two-fold. First, it allows for a
more realistic high-
frequency interaction. In particular, intermittent contact, like
dragging an instrument
across a rough surface, may be negatively affected by latency
from the global model.
In a networked environment in particular, the local side must
continue to provide
high fidelity interaction during unexpected delays. Maintaining
geometric information
sufficient to perform collision response can alleviate these
issues. Secondly, for simple
models, the response of the local model may be superior to the
computed response
of the global model, as the local model has more detailed
information about the
trajectory of the instrument during the global model time
period.
Two common paradigms are used for collision response algorithms;
constraint-
based and penalty-based collision response. Constraint-based
methods, sometimes
referred to as geometrically-based methods, resolve the
collision by enforcing con-
straints that prevent the model from entering an invalid state.
For example, in a
21
-
simple simulation of ball rolling across a surface, a
constraint-based method might
apply the constraint that the ball’s position in the y direction
must remain above the
level of the surface. Constraint-based methods have the
disadvantage that they do
not directly calculate contact forces, which is necessary for
haptic feedback. Penalty
force based methods operate by connecting virtual springs to
interpenetrating objects
that pull them apart. Penalty force methods require little
computation and compute
a contact force suitable for haptic interaction, but have
several important limitations.
Penalty force methods have difficulty taking friction into
account, have trouble with
very rigid objects, and are typically hard to generalize to
multi-point contact between
objects [12].
For this simulation, a hybrid approach is used for haptic
instrument-deformable
surface collisions that applies a geometric deformation to the
deformable object di-
rectly, as in constraint-based methods, and then computes a
‘constraint force’ neces-
sary to overcome the internal forces of the deformable surface
model that oppose the
deformation. This constraint force is applied to the nodes of
the mesh, and is also
used to compute a contact force that is applied to the haptic
interface, much as a
‘penalty’ force would be.
The development of the hybrid method is presented in two stages.
First, a one
dimensional example algorithm is presented to demonstrate the
rationale behind the
hybrid technique, and then in the next section, the full hybrid
algorithm is described.
3.3.1 1D Example of Hybrid Collision Resolution
The collision response algorithm is a hybrid approach that
applies a geometric con-
straint, and then computes constraint forces necessary to
maintain that constraint.
First, the simulation is advanced by one time step, and the
system is checked for
22
-
instrument
object surface internal spring
fixed `wall’
X∆ X∆f
f
instrument
object
A. B.
C. D.
Figure 3.5: 1-D Example of hybrid collision resolution model
collisions. If a collision is occurring between the instrument
and the deformable sur-
face, the simulation is reversed in time to the collision time,
and a deformation is
computed from this state that will result in no collision
occurring. Then, constraint
forces are determined that will prevent the system from entering
an illegal state when
the remainder of the time-step is re-incremented. The constraint
forces are then used
to generate a contact force to apply to the haptic instrument.
To illustrate this pro-
cess on a simplified one dimensional model, consider figure
3.5-A. A single mass is
connected to a fixed ‘wall’ by a linear spring with constant k,
and can be depressed
by an instrument in one dimension. If the instrument is pushed
into the surface,
the situation in figure 3.5-B. occurs. To resolve this
collision, first a geometric defor-
mation is applied to the model to resolve the collision, as in
figure 3.5-C. Then, the
constraint force is determined that will prevent the collision
from re-occurring when
the time step is computed; in this model, the constraint force
is equal to the spring
force
23
-
fc = k∆X (3.22)
In the one-dimensional model, this constraint force is also used
as the contact
force, so finstrument = fc is applied to the haptic instrument
as feedback to the user,
as in figure 3.5-D. The time step is then advanced again. Figure
3.6 shows a flowchart
diagram of the logic behind this collision response
algorithm.
Computecontact force and
apply to instrument
Check for collisionbetween mesh
and instrumentduring last time step
no collisionfound
collision found
Advance model to time t+1
Read positionof Instrument
from haptic device
Reverse state of model to time
of collision
Apply Deformation
to Mesh
Computeconstraint force
on Mesh
Advance model to time t+1, applying
constraint force
Go to next time step
Figure 3.6: One dimensional hybrid collision resolution model
flowchart
It is assumed that the system is modeling the behavior of a soft
deformable surface
with mass evenly distributed throughout the region between the
node ‘surface’ on the
‘wall.’ Therefore, inertial effects resulting from directly
changing the position of the
node is considered to be of negligible magnitude compared to the
force generated by
the spring, and are ignored.
24
-
3.3.2 Hybrid Collision Resolution in 3D MSD models
The collision response algorithm uses the same basic strategy as
the 1-D example
case presented in figure 3.6, with the addition of a more
complex stick-slip friction
model. In this frictional model, there are three possible modes
of interaction between
the haptic instrument and the deformable surface model:
1. Pure Sticking - the tip of the instrument drags the contact
point of the mesh
along with it, as if the mesh has a very high coefficient of
friction,
2. Pure Sliding - the tip of the instrument pushes down on the
mesh, but exerts
no force tangential to the mesh surface, as if the mesh were
frictionless,
3. Frictional Sliding - the tip of the instrument applies both a
normal and a tan-
gential force on the surface, but the initial contact point does
not remain un-
derneath the instrument tip throughout the contact.
In the hybrid collision response algorithm, the collision is
resolved geometrically
before constraint forces are applied. However, unlike the 1-D
algorithm, in which
there is only one strategy to deform the model and resolve the
collision, each one of
these modes of interaction has associated with it a different
geometric deformation
and method of determining constraint forces. For objects with
extremely low surface
friction, the Pure Sliding mode is used, while for objects with
extremely high surface
friction or very ‘sticky’ surfaces, Pure Sticking is used.
Objects that have intermediate values of friction are handled by
trying the Pure
Sticking mode first, and evaluating how consistent the resulting
constraint forces are
with the stick-slip frictional model. If the Pure Sticking
behavior is rejected by the
heuristic, a hybrid mode referred to as Frictional Sliding is
used to resolve the collision.
As an example, when the Pure Sticking constraint is determined,
a large contact force
25
-
would be required to counteract the action of the springs and
drag the mesh along
with the instrument at the point of contact. If the frictional
force caused by moving
the instrument along the mesh surface could result in this
contact force, it is deemed
to be realistic by the heuristic, and the results of this mode
are retained and other
modes are not considered. Otherwise, Frictional Sliding is
evaluated instead.
In combined Pure Sticking/Frictional Sliding collision response,
Pure Sticking is
evaluated first using this basic procedure; first, the mesh is
deformed so as to resolve
a collision between a node and a triangle of the deformable
surface mesh. Then,
constraint forces for each node of this triangle are determined
that will prevent the
system from re-entering an interpenetrating state during this
time step are computed.
These constraint forces are the forces necessary to counteract
the springs of the mesh
and maintain the mode of interaction. The contact force is then
set to be the sum of
the three node constraint forces. This contact force is then
broken down into forces
normal (N) and tangential (T ) to the mesh surface. The maximal
frictional force
consistent with the friction model is calculated as
Ffr = µN (3.23)
If the force T is greater than Ffr, then the evaluation
heuristic rejects the case as
inconsistent with the friction model, and therefore unrealistic
to use to resolve the
interaction, and the given mode of interaction is rejected. The
Frictional Sliding case
is then computed using a similar procedure and is used
instead.
After the correct mode of interaction has been determined, the
mesh is backed up
to the time of collision and the constraint force is applied to
the nodes of the triangle.
When the simulation is advanced again to the end of the time
step, the constraint
force enforces the mode of interaction.
26
-
Check for collisionbetween mesh
and instrumentduring last time step
no collisionfound
collision found
Advance model to time t+∆t
Read positionof Instrument
from haptic device
Reverse state of model to time
of collision
Advance model to time t+∆t, applying
constraint force
Go to next time step
if friction = 0
Apply Pure Sliding Deformation
to Mesh
Compute Pure Slidingconstraint force
on Mesh. Computecontact force and
apply toinstrument
if friction > 0Apply Pure Sticking
Deformationto Mesh
Compute Pure Stickingconstraint andcontact forces
Evaluate Pure StickingConstraint using
friction modelheuristic
Compute Frictional Sliding constraint force
Compute contactforce and applyto instrument
rejectPure
Sticking
acceptPure
Sticking Apply contact force to instrument
Figure 3.7: Three dimensional hybrid collision resolution model
flowchart
27
-
3.4 Mesh Deformation in Collision Response
During collision detection, after the intersection point is
determined and the model
is iterated to the collision time, a deformation must be applied
to the mesh in order
to resolve the collision and prevent interpenetration from
occurring. Each mode
of interaction in the collision response algorithm has a
corresponding deformation,
illustrated in figure 3.8. In sliding contact, the triangle is
pushed down in the normal
direction by an amount equal to the interpenetration distance,
as shown in figure
3.8-b. In sticking contact, the triangle is instead pushed in
the direction of the
instrument’s motion, so it is displaced in both the normal and
tangential directions
relative to the triangle surface, as illustrated in figure
3.8-c. The frictional motion
case is handled in the same manner as sticking motion.
3.5 Determination of Constraint Forces
During collision resolution, after the deformation of the mesh,
a constraint process
is used to determine the contact force. Separate constraints are
used in the pure
sticking and pure sliding cases. In order to identify particular
points on the surface of
a deformable triangle, baryocentric co-ordinates are used.
Baryocentric co-ordinates
are a concept borrowed from FEM techniques. A given point P on a
triangle is
identified by the areas of the sub-triangles formed by extending
lines from the node
vertices to the interior point. Normalized baryocentric
co-ordinates are used such
that the position of an interior point P on the triangle with
vertices x1, x2, and x3
can be expressed as
p = αx1 + βx2 + γx3 (3.24)
28
-
a. b.
c.
Figure 3.8: Triangle displacement in sticking and sliding mode.
Diagrama. shows the position of the instrument at the beginning and
end of atime step. Diagram b. illustrates the sliding displacement.
Diagram c.illustrates the sticking displacement.
x
x
x1
2
3
p
A3A2
A1
α =
A = A1 A2 A3+ +
A1A
β = A2A
γ = A3A
Figure 3.9: Baryocentric Co-ordinates
29
-
such that α + β + γ = 1.
3.5.1 Sticking Constraint
The sticking mode of interaction assumes that the instrument
makes contact with the
mesh at a contact point with baryocentric co-ordinate p and that
at the end of the
haptic time step, the instrument is still in contact with a
point of the triangle with
the same baryocentric co-ordinate relative to the new positions
of the nodes of the
triangle. This constraint can be expressed relative to p as
ṗ = p̈ = 0 (3.25)
Let the 9×9 matrix T11 be an orthogonal basis in baryocentric
co-ordinates given
by
T11 =
αI3×3 βI3×3 γI3×3
......
...
......
...
(3.26)where I3×3 is the 3×3 identity matrix, and the empty
entries of T11 are generated
using the Gram-Shmidt method. Define T to be a 3m × 3m
transformation matrix
from the canonical object frame into baryocentric co-ordinates
relative to the contact
triangle where m is the number of nodes in the model. We assume
without loss of
generality that the contact triangle has nodes x1, x2, and x3.
Then, T is given by
T =
T11 00 I
(3.27)
30
-
and
T
x1...
xn
=
p
...
...
(3.28)In order to enforce the constraint ṗ = p̈ = 0, define the
P operator to be
P ≡ T−1
03×3 00 I
T (3.29)When computing the discrete equations of motion to
advance the simulation to the
beginning of the next time step, the equations of motion
ẋnew = ẋold + M−1f(x, ẋ)∆t
xnew = xold + ẋnew∆t (3.30)
become
ẋnew = P (ẋold + M−1f(x, ẋ)∆t)
xnew = xold + ẋnew∆t (3.31)
The force on the instrument due to the collision is assumed to
be the sum of the
force on each node of the triangle required to maintain the
constraint. Define the P̃
operator to be
P̃ ≡ T T
I3×3 00 0
T−T (3.32)
31
-
The force on the instrument is then given by
fc1
fc2
fc3...
...
= P̃ f(x, ẋ)
finstrument = fc1 + fc2 + fc3 (3.33)
3.5.2 Sliding Constraint
The sliding mode of interaction assumes that the instrument
makes contact with the
mesh as a contact point with baryocentric co-ordinate p, and at
the end of the haptic
time step, the contact point has moved only in a plane
tangential to the triangle. This
ensures that the mesh surface can move tangentially to the
instrument, but cannot
inter-penetrate it at the end of the time step. This is a weaker
constraint than the
sticking case. The constraint can be expressed relative to p and
the triangle normal
n as
ṗ · n = 0
p̈ · n = 0 (3.34)
Define U0 to be a 3×3 orthogonal matrix of the form
32
-
U0 =
nT
· · · · · · · · ·
· · · · · · · · ·
(3.35)where the empty entries are generated using the
Gram-Shmidt method. Define
U11 =
U0 0 0
0 I3×3 0
0 0 I3×3
(3.36)Let U be an 3m×3m transformation matrix from the canonical
object frame into
baryocentric co-ordinates relative to the contact triangle,
where m is the number of
nodes in the model. We assume without loss of generality that
the contact triangle
has nodes x1, x2, and x3. Then, U is given by
U =
U11T11 00 I
(3.37)where T11 is as defined above in the description of
sticking contact. In order to enforce
the constraint ṗ · n = p̈ · n = 0, define the Q operator to
be
Q ≡ UT
01×1 00 I
U−T (3.38)When computing the discrete equations of motion to
advance the simulation to
the beginning of the next time step, the equations of motion
become
ẋnew = Q(ẋold + M−1f(x, ẋ)∆t)
33
-
xnew = xold + ẋnew∆t (3.39)
The force on the instrument due to the collision is assumed to
be the sum of the
force on each node of the triangle required to maintain the
constraint. Define the Q̃
operator to be
Q̃ ≡ U−1
11×1 00 0
U (3.40)The force on the instrument is then given by
fc1
fc2
fc3...
...
= Q̃f(x, ẋ)
finstrument = fc1 + fc2 + fc3 (3.41)
3.5.3 Frictional Sliding Contact Constraint
The frictional contact constraint is the same as the sticking
contact constraint, except
that the constraint forces are divided into forces normal, FN ,
and tangential, FT , to
the triangle surface. The forces tangential to the node surface
are bounded by µFN ,
the surface coefficient of friction, and then are applied as
before. Since the sticking
mesh deformation is used for frictional sliding, during
frictional sliding, the instrument
pushes the mesh surface, but the mesh can still slide around
under the instrument
tip, since the frictional force is insufficient to cause pure
sticking. Once again, we
34
-
assume without loss of generality that the contact triangle has
nodes x1, x2, and x3.
The force on the nodes is then given by
f1
f2
f3...
...
= f(x, ẋ)
f̃1
f̃2
f̃3...
...
= P̃ f(x, ẋ) (3.42)
using the definitions presented above in the Pure Sticking
section. For each force fi,
let fni and fti be the components of fi in the normal and
tangential directions relative
to the triangle normal n. Then let the constraint forces f̂i be
given by
f̂i = fni + µ‖fni‖fti‖fti‖
(3.43)
Then, the node forces for the frictional sliding case, F , is
given by
F =
f1 − f̂1
f2 − f̂2
f3 − f̂3
f4
f5...
...
(3.44)
The equations of motion for the frictional sliding case are
then
ẋnew = Q(ẋold + M−1F∆t)
35
-
xnew = xold + ẋnew∆t (3.45)
To determine the instrument force, first let finstrument be
defined as
fc1
fc2
fc3...
...
= P̃ f(x, ẋ)
finstrument = fc1 + fc2 + fc3 (3.46)
as in the pure sticking case. Let finstrumentn and
finstrumenttbe the normal and tan-
gential components of that force relative to the triangle
normal. Then, the instrument
force for the frictional sliding case is
f̂instrument = finstrumentn +
µ‖finstrumentn‖finstrumentt‖finstrumentt‖
(3.47)
3.6 Implementation
The collision response algorithm described above was implemented
in a virtual en-
vironment simulation of a deformable object using multi-rate
techniques. The test
objects were regular grids of lumped mass-spring-damper elements
with sizes ranging
from 5×4×5 to 10×10×10, and the local-low-order model was
generated from the
node on the object surface closest to the virtual instrument and
the immediately
adjacent nodes in a 4×3×4 neighborhood. The full non-linear
global simulation was
updated at 30 Hz, while the local simulation was run at 1
KHz.
36
-
The simulation was implemented in C++ using OpenGL as the
graphics library.
The global simulation was run on a IBM PC running Windows XP,
and the haptic
simulation was run on an IBM PC running the QNX real-time
operating system.
The global simulation PC used dual Pentium Xeon(TM) processers
running at 2.8
GHz. The local simulation PC used a Pentium 4(TM) processor
running at 2.4 GHz.
A PHANTOM(TM) version 1.5 manipulator was used as the haptic
interface. The
two computers were connected by an 100 Mbs ethernet network
running a custom
network protocol implemented on top of UDP. The computers were
connected through
a dedicated ethernet switch to eliminate the possibility of
interference from other
traffic on the network.
37
-
Chapter 4
Results
Figure 4.1: Haptic simulation screenshot
A simulation implementing these methods was successfully
implemented. Figure
4.1 is a screenshot of the implementation. The red cursor
marking the location of
the haptic instrument is visible above the gray surface of the
MSD model network.
The red box surrounds the area of the mesh that is used to
generate the local model.
38
-
Figure 4.2: Screenshot showing contact between the instrument
and thedeformable object
Figure 4.2 shows interaction between the network and the
instrument. The first
section addresses the performance of the multi-rate simulation
technique with the
mass-spring-damper model. The next two sections examines
performance claims of
Pure Sticking and Pure Sliding modes of the algorithm, and the
final section presents
results for full stick-slip friction algorithm.
Table 4.1: Parameters used in MSD model simulationK, spring
constant 10.0 N/mm
Node spacing 1 cmNode mass 500 mg
Damping factor 1.5 N·s/mmGlobal time step 100 msHaptic time step
1 ms
39
-
4.1 Comparison of Local and Global Model Simu-
lations
The basic properties and performance of the multi-rate
simulation technique were
tested using with instrument motion specified programmatically,
rather than using
the haptic device for input, so that the input could be kept
constant between test runs
in order to establish the difference in performance between the
global and local model
simulations. Three test cases were constructed, each using the
same pre-determined
instrument motion, in which a single node was pulled 2 cm above
the surface of the
mesh, and then released. The force exerted on the instrument as
the surfaces deforms
and presses against it was then computed.
The first test case uses the global model simulation only,
updated at 30 Hz as
specified in the multi-rate algorithm, but does not run the
local model simulation.
The second test case also uses the global model simulation only,
but updates it at
1000 Hz. This is not possible in real time, but this test case
provides a base line
for comparison of the behavior of the simulation. Finally, the
last test case uses the
multi-rate simulation technique described above, in which the
global model runs at
30 Hz, and the local model running at 1000 Hz is used to
generate output ‘between’
global updates. The force output during the same part of the
trial run is presented
in figure 4.3.
The global model running at 1000 Hz provides the most accurate
output; the force
follows a smooth sinusoidal curve consistent with the
mass-spring-damper model.
The global model running at 30 Hz exhibits the same approximate
behavior, but the
force output shows a stair-step pattern due to the lower update
rate. This method
results in a large discontinuity after every global update. The
multi-rate simulation
follows the tangent behavior of the system between each global
update. While there
40
-
2.4
2.45
2.5
2.55
2.6
1.2 1.3 1.4 1.5 1.6 1.7 1.8
Time, seconds
Forc
e, N
Figure 4.3: Multi-rate simulation results. Dotted line is global
model run-ning at 1000 Hz. Dashed line is global model running at
30 Hz. Solid lineis local model running at 1000 Hz.
is a discontinuity as each global update is received and a new
tangent behavior is
calculated, the magnitude of the jump is much lower than the
height of the stair-step
discontinuity from the global model-only test case.
A second set of tests was performed to determine the effect of
local model reduction
on the simulation. Since in the multi-rate simulation, part of
the surface local to the
instrument tip is being simulated using the local model
simulation while the rest is
being simulated using the global model simulation, tests were
performed to establish
if this division resulted in inaccuracies in the model behavior.
In these tests, the
41
-
instrument was held immobile over a section of the global model,
so that a patch of
the surface under the instrument tip was simulated using the
local model. The surface
was then deformed programmatically by pulling the node under the
instrument tip
upwards and then releasing it, so that a wave-like motion spread
through the model.
The instrument was held at a sufficient distance to ensure that
it never touched the
surface during the trial. The test was then repeated with the
instrument moved
away from the surface, so that no local model was used, and the
entire simulation
was performed using the global model. The position of the
deformed node along the
y-axis was then compared between the two tests, as presented in
Figure 4.4.
The behavior of the multi-rate simulation was found to show a
high degree of
agreement with the global model only simulation, with primarily
a delay of one global
time step differentiating the two.
4.2 Pure Slipping Constraint Results
The Pure Slipping constraint was tested in several ways. First,
in a single-axis contact
test, the instrument was constrained to move only in one
dimension, perpendicular
to the mesh surface. The instrument was then pushed down 1.0 cm
into the mesh
and held at that depth. The magnitude of the force output during
the contact is
presented in Figure 4.5, and shows that the force response to
the instrument initially
oscillates before settling to a steady-state value.
In a second test, the instrument was moved to one edge of the
mesh, and dragged
over the surface. Figure 4.6 shows the magnitude of the force on
the instrument
normal to the mesh surface. The magnitude of the tangential
force response is zero
throughout the experiment. When the instrument is pushed into
the surface, con-
tact forces are generated in the normal direction but not in the
tangential direction,
42
-
2.4
2.5
2.6
2.7
2.8
2.9
3
3.1
3.2
3.3
0 0.5 1 1.5 2 2.5 3 3.5 4
time, seconds
y - p
ositi
on o
f nod
e ab
ove
orig
in, c
m
Comparison of local and global model behavior
Figure 4.4: Multi-rate simulation results, y-position of test
node vs time.Solid line is global model running at 30 Hz, dashed
line is local modelrunning at 1000 Hz.
43
-
0
1
2
3
4
5
6
4.5 9.5 14.5 19.5 24.5 29.5time, seconds
forc
e, N
Figure 4.5: Pure Slipping constant contact results.
44
-
consistent with a zero-friction model.
Sliding Contact
0
1
2
3
4
5
6
7
8
9
32 34 36 38 40 42time, seconds
forc
e, N
Figure 4.6: Pure Slipping dragging contact results.
4.3 Pure Sticking Constraint Results
The dragging contact experiment was also repeated to test pure
sticking contact to
simulate a ‘sticky’ high co-efficient of friction surface. A
tangential as well as a normal
force was observed, with a tangential force often larger than
the normal, as the motion
of the instrument is mostly in the tangential direction.
45
-
Sticking Contact
0
2
4
6
8
10
12
14
10 10.5 11 11.5 12 12.5 13 13.5 14time, seconds
forc
e, N
Figure 4.7: Pure Sticking contact results. Solid line is
magnitude of normalforce, dotted line is magnitude of tangential
force.
46
-
4.4 Stick-Slip Frictional Sliding Friction Results
Stick-Slip Hybrid Algorithm
0
0.5
1
1.5
2
2.5
3
3.5
4
60 61 62 63 64 65
Forc
e, N
time, seconds
Figure 4.8: Hybrid stick-slip dragging results, co-efficient of
friction 1.0.Solid line is magnitude of force normal, dotted line
is magnitude of tan-gential force.
In this section, the full stick-slip frictional contact
algorithm was tested. The
algorithm was allowed to switch between pure sticking and
frictional sliding, and the
dragging contact experiment presented in the Pure Sticking
constraint results above
was repeated. The test was performed with a co-efficient µ of
friction of 1.0, with
results as shown in Figure 4.8. The tangential force is then
bounded by the normal
force, since FT ≤ µFN . Therefore, when the force generated by
the sticking constraint
rises above the normal force, the algorithm switches from pure
sticking to frictional
47
-
sliding, leading to a decrease in force. A typical transition
event can be seen at t =
61.8 Before the transition, the mesh is being dragged under the
instrument tip by
the sticking constraint. As the mesh is deformed, the force
required to maintain the
constraint increases, leading to an increase in both the normal
and tangential force.
In the pure sticking results presented above, the tangential
force increases above µ
times the normal force, since the dragging motion is mostly in
the tangential direction.
However, in the hybrid model, instead the algorithm transitions
and the tangential
force decreases.
48
-
Chapter 5
Discussion
5.1 Extensions to Literature
The main findings from this work extend the literature in two
ways. First, the new
linearization method for Mass-Spring-Damper models is an
improvement over existing
methods of building local approximations. Second, the stick-slip
collision response
offer a new direction in contact resolution in haptic
environments.
The linearization method was found to produce high quality force
output at the
haptic update rate. In addition, it was established
experimentally that the lineariza-
tion could be constructed and simulated both within the time
constraints of the global
and haptic update rates and also with a high degree of
accuracy.
Several important insights can be gained from the local hybrid
collision resolution
algorithm. While the algorithm successfully generated reasonable
contact forces, two
major caveats apply. First, the resolution of the mesh was
relatively low, and so
triangulation was fairly coarse. As the instrument is dragged
over the mesh, the facets
of the mesh are very haptically apparent. The periodic large
discontinuities present
in both the pure sticking and hybrid algorithm dragging
experiments were largely
49
-
the result of the instrument moving over a triangle boundary.
Second, the method
requires that the high-frequency behavior of the model be
dependent primarily on
local states. In the case of a non-homogenous material, this
assumption could be
violated, resulting in discontinities and unrealistic force
output.
5.2 Limitations
Several limitations qualify the results of this study. First,
haptic virtual environments
with deformable surfaces remain rare, and detailed results from
an alternative imple-
mentation from another research group with which to compare
these results were
not available. This is compounded by the fact that MSD models
are not physically
based, meaning that there is no straightforward method of
determining MSD mesh
parameters from physical substances, like human tissue.
Therefore, evaluation of the
algorithm remains largely qualitative. Second, the effects of
highly non-homogenous
materials, which could potentially break the assumption that
local effects are domi-
nant, have not yet been explored.
5.3 Conclusion
A novel method of generating linear approximations of MSD models
was designed,
implemented, and successfully tested. A haptic update rate
contact-resolution algo-
rithm was also test that provided a satisfactory haptic
experience.
50
-
5.4 Future Work
The limitations found in testing of the implementation of this
project suggest several
fruitful avenues for future work. The coarse granularity of the
mesh was found to
cause discontinuities and loss of contact as the instrument
rolls over triangle bound-
aries. Multi-resolution methods that dynamically re-triangulate
the mesh are one
possibility to overcome these issues. In addition, it may also
be possible to extend
the algorithm along lines inspired by the industry-standard
Phong shading algorithm
by interpolating the triangle normals across the face of each
triangle, so that a contin-
uous normal can be defined across multiple triangles. This may
result in a smoother
force feedback when traveling over triangle boundaries, since
the direction of the force
output would change continuously.
Additional work to establish a unified framework with which to
compare results
from haptic simulations would strengthen the results of this and
many other studies
by allowing quantitative comparisons of the haptic experience.
Work has already
begun to adapt methods from this study to the GiPSi simulation
framework, an
open source simulation framework for surgical simulation with
haptic feedback [4]. It
would also extend the results of this study to make the
deformable model strongly
physically based. The linearization method described for MSD
could be adapted
for use with FEM models, which accurately model physical
materials. In addition,
unpublished work by Cavusoglu and Natsupakpong aims to develop a
method of
generating MSD mesh parameters from physical measurements, which
would also
allow direct comparison of the haptic experience to actual
manipulation.
51
-
Bibliography
[1] O. R. Astley and V. Hayward. Multirate haptic simulation
achieved by couplingfinite element meshes through norton
equivalents. In Proceedings of the IEEEInternational Conference on
Robotics and Automation (ICRA’98), pages 989–994, May 1998.
[2] M. C. Çavuşoğlu. Telesurgery and Surgical Simulation:
Design, Modeling, andEvaluation of Haptic Interfaces to Real and
Virtual Surgical Environments. PhDthesis, University of California,
Berkeley, August 2000.
[3] M. C. Çavuşoğlu, D. Feygin, and F. Tendick. A critical
study of the mechanicaland electrical properties of the PHANToMTM
haptic interface and improvementsfor high performance control.
Presence, 11(6):555–568, December 2002.
[4] M. C. Çavuşoğlu, T. Goktekin, and F. Tendick. GiPSi: A
framework foropen source/open architecture software development for
organ level surgicalsimulation. Submitted to the IEEE Transactions
on Information Technology inBiomedicine, 2005. (Under Review).
[5] M. C. Çavuşoğlu and F. Tendick. Multirate simulation for
high fidelity hapticinteraction with deformable objects in virtual
environments. In Proceedings ofthe IEEE International Conference on
Robotics and Automation (ICRA 2000),pages 2458–2465, April
2000.
[6] S. Choi and H.Z. Tan. Discrimination of virtual haptic
textures rendered withdifferent update rates. In Proceedings of the
First Joint Eurohaptics Conferenceand Symposium on Haptic
Interfaces for Virtual Environment and TeleoperatorSystems, pages
114–119, March 2004.
[7] S.P. DiMiao and S.E. Salcudean. Needle insertion modeling
and simulation.IEEE Transactions on Robotics and Automation,
19(5):864–875, October 2003.
[8] R. J. Webster III, N. J. Cowan, G. S. Chirikjian, and A. M.
Okamura. Non-holonomic modeling of needle steering. In Proceedings
of the 9th InternationalSymposium on Experimental Robotics, 2004.
(In press).
52
-
[9] D. James and D. K. Pai. Multiresolution green’s function
methods for interactivesimulation with force feedback. In ACM
Transactions on Graphics, pages 47–82,2003.
[10] J. Kim, S. De, and M.A. Srinivasan. Computationally
efficient techniques forreal time surgical simulation with force
feedback. In Proceedings of the 10thSymp. on Haptic Interfaces For
Virtual Environment and Teleoperator Systems(HAPTICS’02), pages
51–57, 2002.
[11] J. Kim, S. De, and M.A. Srinivasan. A fast method to
simulate virtual de-formable objects with force feedback. In 7th
International Conference on Con-trol, Automation, Robotics, and
Vision (ICARCV 2002), pages 413–418, 2002.
[12] C. Lennerz, E. Schoemer, and T. Warken. A framework for
collision detectionand response. In Proceedings of the 11th
European Simulations Symposium, pages309–314, 1999.
[13] K. Montgomery, L.R. Hienrichs, C. Bruyns, S. Wildermuth, C.
Hasser,S. Ozenne, and D. Bailey. Surgical simulator for
hysteroscopy: a case studyof visualization in surgical training. In
Proceedings of Visualization 2001 (VIS’01), pages 449–587, October
2001.
[14] D. Morris, C. Sewell, N. Blevins, F. Barbagli, and K.
Salisbury. A collaborativevirtual environment for the simulation of
temporal bone surgery. In Proceed-ings of Int’l Confereance on
Medical Imaging Computing and Compter AssistedInternvetion
(MICCAI), pages 319–327, 2004.
[15] I. Olofsson, K. Lundin, M. Cooper, P. Kjall, and A.
Ynnerman. A haptic in-terface for dose planning in stereo-tactic
radiosurgery. In Eighth InternationalConference on Information
Visualization (IV 2004), pages 200–205, July 2004.
[16] C. Riviere, R.S. Rader, and P.K. Khosla. Characteristics of
hand motion of eyesurgeons. In Proceedings of the 19th Annual
Conference of the IEEE Engineeringin Medicine and Biology Society,
1997.
[17] Intuitive Surgical. da vinci surgical system.
http://www.intuitivesurgical.com/products/davinci_surgicalsystem/index.aspx,
May 2006.
[18] Sensable Technologies. Phantom 1.5 product datasheet, May
2006.
[19] F. Tendick, M. Downes, T. Goktekin, M. C. Çavuşoğlu, D.
Feygin, X. Wu,R. Eyal, M. Hegarty, and L. W. Way. A virtual
environment testbed for traininglaparoscopic surgical skills.
Presence, 9(3):236–255, June 2000.
[20] R. Webster, J. Sassanni, R. Shenk, and G. Zoppetti.
Simulating the continuouscurvilinear capsulorhexis procedure during
cataract surgery. In Proceedings ofthe 15th IASTED International
Conference, 2004.
53
-
[21] J. Zhang, S. Payandeh, and John Dill. Haptic subdivision:
an approach to defin-ing level-of-detail in haptic rendering. In
Proceedings of the 10th Symp. on HapticInterfaces For Virtual
Environment and Teleoperator Systems (HAPTICS’02),pages 201–208,
2002.
54