James Kuffner  

The Virtual Xylophone

CS225: Experimental Robotics
James Kuffner, Jr.
Spring Quarter, 1995

Project Overview

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.

xylophone screen
shotHere 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 report:

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.

1997 - 2009 © James Kuffner, Jr.