do it yourself haptics, part i - mcgill cimhaptic/pub/vh-km-ram-07.pdf · do it yourself haptics,...

21
Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill University, Montr´ eal, Canada Univ. of British Columbia, Vancouver, Canada This article is the first of a two-part series intended as an introduction to haptic interfaces. Together they pro- vide a general introduction to haptic interfaces, their con- struction and application design. Haptic interfaces com- prise hardware and software components aiming at provid- ing computer-controlled, programmable sensations of me- chanical nature, that is, pertaining to the sense of touch. In this article (Part I), we describe methods which have been researched and developed to date to achieve the generation of haptic sensations, the means to construct experimental devices of modest complexity, and the software components needed to drive them. In Part II of this this series, we will describe some basic concepts of haptic interaction design together with several interesting applications based on this technology. 1 Introduction Our purpose is to offer the newcomer to haptic interface design a roadmap to help navigate through physical princi- ples, hardware limitations, stability issues and human per- ceptual demands that stand between her or him and the ideal of touching and feeling a virtual environment through an electromechanical device. Primary themes are aware- ness of how much performance is needed, guided by both physical and perceptual principles, as well as control ideas; and how different system elements may be played off one another to optimize a particular trait. In the remainder of this article, we start by orienting the reader with an overview of the primary categories of hap- tic displays (Section 2). We address the most common of these categories in greater detail. For the relatively sim- ple topic of Vibrotactile Stimulation (Section 3), we review its actuators, electronics and software. Next, we address Force Feedback, outlining the major subjects that underly correct performance in this much more involved category (Section 4). In addition to hardware components, these in- clude some control principles and a discussion of practical means of assuring system stability. The previous material is integrated in a simple capstone example showing how to construct and architect the control for a force feedback knob (Section 5). We close with an example of an an emerg- ing class of haptic display which is neither vibrotactile nor based on force feedback and which is capable of shape dis- play (Section 6). 2 Device Overview Many methods have been proposed to create haptic sensa- tions artificially. Until now, roughly four dominate. They can be used separately, or together in a single system. These methods comprise vibrotactile devices, force feed- back systems, surface displays, and distributed tactile dis- plays. Of these four, we discuss vibrotactile devices and force feedback systems to the greatest extent because they are the most researched and the most broadly applied. Implementation examples of these types of interfaces are given. We mention tactile displays only briefly. 2.1 Vibrotactile Devices Many of us are familiar with the buzzing that we experience when we receive a call on a mobile phone when the vibration function is on. Generating these “vibrotactile” sensations is by far the easiest and currently the most widespread means of providing haptic feedback. It can be used for many pur- poses such as providing silent and invisible alerts (pagers), warnings, messages coded temporally and spatially [1], or sonotopically [2]; with some of the earliest applications be- ing found in sensory substitution (1927) [3] and avionic controls (1965) [4]. Today, the dominant application of vi- brotactile devices is the haptic enhancement of games in general [5], and of game controllers in particular, Figure 1. Emerging applications include directional cueing [6, 7], ad- vanced mobile phones [8], or mediation of distributed floor control [9]. Figure 1: Saitek P2600 “Rumble” Game Pad. We later see how to make simple devices that can pro- vide vibrotactile feedback where their design tradeoffs can be seen. The interpretation of vibrotactile codes into mean- ingful sensations can be said to appeal to perception [10]. 1 Authors' draft. Final version to appear in the December 2007 Issue of the IEEE Robotics and Automation Magazine

Upload: vuongkhanh

Post on 10-Feb-2018

225 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

Do It Yourself Haptics, Part I

Vincent Hayward Karon E. MacLeanHaptics Laboratory SPIN Laboratory

McGill University, Montreal, Canada Univ. of British Columbia, Vancouver, Canada

This article is the first of a two-part series intended asan introduction to haptic interfaces. Together they pro-vide a general introduction to haptic interfaces, their con-struction and application design. Haptic interfaces com-prise hardware and software components aiming at provid-ing computer-controlled, programmable sensations of me-chanical nature, that is, pertaining to the sense of touch. Inthis article (Part I), we describe methods which have beenresearched and developed to date to achieve the generationof haptic sensations, the means to construct experimentaldevices of modest complexity, and the software componentsneeded to drive them. In Part II of this this series, we willdescribe some basic concepts of haptic interaction designtogether with several interesting applications based on thistechnology.

1 Introduction

Our purpose is to offer the newcomer to haptic interfacedesign a roadmap to help navigate through physical princi-ples, hardware limitations, stability issues and human per-ceptual demands that stand between her or him and theideal of touching and feeling a virtual environment throughan electromechanical device. Primary themes are aware-ness of how much performance is needed, guided by bothphysical and perceptual principles, as well as control ideas;and how different system elements may be played off oneanother to optimize a particular trait.

In the remainder of this article, we start by orienting thereader with an overview of the primary categories of hap-tic displays (Section 2). We address the most common ofthese categories in greater detail. For the relatively sim-ple topic of Vibrotactile Stimulation (Section 3), we reviewits actuators, electronics and software. Next, we addressForce Feedback, outlining the major subjects that underlycorrect performance in this much more involved category(Section 4). In addition to hardware components, these in-clude some control principles and a discussion of practicalmeans of assuring system stability. The previous materialis integrated in a simple capstone example showing howto construct and architect the control for a force feedbackknob (Section 5). We close with an example of an an emerg-ing class of haptic display which is neither vibrotactile norbased on force feedback and which is capable of shape dis-play (Section 6).

2 Device Overview

Many methods have been proposed to create haptic sensa-tions artificially. Until now, roughly four dominate. Theycan be used separately, or together in a single system.These methods comprise vibrotactile devices, force feed-back systems, surface displays, and distributed tactile dis-plays. Of these four, we discuss vibrotactile devices andforce feedback systems to the greatest extent because theyare the most researched and the most broadly applied.Implementation examples of these types of interfaces aregiven. We mention tactile displays only briefly.

2.1 Vibrotactile Devices

Many of us are familiar with the buzzing that we experiencewhen we receive a call on a mobile phone when the vibrationfunction is on. Generating these “vibrotactile” sensations isby far the easiest and currently the most widespread meansof providing haptic feedback. It can be used for many pur-poses such as providing silent and invisible alerts (pagers),warnings, messages coded temporally and spatially [1], orsonotopically [2]; with some of the earliest applications be-ing found in sensory substitution (1927) [3] and avioniccontrols (1965) [4]. Today, the dominant application of vi-brotactile devices is the haptic enhancement of games ingeneral [5], and of game controllers in particular, Figure 1.Emerging applications include directional cueing [6, 7], ad-vanced mobile phones [8], or mediation of distributed floorcontrol [9].

Figure 1: Saitek P2600 “Rumble” Game Pad.

We later see how to make simple devices that can pro-vide vibrotactile feedback where their design tradeoffs canbe seen. The interpretation of vibrotactile codes into mean-ingful sensations can be said to appeal to perception [10].

1

Authors' draft. Final version to appear in the December 2007 Issue of the IEEE Robotics and Automation Magazine

Page 2: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

2.2 Force Feedback Systems

The second approach that we would like to explore in thistutorial is the “force-feedback” interface. Where does theterm force-feedback comes from? In teleoperation, it iscustomary to designate the ideal teleoperator system as amassless, infinitely rigid stick used as a tool to work re-motely [11], see Figure 2. In this mind experiment, sincethe stick has no mass, at all times fe = −fh so an operatorwould feel the object being poked at distance as if the stickdid not exist. The idea of force-feedback in virtual realityis to replace the real object and the imaginary stick by asystem of sensors and actuators connected to a computer.If one measures the displacement, d, of the tool after firstencounter with the object, as determined by collision de-tection (all words in italics are further defined in Sidebar“Terminology”), and if we command a motor to supply aforce, fe, then theoretically the holder of the handle shouldhave a perceptual experience identical to that of poking areal object.

Figure 2: The idealized teleoperator. A tool having a givengeometry in contact with an object is operated at a distancevia the imaginary construct of a massless, infinitely rigidstick. This would be equivalent to holding the tool directly.

Clearly, this ideal is exceedingly hard to achieve for mostsurfaces and tools. For a surface of any stiffness, the re-sponse fe(d) is steep: displacements are very small andforces very high. Consider for instance the case of a woodsurface poked by a tool terminating as a rigid sphere of ra-dius, R, of 1 mm. The Young’s modulus, E, of wood is ≈10 GPa (along grain). Hertz’ equation, fe = 4

3

√REd

32 [12],

indicates that for a poking force of 2.5 N, the surface de-flection d is only of 5 µm. At this depth, the stiffness of thecontact is nearly 106 N·m−1!

Authors attempting to quantify the minimal stiffness re-quired to experience the sensation of hardness have pro-posed a figure of 104 N·m−1 [13, 11]. This stiffness, twoorders of magnitude lower than that found above, still en-tails severe equipment requirements. It is known, however,that humans do not rely on stiffness alone to judge andexperience objects. Other cues include ability to resist am-ple forces [14], high acceleration transients [15], structuralresponse [16], accentuation of rate of change of force [17],and shock [18]. It is these, sometimes together with in-voluntarily generated parasitic sounds [19], but preferablywith specifically designed audio or visual cues [20, 21], thatare responsible for the ability of force feedback devices toconvey the feeling of relatively stiff surfaces.

Another important type of interaction is dragging the

tool on the surface of the virtual object, with simulatedtexture, friction, stickyness and other surface properties.Here, the numbers are no less humbling: the most banalsurface interaction cases can vastly exceed the capabilitiesof currently available devices [22, 23]. At the most basiclevel, designers of force feedback interfaces must rely onperceptual processes to produce realistic sensations.

2.3 Surface Displays

A third category of electromechanical devices that can cre-ate artificially produced haptic sensations is the “surfacedisplay” [24]. These devices rely on the observation that thesensation of touching an arbitrary surface can be achievedby moving a real surface under computer control while sens-ing the interacting finger’s position. Recent variants ofthis idea are known as location displays [25, 26, 27], orencounter-type displays [28]; see Figure 3 for an example.

Figure 3: Location display that operates by rolling a servo-controlled plate on the fingertip as a function of the ex-ploratory movements of the finger [27].

2.4 Tactile Displays

The objective of “tactile displays” is to provide spatiallydistributed sensations directly at the skin’s surface, usu-ally on the highly sensitive fingertip. In some cases, theseare targeted at replicating sensations experienced whentouching real surfaces, e.g. Braille text, or approxima-tions thereof. In others, the approach is to produce sen-sations that do not arise naturally at all (e.g. the Optacondevice [29]). Doing justice to tactile display technologieswould require a separate article. The reader is referred to[30] which surveys no less than thirty different approachesto creating such distributed tactile sensations. For the pur-pose of this article, the authors find it impossible to suggestelectromechanical devices that can be easily commissionedgiven limited resources. In the present state of develop-ment, while certain distributed tactile display technologiesshow considerable promise [31], it is fair to say that nonecan yet provide realistic sensations, and in the best casesonly certain aspects of these sensations.

2

Page 3: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

2.5 The Art of Nonrealistic Usefulness andRealism Through Shortcuts

Fortunately, the history of displays shows that usefulnessand ability to produce realistic sensations are distinct no-tions. For instance, lcd color displays, even the most ad-vanced, are far from being capable of producing optic fieldsthat approach those produced by natural scenes, say, interms of colors, dynamics or visual span. Yet it is an every-day experience that visual displays are quite useable evenat very low quality levels, such as when watching a vintageblack-and-white movie with a 8 mm film projector, as longas the content is there and that the relevant information isavailable at the right moment and at the right place. It isnevertheless informative to know the characteristics of thenatural ambient physics to develop a sense of what remainsto be technically accomplished for the most demanding ap-plications.

3 Vibrotactile Stimulation

3.1 The Rumble Motor

The rumble motor operates on the same principle that isused in soil compacting equipment and other vibrating ma-chinery: a motor spins an eccentric mass (Figure 4). It isjust smaller. These rumble motors can be made from partsor procured ready-made from a variety of sources such aspart surpluses. The sensations created by this type of de-vice are governed by its dynamics.

Figure 4: The rumble motor. An eccentric mass spun by adc motor.

A simple off-on voltage signal applied to the motor atrest from a low impedance voltage source drives the angularvelocity in a first-order step response with a time constantequal to the spinning parts’ moment of inertia, divided by adamping coefficient resulting from friction and the motor’sback-emf. With different driving voltage amplitudes, dif-ferent plateau velocities are reached. So long as the motor’smount structure is free to vibrate (for instance when looselygripped), because of conservation of momentum, the vibra-tion’s displacement amplitude remains roughly constant re-gardless of speed. Meanwhile, the acceleration amplitude ofthe vibration grows quadratically with the angular velocity,i.e. the vibratory frequency. This invariant dynamic sig-nature is what gives the rumble motor its distinctive feel:not only are vibratory frequency and acceleration ampli-tude linked, but frequency nominally grows and decays like

the reponse of a first order system.While is not possible to change the dynamics that govern

the frequency-amplitude correlation of a rumble motor, itis possible, in open-loop, to modify the time course of theresponse. This can be done by changing the electrical char-acteristics of the power source. A minimalist approach is toswitch the motor to either a voltage source or to a currentsource. This has the effect of enabling or disabling, respec-tively, the damping term due to the motor’s back-emf. Onthe spin-up part of the response, with a current source, thespeed of the motor (and the frequency of the vibration)rises quickly until saturation. With a voltage source, thespeed adopts a first-order step response profile. Similarly,when power is switched off, the motor terminals can beleft either open or short-circuited, yielding different effectson the spin-down portion of the response. If the terminalsare left open, the spin-down is gradual but if the motor isshort-circuited, it slows down in a exponential fashion.

The other possibility is to shape the input. The simplestinstance of this technique is to drive the motor to spin-upfor a short instant and to reverse-drive it for the same du-ration. If this duration is tuned to give the motor about aturn or less, the tactile result is no longer that of a vibrationbut rather of a thump. More generally, if the dynamics ofthe system are identified then it is possible, within limits, togive the system any response we desire by shaping a giveninput using the knowledge of the motor’s inverse dynamics.It also possible to use variable structure control strategiesby switching power at high rates. Of course, all these pos-sibilities can be combined to give the humble rumble motormany more possibilities than meet the eye.

3.2 The Tactor

Since the early systematic studies on vibrotactile stimula-tion for sensory substitution of the 1920’s [32] as well asmore recent ones [33, 34], a standardized method to delivera vibrotactile stimulus is to drive a small surface of a fewmm2 area with a voice coil motor, a “tactor”, and to placeit in contact with the skin. Tactors are available from com-mercial sources (e.g. Engineering Acoustics Inc., WinterPark, fl, usa; Audiological Engineering Corp., Somerville,ma, usa). Commercial tactor drivers are sometimes de-signed to resonate at around 250 Hz, a frequency believed toprovide maximum stimulation, in the form of short burstsof signal in order to counteract sensory adaptation. Tac-tor drivers can also be made from scavenged audio speakersdrivers by providing adequate guidance to the moving coil.The approach followed in [35], for example, is simple enoughto provide the basis for many home-brew designs.

Because tactors can stimulate the skin within relativelyconfined areas, a certain degree of spatial coding on the skincan be afforded by using a collection of tactors. This hasbeen taken advantage of for lining clothing with collectionof tactors for artistic purposes [36], orienting astronauts inspace [37], directing the attention of a user [6], and manyother purposes.

3

Page 4: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

3.3 The Inertial Motor

The inertial motor combines the ability of the rumble mo-tor to efficiently vibrate a hand-held object with the voicecoil-actuated tactor’s ability to generate arbitrary vibra-tion waveforms. It is made of an inertial slug (like the rum-ble motor) but powered by an electromagnetic arrangementor a piezoelectric element. Vibrations are also induced byconservation of momentum. If the slug accelerates in onedirection, the part to which the motor is attached accel-erates in the other, at a rate proportional to the currentdriven in the coil. If the slug is sufficiently heavy, theacceleration response is flat over a wide frequency range,allowing the frequency and the acceleration amplitude, un-like with the rumble motor, to be independently specified.The response is bounded under by the natural frequencyof the suspension. While designs based on scavenged loud-speaker parts can be effective [38], this kind of motor canalso be manufactured from raw materials and supplies. Anefficient structure can be seen in Figure 5 [39]. Recently,vibrotactile devices have captured the imagination of hu-man computer interaction designers, particularly for hand-held devices. Because a hand-held device is not firmlymechanically grounded, inertial forces can be exploited tocause the screen or the case to vibrate in response to theuser’s input, using either electromagnetic of piezoelectricmotors [40, 41, 42, 43].

Coil-1 Coil-2

RubberMembranes

Field lines

1)2)

3)Magnet

Mandrel

Figure 5: A magnet is suspended between two rubber mem-branes inside a cylindrical mandrel with two coils. Themagnet is free to vibrate axially. Current flowing in thecoils crosses the magnet’s magnetic field at right angle, cre-ating an axial Lorentz force. The magnet also serves thepurpose of the inertial slug [39]. Fabrication steps: 1) coilsare wound around the mandrel, 2) conical spacers are gluedto the magnet, 3) magnet assembly is placed in the man-drel, 4) the actuator is inserted inside an outer tube (notshown in the pictures, shown is the cutaway section).

3.4 Electronics and Software

Vibrotactile sensations may be viewed as haptic sensationsbut without the “dc component” [44], i.e., only oscilla-tions and transients need to be transduced. As such, theelectronics and software are not different from that for au-dio, particularly for those devices that use voice coils. Anyelectronics and software designed for audio can be used forhaptics, with the difference that the useful frequency rangeis limited to about 1 000 Hz.

Interestingly, sound synthesis software, extensively re-searched for many decades, can be readily used for tac-tile vibrations. Ready-made real-time audio synthesis soft-ware that can modify the output waveform as a functionof external signals, e.g. other vibrations (sound) and/ordisplacement signals (mice, trackers) is particularly appro-priate [45]. More generally, the full gamut of audio synthe-sis techniques [46], is available for haptics [47, 48, 49, 50],including sampling and reproduction [51, 44]. For tactilemessages, basic software could allow the setting of param-eters familiar in audio signal design such as, ‘Frequency’,‘Waveform’, ‘Envelope’, ‘Duration’, ‘Amplitude’, ‘Delay’,‘Number of repetitions’, ‘Place of simulation’, produced ei-ther spatially or temporally, albeit with a much lower tem-poral resolution [52, 53, 45, 54].

4 Force Feedback

4.1 Scheme

To create the sensation of touching a virtual object, thephysical surface in the idealized teleoperator of Figure 2 isnow replaced by the system represented in the left part ofFigure 6. Such a scheme for virtual object haptic synthesiswas already proposed as early as 1967 for molecular dockingapplications [55], 1971 for computer-aided design [56], 1978for musical applications [57], 1984 for health care [58], and1990 for artificial reality [59].

Sampling Sensor

ReconstructionAmplifier+ Motor

Linkage(s)(+ transmissions)

Figure 6: High level block diagram of a haptic interface.The box in dotted line represent calculations done in acomputer. If the device has multiple degrees of freedom,the step fk(dk−1) include at least five sub-steps: convertraw sensor readings into meaningful units, change of coor-dinates to map sensor readings into coordinates in whichthe virtual environment is represented, map virtual envi-ronment forces into motor torques, and torques into rawactuator commands. See text for more detail.

4.2 Impedance vs. Admittance Ap-proaches

A number of different abstractions, useful for different pur-poses, have been developed to represent force feedback sys-tems. Treating this topic properly would require a separatetutorial, so only basic concepts are given here.

In closed physical systems, causes and effects are arbi-trary choices in general; they are a matter of perspective.

4

Page 5: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

But when two very dissimilar objects are coupled, then wecan have a clear notion of causality. For example, if theinternal impedance of a battery is low compared to that ofits load then we may consider that current is “caused” byvoltage (conversely voltage is “caused” by a current source).Mechanically, we say that an object has high impedance ifit is hard to move or deform (heavy or hard). The mostfundamental principle is that only one of the “effort” (e.g.voltage or force) and “flow” (e.g. current or velocity) ata given point in a system can be indepencently controlled:when pushing on a mass with a set force, then a velocityresult, and when displacing the mass with a set velocity,it responds by a force. Among other possibilities that wemust ignore, the simplest and most intuitive abstraction isto model the elements of a force feedback system as blockswith two terminals. The assumed causality is indicated byan arrow that shows which signal flows through and whichappears across the terminals. We then apply Kirkoff’s lawsof conservation.

HandDevice

Virtual Environment

HandDevice

Virtual Environment

Impedance Admittance

Figure 7: Abstracted mechanical circuits.

In the “impedance approach”, we consider circuit ele-ments which respond by a force across the terminals, asin Figure 7. A force balance equation corresponds to aclosed circuit, fh + fd + fe = 0, and mechanical couplingto common velocity (or current) vh = vd = ve. The virtualenvironment thus defined specifies the forces that are tobe generated by the device’s motors. With this approach,users feel the combined forces from the dynamics and staticsof the device and of the simulated environment in responseto moving the device. Displacement is measured. If thevirtual environment has zero impedance, the user feels themass and the friction of the device itself but her or his mo-tion is otherwise unresisted. On the other hand, preventingthe user to move corresponds to high gain feedback: thevirtual environment responds to small displacements andsmall velocities with large forces. From the standpoint ofhaptic display under impedance control, an ideal device hasa low innate mechanical impedance and a large dynamicrange because this allows the virtual environment alone todetermine the displayed impedance.

In the “admittance approach”, elements respond by a dis-placement across the terminals. A common measured forceapplied by the hand onto the device is supplied to the vir-tual environment, fh = fd = fe, and the elements are cou-pled such that now, velocities add up to zero vh+vd+ve = 0.The device is internally controlled to track the displace-

ments of the virtual environment and hence must senseforce at the point of user contact and also have displace-ment sensors for position tracking. Users feel the displace-ments of the device, hence of the simulated environmentin response to pushing on the device. If the virtual envi-ronment has zero admittance, the user feels something thatdoes not move. To move freely requires high gain feedback,that is, the device must be capable of high acceleration inresponse to small measured user forces. An ideal hapticdevice under admittance control has a low admittance.

There are truly many interesting parallels and contraststhat can be drawn between these two approaches. Eachmethod has its strengths and weaknesses. In each case, dif-ficulties arise when the assumed causalities are violated inpractice. From Figure 7 we can see that the physical devicedynamics and statics represent the “error” of the simula-tion — i.e. the difference between virtually modelled andactual behavior. In the case of impedance-type simulations,this error is the open-loop device dynamics. It is not typ-ically corrected for. For admittance-type simulations, thedevice must be run in closed loop (i.e. it relies on senseddisplacement to track the virtual environment) so its non-ideal dynamics further include those of a control algorithm.Hence in both cases, but for completely different reasons,their electromechanical design is critical.

In this tutorial we focus on the impedance approach forseveral reasons. The hardware is simpler to design and com-mission, and this is often true of the software as well. Theimpedance formulation is also inherently more appropriatewhen unimpeded motion in free space is an important as-pect of the simulation. In the remainder of this tutorial,the impedance approach is assumed and we now revert tothe “real system” depicted in Figure 6.

4.3 The Ideal vs. the Reality: Inertia,Structural Dynamics and Losses

It is apparent from the diagram in Figure 6 that a hapticsimulation is subject to a number of approximations. Thefirst offending link in the chain is the electromechanicaldevice itself: it can be neither massless nor infinitely rigid(See [60] and Sidebar “Device Performance”).

A few calculations give a sense of the orders of magni-tude involved. As a baseline, let’s first consider a high qual-ity dc motor frequently employed in haptic devices (modelre25, Maxon Motors ag, Sachseln, Switzerland, see alsoSection 5). If a 100 Hz force signal is commanded in openloop by driving a 100 Hz current through this motor, thendue to motor inertia the maximum torque available can cre-ate peak-to-peak oscillations of only 0.025. This illustratesthe inescapable fact that electric motors act as force trans-ducers only near dc; during transients and fast oscillations,the entire available torque is required simply to move themotor itself. In practice, a motor often drives a linkagethrough a transmission which further reduce these figuresby at least one order of magnitude. Consider now that atrue force transducer would require the device to be at least

5

Page 6: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

10 times lighter than the load, the same way the impedanceof a voltage source should be much lower than that of itsload. This is very difficult to achieve. The effective inertiaat the tip of the best-performing device of Sensable Inc.,the phantom 1.0 (SensAble Technologies Inc., Woburn,ma, usa), is 75 g — at least one order of magnitude tooheavy when loaded by a finger [61].

The second basic difficulty is device structural dynamics.It is difficult to avoid structural modes in the form of reso-nances and anti-resonances that can be as low as 10-30 Hz.Attempts to reduce inertia by feedback are fundamentallylimited, as just seen, by saturation and structural dynam-ics.

One should not conclude that force-feedback devices can-not work! Simply be aware of their limitations [60]. For-tunately, many useful haptic simulations operate near dc,i.e. under about 10 Hz. Such is the case of interactionwith deformable bodies, as in most surgical simulations.As far as textures are concerned, it can be shown thatdevices of the class of the phantom 1.0 do not producetextural effects that resemble, even remotely, to what wasspecified by the programmer [22]. However, when a fasthaptic signal is required, a response that is determined bythe hardware rather than by what is commanded through aprogram might, perceptually, just be good enough. If not,researchers have proposed workarounds which all have incommon correcting the displacements of the handle, eitherin closed-loop with a fast second stage for textures [62], orin open loop by input shaping for increasing the realism ofshocks via acceleration matching [18].

Losses are an important part of the dynamics of hapticdevices. Of mechanical losses, two are relevant to hapticdevices. The first arises from backlash in the joints, alwayspresent in ball-bearings. Since these losses are related tothe rate of micro-collisions during oscillations, classically itcan be modeled as “equivalent damping” [63]. The second isfriction in the motor brushes, bearings, and in the transmis-sions. Cable capstan-driven transmissions, see next section,exhibit a special type of friction with smooth transitionsdue to the distributed nature of the many interstrand con-tacts in a cable which, for small movements, create nearlyelliptical hysteresis loops (see [64] for an example). Elec-trically, the most significant are the Ohmic losses in themotors further discussed later. On one hand losses shouldbe minimized, but on the other, they play a crucial role forstabilization as we will see in Section 4.8.

4.4 Kinematic Structure

For haptic interfaces with multiple degrees of freedom(dof), see Figure 8 for examples, force feedback devices arebuilt around a kinematic structure which connects sensorsand actuators to some type of handle. These are generallyconstructed as parallel rather than serial linkages; becauseof actuator limitations, this maximizes strength, minimizesinertia and raises the first natural vibratory mode that de-termines the usable response bandwidth [65]. These same

priorities shaped the early master-arm designs [66]. For twodofs, a five-bar mechanism is the only choice, although itappears in spherical (e.g. joystick types [67]) and planarconfigurations (e.g. computer interaction [19]). As thenumber of dofs goes up, the number of possibilities ex-plodes. Further expanding the design space, each joint canbe powered with either of two predominant methods, ca-ble capstan or direct drive, and the number of sensors andactuators may differ [68].

Declaring a design to be optimal is rather difficult be-cause its properties are tightly intertwined [15]: uniformkinetostatic response [71, 72], workspace [73], force [74], dy-namics [75], mass/inertia [76], structural transparency [69,77], and other considerations such intended function, cost,bulk, visual aspect, and safety considerations are all aspectsthat depend on each other. This may explain why severalpractical designs adopt kinematic structures ranging frompartially parallel to fully parallel where both cable and di-rect drives are represented [14, 78, 69, 79, 80, 81, 82, 83,84, 85].

For the purpose of this paper, a special class of kinematicstructures worth further comment includes the string-based devices because of their relative ease of implementa-tion. Effective and structurally transparent multi degree-of-freedom force feedback devices with large workspaces canbe made without any linkages. Instead a thimble or a han-dle is driven directly with a set of taught cables [86]. Severaldesigns have emerged from this idea for different purposesand at different scales, which is a testimony to their prac-ticality [87, 88, 89, 90].

4.5 Sensors

Referring back to Figure 6, again assuming perfect mechan-ics, the next object of examination is the sensor. For animpedance controlled environment, device position must besensed. Velocities (and sometimes acceleration) are oftenused in virtual environment computations and control sta-bilization as described below, but they can be derived fromposition to a certain extent. The most common positionsensor is the optical quadrature incremental encoder. Hap-tic devices also sometimes use Hall effect analog sensors.Whether sensors are analog or digital (e.g. incrementalencoders), the dominant characteristic is resolution — thenumber of counts for incremental encoders; the noise levelfor analog sensors. It has been found that resolution is notalways important. When poking onto a wall, sensor resolu-tion, per se, has no direct effect on stability but interfereswith time sampling to create undesirable behaviors [91], asfurther discussed below. When the interaction consists oftracing a virtual surface, however, resolution is importantto display fine textures and to precisely detect movementreversals when simulating friction [22, 23].

6

Page 7: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

Figure 8: Examples of kinematic structures. Left: the kinematic structure of a phantom 1.0 device. It has a five-barregional structure that provides two dofs by deforming as a parallelogram; due to its relative link lengths, the action ofthe two motors causes largely decoupled vertical and horizontal motions of the end effector. The whole structure swivelsaround a vertical axis under the action of a third motor. A hybrid structure [14], this device employs capstan torque-amplifying transmissions combined with a clever distribution of the moving parts, and the center of mass is invariant sothe system is statically balanced. These are useful properties for haptic interfaces [69]. Right: the Pantograph device ismade of a five-bar mechanism having two dofs [70]. Since the joint axes are parallel, the tip moves in a plane, hencethe name “planar mechanism”. The actuators are stationary and drive the links directly. Figure 11 also shows a five-barmechanism frequently employed to make joysticks. But in this case, all joint axes meet at a point, has two angular dofsand is called a “spherical five-bar” [67].

4.6 Actuators

We have seen already that the actuator of choice is the dcmotor because its torque is directly proportional to cur-rent, thus suiting it to impedance control configurations.These motors come in several kinds, of which three are mostused in haptic devices. They all use Lorentz Law to gener-ate force from a current interacting with a magnetic field,but differ in the geometry of their respective electric andmagnetic circuits. The permanent magnet “wound dc mo-tor” is the most common (and least expensive), deriving itsname from the fact that the armature is wound around arotating soft iron core which is part of the magnetic cir-cuit (Gramme’s machine). The second type is the so-called“coreless motor”, so called because current flowing throughrotating copper or aluminum windings that interacts withthe magnetic field inside the air gap of an entirely fixedmagnetic circuit. The third type is the “brushless motor”so named because the magnetic field is provided by rotatingmagnets while the armature is stationary, thus eliminatingthe need for brush commutation. These primary distinc-tions are highly relevant to haptic interface design [92].

Earlier we saw that the fundamental qualities of a hapticdevice were to be both light and strong. In other words,acceleration must be maximized. It is known that the core-less motor, since it minimizes the mass of rotating material,typically performs better than the wound and brushless mo-tors in this respect. Moreover, the latter types often sufferfrom torque ripple, cogging and hysteresis, three types ofnonlinearities which are detrimental to providing preciseforce-feedback. Finally, the inductance of coreless motorsis also smaller than that of the other motor types whichcontribute to minimizing their electrical time constant. Onthe other hand, coreless motors tend to exhibit more inter-nal structural dynamics than the wound motors, so woundmotors tend to give a more damped feel to the simulations.

Brushless motors are less prone to overheating than theother two types.

4.7 Amplifiers

The amplifier, which translates a low power signal into anamplified signal able to drive a motor, is an integral com-ponent of a haptic interface system. It is often stated thatthe preferred type of amplifier regulates current as opposedto voltage (a current vs. a voltage drive), because currentregulation minimizes the effect of the motor’s electrical dy-namics resulting from its inductance. However, the elec-trical time constant of a coreless motor is actually quitesmall, by example ≈ 100 µs for the model already men-tioned, so it is reasonable to neglect it. It is also sometimesmentioned that the purpose of current regulation is to coun-teract the viscosity caused by the back-emf of a shuntedmotor. The damping coefficient corresponding to this effectfor the same motor is only 0.21 mN·m·s·rd−1. This is smallfor the speeds at which haptic devices operate, unless thetransmission uses a speed reduction/torque amplificationmechanism, since in this case, motor damping and inertiaseen from the handle are increased by the square of thetransmission ratio.

In practice, the overriding benefit of current regulationis to compensate for the sudden resistance changes duesto brush commutation as the motor rotates, and slow re-sistance changes due to variation of winding temperature.Without it, at high torques, irregularities can be felt as thebrushes slip from one collector segment to the next. It isalso highly desirable that the electrical bandwidth be farlarger than the mechanical response of the device, some-thing which is harder to guarantee with other types of mo-tors.

Finally, there are two main types of amplifiers: switching

7

Page 8: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

pwm amplifiers or analog amplifiers. Pwm amplifiers canintroduce unwanted dynamics if their design is not finelytuned to the load. They also tend to radiate electric andacoustic noise. On the other hand, they are often cheaperfor an equivalent power, and are, by principle, more efficientthan their analog counterparts. Analog amplifiers tend tobe more precise, quieter, but require cooling. Both typesare capable of voltage or current regulation if their designhas allowed for it. The careful designer should be aware ofamplifier dynamic characteristics when driving a particularmotor.

4.8 Control Issues

Referring again to Figure 6, the computed part of a force-feedback haptic simulation comprises sampling the sensors,evaluating a virtual model which in an impedance-type for-mulation specifies the forces that should be displayed inresponse to the tool’s measured displacements, and finallyreconstructing an analog signal from the digital commandwith the amplifier as destination.

As alluded to earlier, the simulation of probing or ma-nipulating of a virtual object can involve several types ofphenomena. They present challenges to satisfactorily sim-ulate of a desired virtual environment. In this subsection,we briefly survey some of these phenomena, moving fromsimplest to increasingly complex, and in the next subsec-tion we address signal reconstruction. Yet, our discussiontouches only peripherally on the very large topic of simula-tion models themselves described next.

4.8.1 Mechanics That Can be Simulated

The most basic virtual model is built on the assumptionthat the virtual object being touched is firmly anchored toa fixed frame relative to the tool, and that no slip occursbetween the tool and the object. In a nutshell, the tool-object interaction is just indentation, which is when a toolpenetrates an object by a small amount. This can be fur-ther subdivided into interactions between a hard tool and ahard object [93, 94, 95, 96], between a hard tool and a softobject [97, 98], and between two soft objects [99]. In allof these cases, the forces of deformation are the foundationof the interaction’s simulation. But of course, there can beother kinds of forces.

At the next level, we can permit a sliding contact be-tween the tool and the object. Interestingly, forces thatthen arise are also due to deformation, but of a com-bined elastic and plastic nature; and they can be computedas such [100, 101]. When the simulated surfaces are notsmooth, small oscillations should also result from the slid-ing of the parts. Basic methods to achieve all these effectsare summarized in recent surveys [102, 103, 23]. Next, theassumption of fixation for the simulated object can be re-laxed. When the object is allowed to translate, spin andbounce as well as deform, inertial forces must be added tothe equation [104, 105, 106, 107]. One may also consider

interaction with fluids [108], or both solids and fluids [109],or the forces involved in separating surfaces [110, 111].

4.8.2 Sampling and Quantization: Cross-CuttingIssues

All these possibilities — and more — are what is symbolizedby the expression fk(dk−1) in Figure 6, where for simplicity,the symbols may represent scalar or vector quantities in thecase of complex environments. The hat on the variable dexpresses the approximate nature of the knowledge of thetool displacement and the differing subscripts, k and k− 1,representing different time steps of the discrete simulation.These two aspects, which at first sight could be viewed asunimportant details, actually consolidate two cross-cuttingissues common to all of the cases just listed, from the sim-plest one-dimensional simulation of a spring to a mechanicalenvironment of arbitrary complexity. Both the space andtime approximations, which in many robotic control prob-lems can be ignored, turn out to have severe consequencesin the case of haptic simulations. For a long time, it wasnoticed that haptic simulations tend to oscillate. This isbecause the system in Figure 6 is, in essence, an unstablesystem. A simple numerical example makes this clear.

Let’s suppose that we simulate a relatively soft springof stiffness σ = 1 000 N·m−1 (a far cry from the kindof stiffness created by a hard surface) with display hard-ware that has an effective inertia of m = 0.1 kg. Be-cause of the update delay, the restoring force fk of the vir-tual spring lags behind the measured displacement dk−1,with the consequence that, during spring unloading, it isalways too large. Equate the “virtual” potential energyof the simulation, i.e. that stored in the virtual springwith the kinetic energy of the device after one time step:12 m (vk + ∆v)2 = 1

2 σ(dk + ∆d)2. Solving this for ∆v andcomparing it with the energy balance at the beginning ofthe time step, to a first order gives us ∆v =

√σ/m∆d.

If there is nothing in the system to dissipate this spuriousenergy, the simulation would actually accelerate the deviceconsiderably at each time step. Each displacement mea-surement error is magnified into a velocity error by a factor√σ/m. In our example, this factor is 100 s−1. If the haptic

simulation runs at 1 000 Hz and if we unload the simulatedspring at a rate of v = 0.1 m·s−1, then ∆d = 0.0001 mand thus ∆v = 0.01 m·s−1. Even with the conservativefigures that we have picked, in a 0.1 s interval, the devicedoubles its speed! Quantization tends to also create diffi-culties of this kind, but they are less severe, in part due totime-independence nature.

4.8.3 Stability Issues

Actual devices have nonlinearities such as actuator sat-uration, stick-slip due to friction, backlash in the joints,shifting structural modes, and so on. The simulated func-tion fk itself is rarely linear and may not even representa conservative system. The simple situation just depicted

8

Page 9: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

where the system simply “explodes” rarely occurs in prac-tice. Instead, one often observe cyclical behaviors, or limitcycles, of various frequencies. This problem has causeda considerable amount of concern since the very begin-nings of haptic simulations [112], and can be very frus-trating when attempting to implement any type of hapticsimulation. Most of the known methods for system sta-bility analysis have been applied to this problem: Routh-Hurwitz criterion [113, 114], small gain theorem [115], Jurycriterion [116], deadbeat control [117], time domain pas-sivity [118, 119, 120, 98, 121], Llewellyns stability cri-terion [122], describing function analysis [91, 123], port-Hamiltonian systems [124], Lyapunov analysis [123].

But of course a common thread underlies all these works,regardless of the approach adopted for analysis. As illus-trated earlier, this thread is rooted in the physics of closinga high-gain discrete-time loop around an imperfect elec-tromechanical system. The first paper to articulate thisquestion precisely is reference [115]. There, a passivity con-dition of the form: B ≥ 1/2σT is derived, where B is thephysical viscous damping coefficient of the device and Tthe sampling period. To gain physical insight into this ex-pression [23], one may calculate the energy lost to viscousdamping during one sample period and compare it to theenergy error due to sampling. Likewise, the energy lost todry friction can be compared with the energy error due toquantization, yielding: ff ≥ 1/2σ δ where ff is the dry fric-tion force and δ the position measurement quantum. Theseexpressions state what is obvious in hindsight: as the sam-pling period gets smaller and the sensors more precise, thesimulation can approach the continuous case. Since no mat-ter how well a device is constructed, there are always losses,however small, one can live with finite sampling and reso-lution [98]. Too much stability obtained by having a devicewith a lot of electrical and mechanical losses (Ohmic losses,viscous damping, friction) destroys the realism of a simula-tion, and not enough destroys it too; the name of the game,then, is to always keep things marginally stable!

4.8.4 Keeping Simulations “Marginally Stable”By Updating Fast

Practically, these expressions also say that it is always bet-ter to sample faster and to increase the resolution of thesensors up to the point where the inaccuracies due to sam-pling and quantization are masked by the losses present inany electromechanical system. This, therefore, consolidatesthe basic tradeoffs faced by the designers of force-feedbackhaptic simulation systems [125]. If there are more losses,then one can get away with lower rates and coarser sensors,but this evidently translates into lower fidelity in time andspace. One might have to lower expectations in terms of thedetails being conveyed (corners, textures), dynamic range(from free movement to hardness). As well, various typesof artifacts may decrease the realism of the simulation orsimply reduce the range of possibilities being afforded.

As a result, software control approaches have been pro-

posed to deal with these tradeoffs if the simulation compu-tations are too onerous to allow for a fast update rate. Soft-ware must then be organized to decouple the fast, closed-loop computations from those that do not require a rapidupdate [126, 127, 128, 129, 97]. This approach ties-in withmulti-rate techniques [130, 131, 132].

4.8.5 Keeping Simulations “Marginally Stable”By Computational Damping

Another approach is to damp the system by feedback. Un-fortunately this approach has limits, and this for two rea-sons. The first is the need to estimate velocity directlyfrom position measurements. By principle, the device ispermanently subject to disturbances so velocity observa-tion can be effective but only in the low frequencies [133].The second limitation is also due to the delay incurred inthe feedback which also is destabilizing [125].

A small numerical example is worthwhile to see that therequirements are, again, humbling. Suppose that a devicecan resolve a highly optimistic 10 µm displacement andthat the sampling rate is 1 kHz. Then, the smallest veloc-ity quantum that can be detected is 0.01 m·s−1. A velocitysignal should contain at least 10 quanta to be of any use,which puts the smallest velocity at which damping can beapplied at 0.1 m·s−1, a rather large velocity, even in theseoptimistic conditions. Worse, if position measurements aredelayed by at least one sample period, velocity measure-ments are delayed by at least two and often more, sincethey are derived from finite differences of past samples pluspossible additional smoothing. Thus, raising computationalfeedback gains invariably causes limit cycles. More elabo-rate velocity estimators can improve the results consider-ably but do not eliminate these instabilities [134, 135].

To express this fundamental tradeoff, the passivity con-dition B ≥ 1/2σT can be augmented to become B ≥1/2σT + b where b is the computational damping de-manded. Nevertheless, a popular approach is to modulatedamping from cycle to cycle, a method known as “time do-main passivity control” [120, 136]. It has been shown tobe effective if the device has sufficient inherent mechani-cal losses, but for similar reasons, it can create undesiredartifacts [137].

4.8.6 Other Approaches to Keeping Simulations“Marginally Stable”

Other approaches have been explored. Discrete-time sig-nal processing techniques have been proposed to compen-sate for the effect of delay using a prediction/correctionmethod [118]. But here again, what is gained in terms ofminimizing the effect of delay is lost in the possible creationof high-frequency artifacts. Recent hardware approachesshare the goal of introducing programmable physical damp-ing [138, 139, 137]. Finally, feeding forces in open-loop isan option that is applicable in appropriate cases [140].

As can be appreciated, this question is quite central tothe field of force-feedback haptic simulations, because if

9

Page 10: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

not addressed effectively, it can derail the best-conceivedprojects in all their other aspects. It has already, and willcontinue to generate a stream of engineering challenges andinnovations both for hardware and software.

4.9 Reconstruction

We have examined the effects of linkages and transmissions,motors and amplifiers, sensor resolution, and time samplingon a force feedback haptic simulation. The last block thatremains to be discussed is the reconstruction block in Fig-ure 6. It is, by far, the least discussed of all the componentsof a force feedback system, and yet it can play a criticalrole. The most straightforward reconstruction technique isthe zero-order hold, and this is a good choice for feedback-controlled systems. Good results require the use of an ap-propriate low-pass filter to prevent aliasing, and unwantedvibratory modes should not be excited. The topic of re-construction has received little attention to date in hapticsimulation; the natural dynamics of the amplifiers, motorsand linkages of a device are typically assumed to be ableto play this role adequately. However, when a device isdestined to operate at high frequencies where it no longerbehaves like a rigid body, then the presence or absence ofa properly designed low-pass reconstruction filter can havea dramatic effect on the result [22].

5 An Interesting Device: The Hap-tic Knob

Many of the questions that have been discussed in this arti-cle can be researched with the device depicted in Figure 9,or more generally with one degree-of-freedom devices [141],because it is capable of both vibrotactile stimulation andforce feedback. It is an uncomplicated place to begin. Wetherefore use the knob as a capstone example, to discussthe practical applications of these issues; and at the sametime introduce some basic software components.

5.1 Hardware

We have described two types of transmissions typicallyused in designing haptic interfaces: the capstan/cable driveand the direct drive. Both can easily be experimentedwith [142, 143, 144]. We also mentioned earlier two majortypes of motors: wound and coreless. Please see Table 1where we list the expected characteristics of a haptic knobbuilt with one of the commonly used dc motors, sourcedwith an attached optical encoder. The two motors havealmost the same form factor and the same nominal voltage.

The other components of an experimental system includea computer, say a pc with appropriate input-output (i/o)boards having the ability to read the encoder signals andto output a single analog voltage. Note that it is not nec-essarily the most expensive nor the most sophisticated i/oboards that gives the best result. Delay is a determinant

Knob EncoderMotor

Bracket

Figure 9: One dof Force feedback haptic interface.

factor for precise and stable haptic simulation, and there-fore plain, fast designs are preferable over slower, complex,multi-function designs. Other possibilities include single-board computers linked to a host, or dedicated i/o boardsconnected to a computer parallel port or other appropriatestandard i/o channel.

Amplifiers can be procured ready-made from commercialsources. With some engineering effort, it is also possibleto build them rather easily from monolithic power-chipssuch as the lm12cl or lm6751 or Apex Microtechnologydevices2. Both voltage or current drives can be built aroundthese chips.

5.2 Software

Real-time software is needed to experiment with hapticforce feedback or to develop an application. Figure 10 showsa bare-bones diagram of a force feedback haptic interfacesoftware diagram. It is described for a general device wherethe symbols could designate vector quantities representingforces and torques for a multi-dof system. With the hapticknob, we have one angle and one torque.

Boxes in thin black lines indicate steps that are per-formed sequentially in a “hard realtime” thread. Hard re-altime means that the computations must run at a regularrate and terminate within a predictable time interval, be-fore the next update. Regularity is required since a fixedrate is assumed by both theoretical and practical consider-ations. Updates that “jitter” or occasionally miss samplescreates “clicks and pops” in the simulation if the hardwareis responsive, or even destabilize the system in the worsecase. One must exercise caution when using realtime ex-tensions to general purpose operating systems.3 As seenearlier, rates as high at 10 kHz may be needed. Precisionshould then be of a few µs. If the simulation is “soft” or ifthe device is unresponsive, 100 Hz may suffice.

Step 1 converts raw encoder counts into physical unitssuch as radians if the device uses encoders. If it usesanalog sensors (not represented) the counters are replacedby analog-to-digital conversion associated with an optional

1http://www.national.com/mpf/LM/LM12CL.html, LM675.html2http://eportal.apexmicrotech.com/3Linux realtime frameworks have given excellent results.

10

Page 11: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

Table 1: Expected characteristics of a haptic knob constructed with a wound Pittman model 8693 motor (19 V) or acoreless Maxon model re25 motor (graphite brushes, 18 V).

Characteristic Unit Wound Coreless

Inertia (not including the inertia of the knob) (kg·m2 ×10−6) 1.6 0.95Dry friction (N·m ×10−3) 2.1 ?Viscous damping (when short-circuited) (N·m·s·rd−1 ×10−3) 0.15 0.21Peak torque (N·m ×10−3) 150 175Continuous torque (N·m ×10−3) 22 23Inductance (mH) 1.5 0.15Terminal resistance (Ω) 2.6 1.26Thermal time constant (motor/windings) (s) 720/? 910/12Encoder resolution (off-the-shelf) (cpr) 1024 1000F0 (measured when clamping down the output shaft) (Hz) ? 600

Graphic application and other slower processes

1

2

3

4

5

Counter(s)

Device

Amplifier(s)

Digital to Analog Converter(s)

Figure 10: Bare-bones software architecture for a force feed-back haptic interface. There is at least a hard realtimethread running at high rate to update forces (thin linedboxes), a slower soft realtime thread to execute computa-tions that do not require fast update rates (thick lined box),and appropriate communication between the two processes.Hardware components are indicated in grey.

over-sampling plus averaging step to reduce noise. Thedetermination of parameters a and b (denoted as scalarsby abuse of notation) may require a prior calibration step.Step 2 computes the “direct kinematic problem”, Λ(q), ifthe device has more than one degree-of-freedom. Step 3is the computation of the virtual environment proper, andmay rely on model updates from slower-running threads, asindicated. Step 4 multiplies the desired end-effector forces(and potentially torques) by the transposed Jacobian ma-trix of Λ to obtain desired joint torques, i.e. the torquesthat are required at the motor joints in order to producethose endpoint forces. Step 5 transforms these torques intorepresentations suitable for digital-to-analog conversion. Inour single-dof system, the Jacobian is a scalar gain thatmight include for example the knob radius, depending onthe anticipated user grip.

The box in thick black line contains computations thatcan be performed at a much lower rate, say the 30 Hz re-

quired for compute-intensive graphics components. Sincethe consequences of missing updates are not as severe aswhen running the haptic loop, we may be satisfied with“soft realtime”. Here we may include code related to othertypes of human-computer interaction such as mouse inputs.Proper interprocess communication must be established be-tween the hard realtime thread and slow or nondeterminis-tic events. The symbol represents communication withdata loss (implemented, for instance, with shared mem-ory plus semaphore interlock) and the symbol representscommunication without loss of data (implemented, for in-stance, with a first-in first-out queue). It is also possible toimplement this scheme using multiple cpus with communi-cation protocols that can support these functions. A natu-ral design is, of course, to dedicate a processor to the hardrealtime thread. Dedicated groups have recently createdopen-source software that operates along these lines for in-teraction with 3-dimentional virtual objects [145, 146] andfor allowing fast communication between disparate types ofmachines [147].

Notice how data loops around the Step 3, fk = F (xk−1).In Section 4.8.4 we noted the necessity to organize softwaresuch that force update computations be performed at a re-quired rate, but other computations, like graphics, need notto be performed at a rate higher than necessary. This loopexpresses a strategy whereby the slower computations ac-quire the position of the haptic device in virtual space at amuch lower rate than they are available (a down-samplingprocess with loss of data) and supply back parameters orentire functions that are valid locally in space or in time(an up-sampling process without data loss). Step 3 musttherefore perform interpolation in space, or in time, accord-ing to the methods mentioned in Section 4.8.4 in order toreconstruct samples between slow updates.

At this point, your haptic knob is ready to “roll”. Allthat is left is to program your choice of interesting behav-iors within Step 3 of your simulation algorithm, and startexperimenting [143].

11

Page 12: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

Output

Figure 11: We earlier encountered the spherical five-bar mechanism, often used to make force-feedback joysticks. For thispurpose, a vertical handle is attached to the output link in the kinematic diagram (left) [67]. In this mechanism all thejoint axes meet at one point symbolized by the black circle, and hence the handle rotates with two angular dofs aroundthis point. To make a surface display, the diagram in the middle shows a practical realization such that the point aroundwhich the plate rotates is slightly inside the user’s finger (right). In the experimental realization of the “Morpheotron” wehave used low power dc motors with precision gearheads run under pid servo [148]. Although we have not experimentedfirst hand with this option, a working device could certainly be realized with off-the-shelf radio-controlled servo drivesfor hobby applications.

6 A Simple Surface Display

In this section we describe a haptic surface display that issimple to make. Haptic shape sensations can be generatedwhen touching a flat surface that is controlled to rotatearound a fixed point. A mechanism that can convenientlybe employed is the spherical five-bar linkage illustrated anddescribed in Figure 11. If the point around which the platerotates is inside the finger by a few millimeters, then theplate rolls on the finger but the finger does not move signif-icantly. Within curvature limits, the user feels the shape ofa virtual object if the plate is servo-controlled to be tangentto its surface [148]. There are two modes of operation.

In the first mode, the device is mounted on another non-motorized mechanism to allow free exploration, say in aplane. The movements in the plane are measured to definea point in virtual space. The second mode does not re-quire any additional special-purpose hardware. Movementsin virtual space can be obtained from any ordinary inputdevice, of which many kinds exist [149], in which case thefeeling of shape is also effectively obtained during explo-ration [148].

The control software is therefore not different from anyordinary robotic device with appropriate changes of coor-dinates and servo control loops. The reference trajectory isobtained by forcing the virtual interaction point to stay onthe surface of a virtual object and by finding the normal tothe surface at this point. The overall performance of thedevice is linked to the precision and tracking performanceof the servo mechanism. The other surface display hapticdevices introduced in Section 2.3 all include the key aspectsof classical of robotic manipulators in their design.

7 Conclusion

In this first part of our series, we have introduced hapticinterfaces, the principles on which they operate and how rel-atively simple devices can be commissioned for experimen-tation with them. We have examined vibrotactile transduc-

ers and further expanded on force feedback devices becauseof their respective dominance today, the former because oftheir simplicity, and the later for their flexibility and rangeof applications. Distributed tactile transducers are still to-day at their development stage with very few examples ofcommercial developments. Surface displays and their manyvariants could develop into a new breed of haptic displays.

In the recent years, surveys emphasizing aspects of hapticinterfaces other than those explored in this tutorial werepublished and may be consulted by the readers [150, 102,151, 152].

There is more to haptic interaction than simulating in-teraction with objects that could exist [153]. In the sec-ond part of this tutorial we will explore research in hapticinteraction design and describe more fully contemporaryapplications.

8 Acknowledgments

The authors would like to acknowledge the support of theNatural Sciences and Engineering Council of Canada.

Sidebar: Haptic Device Performance

In this sidebar, we examine important facts and methodsfor force feedback device characterization [60, 154, 155, 156,157].

Rule 1: Since a haptic device is a bi-directional trans-ducer the place where measurements are made is cruciallyimportant. From the system’s view point, a response ismeasured between the motors and the displacement sen-sors. From the user’s perceptive, however, the relevant re-sponse is found where the device is touched, it is not wherethe actuators are connected.

Rule 2: As in any system, the load should be specifiedand controlled since the response and the noise critically

12

Page 13: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

depends on it.

Rule 3: If forces are measured, the force sensor should bestationary, i.e. clamped to the ground. If not, one shouldmake sure that inertial terms caused by fast movements canbe neglected or else, they must be compensated for.

Rule 4: Sensors must have sufficient resolution. (For in-stance a 400 count encoder cannot resolve oscillatory move-ments of an unloaded re25 motor beyond 10 Hz). Whenthe movements are fast and small, the accelerometer is thepreferred option.

Rule 5: Haptic devices, typically, exhibit several types ofnonlinearities. One should identify the main sources of non-linearities: saturation, motor hysteresis, friction, backlashand nonlinear structural effects are the main sources.

Sidebar: Terminology

Collision Detection: (From Section 2.2) A computa-tional process employed to determine whether objects rep-resented by their geometry in a computer interfere witheach other. This calculation is fundamental to many appli-cations of virtual reality, computer aided design, and hap-tics.

Back-EMF: (From Section 3.1) By Lorentz Force Law,a dc motor gives a torque τ = ki i given a current i. Thesame law requires that when the motor turns at angularvelocity, ω, a voltage e = ke ω is generated. This ‘elec-tromotive force’ (emf) opposes the voltage applied to themotor (back-emf). When connected to a voltage source(a ‘short’ is a zero voltage source) if R is the winding re-sistance, a current i = e/R = ke ω/R is induced. Thus,a viscous-like torque proportional to velocity, (keki/R)ω,impedes rotation. This is equivalent to viscosity and ex-plains the first order response. While this is fundamentalto the design of servomechanisms in general, in haptics, ithas several implications. Voltage determines the speed ofa free spinning motor. When a motor is used to generatetorque from a voltage, it does so only at low velocity sincethe back-EMF is like viscosity. See further discussion inSections 4.6 and 4.7.

Impedance and Admittance, Flow and Effort:(From Section 4.2) In optical, hydraulic, acoustic, me-chanic, and electrical systems there is the notion of “effort”and “flow” variables. Flow variables are connected to theposition and movement of particles, for instance mechani-cal position and velocity, or electrical charges and current.Effort variables are connected to the effect of a system ofparticles on another, for instance mechanical force or elec-trical potential. There are formal and physical analogies(non-unique) between all these domains. One of them isthe notion of impedance: the ratio of a variable of effort

over a variable of flow. For instance resistance is defined asvoltage divided by current, or mass as force over accelera-tion. Conversely, an admittance is the ratio of a variable offlow over a variable of effort.

Dynamic Range: (From Section 4.2) A general notionto express the set of possible values, from the smallest tothe largest, within which a quantity can be reliably deter-mined. It is often expressed as a ratio in dB (several pos-sible conventions, here: 10 log10(max/min)). For instance,for the motor in Table 1 from the peak torque to the small-est torque determined by friction gives a ratio of roughly100 or 20 dB of torque dynamic range. As points of compar-ison, an lcd display gives about 30 dB of brightness rangeand high-end audio systems more than 50 dB of acousticpressure range.

Transducer: (From Section 4.3) A device to convert en-ergy from one form to another. It might function as eithera sensor or an actuator and occasionally as both. An idealtransducer does this without losses nor nonlinearities overan infinite frequency range. Thus, an ideal actuator usedas a force transducer for haptics would convert current totorque with uniform gain regardless of frequency. As a sen-sor an ideal transducer does not disturb the process beingmeasured, has low noise and is generally desired to be lin-ear.

Structural Dynamics: (From Section 4.3) Beyond acertain frequency most mechanical systems do not movelike a set of rigid parts. Inertial forces cause the parts toflex and bend resulting in a variety of linear and nonlineareffects. So is the case of haptic force feedback devices. Forinstance, just below a resonant frequency, a motor move-ment may be causing the handle to move in one direction,yet at frequency a few Hz higher, the same motor move-ment may cause the handle to move in the opposite direc-tion. The analysis and control of these dynamics can beextremely complicated which is why the lowest frequency,called the first natural frequency, at which structural dy-namics appear (first mode) is an important characteristic.

Degrees of freedom (dof): (From Section 4.4) In me-chanics: the number of independent variables needed tospecify the position of a system of particles. A rigid bodyfree to move in space has six (three translational and threerotational), whereas a simple knob anchored in space hasonly one, its rotation. Joints introduce constraints andleave freedoms. The most common joint, the hinge, in-troduces five constraints and leave one angular freedom.

Serial vs Parallel Linkages: (From Section 4.4) Mech-anisms are made of links connected by joints. See examplebelow. If a sequence of links and joints forms at least oneclosed loop, the mechanism is said to parallel, otherwise itis serial.

13

Page 14: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

Five-bar linkage: (From Section 4.4) A type of mecha-nism with five links and five joints that has two degrees offreedom. A system of 5 links connected by 5 joints to forma loop retain two degrees of freedoms under two special cir-cumstances: when the joints axes are parallel or they meetat a single point. Parallel axes joints permit planar motionsand meeting axes permit angular motions.

Capstan drive: (From Section 4.4) If a string, a rope, atape, or a cable is wound around a cylinder—a capstan—then to a good approximation the ratio of the tensions ofthe taught sections is an exponential function of the wind-ing angle [158]. The driven load is the difference betweenthe two tensions. It can be much higher than the tensionat rest. Capstan drives are backlash-free and can operatesuccessfully even with modest manufacturing and assemblytolerances. Master arms and haptic devices frequently usethis technique to amplify torque.

Direct drive: (From Section 4.4) The motor is connecteddirectly to the load without a torque amplifying mecha-nism. Advantages are simplicity and lack of the backlashor friction present in most transmissions.

Quadrature Incremental Encoder: (From Sec-tion 4.5) A frequently used type position sensor whichdirectly quantizes displacement, most often optically. Thesign of one increment of displacement is coded by using twosignals in phase quadrature. A displacement measurementis simply done by counting the increments. Inexpensivemodels give a few tens or hundreds of increments per turn.Sophisticated models can give 105 or 106 increments perturn.

Hall Effect Position Sensor: (From Section 4.5) Some-times, better results or cost/performance ratios can be ob-tained for haptic devices by using analog position sensorsgiving a signal that is digitized electronically. Position sen-sors relying on the Hall effect where a voltage varies as afunction of the intensity of a magnetic field is the most oftenused type of analog position sensor. They can be made ofelementary components and very accurate ready-made sen-sors can be procured. Typically, the range of displacementmust be smaller than a turn.

Motor Torque Ripple: (From Section 4.6) A dc motorgives a torque proportional to the current. The proportion-ality factor can noticeably depend on the angle of the rotorin a cyclical manner. This dependency is related to polesand windings. It can also arise when the brushes commutedifferent windings. This can taint the haptic feel at hightorques.

Motor Cogging: (From Section 4.6) Certain dc motorsexhibit spontaneous cyclical variations of torque as they

turn, due to changes of reluctance in the magnetic circuit.This can taint the haptic feel at low torques.

Hysteresis: (From Section 4.6) If a system with inputs,outputs, and states is such that its outputs depend not onlyon inputs and states but also on its time history, then it issaid to have hysteresis. It can be detected by slowly drivinga system once through a closed trajectory and noticing thatthe outputs do not return to their initial state. Severalcomponents of a haptic interface can exhibit this kind ofnonlinearity.

Power Amplifier, Voltage vs. Current: (From Sec-tion 4.7) Electronic device able to step up the power ofa control signal. Voltage amplifiers regulate voltage inter-nally and therefore have a low internal impedance and sat-urate, typically, when the current is too high to maintain ademanded voltage. Conversely, current amplifiers regulatecurrent, have a high internal impedance and saturate whenthe voltage becomes too high to deliver a required current.In either case, the circuit can be analog (also said linear) orswitching (also said digital). In the switching types, powermodulation is achieved by driving the signal full range athigh frequency from one polarity to the other and by vary-ing the ‘duty cycle’, that is, the proportion of time spentin one state vs. the other.

Limit cycle: (From Section 4.8.3) When a system ex-hibits a self-sustained oscillation that persists even if it isperturbed and when the amplitude of the oscillation re-mains bounded, this system is said to enter a limit cycle.For a limit cycle to exist, the system must have nonlinear-ities, the most common of which is saturation. In haptics,artifacts tainting a simulation often can be explained by theonset of limit cycles.

Passivity: (From Section 4.8.3) In control, a system issaid to be passive if at all times the energy supplied is al-ways greater than or equal to the energy stored in it; i.e.the energy is not supplied from within the system. A simu-lated haptic virtual environment is said to be passive if theenergy supplied to the hand does not exceed the energy sup-plied by it. This is a desirable quality due to the fact thatthe interaction of the human hand with a passive object(real or simulated) is in general non-oscillatory. While thehuman can and does act as a power source, our biomechan-ics and motor control are such that a hand appears to bepassive in the high frequencies (i.e. above 10 Hz roughly).An interesting exception is the drum roll which can be de-scribed as an interaction of the hand with a passive object,yet it enters a fast limit-cycle.

Zero-Order Hold (zoh): The most common method toperform analog signal reconstruction from discrete samples.The analog output is held constant from one sample to

14

Page 15: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

the next, resulting in a staircase-shaped signal containinga (theoretically) infinite number of high frequencies.

References

[1] C. E. Sherrick, “Basic and applied research on tactileaids for deaf people: Progress and prospects,” Jour-nal of Acoustical Society of America, vol. 75, no. 5,pp. 1325–1342, 1984.

[2] P. Brooks and B. Frost, “Evaluation of a tactilevocoder for word recognition,” Journal of AcousticalSociety of America, vol. 74, no. 34–39, 1983.

[3] R. H. Gault, ““Hearing” through the sense organs oftouch and vibration,” Journal of the Franklin Insti-tute, vol. 204, pp. 329–358, 1927.

[4] R. H. Cook, “An automatic stall prevention controlfor supersonic fighter aircraft,” Journal of Aircraft,vol. 2, no. 3, pp. 171–175, 1965.

[5] S.-Y. Kim, K. Y. Kim, B. S. Soh, G. Yang, and S. R.Kim, “Vibrotactile rendering for simulating virtualenvironment in a mobile game,” IEEE Transactionson Consumer Electronics, vol. 52, no. 4, pp. 1340–1347, 2006.

[6] H. Z. Tan, R. Gray, J. J. Young, and R. Traylor,“A haptic back display for attentional and directionalcueing,” Haptics-E: The Electronic Journal of Hap-tics Research, vol. 3, no. 1, 2003.

[7] R. W. Lindeman, A. J. L. Sibert, A. E. Mendez-Mendez, A. S. Patil, and A. D. Phifer, “Effective-ness of directional vibrotactile cuing on a building-clearing task,” in Proceedings of the SIGCHI con-ference on Human factors in computing systems,CHI’05, pp. 271–280, ACM Press, 2005.

[8] L. M. Brown and T. Kaaresoja, “Feel who’s talking:using tactons for mobile phone alerts,” in Proceedingsof the SIGCHI conference on Human factors in com-puting systems, CHI’06: extended abstracts on Hu-man factors in computing systems, pp. pp. 604–609,ACM Press, 2006.

[9] A. Chan, K. E. MacLean, and J. McGrenere, “De-signing haptic icons to support collaborative turn-taking,” International Journal of Human ComputerStudies, To appear, 2007.

[10] K. MacLean and M. Enriquez, “Perceptual design ofhaptic icons,” in Proceedings of Eurohaptics, (Dublin,Ireland), 2003.

[11] D. A. Lawrence and J. D. Chapel, “Performancetrade-offs for hand controller design,” in Proceedingsof the IEEE International Conference on Roboticsand Automation, pp. 3211–3216, 1994.

[12] K. L. Johnson, Contact mechanics. Cambridge Uni-versity Press, 1985.

[13] L. B. Rosenberg and B. D. Adelstein, “Perceptualdecomposition of virtual haptic surfaces,” in Proceed-ings of the Symposium on Research Frontiers in Vir-tual Reality, pp. 23–26, 1993.

[14] T. H. Massie and J. K. Salisbury, “The PHANToMhaptic interface: A device for probing virtual ob-jects,” in Proceedings ASME IMECE Symposium onHaptic Interfaces for Virtual Environments and Tele-operator Systems, DSC-Vol. 55-1, pp. 295–299, 1994.

[15] V. Hayward, J. Choksi, G. Lanvin, and C. Ramstein,“Design and multi-objective optimization of a linkagefor a haptic interface,” in Advances in Robot Kine-matics (J. Lenarcic and B. Ravani, eds.), pp. 352–359,Kluver Academic, 1994.

[16] A. Okamura, J. T. Dennerlein, and R. D. Howe, “Vi-bration feedback models for virtual environments,”in Proceedings of IEEE International Conference onRobotics and Automation, vol. 3, pp. pp. 2485–2490,1998.

[17] D. A. Lawrence, L. Y. Pao, A. M. Dougherty, M. A.Salada, and Y. Pavlou, “Rate-hardness: A new per-formance metric for haptic interfaces,” IEEE Trans-actions on Robotics and Automation, vol. 16, no. 4,pp. 357–371, 2000.

[18] K. J. Kuchenbecker, J. Fiener, and G. Niemeyer, “Im-proving contact realism through event-based hapticfeedback,” IEEE Transactions on Visualization andComputer Graphics, vol. 12, no. 2, pp. 219–230, 2006.

[19] C. Ramstein and V. Hayward, “The pantograph:A large workspace haptic device for a multi-modalhuman-computer interaction,” in Proceedings of theSIGCHI conference on Human factors in computingsystems, CHI’04, ACM/SIGCHI Companion-4/94,pp. 57–58, 1994.

[20] F. Avanzini and P. Crosato, “Integrating physicallybased sound models in a multimodal rendering archi-tecture,” Computer Animation and Virtual Worlds,vol. 17, no. 3-4, pp. 411–419, 2006.

[21] J. Sreng, A. Lecuyer, C. Megard, and C. Andriot,“Using visual cues of contact to improve interactivemanipulation of virtual objects in industrial assem-bly/maintenance simulations,” IEEE Transactionson Visualization and Computer Graphics, vol. 12,no. 5, pp. 1013–1020, 2006.

[22] G. Campion and V. Hayward, “Fundamental limits inthe rendering of virtual haptic textures,” in Proceed-ings of the First Joint Eurohaptics Conference andSymposium on Haptic Interfaces for Virtual Environ-ment and Teleoperator Systems, World Haptics 2005,pp. 263–270, 2005.

15

Page 16: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

[23] V. Hayward, “Physically-based haptic synthesis,” inHaptic Rendering: Foundations, Algorithms and Ap-plications (M. Lin and M. Otaduy, eds.), p. in press,A. K. Peters, Ltd, 2007.

[24] K. Hirota and M. Hirose, “Development of surfacedisplay,” in Proceedings of the IEEE Virtual RealityAnnual International Symposium, pp. 256–262, 1993.

[25] W. R. Provancher, M. K. Cutkosky, K. J. Kuchen-becker, and G. Niemeyer, “Contact location displayfor haptic perception of curvature and object mo-tion,” International Journal of Robotics Research,vol. 24, no. 9, pp. 1–11, 2005.

[26] H. Dostmohamed and V. Hayward, “Contact locationtrajectory on the fingertip as a sufficient requisite forillusory perception of haptic shape and effect of mul-tiple contacts,” in Multi-point Interaction with Realand Virtual Objects (D. Prattichizzo and K. Salis-bury, eds.), vol. 18 of Springer Tracts in AdvancedRobotics, pp. 189–198, Springer Verlag, 2005.

[27] M. Solazzi, A. Frisoli, F. Salsedo, and M. Bergam-asco, “A fingertip haptic display for improving localperception of shape cues,” in Proceedings of the Sec-ond Joint Eurohaptics Conference and Symposium onHaptic Interfaces for Virtual Environment and Tele-operator Systems, World Haptics 2007, pp. 409–414,2007.

[28] Y. Yokokohji, N. Nuramori, Y. Sato, andT. Yoshikawa, “Designing an encountered-typehaptic display for multiple fingertip contacts basedon the observation of human grasping behaviors,”International Journal of Robotics Research, vol. 24,no. 9, pp. 717–729, 2005.

[29] J. Bliss, M. Katcher, C. Rogers, and R. Shep-ard, “Optical-to-tactile image conversion for theblind,” IEEE Transactions on Man-Machine Sys-tems, vol. 11, no. 1, pp. 58–65, 1970.

[30] J. Pasquero, “Survey on communication throughtouch,” Tech. Rep. TR-CIM 06.04, Center for Intelli-gent Machines - McGill University, 2006.

[31] J. Luk, J. Pasquero, S. Little, K. MacLean,V. Levesque, and V. Hayward, “A role for hapticsin mobile interaction: Initial design using a hand-held tactile display prototype,” in Proceedings of theSIGCHI conference on Human factors in computingsystems, CHI06, pp. 171–180, 2006.

[32] R. H. Gault, “Recent developments in vibro-tactileresearch,” Journal of the Franklin Institute, vol. 221,pp. 703–719, 1936.

[33] R. T. Verrillo, “Effect of contactor area on the vibro-tactile threshold,” Journal of the Acoustical Societyof America, vol. 35, no. 12, pp. 1962–1966, 1963.

[34] C. Lenay, S. Canu, and P. Villon, “Technology andperception: The contribution of sensory substitu-tion systems,” in Proceedings of the 2nd InternationalConference on Cognitive Technology, pp. 44–53, 1997.

[35] J. T. Dennerlein, P. A. Millman, and R. D. Howe,“Vibrotactile feedback for industrial telemanipula-tors,” in Proceedings of the sixth Symposium on Hap-tic Interfaces for Virtual Environment and Teleoper-ator Systems, vol. 61, pp. 189–195, 1997.

[36] E. Gunther and O’Modhrain, “Cutaneous grooves:Composing for the sense of touch,” Journal of NewMusic Research, vol. 32, no. 4, pp. 369–381, 2003.

[37] J. B. van Erp and H. A. H. van Veen, “Touch down:The effect of artificial touch cues on orientation inmicrogravity,” Neuroscience Letters, vol. 404, pp. 78–82, 2006.

[38] D. A. Kontarinis and R. D. Howe, “Tactile display ofvibratory information in teleoperation and virtual en-vironments,” Presence: Teleoperators & Virtual En-vironments, vol. 4, no. 4, pp. 387–402, 1995.

[39] H.-Y. Yao, “Touch magnifying instrument for mini-mally invasive surgery,” Master’s thesis, Departmentof Electrical and Computer Engineering, McGill Uni-versity, 2004.

[40] M. Fukumoto and T. Sugimura, “Active click: tac-tile feedback for touch panels,” in CHI ’01: Extendedabstracts on Human factors in computing systems,pp. 121–122, ACM Press, 2001.

[41] I. Poupyrev, S. Maruyama, and J. Rekimoto, “Am-bient touch: designing tactile interfaces for hand-held devices,” in Proceedings of the 15th annual ACMsymposium on user interface software and technologyUIST ’02, (New York, NY, USA), pp. 51–60, ACMPress, 2002.

[42] J. Linjama, J. Hakkila, and S. Ronkainen, “Hands onhaptics: Exploring non-visual visualisation using thesense of touch,” in CHI 2005 Workshop on Hands onHaptics: Exploring Non-Visual Visualisation Usingthe Sense of Touch, 2005.

[43] J. Williamson, R. Murray-Smith, and S. Hughes,“Shoogle: excitatory multimodal interaction on mo-bile devices,” in Proceedings of the SIGCHI confer-ence on Human factors in computing systems, CHI’07, pp. 121–124, 2007.

[44] H.-Y. Yao, V. Hayward, and R. E. Ellis, “A tac-tile enhancement instrument for minimally invasivesurgery,” Computer Aided Surgery, vol. 10, no. 4,pp. 233–239, 2005.

16

Page 17: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

[45] J. Rovan and V. Hayward, “Typology of tactilesounds and their synthesis in gesture-driven computermusic performance,” in Trends in Gestural Control ofMusic, (Paris), pp. 297–320, IRCAM, 2000.

[46] P. R. Cook, Real Sound Synthesis for Interactive Ap-plications. A. K. Peters, Ltd, 2002.

[47] D. DiFilippo and D. K. Pai, “Contact interactionwith integrated audio and haptics,” in Proceedingsof the International Conference on Auditory Display,ICAD, 2000.

[48] A. Crossan, J. Williamson, and R. Murray-Smith,“Haptic granular synthesis: Targeting, visualisationand texturing,” in Proceedings of the InternationalSymposium on Non-visual & Multimodal Visualiza-tion, pp. 527–532, IEEE press, 2004.

[49] D. M. Howard and S. Rimell, “Real-time gesture-controlled physical modelling music synthesis withtactile feedback,” EURASIP Journal on Applied Sig-nal Processing, vol. 7, pp. 1001–1006, 2004.

[50] H.-Y. Yao and V. Hayward, “An experiment onlength perception with a virtual rolling stone,” inProceedings of Eurohaptics, pp. 325–330, 2006.

[51] D. K. Pai and P. R. Rizun, “The WHaT: A wire-less haptic texture sensor,” in Proceedings of the 11thSymposium on Haptic Interfaces for Virtual Environ-ment and Teleoperator Systems, 2003.

[52] H. Tan, N. Durlach, C. Reed, and W. Rabinowitz,“Information transmission with a multifinger tactualdisplay,” Perception & Psychophysics, vol. 61, no. 6,pp. 993–1008, 1999.

[53] Tactaid, “Tactaid 7.” http://tactaid.com/.

[54] E. Hoggan and S. Brewster, “New parameters for tac-ton design,” in Proceedings of the SIGCHI conferenceon Human factors in computing systems, CHI’07,pp. 2417–2422, 2007.

[55] F. P. Brooks, Jr., M. Ouh-Young, J. J. Batter, andP. J. Kilpatrick, “Project GROPE haptic displaysfor scientific visualization,” in Proceedings of Con-ference on Computer graphics and Interactive Tech-niques, SIGGRAPH’90, pp. 177–185, 1990.

[56] A. M. Knoll, Man-Machine Tactile Communication.PhD thesis, Polytechnic Institute, Brooklyn, NewYork, 1971.

[57] C. Cadoz, A. Luciani, and J. Florens, “Responsiveinput devices and sound synthesis by simulation ofinstrumental mechanisms: The CORDIS system,”Computer Music Journal, vol. 8, no. 3, pp. 60–73,1984.

[58] M. J. Rosen and B. D. Adelstein, “Design of atwo degree-of-freedom manipulandum for tremor re-search,” in Proceedings of the IEEE Frontiers of En-gineering and Computing in Health Care, pp. 47–51,1984.

[59] H. Iwata, “Artificial reality with force-feedback: de-velopment of desktop virtual space with compactmaster manipulator,” ACM SIGGRAPH ComputerGraphics, vol. 24, no. 4, pp. 165–170, 1990.

[60] V. Hayward and O. R. Astley, “Performance mea-sures for haptic interfaces,” in Robotics Research:The 7th International Symposium (G. Giralt andG. Hirzinger, eds.), (Heidelberg), pp. 195–207,Springer Verlag, 1996.

[61] A. Z. Hajian and R. D. Howe, “Identification ofthe mechanical impedance at the human finger tip,”Journal of Biomechanical Engineering, vol. 119,no. 109–114, 1997.

[62] S. A. Wall and W. Harwin, “A high bandwidth inter-face for haptic human computer interaction,” Mecha-tronics, vol. 11, no. 4, pp. 371–387, 2001.

[63] S. Dubowsky and F. Freudenstein, “Dynamic analysisof mechanical systems with clearances,” Transactionof the American Society of Mechanical Engineers, B,vol. 93, pp. 305–316, 1971.

[64] A. Janot, C. Bidard, F. Gosselin, M. Gautier,D. Keller, and Y. Perrot, “Modeling and identifica-tion of a 3 dof haptic interface,” in Proceedings ofthe IEEE International Conference on Robotics andAutomation, pp. 4949–4955, 2007.

[65] M. D. Bryfogle, C. C. Nguyen, S. S. Antiazi, andP. C. Chiuo, “Kinematics and control of a fully par-allel force-reflecting hand controller for manipulatorteleoperation,” Journal of Robotic Systems, vol. 10,no. 5, pp. 745–766, 1993.

[66] J. Vertut and A. Liegeois, “General design criteriafor manipulators,” Mechanisms and Machine Theory,vol. 16, no. 1, pp. 65–70, 1981.

[67] B. D. Adelstein and M. J. Rosen, “Design andimplementation of a force reflecting manipulandumfor manual control research.,” in Proceedings ofthe ASME Dynamic Systems and Control Division,vol. 42, pp. 1–12, 1992.

[68] F. Barbagli and J. K. Salisbury, “The effect of sen-sor/actuator asymmetries in haptic interfaces,” Pro-ceedings of the 11th Symposium on Haptic Interfacesfor Virtual Environment and Teleoperator Systems,pp. 140–147, 2003.

17

Page 18: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

[69] V. Hayward, P. Gregorio, O. Astley, S. Greenish,M. Doyon, L. Lessard, J. McDougall, I. Sinclair,S. Boelen, X. Chen, J.-P. Demers, J. Poulin, I,Benguigui, N. Almey, B. Makuc, and X. Zhang,“Freedom-7: A high fidelity seven axis haptic devicewith application to surgical training,” in Experimen-tal Robotics V (A. Casals and A. T. de Almeida, eds.),vol. 232 of Lecture Notes in Control and InformationScience, pp. 445–456, Springer Verlag, 1998.

[70] G. Campion, Q. Wang, and V. Hayward, “The Pan-tograph Mk-II: A haptic instrument,” in Proceedingsof the IEEE/RSJ International Conference on Intel-ligent Robots and Systems, IROS’05, pp. 723–728,2005.

[71] A. Frisoli, G. Prisco, F. Salsedo, and M. Bergam-asco, “A two degrees-of-freedom planar haptic inter-face with high kinematic isotropy,” in Proceedingsof the 8th IEEE International Workshop on Robotand Human Interaction, RO-MAN’99., pp. 297–302,1999.

[72] J. L. Stocco, S. E. Salcudean, and F. Sassani, “Opti-mal kinematic design of a haptic pen,” IEEE/ASMETransactions on Mechatronics, vol. 6, no. 3, pp. 210–220, 2001.

[73] L. Birglen, C. Gosselin, N. Pouliot, B. Monsarrat,and T. Laliberte, “SHaDe, a new 3-dof haptic de-vice,” IEEE Transactions on Robotics and Automa-tion, vol. 18, no. 2, pp. 166–175, 2002.

[74] P. Buttolo and B. Hannaford, “Pen-based force dis-play for precision manipulation in virtual environ-ments,” in Proceedings of Virtual Reality Annual In-ternational Symposium, pp. 217–224, 1995.

[75] J. Yoon and J. Ryu, “Design, fabrication, and eval-uation of a new haptic device using a parallel mech-anism,” IEEE/ASME Transactions on Mechatronics,vol. 6, no. 3, pp. 221–233, 2001.

[76] K. Vlachos, E. Papadopoulos, and D. N. Mitropou-los, “Mass/inertia and joint friction minimization fora low-force five-dof haptic device,” in Proceedings ofIEEE International Conference on Robotics and Au-tomation, vol. 1, pp. 286–291, 2004.

[77] R. Hui, A. Ouellet, A. Wang, P. Kry, S. Williams,G. Vukovich, and W. Peruzzini, “Mechanisms forhaptic feedback,” in Proceedings of the IEEE In-ternational Conference on Robotics and Automation,vol. 2, pp. 2138–2143, 1995.

[78] “Sensable Phantom.” http://sensable.com/products-haptic-devices.htm.

[79] “MPB Technologies Freedom Devices.” http://www.mpb-technologies.ca/mpbt/haptics/hand_controllers/haptics_index.html.

[80] “Haption Virtuoso.” http://haption.com/index.php?lang=eng&p=2.

[81] “Quanser Haptic Devices.” http://www.quanser.com/.

[82] “Ergos Technologies Interfaces.” http://acroe.imag.fr/ergos-technologies/.

[83] “Force Dimension Omega.” http://www.forcedimension.com/fd/avs/home/.

[84] “Immersion Corporation Impulse Stick.”http://www.immersion.com/industrial/joystick/impulse_stick.php.

[85] “Novint Falcom.” http://home.novint.com/products/novint_falcon.php.

[86] M. L. Agronin, “The design of a nine-string sixdegree-of-freedom force-feedback joystick for telema-nipulation,” in Proceedings of the NASA Workshopon Space Telerobotics, (Pasadena, CA), pp. 341–348,1987.

[87] M. Ishii and M. Sato, “A 3D spatial interface de-vice using tensed strings,” Presence: Teleoperatorsand Virtual Environments, vol. 3, no. 1, pp. 81–86,1994.

[88] C. Melchiorri and G. Vassura, “Development and ap-plication of wire-actuated haptic interfaces,” Journalof Robotic Systems, vol. 18, no. 12, pp. 755–768, 2001.

[89] N. G. Ullrich, G. Di Lieto, F. Salsedo, and M. Berga-masco, “Design and optimization of a purely rota-tional 3-dof haptic device,” in Proceedings of the 10thIEEE International Workshop on Robot and HumanInteractive Communication, pp. 100–105, 2001.

[90] J. Murayama, L. Bougrila, Y. Luo, K. Akahane,S. Hasegawa, B. Hirsbrunner, and M. Sato, “SPIDARG&G: A two-handed haptic interface for bimanualVR interaction,” Proceedings of EuroHaptics 2004,pp. 138–146, 2004.

[91] C. J. Hasser, The Effects Of Displacement Quantiza-tion And Zero-Order Hold On The Limit Cycle Be-havior Of Haptic Knobs. PhD thesis, Mechanical En-gineering, Stanford University, Stanford, California,December 2001.

[92] V. Hayward, “Toward a seven axis haptic interface,”in Proceedings of the IEEE/RSJ International Con-ference on Intelligent Robots and Systems, IROS’05,vol. 3, pp. 133–139, 1995.

[93] C. B. Zilles and J. K. Salisbury, “A constraint-basedgod object method for haptic display,” in Proceedingsof the IEEE/RSJ International Conference on Intel-ligent Robots and Systems, IROS’95, vol. 3, pp. 146–151, 1995.

18

Page 19: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

[94] S. E. Salcudean and T. D. Vlaar, “On the emulationof stiff walls and static friction with a magneticallylevitated inputoutput device,” Journal of DynamicalSystems, vol. 119, no. 127–132, 1997.

[95] K. J. Salisbury, D. Brock, T. Massie, N. Swarup, andC. Zilles, “Haptic rendering : Programming touch in-teraction with virtual objects,” in Proceedings Sym-posium on Interactive 3D Graphics, (New York, NY,USA), pp. 123–130, ACM Press, 1995.

[96] D. Constantinescu, S. E. Salcudean, and E. A. Croft,“Haptic rendering of rigid contacts using impulsiveand penalty forces,” IEEE Transactions on Robotics,vol. 21, no. 3, pp. 309–323, 2005.

[97] D. L. James and D. K. Pai, “A unified treatmentof elastostatic and rigid contact simulation for realtime haptics,” Haptics-E: Electronic Journal of Hap-tics Research, vol. 2, no. 1, 2001.

[98] M. Mahvash and V. Hayward, “High fidelity hapticsynthesis of contact with deformable bodies,” IEEEComputer Graphics and Applications, vol. 24, no. 2,pp. 48–55, 2004.

[99] C. Duriez, F. Dubois, A. Kheddar, and C. Andriot,“Realistic haptic rendering of interacting deformableobjects in virtual environments,” IEEE Transactionson Visualization and Computer Graphics, vol. 12,no. 1, pp. 36–47, 2006.

[100] V. Hayward and B. Armstrong, “A new computa-tional model of friction applied to haptic render-ing,” in Experimental Robotics VI (P. Corke andJ. Trevelyan, eds.), vol. 250 of Lecture Notes in Con-trol and Information Sciences, pp. 403–412, 2000.

[101] R. Kikuuwe, N. Takesue, A. Sano, H. Mochiyama,and H. Fujimoto, “Admittance and impedance repre-sentations of friction based on implicit euler integra-tion,” IEEE Transactions on Robotics, vol. 22, no. 6,pp. 1176–1188, 2006.

[102] J. K. Salisbury, F. Conti, and F. Barbagli, “Hapticrendering: introductory concepts,” IEEE ComputerGraphics and Applications, vol. 24, no. 2, pp. 24–32,2004.

[103] M. A. Otaduy and M. C. Lin, “Introduction to hapticrendering,” in SIGGRAPH ’05: ACM SIGGRAPH2005 Courses, pp. A3–A33, ACM Press, 2005.

[104] T. Yoshikawa, Y. Yokokohji, T. Matsumoto, andX.-Z. Zheng, “Display of feel for the manipulationof dynamic virtual objects,” Transactions of theASME, Journal of Dynamic Systems, Measurement,and Control, vol. 117, no. 4, pp. 554–558, 1995.

[105] R. B. Gillespie, “Kane’s equations for haptic displayof multibody systems,” Haptics-E: Electronic Journalof Haptics Research, vol. 3, no. 2, 2003.

[106] D. Ruspini and O. Khatib, “A framework for multi-contact multi-body dynamic simulation and hapticdisplay,” in Proceedings of the IEEE/RSJ Interna-tional Conference on Intelligent Robots and Systems,pp. 1322–1327, 2000.

[107] Q. Luo and J. Xiao, “Physically accurate haptic ren-dering with dynamic effects,” IEEE Computer Graph-ics and Applications, vol. 24, no. 6, pp. 60–69, 2004.

[108] W. Baxter and M. C. Lin, “Haptic interaction withfluid media,” in Proceedings of Graphics Interface2004, pp. 81–88, 2004.

[109] A. H. Gosline and S. E. Salcudean, “Haptic simu-lation of linear elastic media with fluid inclusions,”Haptics-E: Electronic Journal of Haptics Research,vol. 3, 2005.

[110] M. Mahvash and V. Hayward, “Haptic rendering ofcutting: A fracture mechanics approach,” Haptics-e,vol. 2, no. 3, p. , 2001.

[111] M. Mahvash, “A novel approach for modeling separa-tion forces between deformable bodies,” IEEE Trans-actions on Information Technology in Biomedecine,vol. 10, no. 3, pp. 618–626, 2006.

[112] M. Minsky, O. Ming, O. Steele, F. Brooks, Jr., andM. Behensky, “Feeling and seeing: issues in forcedisplay,” Proceedings of Conference on Computergraphics and Interactive Techniques, SIGGRAPH’90,vol. 24, no. 2, pp. 235–241, 1990.

[113] E. Bonneton, “Pantograph project, Chapter: Imple-mentation of a virtual wall,” tech. rep., Center forIntelligent Machines, McGill University, 1994.

[114] J. J. Gil, E. Sanchez, T. Hulin, C. Preusche, andG. Hirzinger, “Stability boundary for haptic render-ing: Influence of damping and delay,” in Proceedingsof the IEEE International Conference on Roboticsand Automation, pp. 124–129, 2007.

[115] J. E. Colgate and G. Schenkel, “Passivity of a classof sampled-data systems: Application to haptic inter-faces,” in Proceedings of the American Control Con-ference, pp. 3236–3240, 1994.

[116] L. Love and W. Book, “Contact stability analysisof virtual walls,” in Proceedings of the ASME Dy-namic Systems and Control Division, vol. DSC-Vol.57, pp. 689–694, 1995.

[117] B. Gillespie and M. Cutkosky, “Stable user-specificrendering of the virtual wall,” in Proceedings ofthe ASME Dynamic Systems and Control Division,vol. DSC-Vol. 58, pp. 397–406, 1996.

[118] R. Ellis, N. Sarkar, and M. A. Jenkins, “Numericalmethods for the force reflection of contact,” ASME

19

Page 20: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

Transactions on Dynamic Systems, Modeling, andControl, vol. 119, no. 4, pp. 768–774, 1997.

[119] B. E. Miller, J. E. Colgate, and R. A. Freeman,“Guaranteed stability of haptic systems with non-linear virtual environments,” IEEE Transactions onRobotics and Automation, vol. 16, no. 6, pp. 712–719,2000.

[120] B. Hannaford and J. H. Ryu, “Time-domain passivitycontrol of haptic interfaces,” IEEE Transactions onRobotics and Automation, vol. 18, no. 1, pp. 1–10,2002.

[121] J. J. Abbott and A. M. Okamura, “Effects of posi-tion quantization and sampling rate on virtual wallpassivity,” IEEE Transactions on Robotics, vol. 21,no. 5, pp. 952–964, 2005.

[122] R. J. Adams and B. Hannaford, “Stable haptic in-teraction with virtual environments,” IEEE Trans-actions on Robotics and Automation, vol. 15, no. 3,pp. 465–474, 1999.

[123] N. Diolaiti, G. Niemeyer, F. Barbagli, and J. K. Sal-isbury, “Stability of haptic rendering: Discretization,quantization, time delay, and coulomb effects,” IEEETransactions on Robotics, vol. 22, no. 2, pp. 256–268,2006.

[124] S. Stramigioli, C. Secchi, A. J. vanderSchaft, andC. Fantuzzi, “Sampled data systems passivity anddiscrete port-hamiltonian systems,” IEEE Transac-tions on Robotics, vol. 21, no. 4, pp. 574–587, 2005.

[125] J. E. Colgate and J. M. Brown, “Factors affectingthe Z-width of a haptic display,” in Proceedings ofthe IEEE International Conference on Robotics andAutomation, pp. 3205–3210, 1994.

[126] O. R. Astley and V. Hayward, “Multirate haptic sim-ulation achieved by coupling finite element meshesthrough Norton equivalents,” in Proceedings of IEEEInternational Conference on Robotics and Automa-tion, vol. 2, pp. 989–994, 1998.

[127] K. E. MacLean and S. S. Snibbe, “An architecture forhaptic control of media,” in Proceedings of the Sympo-sium on Haptic Interfaces For Virtual EnvironmentAnd Teleoperator Systems, pp. 219–228, 1999.

[128] S. Cotin, H. Delingette, and N. Ayache, “Deforma-tions of soft tissues for surgery simulation,” IEEETransactions on Visualization and Computer Graph-ics, vol. 5, no. 1, pp. 62–73, 1999.

[129] M. C. Cavusoglu and F. Tendick, “Multirate sim-ulation for high fidelity haptic interaction with de-formable objects in virtual environments,” in Pro-ceedings of the IEEE International Conference onRobotics and Automation, vol. 3, pp. 2458–2465,2000.

[130] F. Mazzella, K. Montgomery, and J.-C. Latombe,“The forcegrid: a buffer structure for haptic inter-action with virtual elastic objects,” Proceedings ofIEEE International Conference on Robotics and Au-tomation, vol. 1, pp. 939–946, 2002.

[131] M. Mahvash and V. Hayward, “High fidelity passiveforce reflecting virtual environments,” IEEE Trans-actions on Robotics, vol. 21, no. 1, pp. 38–46, 2005.

[132] F. Barbagli, D. Prattichizzo, and J. K. Salisbury,“A multirate approach to haptic interaction with de-formable objects single and multipoint contacts,” TheInternational Journal of Robotics Research, vol. 24,no. 9, pp. 703–715, 2005.

[133] M. R. Sirouspour, S. P. DiMaio, S. E. Salcudean.,P. Abolmaesumi, and C. Jones, “Haptic interfacecontrol-design issues and experiments with a planardevice,” in Proceedings of IEEE International Con-ference on Robotics and Automation, vol. 1, pp. 789–794, 2000.

[134] F. Janabi-Sharifi, V. Hayward, and C.-S. J. Chen,“Discrete-time adaptive windowing for velocity es-timation,” IEEE Transactions On Control SystemsTechnology, vol. 8, no. 6, pp. 1003–1009, 2000.

[135] G. Liu, “On velocity estimation using position mea-surements,” in Proceedings of the American ControlConference, vol. 2, pp. 1115–1120, 2002.

[136] J. H. Ryu, C. Preusche, B. Hannaford, andG. Hirzinger, “Time domain passivity control withreference energy following,” IEEE Transactions onControl Systems Technology, vol. 13, no. 5, pp. 737–742, 2005.

[137] A. H. Gosline and V. Hayward, “Time-domain passiv-ity control of haptic interfaces with tunable dampinghardware,” in Proceedings of the Second Joint Euro-haptics Conference and Symposium on Haptic Inter-faces for Virtual Environment and Teleoperator Sys-tems, World Haptics 2007, pp. 164–169, 2007.

[138] J. S. Mehling, J. E. Colgate, and M. A. Peshkin,“Increasing the impedance range of a haptic displayby adding electrical damping,” in Proceedings of theFirst Joint Eurohaptics Conference and Symposiumon Haptic Interfaces for Virtual Environment andTeleoperator Systems, World Haptics 2005, pp. 257–262, 2005.

[139] J. An and D. S. Kwon, “Stability and performance ofhaptic interfaces with active/passive actuators theoryand experiments,” International Journal of RoboticsResearch, vol. 25, no. 11, pp. 1121–1136, 2006.

[140] J. D. Hwan, M. D. Williams, and G. Niemeyer, “To-ward event-based haptics: rendering contact usingopen-loop force pulses,” in Proceedings of the Internal

20

Page 21: Do It Yourself Haptics, Part I - McGill CIMhaptic/pub/VH-KM-RAM-07.pdf · Do It Yourself Haptics, Part I Vincent Hayward Karon E. MacLean Haptics Laboratory SPIN Laboratory McGill

Symposium on Haptic Interfaces for Virtual Environ-ment and Teleoperator Systems, pp. 24–31, 2004.

[141] A. M. Okamura, C. Richard, and M. R. Cutkosky,“Feeling is believing: Using a force-feedback joystickto teach dynamic systems,” Journal of EngineeringEducation, vol. 91, no. 3, pp. 345–349, 2002.

[142] M. Shaver and K. E. MacLean, “The twiddler: Ahaptic teaching tool: Low-cost communication andmechanical design,” Tech. Rep. TR-2005-09, Depart-ment of Computer Science, University of BritishColumbia, 2004.

[143] W. Verplank, “Haptic music exercises,” in Proceed-ings of the 2005 Conference on New Interfaces forMusical Expression, NIME’05, pp. 256–257, 2005.

[144] A. M. Okamura and D. Brzozowski, “Hap-tic displays for teaching dynamic systems.”http://www.haptics.me.jhu.edu/research/paddle/paddle.html.

[145] “Chai3d, the open source haptics project.” http://www.chai3d.org/.

[146] “Haptik library, the open source library for haptics.”http://www.haptiklibrary.org/.

[147] G. Pava and K. E. MacLean, “Real time platformmiddleware for transparent prototyping of haptic ap-plications,” in Proceedings of the 12th Symposium onHaptic Interfaces for Virtual Environment and Tele-operator Systems, IEEE-VR2004, pp. 383–391, 2004.

[148] H. Dostmohamed and V. Hayward, “Trajectory ofcontact region on the fingerpad gives the illusion ofhaptic shape,” Experimental Brain Research, vol. 164,pp. 387–394, 2005.

[149] B. Buxton, “A directory of sources for in-put technologies.” http://www.billbuxton.com/InputSources.html.

[150] J. Biggs and M. A. Srinivasan, “Haptic interfaces,” inHandbook of Virtual Environments (K. Stanney, ed.),pp. 93–116, Lawrence Erlbaum, 2002.

[151] V. Hayward, O. R. Astley, M. Cruz-Hernandez,D. Grant, and G. Robles-De-La-Torre, “Haptic in-terfaces and devices,” Sensor Review, vol. 24, no. 1,pp. 16–29, 2004.

[152] L. Jones and N. Sarter, “Tactile displays: Guidancefor their design and application,” Human Factors:The Journal of the Human Factors and ErgonomicsSociety, vol. in press, 2007.

[153] K. E. MacLean, “Designing with haptic feedback,” inProceedings of the IEEE International Conference onRobotics and Automation, pp. 783–788, 2002.

[154] J. B. Morrell and J. K. Salisbury, “Performance mea-surements for robotic actuators,” in Proceedings ofthe ASME Dynamic Systems and Control Division,vol. 58, pp. 531–537, 1996.

[155] R. E. Ellis, O. M. Ismaeil, and M. G. Lipsett, “De-sign and evaluation of a high-performance haptic in-terface,” Robotica, vol. 14, pp. 321–327, 1996.

[156] M. Moreyra and B. Hannaford, “A practical measureof dynamic response of haptic devices,” in Proceedingsof the IEEE International Conference on Roboticsand Automation, pp. 369–374, 1998.

[157] A. Frisoli and M. Bergamasco, “Experimental iden-tification and evaluation of performance of a 2 DOFhaptic display,” in Proceedings of IEEE InternationalConference on Robotics and Automation, vol. 3,pp. 3260–3265, 2003.

[158] I. M. Stuart, “Capstan equation for strings withrigidity,” British Journal of Applied Physics, vol. 12,pp. 559–562, 1961.

21