The Virtual Xylophone
CS225: Experimental Robotics
James Kuffner, Jr.
Spring Quarter, 1995
The project was an attempt to create a virtual musical instrument
with visual, audio, and haptic feedback, as a part of a class project
in Experimental Robotics. An SGI was used for visualization, while a
Phantom force-feedback device was used for haptic feedback.
The software allows the user to produce 10 tones in the key of C major
on a virtual xylophone. Two digital sampled instruments could be selected.
The volume of the tone produced is dependent upon the force (velocity)
with which the sounding bar is struck. Visual 3D and haptic feedback is
provided in real time.
Here is a sample
screen shot of the User Interface. Click for a larger image.
I wrote the graphical user interface in OpenInventor, and the UNC Haptic
library was used as a basis for the haptic feedback. An SGI Indigo2 running
the 3D graphics window uses a socket connection to a Pentium PC controlling
the Phantom. This split design allows the separation of graphics computations
from the force feedback computations, which must maintain a high update
rate, otherwise instability in the haptic feedback results.
The project was demonstrated at the Experimental Robotics
Conference at Stanford in July 1995, and appeared in the following
Kolarov, K. and Ruspini, D. "Graphical
and Haptic Manipulation of 3D Objects", in J. Salisbury and M.
Srinivasan, editors, Proc. of the First PHANToM Users Group Workshop, M.I.T.
Artificial Intelligence Laboratory Technical Report AITR-1596, 1996.