Theremin is an early electronic musical instrument controlled without physical contact by the thereminist (performer). It is named after the Russian inventor, Léon Theremin, who patented the device in 1928. A typical theremin musical instrument is shown in Fig. 1.
This article explains how you can build an optical theremin using an Arduino Uno board and some readily available components.
The software (theremin.ino) used to program the Arduino Uno is written using Arduino IDE, which can be downloaded free of cost from the website. The open source Arduino IDE makes it easy to write the code and upload it to the board. It runs on Windows, Mac OS X and Linux operating systems.
Circuit and working of Optical Theremin Musical Instrument
Arduino-based theremin wired on a breadboard is shown in Fig. 2. The components required are Arduino Uno, buzzer, 1-kilo-ohm resistor, light-dependent resistor (LDR), breadboard and some jumper wires.
Arduino-based optical theremin wired on a breadboard
The working of the project is fairly simple. The voltage across the LDR changes with light intensity, and the light intensity changes with hand movement of the thereminist.
The Arduino Uno records voltage variations across the LDR using Arduino’s internal analogue-to-digital converter (ADC) at a sampling rate of 25 (which can be changed by the programmer). It then takes average of the LDR readings, maps this reading according to some parameters, including minimum and maximum buzzer frequencies, and minimum and maximum sensor values. After mapping, Arduino sends out a pulse wave to the buzzer’s positive pin according to the calculated value, which creates the sound.
Construction and testing
After uploading the code to the Arduino Uno, move your hand up and down over the LDR, thus changing the light intensity falling on the LDR. If all goes well, you should hear cool space sounds from your own theremin. The author’s prototype is shown in Fig. 3.
Download source code
Read More Detail:Optical Theremin Musical Instrument Using Arduino Uno Board