Vibration Motor Foam Speaker Using Arduino

Vibration Foam Speaker

Concept: Very simple, using an Arduino and the play melody basic program, create a music playing speaker out of a vibration motor and a piece of flexible foam. Instead of pulsing signal to a speaker, signal is pulsed to a motor varying how fast it can spin and when it spins.

Science behind it (this might not be super correct but it is my basic understanding of how it works): As the motor vibrates (uses an imbalanced shaft) it transfer the kinetic energy into the foam which has many air pockets throughout its structure. As the foam absorbs all this kinetic energy into all the air pockets it spreads out the rough vibrations throughout into little air vibrations everywhere within the foam and smoothing it out. All the air pockets now vibrate at the same frequency and each acts as a small speaker using compression of air to produce sound. Think of it like a 100 little piezo speakers all playing the same song tied together on a hammock, this is essentially what the foam is, lots of little air pockets connected on a web which allows many of them to vibrate almost independently.Vibration Foam Speaker

Tools Required:
Scissors

Materials Required:
Arduino (uno used for this) and jumper wires
Vibration Motor (Radio Shack http://www.radioshack.com/product/index.jsp?productId=2914700)
LED (not necessary but fun)
1″ x 3″ of Foam (can try many different materials here) (http://tinyurl.com/9b6cohq)
Small piece of scotch tape

Step 1: Wrap vibration motor with foam

Cut a piece of the blue foam (or other foam, try different things) to approximately 1″ x 3″. Wrap the foam around the motor and secure with tape.

Step 2:

Wiring the motor and LED:
The motor and LED are wired in parallel so they receive the same outputs from the Arduino for the music. Pin 9 on the Arduino is what outputs the music signal so that will be the lead to the positive for the LED and motor. Both the negative leads on the LED and motor will goto ground. Plug in the components into a breadboard (or wired together directly if desired) following the pictures and schematics.*Note: Depending on what LED is used, a resistor may be needed (but will probably not burn out without it) 

Wiring diagram courtesy of Arduino example projects (Great resource, check it out!) http://arduino.cc/en/Tutorial/Tone

Vibration Foam Speaker schematic

Step 3: Upload code and play vibrational music!

Last step is to upload the code (currently has Star Wars theme and Mario themes, remove commenting on the mario theme and comment out the Star Wars theme to play different melodies).

Last step is to upload the code (currently has Star Wars theme and Mario themes, remove commenting on the mario theme and comment out the Star Wars theme to play different melodies).

Special thanks to R-Team Robotics club for posting their arduino code with the melodies programmed in!
http://www.phys-x.org/rbots/index.php?option=com_content&view=article&id=66:lesson-5-play-melody-with-piezo&catid=41:kits&Itemid=70

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

/* Play Melody
* ———–
*
* Program to play a simple melody
*
* Tones are created by quickly pulsing a speaker on and off
*   using PWM, to create signature frequencies.
*
* Each note has a frequency, created by varying the period of
*  vibration, measured in microseconds. We’ll use pulse-width
*  modulation (PWM) to create that vibration.

* We calculate the pulse-width to be half the period; we pulse
*  the speaker HIGH for ‘pulse-width’ microseconds, then LOW
*  for ‘pulse-width’ microseconds.
*  This pulsing creates a vibration of the desired frequency.
*
* (cleft) 2005 D. Cuartielles for K3
* Refactoring and comments 2006 clay.shirky@nyu.edu
* See NOTES in comments at end for possible improvements
*/

// TONES  ==========================================
// Start by defining the relationship between
//       note, period, &  frequency.

// period is in microsecond so P = 1/f * (1E6)

Read more: Vibration Motor Foam Speaker Using Arduino

Leave a Comment

Your email address will not be published. Required fields are marked *