VCO.SCI.5

Lesson Summary 

Compare and contrast light and sound. 

Skills 
Arduino
Programming
Vocabulary 

Sound - a mechanical wave that results from the back and forth (longitudinal) vibration of particles in a medium through which the wave is moving. 

 

Speed of Sound - The speed at which sound waves propagate through Earth's atmosphere.  Averaged to 343 m/s and designated by the letter c.

Wavelength - The distance over which the wave's shape repeats. Determined by considering the distance between consecutive corresponding points of the same phase, such as crests, troughs, or zero crossings. Designated by the Greek letter lambda (λ).

 

 

Period - The time over which a wave's shape repeats. Determined in a similar manner as wavelength but in the time domain. It is the reciprocal of frequency and is designated by an uppercase T.  SI unit is the second. 

 

 

Amplitude -  The maximum absolute value of the signal. Designated by an uppercase A.

 

 

Frequency - The number of cycles per unit time.  The SI unit for frequency is hertz (Hz), named after the German physicist Heinrich Hertz; 1 Hz means that an event repeats once per second. Designated by a lowercase f.

Electromagnetic Spectrum - The range of all possible frequencies of electromagnetic radiation.  This range extends from AM radio (3 Hz) all the way up to Gamma Ray bursts (300 EHz).  The visible light spectrum is contained within the electromagnetic spectrum.   

Visible Light - The visible light area of the electromagnetic spectrum contains all colors that are perceivable by humans.  The spectrum of visible light extends from wavelengths of 380 nanometers (nm) up to 750 nm. 

 

Exercise 

Use the CV OUT and EG OUT to change the color and intensity of an RGB LED. 

Materials 

 

3 x 1kΩ resistor 

1 x RGB LED

1 x Arduino Microcontroller

Jumper Cables

 

Hardware 

We will be using the CV OUT to send note information to our Arduino.  For each note we hit we will trigger a corresponding color on our RGB LED.  Our EG OUT will control the intensity of the LED.  Both Werkstatt signals need to go into the Arduino's analog inputs.

RGB LED's have four leads, three PWM and one ground.  We will be using pins 9, 10, and 11 for our Arduino PWM out.  Refer to Figure 1 for an exact layout of all jumper connections. 

 

 Figure 1. RGB LED breadboard layout.

Software 

For our RGB LED exercise we will be using an Arduino to speak to the program Processing.  The Arduino should already have the Standard Firmata sketch uploaded to it. For more detailed information on the Arduino uploading process visit their website

Open the RGB_LED.pde program, ensure all connections are similar to Figure 1 click the run button.  This program takes in both CV OUT and EG OUT information to control the RGB LED.  We can select what color is displayed when what note is played by altering the two arrays notes[ ] and colors[ ].

 

 

RGB_LED.pde comes preloaded with all notes cycling through the color spectrum from red upwards.  This was included to show how colors with  increasing frequency and decreasing wavelength correspond to sounds of increasing frequency and decreasing wavelength.  

Red light is at the bottom of the visible spectrum and has a wavelength of around 700nM.  This is defined as 7 x 1014Hz.  It is more helpful to speak of light waves in terms of wavelength not frequency.   Violet light is at the top of the visible spectrum and has a wavelength of around 380nM.  

On either sides of the visible light spectrum there are still electromagnetic waves that we cannot visually perceive.  Above violet lies ultra-violet, these are the waves that the sun produces and can cause sunburns.  Below red lies infra-red.  These waves are used in everything from remote controls to the XBox kinect.  

The colors in RGB_LED.pde are defined under the colors tab in an R,G,B format. 

 

 

Experiment with creating new colors and assigning them to various notes.  Refer to the comments in Figure 2 for more information about RGB_LED.pde 

 

 Figure 2. Screen capture

Downloads 

Processing is an open source programming environment and community.

moog_werkstatt processing_files.zip

 

 

The Arduino is a micro controller and programming environment for interactive systems. 

Standard_Firmata.zip

Subject 
Unit