Vibrotactile score: A score metaphor for designing vibrotactile patterns

6
Vibrotactile Score: A Score Metaphor for Designing Vibrotactile Patterns Jaebong Lee * Jonghyun Ryu Seungmoon Choi Haptics and Virtual Reality Laboratory Department of Computer Science and Engineering POSTECH, Republic of Korea ABSTRACT Despite the plethora of vibrotactile applications that already have begun to impact our everyday life, how to design vibrotactile pat- terns easily and efficiently remains to be a challenge. In this paper, we introduce a vibrotactile score, an effective means for compos- ing vibrotactile patterns. The vibrotactile score is a metaphor of the musical score to vibrotaction, and its design is adapted from two common musical scores (the piano score and the guitar tab- lature). Moreover, we developed an authoring tool, Vibrotactile Score Editor (VibScoreEditor), that fully supports the vibrotactile score with intuitive graphical user interface. Another metaphorical feature, vibrotactile clef (analogous to the musical clef), is incor- porated in the editor to make the process of composing vibrotactile patterns decoupled from the process of considering the signal-level characteristics of vibration. A few examples of vibrotactile patterns designed using the VibScoreEditor are also presented. Index Terms: H.5.2 [Information Interfaces and Presentation]: User Interfaces—Haptic I/O; D.2.2 [Software Engineering]: De- sign Tools and Techniques—User interfaces 1 I NTRODUCTION Vibrotactile feedback can enhance interactivity between the user and a device by conveying useful information to the user, especially when visual and audio information is limited. A number of studies have investigated its utility in various applications (see [7] for a recent review). In addition to the traditional uses in virtual real- ity (VR) and games, vibrotactile feedback is actively employed for human-computer interaction (HCI) in a form of structured vibro- tactile patterns called tactons [2] or haptic icons [12]. In particular, high-end mobile devices (e.g., full touch-screen cellular phones) began to adopt new generation vibrotactile feedback technology such as the VibeTonz system [9]. The potentials of new vibrotactile actuators, e.g. a piezoelectric actuators [15, 11], are also tested for the mobile device in the research community. In parallel with the technology advance, there has been increas- ing demand for software tools that can facilitate the design and eval- uation of vibrotactile patterns. Notable outcomes include Hapticon Editor [6], Haptic Icon Prototyper [19], VibeTonz studio [9] , and posVibEditor [17]. All of these editors offer intuitive and easy-to- use graphical user interface (GUI) with some unique features. The Hapticon Editor and its upgraded version, the Haptic Icon Proto- typer, were developed for designing haptic icons to be played via 1 degree-of-freedom (DOF) haptic device (e.g., a haptic knob). Al- though the target attribute was a force profile, the two editors may be adapted to designing vibrotactile patterns. The VibeTonz stu- dio, a commercial editor from Immersion Corp., is for the mobile * e-mail:[email protected] e-mail:[email protected] e-mail:[email protected] device that uses a vibration motor for actuation. It offers a sim- ple pattern element and a timeline interface on which the elements can be combined for a more complex vibrotactile pattern. In par- ticular, the VibeTonz studio can automatically generate vibrotactile patterns from a music file in the MIDI (Musical Instrument Digital Interface) format, which is a convenient feature for application de- velopment. Recently, our research group released the posVibEditor, a graphical vibrotactile pattern editor with several advanced func- tionalities. For instance, the posVibEditor supports pattern design and test for multiple vibration motors, which is common in VR and HCI applications, using a multi-channel timeline interface. Another unique feature of the posVibEditor is a design mode for perceptu- ally transparent rendering that can minimize distortion in the user’s percept from intended vibrotactile effect [18, 16]. These tools, however, are analogous to a sound composition pro- gram that allows the direct manipulation of a sound waveform. Al- though this low-level access provides great flexibility for shaping the waveform, composing music or audio icons in this way is far from being intuitive and is also very time-consuming; for this pur- pose, we usually rely on a musical score. In the same metaphor, we propose for composing vibrotactile effects or tactile icons to use a vibrotactile score that symbolically represents vibrotactile patterns using symbols adapted from musical scores. Although a similar representation was anecdotally used in describing tactons [2], we formalize the definitions of symbols for a vibrotactile score with an explicit link to their signal-level counterparts. Specifically, our vibrotactile score is based on the piano score with a few features borrowed from the guitar tablature. Using the score, we can repre- sent the desired pitch, strength, and duration of a vibrotactile note, and compose “vibrotactile music” as we do using the musical score. This process is very intuitive and easy to learn, allowing the effi- cient design of vibrotactile patterns even for non-experts. We also developed Vibrotactile Score Editor (VibScoreEditor), a graphical editor for the vibrotactile score with the following fea- tures: Intuitive GUI for vibrotactile score editing: Vibrotactile pat- terns can be graphically designed and edited simply by adding and deleting notes and rests on the score. Decoupled management of vibrotactile notes and correspond- ing vibrotactile signals: The VibScoreEditor provides a “vi- brotactile clef” to define the physical characteristics of a vi- brotactile signal for each staff line in a vibrotactile score, anal- ogously to the musical clef. Data files in XML (eXtensible Markup Language) formats: By using XML documents for storing data, the VibScoreEdi- tor ensures reusability and extensibility. On-the-fly test of designed patterns: A player of vibrotactile patterns is embedded in the editor to facilitate repetitive de- signs and tests. Support of different vibration actuators: A module to sup- port a vibration actuator can be independently developed and Third Joint Eurohaptics Conference and Symposium on Haptic Interfaces for Virtual Environment and Teleoperator Systems Salt Lake City, UT, USA, March 18-20, 2009 978-1-4244-3858-7/09/$25.00 ©2009 IEEE 302

Transcript of Vibrotactile score: A score metaphor for designing vibrotactile patterns

Page 1: Vibrotactile score: A score metaphor for designing vibrotactile patterns

Vibrotactile Score: A Score Metaphor for Designing Vibrotactile PatternsJaebong Lee∗ Jonghyun Ryu† Seungmoon Choi‡

Haptics and Virtual Reality LaboratoryDepartment of Computer Science and Engineering

POSTECH, Republic of Korea

ABSTRACT

Despite the plethora of vibrotactile applications that already havebegun to impact our everyday life, how to design vibrotactile pat-terns easily and efficiently remains to be a challenge. In this paper,we introduce a vibrotactile score, an effective means for compos-ing vibrotactile patterns. The vibrotactile score is a metaphor ofthe musical score to vibrotaction, and its design is adapted fromtwo common musical scores (the piano score and the guitar tab-lature). Moreover, we developed an authoring tool, VibrotactileScore Editor (VibScoreEditor), that fully supports the vibrotactilescore with intuitive graphical user interface. Another metaphoricalfeature, vibrotactile clef (analogous to the musical clef), is incor-porated in the editor to make the process of composing vibrotactilepatterns decoupled from the process of considering the signal-levelcharacteristics of vibration. A few examples of vibrotactile patternsdesigned using the VibScoreEditor are also presented.

Index Terms: H.5.2 [Information Interfaces and Presentation]:User Interfaces—Haptic I/O; D.2.2 [Software Engineering]: De-sign Tools and Techniques—User interfaces

1 INTRODUCTION

Vibrotactile feedback can enhance interactivity between the userand a device by conveying useful information to the user, especiallywhen visual and audio information is limited. A number of studieshave investigated its utility in various applications (see [7] for arecent review). In addition to the traditional uses in virtual real-ity (VR) and games, vibrotactile feedback is actively employed forhuman-computer interaction (HCI) in a form of structured vibro-tactile patterns called tactons [2] or haptic icons [12]. In particular,high-end mobile devices (e.g., full touch-screen cellular phones)began to adopt new generation vibrotactile feedback technologysuch as the VibeTonz system [9]. The potentials of new vibrotactileactuators, e.g. a piezoelectric actuators [15, 11], are also tested forthe mobile device in the research community.

In parallel with the technology advance, there has been increas-ing demand for software tools that can facilitate the design and eval-uation of vibrotactile patterns. Notable outcomes include HapticonEditor [6], Haptic Icon Prototyper [19], VibeTonz studio [9] , andposVibEditor [17]. All of these editors offer intuitive and easy-to-use graphical user interface (GUI) with some unique features. TheHapticon Editor and its upgraded version, the Haptic Icon Proto-typer, were developed for designing haptic icons to be played via 1degree-of-freedom (DOF) haptic device (e.g., a haptic knob). Al-though the target attribute was a force profile, the two editors maybe adapted to designing vibrotactile patterns. The VibeTonz stu-dio, a commercial editor from Immersion Corp., is for the mobile

∗e-mail:[email protected]†e-mail:[email protected]‡e-mail:[email protected]

device that uses a vibration motor for actuation. It offers a sim-ple pattern element and a timeline interface on which the elementscan be combined for a more complex vibrotactile pattern. In par-ticular, the VibeTonz studio can automatically generate vibrotactilepatterns from a music file in the MIDI (Musical Instrument DigitalInterface) format, which is a convenient feature for application de-velopment. Recently, our research group released the posVibEditor,a graphical vibrotactile pattern editor with several advanced func-tionalities. For instance, the posVibEditor supports pattern designand test for multiple vibration motors, which is common in VR andHCI applications, using a multi-channel timeline interface. Anotherunique feature of the posVibEditor is a design mode for perceptu-ally transparent rendering that can minimize distortion in the user’spercept from intended vibrotactile effect [18, 16].

These tools, however, are analogous to a sound composition pro-gram that allows the direct manipulation of a sound waveform. Al-though this low-level access provides great flexibility for shapingthe waveform, composing music or audio icons in this way is farfrom being intuitive and is also very time-consuming; for this pur-pose, we usually rely on a musical score. In the same metaphor, wepropose for composing vibrotactile effects or tactile icons to use avibrotactile score that symbolically represents vibrotactile patternsusing symbols adapted from musical scores. Although a similarrepresentation was anecdotally used in describing tactons [2], weformalize the definitions of symbols for a vibrotactile score withan explicit link to their signal-level counterparts. Specifically, ourvibrotactile score is based on the piano score with a few featuresborrowed from the guitar tablature. Using the score, we can repre-sent the desired pitch, strength, and duration of a vibrotactile note,and compose “vibrotactile music” as we do using the musical score.This process is very intuitive and easy to learn, allowing the effi-cient design of vibrotactile patterns even for non-experts.

We also developed Vibrotactile Score Editor (VibScoreEditor),a graphical editor for the vibrotactile score with the following fea-tures:

• Intuitive GUI for vibrotactile score editing: Vibrotactile pat-terns can be graphically designed and edited simply by addingand deleting notes and rests on the score.

• Decoupled management of vibrotactile notes and correspond-ing vibrotactile signals: The VibScoreEditor provides a “vi-brotactile clef” to define the physical characteristics of a vi-brotactile signal for each staff line in a vibrotactile score, anal-ogously to the musical clef.

• Data files in XML (eXtensible Markup Language) formats:By using XML documents for storing data, the VibScoreEdi-tor ensures reusability and extensibility.

• On-the-fly test of designed patterns: A player of vibrotactilepatterns is embedded in the editor to facilitate repetitive de-signs and tests.

• Support of different vibration actuators: A module to sup-port a vibration actuator can be independently developed and

Third Joint Eurohaptics Conference and Symposium on Haptic Interfacesfor Virtual Environment and Teleoperator SystemsSalt Lake City, UT, USA, March 18-20, 2009

978-1-4244-3858-7/09/$25.00 ©2009 IEEE 302

Page 2: Vibrotactile score: A score metaphor for designing vibrotactile patterns

Figure 1: Each note in a piano score (left) corresponds to a key onthe keyboard (right), as represented by the circled numbers.

Figure 2: Guitar tablature (left) and corresponding fingering positionson the guitar fingerboard (right).

linked to the VibScoreEditor.

The rest of this paper proceeds as follows. The conceptual de-sign of a vibrotactile score is given in Section 2, and the XML doc-uments to represent the score are defined in Section 3. In Section 4,the VibScoreEditor that fully implemented the vibrotactile score isdescribed in details, followed by examples of vibrotactile patternsdesigned using the editor in Section 5. We conclude this paper inSection 6.

2 VIBROTACTILE SCORE

Our vibrotactile score has been designed by combining features oftwo musical scores (the piano score and the guitar tablature). Itsconceptual design is presented in this section.

2.1 Musical ScoresNeedless to say, the piano score is the most widely used musicalscore. In this score (Figure 1), the pitch of each note is representedby its position with respect to the five staff lines, a higher positionindicating a higher tone, and the duration of the note is denoted byits shape. The symbols for rest represent their durations only. Thisis a quite effective notation for the piano, because the position of anote in the staff lines is mapped one-to-one to the position of a keyto be pushed on the keyboard.

However, using the piano score to play a guitar is not straight-forward, since the position of a note is not intuitively mapped to afingering position on the fingerboard of a guitar and can even bemapped to multiple fingering positions. More popular is the guitartablature that has six horizontal lines mapped one-to-one to the sixstrings of a guitar (Figure 2). In the guitar tablature, each note headhas a number in it, which specifies the fret number at which a fingershould be placed on the fingerboard. Another difference is that inthe guitar tablature, the half note (the 4th symbol in Figure 2) is dis-tinguished from the quarter note (the 2nd symbol) by the lengths oftheir stems (a vertical line connecting the head and flag of a note).The shapes of other notes and the symbols for rest are the same tothose of the piano score. This definition of a note in the guitar tab-lature (using string, fret number, and duration) provides easy andintuitive score reading to guitar players.

2.2 Vibrotactile ScoreIn designing the vibrotactile score, we had two major considera-tions. First, to minimize the learning and design times, it is de-sirable to make the vibrotactile score as similar to one (or two) ofwidely recognized musical scores as possible. Second, vibrotactile

(a) Vibrotactile score. (b) Vibrotactile clef

(c) Corresponding vibration equations.

Figure 3: Conceptual example of the vibrotactile score.

patterns representable by the vibrotactile score must be compre-hensive, at least enough to cover vibrotactile signals that can begenerated by currently available vibrotactile actuators.

For the first design goal, we speculated on requirements uniqueto a score for vibrotaction. It immediately became clear thatwhereas the musical score is played by a human, the vibrotactilescore is played by a computer. Thus, the absolute strength of a noteis not specified in the musical score since it is determined by thehuman player. On the contrary, a vibrotactile score must have away to represent the strength of a vibrotactile note for a vibrationactuator to produce the corresponding signal. Although there existscomputer-playable music protocols that contain intensity informa-tion such as MIDI, they are excessively complicated for vibrotactilepatterns and recognizable only by music experts. Therefore, ourstrategy has been combining features of the two musical scores, pi-ano score and guitar tablature, while preserving their familiarity toordinary people.

In our vibrotactile score (Figure 3(a)), the pitch of a note is rep-resented by its vertical location on the staff lines (as in the pianoscore), and the duration of the note is by its shape (as in the pianoscore and the guitar tablature). We denote the strength of the noteby an integer inside its head. Note that this notation is the same tothe fret number in the guitar tablature, but its meaning is not. Bydefault, we use six staff lines in the vibrotactile score as in the guitartablature (as opposed to five in the piano score), simply to expressone more pitch in the score. More staff lines can be added if morepitch levels are desired, but this may weaken the score metaphor. Insummary, the appearance of the vibrotactile score is very similar tothe guitar tablature, but its implication is to the piano score.

For the second design criterion, we introduced another metaphornamed a “vibrotactile clef”. The vibrotactile clef, analogous to themusical clef1, defines a mapping from the position and intensitylevel of a vibrotactile note to the respective physical parameters as-sociated with the pitch and strength of a vibrotactile signal. For ex-ample, assume that we use simple sinusoidal vibrations expressedby y(t) = Asin(2πFt) where A is amplitude, F is frequency and t istime. Then, in its vibrotactile clef, the position and intensity levelof a note are mapped to the frequency and amplitude of a sinusoid,as shown in Figure 3(b). With this vibrotactile clef, the vibrotac-tile score in Figure 3(a) will generate a vibrotactile pattern in Fig-ure 3(c). A tempo variable stores the duration of the quarter note inseconds, and the durations of other notes are scaled accordingly.

Our design of the vibrotactile score with the vibrotactile clefhas several important advantages. First, since the vibrotactile score

1The musical clef is used to indicate the actual pitches of staff lines.For example, the treble clef makes the five staff lines represent E-G-B-D-Ffrom bottom to top. If other clef symbols are used, the pitches of the linesare changed accordingly

303

Page 3: Vibrotactile score: A score metaphor for designing vibrotactile patterns

shares the exactly same notation with the piano score and the gui-tar tablature, it is intuitive and easy to learn, even for non-experts.Second, owing to the decoupled structure of the vibrotactile scoreand clef, the user can focus on pattern composition using the vibro-tactile score (i.e., a sequence of vibrotactile notes), without payingattention to the vibrotactile clef (i.e., how each note is related tophysical parameters to generate vibration). Third, the vibrotactileclef can be designed independently from the pattern compositionprocess that uses the vibrotactile score. The whole physical param-eters of designed patterns are defined by the vibrotactile clef. Also,changing the vibrotactile clef from one to another in a vibrotac-tile pattern can greatly increase the expressiveness of a vibrotactilescore. An only requirement here is that to preserve the metaphor, avibrotactile tone represented by a higher string should feel to havea higher pitch than one represented by a lower string. Lastly, inanalogy, our design distinguishes a song (a vibrotactile score) anda musical instrument (a vibrotactile clef for a vibrotactile actuator).As a song sounds different when played with different instruments,distinct vibrotactile patterns may be produced by using differentvibrotactile clefs on the same vibrotactile score. As is well known,each type of vibrotactile actuators has a limited range of vibrotactilestimuli it can create [13]. Given an actuator, the use of the vibro-tactile clef allows to define a set of vibrotactile stimuli that can beeffective with the actuator. All currently available vibrotactile ac-tuators can be managed in the context of the vibrotactile clef (seeSection 4.4).

3 XML SCHEMA FOR VIBROTACTILE SCORE

We have embodied the conceptual design of the vibrotactile scorein the XML format. XML has strong structurability, extensibility,and interoperability [8], and is suitable to represent the structureddata in a vibrotactile score. It was also used for other types of hapticdata before [20, 17]. We defined XML schemas for the vibrotactilescore and clef in two documents, respectively, and describe them inthis section.

3.1 XML Document for Vibrotactile ScoreThe document structure for the vibrotactile score is shown in Fig-ure 4. This document stores information about notes and rests sepa-rated by bars in a score. The definitions of elements and associatedattributes are summarized in Table 1. The vibrotactile clefs to beused in the vibrotactile score are declared in element Cle f , and eachBar element designates a vibrotactile clef to use via attribute cle f ,similarly to the clef change in the musical score. Attribute length inNote and Rest elements can have one of ten discrete values: whole,hal f dot, hal f , quarter dot, quarter, 8th dot, 8th, 16th dot, 16thand 32th, where the postfix dot indicates a dotted symbol (e.g., aRest element with length = quarter dot represents the dotted quar-ter rest). A dynamics attribute is used to specify a special pattern ofintensity change. For now, we support crescendo and decrescendowhich represent gradual increase and decrease of the intensity, re-spectively. This is one of the most effective patterns in the tactondesign [4]. The roles of other elements should be self-evident inTable 1.

3.2 XML Document for Vibrotactile ClefThe XML document for the vibrotactile clef has a hierarchy shownin Figure 5 with elements and attributes defined in Table 2. Atpresent, the clef document supports three types of vibrotactilewaveforms, sinusoidal, curve, and line waveforms, which is de-noted by sine, curve and line, respectively, in attribute type. Iftype = sine, element String has frequency values in its definition.For example,

<Strings><String>50</String>

...<String>300</String>

Figure 4: XML schema of a document for the vibrotactile score.

Table 1: Roles of elements and attributes in the score document.

VibScore Root element of a score documentversion Current version number

Title Title of a vibrotactile score

Cle f

Declaration of vibrotactile clefs that will beused in the scoreid Identifier of a vibrotactile clefhre f Relative path to the XML document of a

vibrotactile clef

BarDefinition of a barcle f Identifier of the vibrotactile clef that will

be used in the bar

Note

Definition of a notelength Duration of the notenumber Number inside the notestring String of the notedynamics Dynamics of the intensity of the note

Rest Definition of a restlength Duration of the rest

Blank A white space, needed for editing only

</Strings>

If type = curve, String stores a set of control points that aresmoothly interpolated using Catmull-Rom spline [5] to form acurve waveform. If type = line, control points in String constitutea piecewise linear waveform. In both cases, a set of Point elementsare used in the definition, such as

<Strings><String><Point time="0.0000" level="0.3000"/>

...<Point time="1.0000" level="0.0000"/>

</String>...

<String><Point time="0.0000" level="0.2000"/>

...<Point time="1.0000" level="1.0000"/>

</String></Strings>

The time and level attributes of each Point element represent thenormalized time and amplitude of a control point, respectively. El-ement Number is a scaling factor for the normalized amplitude of

304

Page 4: Vibrotactile score: A score metaphor for designing vibrotactile patterns

Figure 5: XML schema of a document for the vibrotactile clef.

Table 2: Roles of elements and attributes in the clef document.

VibCle fRoot element of a clef documenttype Type of a clef documentversion Current version number

Tempo Duration of a quarter noteNumber Definition of a number inside a note headString Definition of a string

PointDefinition of a control pointtime Normalized time of a control pointlevel Normalized amplitude of a control point

waveforms (stored in String elements), and element Tempo is ascaling factor for time.

A waveform for each string is specified for the whole note. Anote that has shorter duration than the whole note plays the wave-form of the whole note only for the duration of the note. For ex-ample, the half note plays only the first half of the waveform of thewhole note.

4 VIBROTACTILE SCORE EDITOR

All of the conceptual designs and the XML documents regardingthe vibrotactile score have been implemented in the VibScoreEd-itor on the Windows platform using Microsoft Visual C++ 2003.The editor consists of four modules for XML loading, data manage-ment, user interface, and vibration playback, respectively. Detailson each module are presented in this section.

4.1 XML Loading and Data Management

The XML loader was implemented using MSXML (Microsoft CoreXML Service) 6.0 library. It loads and stores the XML documentsfor vibrotactile scores and clefs as defined in the previous section.The loaded XML data are managed in the data management modulein a C++ class hierarchy. This class instance is also referenced byother modules for user interface and vibration playback.

4.2 User Interface

To provide an easy-to-learn and easy-to-use design environment tothe user, the VibScoreEditor has user interface shown in Figure 6,which is similar to those of guitar tablature authoring tools (e.g.,Power Tab Editor [1]). To begin pattern design, the user first de-fines a set of vibrotactile clefs using two small windows shown onthe right side in the figure. Figure 6(b) shows a clef managementwindow with which the user can add a vibrotactile clef by creating anew clef or loading an existing one. Figure 6(c), called a waveformwindow, provides an interface to view and edit the actual properties

of a vibrotactile clef that is currently selected in the clef manage-ment window. Depending on the type of the selected clef, one ofthe three waveform windows in Figure 7 appears. For the sinusoidaltype, the user can assign each string to desired frequency and eachhead number to desired amplitude using the edit boxes. For thecurve or line waveform types, the user can manipulate a waveformby dragging, adding, and deleting control points using the mouse.

In the main window (Figure 6(a)), a blue vertical bar on the stafflines represents an editing cursor for a vibrotactile score. The cur-rent active string is one between the upper and lower vertical bars ofthe cursor. The user can move the cursor to a desired position usingthe arrow keys or the mouse. A note can be inserted by pressinga number key (1 – 9 for desired vibration intensity), and a rest bypressing the zero key. The duration can be selected from the menuor the toolbar. Pressing the grave accent key closes a bar by draw-ing a vertical line. All of these functions are also fully supported inthe main menu, popup menu and tool bar.

A small box above each bar line displays the ID of a vibrotactileclef to be used for the bar. The ID can be changed by using thepopup menu, or by selecting a desired clef in the clef managementwindow and then double-clicking the clef ID box above a bar. Inaddition, a number above a clef box denotes the total number ofbeats in the bar. We set one beat to the duration of a quarter note.Whereas each bar in the musical score has the exactly same numberof beats, it is not evident whether this constraint is necessary forthe vibrotactile score. Anyhow, the VibScoreEditor computes thenumber of beats in each bar, display it, and denotes whether thenumber is less than, equal to, or more than the default value bycoloring the corresponding clef box with cyan, white, and magenta,respectively. The default number of beats in each bar is set to four.

4.3 Vibration PlaybackThe VibScoreEditor includes a playback module of designed vibro-tactile patterns. For this, a vibration playback cursor is shown in ared-filled circle under the bars in the main window (see Figure 6).The user can move the playback cursor to the position at whichplayback will begin, and start and stop playback using controls inthe toolbar. During playback, the playback cursor automaticallymoves to a position under the note (or rest) that is being played,and all editing functions are disabled.

Another important implementation issue was how to support var-ious hardware configurations of vibrotactile actuators and commu-nication devices. Since no such standards exist for vibrotactile feed-back yet, we decided to encapsulate the vibration playback modulein a DLL (Dynamic Link Library) such that each DLL is in chargeof controlling a specific vibrotactile feedback hardware. This al-lows the user to extend the VibScoreEditor for their hardware sim-ply by changing a DLL, as long as the DLL shares the specifiedheader file interface.

The current VibScoreEditor provides three DLLs for a mini-shaker (Bruel & Kjær; model 4810), a voice-coil actuator (Sam-sung Electro-Mechanics; one used in the Samsung haptic phone)and a vibration motor. For communication, a data acquisition board(National Instruments; model PCI-6229) is used. Also included isa null DLL that needs to be linked to the VibScoreEditor if vibro-tactile patterns are to be designed without playback.

4.4 Design Issues of Vibrotactile ClefThe vibrotactile clef serves as a gateway to send patterns in a vi-brotactile score to the physical world. Thus, vibrotactile clefs mustbe designed with adequate understandings of the dynamic perfor-mance of a vibration actuator to use. Otherwise, actual vibrotactilesignals produced by the actuator can be significantly distorted fromthose intended in a vibrotactile clef (for example, see [3]).

Actuators that has a wide bandwidth, such as a mini-shaker anda piezoelectric actuator, do not put a severe limit on the design of

305

Page 5: Vibrotactile score: A score metaphor for designing vibrotactile patterns

Figure 6: User interface of the VibScoreEditor. Figure 7: Three typesof waveform windows.

vibrotactile clefs, except that even such high-performance actua-tors may not produce waveforms with very sharp transitions (e.g.,a square wave). A voice-coil actuator has a frequency band of ex-cellent responsiveness (centered at its resonance frequency), thusthe selection of principal frequencies for the strings of a vibrotac-tile clef should reflect this fact. For a vibration motor, a vibrotac-tile clef should use either string or in-head number to represent itsdriving voltage level, because voltage applied to the motor deter-mines both of the frequency and amplitude of vibration [10]. In anycases, confirming whether the vibrotactile clef works as expectedby measuring actual vibrations generated by an actuator is stronglyrecommended for the successful design of vibrotactile patterns.

5 EXAMPLES

We extensively tested the VibScoreEditor for designing various vi-brotactile patterns. In this section, we illustrate how a concep-tual design of vibrotactile patterns can be translated into the Vib-ScoreEditor, using tactons reproduced from [2]. In these tactons(see Figure 8), a high-frequency vibration with increasing intensityrepresents ‘create’, a low-frequency vibration with decreasing in-tensity represents ‘delete’, two consecutive notes with decreasingfrequency represent ‘file’, and two consecutive notes with increas-ing frequency represent ‘folder.’ They can also be combined to formcompound messages.

We design the ‘create’ tacton using crescendo, and the ‘delete’tacton using many notes of the same duration to represent theexponentially-decaying sinusoids that are used to model high fre-quency vibrotactile transients that occurs at a collision betweenrigid objects [14]. Figure 9 shows the vibrotactile clefs used togenerate the exponentially-decaying sinusoids in the VibScoreEdi-tor. We use two sinusoidal clefs that have the same frequency setbut different intensity sets, one for a low-amplitude range (0.0027 –0.0447) and the other for high-amplitude range (0.0447 – 0.7351),

with exponentially growing intensity. Tempo was selected to besufficiently small (= 0.15 sec for the quarter note) to reproduce con-tinuously varying waveforms. With this clef definition, the ‘createfile’ and ‘delete folder’ tactons can be easily coded in the vibrotac-tile score, as shown in Figure 10. In the figure, lower panels showthe actual vibrations measured from a mini-shaker through whichthe tactons were played. These examples demonstrate the expres-siveness of the combinations of the vibrotactile score and clef, inaddition to their capability of symbolizing vibrotactile patterns.

6 CONCLUSIONS

In this paper, we have presented vibrotactile score, a novel methodfor authoring vibrotactile patterns, by adapting the common mu-sical scores to vibrotaction. The high-level composition processusing the vibrotactile score is made independent from the hard-ware and the low-level characteristics of vibration using anothermetaphoric concept, vibrotactile clef, which determines the phys-ical roles of score symbols in pattern playback. We also devel-oped VibScoreEditor, a graphical authoring tool that implementedthe metaphors with the data structure managed in XML. Finally,a few examples that shows the advantages of the VibScoreEditorwere given.

The VibScoreEditor is intuitive and easy to learn, since it bor-rows the ideas and notations from the common musical scores thatmost people are already accustomed to. Its decoupled structure viathe vibrotactile clef also leads to a few advantages in pattern de-sign. Given a template of vibrotactile clefs, even non-expert userswho are not familiar with low-level technical details about the vi-brotactile hardware can easily compose effective vibrotactile pat-terns. Expert users, of course, retain the freedom of designing theirown vibrotactile clefs appropriate to their hardware and applicationgoals. Furthermore, the current implementation of the VibScoreEd-itor using XML for representing the vibrotactile patterns and an

306

Page 6: Vibrotactile score: A score metaphor for designing vibrotactile patterns

Figure 8: Examples of compound tactonsreproduced from [2].

Figure 9: Two vibrotactile clefs used for‘delete folder’ tacton in Figure 10.

Figure 10: Design examples of the ‘create file’ tacton (left) and ‘delete folder’ tacton (right). Thelower panels show vibrotactile patterns measured from a mini-shaker.

external DLL for vibration playback ensures extendability to othervibrotactile patterns and hardware, respectively.

At present, we are working on adding various convenient fea-tures in the user interface of the VibScoreEditor. An example is thesupport of the selection, copy, and paste in a block. A predefinedtemplate of frequently-used score patterns (e.g., exponentially-decaying sinusoids in Figure 9 and 10) can also be useful. Afterthe upgrade of user interface, we plan to open the VibScoreEditorto the public.

ACKNOWLEDGEMENTS

This work was supported in parts by a NRL grant R0A-2008-000-20087-0 from KOSEF and by a ITRC support program C1090-0804-0002 from IITA, both funded by the Korea government.

REFERENCES

[1] Power Tab Editor. http://www.power-tab.net/.[2] S. Brewster and L. M. Brown. Tactons: Structured tactile messages for

non-visual information display. In Proceedings of the 5th AustralasianUser Interface Conference, pages 15–23, 2004.

[3] L. M. Brown, S. A. Brewster, and H. C. Purchase. A first investigationinto the effectiveness of tactons. In Proceedings of the World HapticsConference, pages 167–176, 2005.

[4] L. M. Brown, S. A. Brewster, and H. C. Purchase. Tactile crescendosand sforzandos: applying musical techniques to tactile icon design. InProceedings of the ACM Conference on Human Factors in ComputingSystems, pages 610–615, 2006.

[5] E. Catmull and R. Rom. A class of local interpolating splines. In R. E.Barnhill and R. F. Riesenfeld, editors, Computer Aided Geometric De-sign, pages 317–326. Academic Press, Orlando, FL, USA, 1974.

[6] M. J. Enriquez and K. E. MacLean. The Hapticon Editor: A toolin support of haptic communication research. In Proceedings of theHaptic Interfaces for Virtual Environment and Teleoperator Systems,HAPTICS 2003, pages 356–362, 2003.

[7] A. Gallace, H. Z. Tan, and C. Spence. The body surface as a com-munication system: The state of the art after 50 years. Presence,16(6):655–676, 2007.

[8] C. F. Goldfarb and P. Prescod. The XML handbook. Prentice Hall,Upper Saddle River, NJ, USA, 1998.

[9] Immersion Corp. Mobility overview, 2007. http://www.immersion.com/mobility.

[10] L. A. Jones, B. Lockyer, and E. Piateski. Tactile display and vibrotac-tile pattern recognition on the torso. Advanced Robotics, 20(12):1359–1374, 2006.

[11] J. Luk, J. Pasquero, S. Little, K. MacLean, V. Levesque, and V. Hay-ward. A role for haptics in mobile interaction: Initial design using ahandheld tactile display prototype. In Proceedings of the ACM Confer-ence on Human Factors in Computing Systems, pages 171–180, 2006.

[12] K. MacLean and M. Enriquez. Perceptual design of haptic icons. InProceedings of Eurohaptics, pages 351–363, 2003.

[13] B. J. P. Mortimer, G. A. Zets, and R. W. Cholewiak. Vibrotactile trans-duction and transducers. Journal of the Acoustical Society of America,121(5):2970–2977, 2007.

[14] A. M. Okamura, M. R. Cutkosky, and J. T. Dennerlein. Reality-basedmodels for vibration feedback in virtual environments. IEEE/ASMETransactions on Mechatronics, 6(3):245–252, 2001.

[15] I. Poupyrev, S. Maruyama, and J. Rekimoto. Ambient touch: Design-ing tactile interfaces for handheld devices. In Proceedings of the ACMSymposium on User Interface Software and Technology, pages 51–60,2002.

[16] J. Ryu and S. Choi. Benefits of perceptually transparent vibrationrendering in mobile device. Lecture Notes on Computer Science (Eu-roHaptics 2008), 5024:706–711, 2008.

[17] J. Ryu and S. Choi. posVibEditor: Graphical authoring tool of vibro-tactile patterns. In Proceedings of the IEEE International Workshop onHaptic Audio Visual Environments and Games, pages 120–125, 2008.

[18] J. Ryu, J. Jung, S. Kim, and S. Choi. Perceptually transparent vibra-tion rendering using a vibration motor for haptic interaction. In Pro-ceedings of the IEEE International Symposium on Robot & HumanInteractive Communication, pages 310–315, 2007.

[19] C. Swindells, E. Maksakov, K. E. Maclean, and V. Chung. The roleof prototyping tools for haptic behavior design. In Proceedings of theSymposium on Haptic Interfaces for Virtual Environment and Teleop-erator Systems, pages 161–168, 2006.

[20] J. Zhou, X. Shen, I. Shakra, A. El Saddik, and N. Georganas. XML-based representation of haptic information. In Proceedings of theIEEE International Workshop on Haptic Audio Visual Environmentsand their Applications, pages 116–120, 2005.

307