`Virtual Touch Through Point Interaction
`
`by
`
`Thomas Harold Massie
`
`B.S., Electrical Engineering
`Massachusetts Institute of Technolezy, 1993
`
`Submitted to the Department of Mechanical Engineering
`in partial fulfillment of the requirements for the degree of
`
`Master of Science
`
`at the
`
`MASSACHUSETTSINSTITUTE OF TECHNOLOGY
`
`February 1996
`
`© 1996 Thomas Harold Massie, All rights reserved.
`The author hereby grants to MIT permission to reproduce and to distribute copiesofthis
`thesis document in whole orin part, and to grant others the right to doso.
`
`Signature of Author........0...00..00cccccssee cessesFe sated cha Fen ne FOUTNSEETT eenseeeesanneenens
`Department of Mechanical Engineering
`January 19, 1996
`
`Certified Dy oo... ccc cccccseeenecccccccceeqeeeeeestecereeseeutenssneacmmnnosnetetigsggeesennseecennnene
`J. Kennelh Nlisbury, Jr.
`
`PrincinalResearch Scientist
`rvisor
`
`ACCEPT DY... .unnncciiienneraersddtiinmmmnaneedishidenrmnnsietiidiananenasticlimnnsaanidlixaanannticdennrnvnened
`SGACHUSETTS Itt.
`Ain A. Sonin
`OF TECHNOLOGY
`Chairman, Department Committee on Graduate Students
`MAR 19 1996
`_
`Valve Exhibit 1038
`Valve Exhibit 1038
`ARCHIVES
`Valve v. Immersion
`
`LIBRARIES
`
`
`
`Initial Haptic Explorations with the Phantom:
`Virtuai Touch Through Point Interaction
`
`by
`
`Thomas H. Massie
`
`Submitted to the Department of Mechanical Engineering
`on January 19, 1996 in partial fulfillment of the requirements for the
`Degree of Master of Science
`
`ABSTRACT
`
`The primary topic ofthis research was the implementation and programmingofa force
`reflecting haptic interface, known as the PHANToM (Personal Haptic iNTerface
`Mechanism). The goal was to develop software models that would allow users to feel and
`manipulate the data represented within computers. Compact models of texture, shape,
`compliance, viscosity, friction, and deformation were implemented using a point force
`paradigm of haptic interaction. The motivation for and implications of a point force haptic
`interface are discussed in detail. Finally, for those who are not immediately convinced of
`the utility of enabling humansto interact with computers through the sense of touch, a few
`of the applications enable by the PHANToMare described.
`“eas
`
`Thesis Supervisor: J. Kenneth Salisbury, Jr.
`Title: Principal Research Scientist
`
`
`
`Table of Contents
`
`1. INTRODUCTION...ccccccccscsccsccccssscsssccsssscscccscccevceccceccessceverccesecasasssesecoscscsoccccecessscesers 4
`
`1.1 HAPTIC INTERFACES. .0..ccccccccccccccccccccccccccecscsecsessscecteceversecesevececseseeeuaaaaunerevererersessaeeeess 4
`1.2 PERSONAL HAPTIC INTERFACE MECHANISM (PHANTOM)...........00..:00ccccccccessseseeeeee 6
`1.2.1 Three Enabling Observations......0.....0cc cc eccceece cece eeeneeeeeereeteeeesneeeunteeetneeeeetaaeess s
`1.2.2 Three Necessary Criteria For an Effective Interface ..........0...0..cccecceeceeeteeneeeenees 8
`1.2.3 PHANTOM Mechanics ....................cccecesseseceseeeseenevseseveceveeecesecesseansuavereceseceeseaaunes 9
`
`2. IMPLICATIONSOF A POINT FORCE INTERFACE..........c0c.cccsscscssesevevecasaconse 10
`
`2.1 INTRODUCTION TO POINT FORCE 2000000. 0oc ccc ccccccccceccucccuvctetcceecavceuesaeccsccuvessecnetatereceneens 10
`2.1.1 Initial Tests With Finger Sphere... cece eee ene ceecereeeseeseeseeevereneens 11
`2.1.2 PHANToM Thimble-Gimbal......0000.00000..occccc cc cceecccceececcccueceseuececeuseverauecevaueeeeanees 12
`2.2 INCREASES HAPTIC RESOLUTION..............ccccccccccucceeccceccuteceteccecccuvesatcasecucenseateserseeens 13
`2.3 EXPANDING THE POINT TO A FRICTIONLESS SPHERE ..........cccccccccccecececeeceeeceeececs veveeeeee 14
`2.4 HAPTIC POINT FORCE SPECTRUM ............ccccccssesscseeeevsesecevecevecececereseeuaaunectseseveveceeeanes 16
`2.5 FEELING THROUGH AN OBJECT.......0..ccccccceseeeceseveveveeeeceveceesecccseecssseeeauaneeeveseneseteusaeees 17
`2.6 SOFTWARE SIMPLIFICATION.......00.....cccccceeeveececsseueeececcesceceeeseseeueueeseceusueececcsceenesennes 17
`
`3. SOFTWARE RENDERING APPROACHES......ccccccccsccccccsveccccccccesecsvscscesscetesaseees 18
`
`3.1 INTRODUCTION TO THE BASIC ALGORITHM FOR HAPTIC RENDERING............c.0cccecceee 19
`
`3.2 EXPLICIT SURFACE DEFINITIONS..............cccccscsssseeesevessececeveceececececeescrauetecerecececeeeeaues 21
`3.3 PIECEWISE..........ccccccccceccceccecccccccccccceceececcvsususuaustststtecsesecerececcececeeearsnaneneseseseececeananes 22
`3.4 TOPOGRAPHIC HEIGHT MAP |... oo... cccccccccscccccecccauececuscsencessevecuescuvsceaeceautectsesauesaneenes 28
`3.5 SURFACE PROPERTIES.00..........cccceceseeeesssessnsseeececcesccevenssnsseeesueeaueessceeeceseceeecececeneneenes 31
`3.5.1 Static Friction. .....0...cccccccccccccccccccceccccccccceccucaessteessesesetseececcececeesuscuauauteteceeveceeeaaes 31
`3.5.2 Texture 0.000... cec cc cccecccccseceececececeeretseecnseess veccacecenecesaueceuaeceuutensuescucscnecetstecaectseseuse 32
`3.5.3 Compliance and Hardness..................ccccceeccecseeceeececeeeceneeeeneeseeestesenereuaeesseseereess 33
`3.6 BUTTONS AND SWITCHES.............cccccccccccccsscserstseceesectcecsesececeveeseceeeearsusanuveveveveceteeaans 35
`3.7 VIRTUAL CLAY00... .ccccccccceccccceccccccccccceceeecacscrcsaaacaaretstsuvecevececevecececeeeuacaneteteveveseeavanss 38
`3.7.1 Present Implementation ..........0.... cc cecccecececceee ceeneecenseeneseectaesseeeeenseeeertieeensaaes 38
`3.7.2 Future Implementations 0.000.000... ccc ecccccceeeeeeeeneeeteeeeeeeseeeetarennreseeeeeteeetntesneeees 39
`
`4. APPLICATIONS.......ccccccccsescscccevcccsccsscccccencsensressscssssceescseanecscscenecscavevevesscssesesccssenee 40
`
`4.1 COMPUTER INTERFACE FOR THE BLIND...............ccccccccuceccccuceecoceececeeccsaecersessesseseeauns 40
`4.2 MEDICAL TRAINING........0c..ccccccccccceccccuecccncccaussccesccaucecuseeceeesaessaessaaeceseceaustauversesseses 41
`4.3 COMPUTER AIDED DESIGN.............ccccccceccccccccececcecccccceusecuetcrssssaecsaueseueetrateeaieececeness 41
`4.4 INTERFACE TO THE MICROSCOPIC WORLD, ..............cccccccccecececcccuccceceussavessecueceesensanss 42
`
`5. CONCLUSIONS.,.......cccscsenes cvessececcccesecensccsasscceuacasscccccccsscesesscoscsonensesananasececssccersscess 43
`
`APPENDIX A: INFORMAL HAPTIC DICTIONARY..,......cccccsccccssccsscccscccscsrccsscnees 45
`
`BIBLIOGRAPDBY...........cccsescscsccsescsccsecccccsscssscccascccccesazeceesseeveseoees cecenenavevavasccsccccccsosees 47
`
`
`
`1. Introduction
`
`This thesis addresses the design, programming, and implementation ofa haptic
`
`interface designed solely with the intent offacilitating human-computerinteraction. The
`
`Personal Haptic iNTerface Mechanism (PHANToM)usesa novel thimble-gimbal to
`
`achieve a “point force approach” to haptic interaction. Chapter 2 is dedicated to
`
`describing this approachas it has many implications for human perception and software
`
`development. Chapter 3 addresses the basic software issues, and Chapter 4 describes the
`
`applications for this particular haptic interface. Finally, Chapter 5, describes why point
`
`force haptic interfaceslike the PHANToM will soon see wide use.
`
`1.1 Haptic Interfaces
`
`Real-time, photo-realistic 3-D computer graphics, and even spatialized 3-D sound
`
`are now achievable on high-end computer workstations. At the current pace of computer
`
`technology, few would argue that computer generated graphics and sounds, virtually
`
`indistinguishable from the real world they mimic,will be available on the personal
`
`computer within a few years. Visual and auditory feedback alone cannot enable a person
`
`to interact with the computeras naturally as he would interact with his real environment.
`
`A significant componentofourability to visualize, remember, and establish
`
`cognitive models of the physical structure of our environment stems from haptic
`
`interactions with objects in the environment. Kinesthetic, force and cutaneous senses
`
`combined with motorcapabilities permit us to probe, perceive and rearrange objects in the
`
`physical world. Information about how an object movesin response to applied force and
`
`the forces which arise when we attempt to move objects can provide cues to geometry
`
`(shape, locality, identity), attributes (constraint, impedance, friction, texture) and events
`
`(constraint change, contact, slip) in the environment[17].
`
`In the course of a typical human computerinteraction, a user views output on a
`
`video monitor, and works to changethe input via a mouse, joystick, or keyboard. In
`
`
`
`general, human beings do notinteract with the world this way. Rather we use our hands
`
`to both change avd measure our environment.
`
`Imagine an artist molding clay, a jeweler
`
`fixing a watch, or a surgeon searching for a bullet through a small incision. These activities
`
`involve such an immediate level of manualinteraction that they are not easily described in
`
`termsof “input” and “output”. Unlike other sensory modalities, haptic interactions permit
`
`two-way interaction via work exchange. Controlled work can be performed on dynamic
`
`objects in the environment and modulated to accomplish tasks. Today, haptic feedback1s
`
`woefully missing from the typical human computerinteraction.
`
`In that it was designed solely for human-computerinteraction, the mouseis a
`
`unique exception amongthe list of human-computerinterfaces. Consider the keybcard
`
`(typewriter), the cathode ray tube(television), the joy-stick (rate controller), and audio
`
`speakers (telephone receiver). All of these devices existed long before computers were
`
`attached to them, and arguably, only incremental improvements to these interfaces have
`
`been achieved. Haptic interfaces pre-date computersas well. Force-reflecting
`
`teleoperators were used to give humansa sense of presence in remote or dangerous
`
`environments long before they were attached to computers. Thefirst computerized haptic
`
`interfaces were teleoperators, interfaced to computers which simulated the remote
`
`environmentvirtually [3]. In fact, some of the commercially available haptic interfaces
`
`today like the Sarcos Arm [25] and the Cybernet Per-Force [7] are teleoperator master
`
`controllers adapted for use in virtual environments.
`
`In contrast to these earlier haptic interfaces, and analogousto the developmentof
`
`the mouse, haptic hardware and software algorithms with the specific goal of improving
`
`human-computerinteraction are now under development. Someofthefirst efforts to
`
`build hardware designed specifically for enabling people to touch virtual environments was
`
`done at the University of California, San Diego in 1976 [2] and by Noll [21]. Fora
`
`comprehensive reference of haptic projects see the bibliography provided in Margaret
`
`Minsky’s thesis [18].
`
`
`
`
`
`1.2 Personal HAptic iNTerface Mechanism (PHANToM)
`
`The PHANToMis a convenient desk-
`
`top device which allows users to reach
`
`beyond the “Looking-Glass”ofexisting
`
`computer monitors, and actually touch
`
`virtual objects represented within the
`
`computer. Users connect to the mechanism
`
`by simply inserting their finger into a thimble.
`
`and even texture can be convincingly conveyed to the human haptic system.
`
`The PHANToMtracksthe position of the
`
`user’s finger tip and can actively exert an
`
`external force on the finger, creating
`
`compelling illusions of interactions with solid
`
`physical objects. Smooth spheres, flat walls,
`
`sharp corners, compliant surfaces, friction,
`
`Figure 1: PHANToM
`
`The mechanical design of the PHANToMwasthe topic of my bachelor’s thesis
`
`[16], whereas the application and programming ofthe device is the primary topicofthis
`
`thesis. Together the bachelor’s thesis and the subsequent research describedin this thesis
`
`attempt to answerthe following question: “What elements of touch can be accurately
`
`represented within the computer?”
`
`1.2.1. Three Enabling Observations
`
`Three observations influenced the basic mechanical design of the PHANToM,and
`
`thereby framed the subsequent software design. Thefirst observation established the
`
`type of haptic stimulation that the device would provide, the second determined the
`
`
`
`numberof actuators that the device would require and the third established the volume
`
`or work-space that the device would possess.
`
`1)
`
`Force and motion are the most important haptic cues. Kinesthetic, force, and
`
`cutaneous senses combined with motor capabilities permit us to probe, perceive and
`
`rearrange objects in the physical world. Even without detailed cutaneous information
`
`(as with a gloved handortool), the forces and motions imparted on/by ourlimbs and
`
`fingers contribute significant information about the spatial map of our environment.
`
`Information about how an object movesin response to applied force and the forces
`
`which arise when weattempt to move objects can provide cues to geometry (shape,
`
`locality, identity), attributes (constraint, impedance,friction, texture, etc.) and events
`
`(constraint change, contact, slip) in the environment. Unlike other sensory modalities,
`
`haptic interactions permit two-way interaction via work exchange. Controlled work
`
`can be performed on dynamic objects in the environment and modulated to accomplish
`
`tasks.
`
`2)
`
`Many meaningful haptic interactions involvelittle torque. Perhaps the most
`
`significant design feature of the PHANToMisthe passive, 3 degree-of-freedom
`
`“thimble-gimbal”, shown in Figure 3. The decision to use the thimble-gimbal was
`
`based on the observation that manyfingertip interactions with the environment
`
`involvelittle or no torque aboutthe finger tip. (Tightening a screw with one's
`
`fingernail is one of the few clear counter-examples.) Because the three rotations about
`
`the center ofthe finger tip are neither measured nor actuated by the PHANToM,the
`
`user's finger tip can be modeled as a pointorfrictionless spherein the virtual
`
`environment. The same argumentappliesfor the tip of a stylus - the tip of a sharp
`
`pencil or pen touching a surface hasvirtually no torque exerted onit by the surface.
`
`Introducing three passive freedoms with the “thimble-gimbal”greatly simplifies
`
`programming as well as mechanism design.
`
`
`
`3) A small wrist-centered workspaceis sufficient. Many meaningful haptic
`
`interactions occur within the volumethat the finger tip spans when the forearm is
`
`allowed only limited movement.
`
`In order to determine the most suitable workspace
`
`for a haptic interface, a wooden mock-up consisting of a 3 degree-of-freedom
`
`kinematic chain with a 3 degree-of-freedom thimble-gimbal was constructed. Through
`
`experience with the mock-up, it was decided that the PHANToM should be
`
`constructed such that a user could move the wrist freely without encountering the
`
`edges of the workspace. The size of a mouse pad, a sheet of note-book paper and the
`
`computer keyboard are commonexamplesofthis scale of haptic workspace.
`
`1.2.2 Three Necessary Criteria For an Effective Interface
`
`The following three criteria are necessary for an effective force-reflecting haptic
`
`interface device. Independent psychophysical testing could establish specifications for
`
`each ofthe three criteria, however available actuator, sensor, material and computer
`
`technology will ultimately determine the degree to which each ofthe criteria can be met.
`
`Furthermore, the three criteria must be considered simultaneously, as improving the
`
`specification for one will necessarily degrade the specifications for the other two. The
`
`PHANToMrepresents an effort to balance these three criteria to achieve aneffective,
`
`affordable, force-reflecting haptic interface with existing technologies.
`
`1) Free space mustfeel free. Users must not be encumbered by the device. Thatis, the
`
`device should exert no external forces on a user moving throughfree virtual space.
`
`Translated into engineering requirements, this means that there should belittle back-
`
`drive friction, low inertia at the human-machineinterface and no unbalanced weight.
`
`For the PHANToM,wearrived at values for each of these attributes that were
`
`perceivable, yet not distracting. Static back drive friction for the PHANToMisless
`
`than 0.1 Newton (Nt), inertia is such that the user perceives no more than 100 grams
`
`
`
`of massat the interface and unbalanced weightis less than .2 Nt forall points within
`
`the workspace.
`
`2) Solid virtual objects must fee! stiff. One metric of a force-reflecting interface is the
`
`maximum stiffness of the virtual surfaces thatit is capable of representing. Because no
`
`structure or control loopis perfectly stiff, each virtual object represented through the
`
`interface must have someassociated compliance. For the PHANToMthevirtual
`
`object complianceis not limited by the stiffness of the structure, but rather by the
`
`stiffness of stable control that can be achieved. Using the current control algorithm,
`
`the PHANToM can reflect a maximumstiffness of about 35 Nt/cm. We have found
`
`that most users can be convincedthat a virtual surface with a stiffness of at least 20
`
`Nt/cm represents a solid, immovable wall. The maximum obtainable stiffness depends
`
`not only on the natural frequencies of the device but also on the resolution of the
`
`sensors and actuators and the servorate.
`
`3) Virtual constraints must not be easily saturated. There is nothing as disturbing as
`
`leaning against a wall and falling throughit. In the virtual world, walls should besolid.
`
`The maximum exertable force for the human finger is on the order of 40 Nt [27], but
`
`during precise manipulation wefind that people rarely exert more than 10 Ntofforce,
`
`the peak maximum for the PHANToM.In fact, the time average force exerted during
`
`normaloperation is on the order of 1 Newton, while the maximum continuous force
`
`capability for the PHANToMis about 1.5 Nt.
`
`1.2.3 PHANToM Mechanics
`
`In its simplest form, the PHANToM canbe thoughtofas a transmission between
`
`three DC brushed motors with encoders and the humanfinger tip. The x, y and z
`
`coordinatesof the user's finger tip are tracked with the encoders, and the motors control
`
`the x, y and z forces exerted upon the user. Torques from the motors are transmitted
`
`
`
`through pre-tensioned cable reductionstoastiff, lis .tweight aluminum linkage. At the
`
`end ofthis linkage is a passive, three degree :.f freedom gimbal attached to a thimble,
`
`Figure 3. Becausethe three passive rotational axes of the gimbal coincideat a point, there
`
`can be no torque aboutthat point, only a pure force. This allowsthe user's fingertip to
`
`assume any comfortable orientation. More importantly, because the user can be
`
`represented bya single point ot frictionless sphere within the virtual environment,
`
`collisions and resulting interaction forces with the virtual environment areeasily
`
`calculated.
`
`The PHANToMhasbeen designedso that the transformation matrix between
`
`motorrotations and endpoint translations is nearly diagonal. Decoupling the three motors
`
`producesdesirable results in terms of back-drive friction and inertia. For a haptic interface
`
`with perceivable inertia and back drivefriction, it is important that the friction and inertia
`
`be nearly constant in all directions to minimize the distraction they create for the user(i.e.
`
`well conditioned inertia matrix and small, non-disparate friction components) [30].
`
`2. Implications of a Point Force Interface
`
`2.1 Introduction to Point Force
`
`Whenthe problem ofbuilding a haptic interface (the PHANToM)waspresented to
`
`mein thefall of 1992, it was framed as a device which, when built, would allow for point-
`
`force interactions with a virtual environment. The device would havea three degree of
`
`freedom linkage from ground to an endpoint. (like a miniature robot arm) That part was
`
`straight forward, as others had donethis before [1] [2]. But for the user connection
`
`element, Ken Salisbury suggested using a thimble in conjunction with a gimbal. The
`
`gimbal would have three passive degrees of freedom, whose axesof rotation would
`
`intersect at a single point. The passive rotational degrees of freedom meantthat there
`
`could be no torque about that single point, thereby ensuring a pure force vectorat that
`
`point.
`
`
`
`Tactile interfaces which stimulate the individual receptors in the human skin have
`
`been built before [14]. Our approach of connecting to the user through a thimble meant
`
`that the PHANToM would notbe stimulating the receptors in the humanskin individually.
`
`Rather, pressure would be distributed over the surface of the skin, with the aggregate
`
`result consisting of a force vector that users would mainly perceive through the strain in
`
`their finger muscles.
`
`At the time the PHANToMwasconstructed, no onefully realized what the
`
`implications of the point force approach would be. Since then, several significant
`
`observations have been made which affect software approaches and user perceptions.
`
`These implications will be outlined in this chapter.
`
`2.1.1 Initial Tests With The Finger Sphere
`
`To test the concept of a force at the finger tip and the absence ofindividual
`
`receptor stimulation,I drilled a finger sized hole in a ping-pongball, filled it with wax, and
`
`fitted a “finger-sphere” to my finger. My approach wasnot to have 20 subjects wear
`
`similar finger spheres, perform tasks, and then “objectively” evaluate the attenuated
`
`performancein certain tasks. Rather, I wanted to test the assumption subjectively for
`
`myself, and then get on to building the device.
`
`Wearing the finger-sphere, I palpated pop-cans, shampoobottles, sponges, and
`
`table corners.
`
`I was encouragedthat I could perceive shapes, compliance, curves,
`
`attenuated corners, and to some extent, texture while wearing the finger-sphere.
`
`However, my perception of shapes was distorted somewhatby the radiusof the finger
`
`sphere. For instance, a sharp corner wasbe perceived as having a radius equal to that of
`
`the finger-sphere (See Figure 2A). This spherical mapping would later be exploited in
`
`programming algorithms.
`
`During unencumbered manipulation (See Figure 2B), cutaneous receptors in the
`
`skin give clues as to the sharpness of corners, even though the bulk of the fingeris
`
`constrained to trace a curved path around the corner. Using a point force approach with
`
`
`
`the PHANToM’s thimble gimbal (See Figure 2C) allows the user’s finger to trace a very
`
`sharp path around the perimeter of a virtual corner. The fact that the user can trace a
`
`sharper, more exact path around corners using a thimble-gimbal in conjunction with the
`
`virtual environment compensatesforthe loss oftactile stimulation that normally aides in
`
`corner detection.
`
`
`
`A Wearing Finger Sphere
`
`B. Unencumbered Manipulation
`
`_C. Using the Thimble-Gimbal
`
`Figure 2; Manipulation with the Finger Tip
`
`12
`
`
`
`2.1.2 PHANToM Thimble-Gimbal
`
`To implement the point force interface, three bearing pairs were arranged
`
`perpendicular to each otherin the form of a gimbal. Because there are bearings to allow
`
`for free rotationin theroll, pitch, and yaw directions, there can be no torque aboutthese
`
`orthogonal axes. Whenforceis transmitted through the PHANToMto the gimbai, the
`
`force is effectively concentrated at the point where the axes of rotation coincide. This
`
`point was chosento beinside the user’s finger, so that manipulation would remain
`
`intuitive. An alternate placement for the force concentration point would have been at the
`
`surface of the skin or at the tip of the fingernail.
`
`
`
`Figure 3: The Thimble-Gimbal
`
`
`
`2.2 Increases Haptic Resoution
`
`In one sense, representing the finger tip as a point within the virtual environment
`
`effectively increases haptic resolution beyond that of a finger tip in the real world.
`
`Cutaneousreceptors aside, when a person manipulates and probesin the real world the
`
`effective resolution limited by the finger volume. However, using the PHANToM,the
`
`width ofa user's finger tip in the virtual world can be madeas small as data quantization
`
`permits. Manipulation remainsintuitive because the thimble-gimbal allows the small
`
`virtual point to be spatially located within the user's fingertip.
`
`Tracing the Actual Profile
`
`Perceived Virtual Profile
`
`
`
`Figure 4: Radius of Manipulation Sphere Affects Haptic Resolution
`
`2.3 Expanding the Point to a Frictionless Sphere
`
`It is sometimesdesirable to expandthe virtual point to a virtual sphere. As depicted in
`
`Figure 4, using a virtual sphere filters the user’s perception of the virtual model by hiding
`
`details.
`
`It might be desirable to use a virtual sphere to hide defects in the software(e.g.
`
`
`
`
`
`
`
`floating-point round-off errors) (Figure 5), to simplify the virtual model being represented
`
`[29] (Figure 6), to represent the actual width of the user’s finger (Figure 7), orto;
`
`th
`
`sharp virtual corners (Figure 8). As shownin Figure 8, external corners can be smoot. 2d
`
`by the expansion of the point to a sphere, but internal corners retain a discrete (sharp)
`
`transition point.
`
` .
`
`.
`Planes Don't Match due to Floating Point Round Off
`
`Virtual Objects Can Be Represented as a Series of Points
`
`Figure 5: Hiding Program Defects
`
`Figure 6: Programming Simplification
`
`Sphere Smooths External Corners Internal Comers Remain Sharp
`
`A Sphere Can Be Used to Represent the Width of the Finger Tip
`
`Figure 7: Representing Finger by a Sphere
`
`Figure 8: Smoothing Corners
`
`15
`
`: :
`
`i:
`:Z
`
`8 ::ga32=E:|e
`
`edeEe e
`
`y : .
`
`
`
`It should be noted that one implication of a point force haptic interfaceis thatit is
`
`not possible to recreate the exact friction that the sphere would encounterin the physical
`
`world. Ifthe point force is being applied at the center of the virtual sphere,friction
`
`tangent to the sphere’s surface can not be represented with a point force mechanism like
`
`the PHANToM. One componentofthe friction created at the sphere’s surface would be a
`
`torque about the center of the sphere. A point force generator, by definition, can not
`
`generate torques. It is possible to offset the friction force from the circumference ofthe
`
`spheret
`
`the center of the sphere, thereby generating an approximation ofthefriction
`
`force. This offset is unnoticeable for small very small spheres (3 mm diameter).
`
`2.4 Haptic Point Force Spectrum
`
`30 grooves per centimeter
`Static Friction
`
`LLAPRPAAAARAARAVIMARAAAs
`
`Texture 10 grooves per centimeter
`
`ANSSSSLSSNININININ
`
`Shape
`
`1 groove per centimeter
`
`ASSN
`
`Figure 9: Haptic Spectrum of Varying Frequencies and Amplitudes
`
`A “haptic spectrum” becomesevident whenscaling virtual point force models.
`
`That is to say, the same software used to create virtual shapes can be used to generate
`
`virtual textures and even virtualstatic friction. The continuum ofscaled surfacesis only
`
`16
`
`
`
`delineated into “friction,” “texture,” and “shape” by human perception,so it is expected
`
`that each user will have different frequency and amplitude thresholdsfor interpreting the
`
`difference between “shape”, “texture,” and “friction.” Each of the three sensationsis
`
`denoted in the figure 9, with an example of the frequency required to create this
`
`perception for one user. Finding the range of frequency thresholds for different users
`
`would makeaninteresting topic for further study.
`
`2.5 Feeling Through an Object
`
`Initially, there was some concern as to how a user would adaptto using his or her
`
`finger tip to manipulate a single point in virtual space. The action is quite intuitive, with
`
`one exception. Whenfeeling the outside of virtual spheres, some users are disturbed by
`
`the “phantom effect”. That is, when using the device, one's hand can physically pass
`
`through the volume occupied bya virtual sphere, while only the finger tip is constrained to
`
`remain outside of the virtual sphere. Someusers are quick to use this phenomenato their
`
`advantage and begin probingall sides of virtual objects, unconstrained by the volume of
`
`their hands. Often,first time users will reach out with a second handto feel the virtual
`
`object, only to find it cannot be perceived with their other hand. This is a common
`
`behavior among children, adults with their eyes closed, and the visually impaired.
`
`Whenthestylus is substituted for the thimble, the point force model sometimes
`
`breaks down.
`
`Imagine simulating a dentist’s tool in the virtual environment. A deniist
`
`wielding the PHANToM stylus would be ableto feel the tip of the tool contact the surface
`
`of the tooth. However, there would be no straight forward way to conveyto the dentist
`
`the constraints of the virtual patient’s mouth if the mouth were to comein contact with the
`
`side of the dentists tool. Only those forces at the tip of the tool can be accurately
`
`sunulated with point force interaction.
`
`17
`
`
`
`2.6 Software Simplification
`
`Introducing three passive freedomswith the “thimble-gimbal” greatly simplifies
`
`programming as well as mechanism design. Consider the software that would be required
`
`to interface an exoskeletal glove mechanism with a virtual environment. The program
`
`would haveto detect collisions between a multiple degree of freedom virtual hand and the
`
`vutual environment, calculate reaction forces between the virtual hand and thevirtual
`
`environment, and then transform these virtual forces ‘nto torque commandsfor the joints
`
`of the exoskeletal glove. All of these calculations must be completed to give the user
`
`wearing the glove the perception ofrealistic interactions with the virtual environment.
`
`In contrast, point force interactions are simple to calculate. The algorithms must
`
`only detect collisions between a point and the virtual environment, calculate a reaction
`
`force vector, and send this force vector directly to the point (inside the thimble) being
`
`manipulated by the user. The required software is outlined in more detail in the next
`
`chapter.
`
`18
`
`
`
`
`
`
`
`3. Software Rendering Approaches
`
`3.1 Introduction to the Basic Algorithm for Haptic Rendering
`
`:
`SERS
`
`SEES—
`
`asSS
`SSR
`
`RRS
`
`a
`
`setae
`
`OeCe
`—SAS
`ae
`|,
`RO SNE> “s
`: ERR—
`_. : |— Ss
`eee SSS SNS
`BS : —<
`&
`3Times
`SEAN oeSS
`JManipulation
`Soe oS_ See
`SERS— a
`ee:
`
`Sekar
`
`SEEN
`
`aea ss—— .oe_See
`
`ee
`
`Seas oo—
`a oe aeSSSN<
`SS—SESoo ee
`
`Figure 10: The Typical Haptic Software Loop
`
`The software required to control haptic interfaces can be described as a
`
`combination of servo control algorithms and real
`
`time computer graphic rendering
`
`software. A high level description of the inner software loop would resenible the
`
`following:
`
`9GaQw
`
`>. Locate the user’s finger position with respect to the virtual environment.
`. Detect collisions between the user’s finger and the geometry ofvirtual objects.
`. Calculate a reaction force vector based on physical laws of the virtual environment.
`. Apply that force vector to the user’s finger.
`. GotodA.
`
`tT)
`
`The mostdifficult steps outlined above are B and C. Collision detection is fairly
`
`straight forward, but requires clever algorithms (bounding boxes, binary space partitioning
`
`19
`
`
`
`
`
`trees, quad-trees, etc.) for speed improvements in complex virtual environments.
`
`In
`
`general, for step C, a Hooke’s law relationship (f= k * x) is used to calculate the reaction
`
`vector. That is, the reaction force is proportional to the penetration depth ofthe user into
`
`the virtual object and normal to the surface of the object. If the forces are always normal
`
`to the surface, the objects will be frictionless, so methods of implementing tangential forces
`
`will be outlined later (section 3.5.1).
`
`There are several parallels between haptic rendering andreal-time graphics
`
`rendering. As with computer graphic rendering, haptic rendering requires calculating
`
`surface normals across the geometry of an object. In fact typical computer graphic
`
`algorithms, such as Phong shading, can be used for haptic rendering. Just as Phong
`
`shading hasthe effect of smoothing the visual appearance of a faceted object by
`
`interpolating surface normals betweenvertices, Phong shading applied to haptic geometries
`
`has the effect of making a faceted virtual object feel smoother and therefore morerealistic.
`
`A few basic differences do exist between computer graphics and haptics software
`
`however. For instance conventional wisdomis that 30 to 60 Hertz is sufficient for “real-
`
`time” virtual environments. One must realize that this rate is only sufficient because our
`
`eyes cannot detect motion any quicker than this. As it turns out, our hands are quite
`
`sensitive to vibrations even at 200 to 300 Hertz [5]. To create convincing sensations of
`
`touch, wefind that the loop must occurat an extremely high rate -- typically 1000 Hz or
`
`greater. Asthey say, “the hand is quicker than the eye.”
`
`Although the required update rate for haptics is about 30 times higher than that
`
`required for computer graphics, the numberof required calculations for each update are
`
`much less. Consider that a high resolution computer display has about 1000 by 1000, or 1
`
`million pixels. Each of these pixels must be updated each frame. However, a point force
`
`haptic interface has the equivale