Andy Manu
Rave Bangers
Project team members: Andy Vu, Manu Chopra
We are making concerts cool againOn this page... (hide)
![](https://web.stanford.edu/group/charm/cgi-bin/pmwiki/uploads///Main_Picture.jpg)
Head Bangers:
Manu (left), Andy (right)
Introduction
Let's face it. Concerts are one sided. You cannot contribute to the music being played and the concert singers have no idea if you like what they are playing. Our idea then was to build a more Immersive Concert Experience, or ICE, as we call it. To do this, we wanted to build two kinds of headbands. One would be equipped with a gyroscope and would detect head movement. This data would be processed and used to output sensation (such as a vibration) to the other headband. By creating this haptic system, we wanted to allow audience members at a concert to feel the music in addition to hearing the sounds playing at a concert. Ideas we had to help the audience feel the music included vibrating the motors out of sync with each other and adjusting it to the volume or beat of music. This would enable greater enjoyment of concert experiences and provide musicians with an added artistic dimension.
Background
Our project was inspired by the Stanford Laptop Orchestra, created by CCRMA (pronounced "karma"). They had a subproject called the headbang orchestra. The video can be found on youtube by searching for "headbang orchestra". The headbang orchestra was a project where musicians strapped a headband with sensors on it to detect motion. When the musicians moved their heads, a computer detected the motion and outputted a sound. In the video, the musicians were able to create music by moving their heads forward, following a conductor. This made us wonder, what if the musicians moving their heads did not play a sound, but "played" the audience? This would afford the audience a more immersive concert experience, and it became our project.
Design
For a list of materials used in this project, please see below in Files.
Hardware design
The headbands were made from two strips of cloth. We attached Velcro strips to the headbands to adjust them for different sized heads. We then wrapped the four vibrators loosely in rolled up paper. This was to prevent the motors from getting stuck and not vibrating. Without the paper, they may have been pressed too tightly to a surface and stop rotating. The vibrators were attached to the headband, near the temples of the head. The vibrators pins were then connected directly to the hapkit board. We defined different digital pins as ground and power to provide voltage to the vibrators. The gyroscope we used to measure head bangs was a Parallax 3-axis L3G4200D. Attaching it to the hapkit board was more difficult. Five 3.5 ft wires were bought from the PRL. One end of each wire was crimped onto a contact pin and inserted into a female to female connector bought from the PRL. The other end of the connector was plugged into to the gyroscope's pins. The other end of wire was soldered onto a male to male connector pin and inserted into the hapkit circuit board. To make the project slightly more portable, the circuit board was unscrewed from the acrylic base of the hapkit and attached to a red tie via a safety pin. The wires leading from the hapkit board to the gyroscope were tied off close to the hapkit board with a ziplock tie. This would lessen torsion on the wires, making them less likely to fall out of position. At regular intervals, tape was used to bundle the wires, making the setup neater. For aesthetic reasons, the wire was wrapped in plastic (a portion of a trash bag) and stapled. The gyroscope was then attached with tape to the left side of the red headband. The person wearing the red headband would also wear the red tie and would control the vibrations. The person with the yellow headband would feel the vibrations only.
:
:
Software design
The software used for this project can be split into an arduino component and a processing component.The software used for the project can mostly be found online. The Arduino code was sourced through the manufacturer's website, and the processing code was found on an online forum. Both were lightly edited for our project. The manufacturer's code was used to read data from the gyroscope. One modification made was a faster read rate. The data from the sensor was an angular velocity broken into three components. We used the raw data values to set a threshold value. A headbang would only be counted if the sensor measured an angular velocity greater than the threshold value. The headbang could be measured along any axis. If a headbang was read, then the Arduino board would send a current to the vibrators on both headbands, making them vibrate. In addition to the Arduino code, there was a processing side to the project. Each time a headbang was registered, the processing program would toggle the music on or off. The idea behind this was to make the music sound more like something a DJ would play as the user moves his or her head.
Functionality
The device measures the angular velocity of the head of one person. Our initial setup includes 2 people. One wearing the main head band (or the red band) which has the gyroscope and controls both the music and the vibrations on the head of the other person. The second headband is simply used to impart vibrations to the person in the audience.
The first headband has a gyroscope. As the person wearing the first headband which we call Alpha for the sake of convenience moves his head, the program senses his motion. Whenever the motion of his head is greater than a threshold value in x,y,z direction, we change the value of our variable to 1. The value of this variable is set to 0 by default. At the same time, we have a method listening to the value of this variable. Whenever the value of this variable equals 1, this method sets the vibrators to action and also changes the state of music. So if the music is playing and variable is set to 1 (which happens when motion of head crosses threshold), the program stops the music and if the music is already stopped, it plays the music. Simple!
At the same time, the other headband which we call Beta for the sake of convenience, feels vibrations at the same time as the vibrators are set to motion in Alpha. Thus as vibrators in Alpha move, vibrators in Beta move as well. Do note that only Alpha can control the music flow.
We felt that every single person we showed our project to during the Open House was impressed by the ability to control your own music in a concert and found that the music and vibrations made them feel like dancing.
In a real life scenario, It is easy to imagine Alpha to be the concert singer and Beta to be an audience member. There is so much we can do with this device. Here are some of the possibilities: While we dance in a concert, we tend to sweat. Our gyro also has a temperature sensor in it. We can attach a stream of cold water on the headband which would pump out cold water whenever it notices you are getting too hot. Now that is so cool!
Also, we can use the values we get to plot a very interesting graph of all the head movements during the concert and you can create shapes using your head and view it on a big screen in front of you. This way every single person in the concert gets a chance to share what they are feeling by drawing their feelings using their head.
Acknowledgments
For the successful completion of our head bangers project, we thank Yash Ashish Savani(Freshman, Larkin), Kevin Mori (PRL electronics TA), Sydney (Freshman, Larkin), Mary(RA, Larkin for all the glow in dark equipment), and Allison Okamura (professor). They provided invaluable aid, offering helpful tips on construction and programming. Special thanks to Matt Ohline for providing us with a gyroscope.
Files
Arduino code: Attach:Arduino_Code.zip
Processing code: Attach:Processing_Code.zip
Materials used in project and cost: Attach:Materials.zip
References
Data Sheet for Radioshack Gyroscope used
About the difference between accelerometers and gyroscopes
Allison's provided datasheet for Ohline's gyroscope
Head Bangers in Action
Videos from the Open House:
Pictures from the open house:
:
:
: