mza
khd
pwei
dianaz
The PIANO system uses a large screen that is attached to a keyboard that shows upcoming notes and gives feedback by lighting up corresponding keys. It's designed to work with a specific keyboard, which means it isn't immediately usable on classical acoustic pianos, and it isn't very light or portable.
Pianissimo, on the other hand, is compatible with pianos and keyboards of many different shapes and sizes. It's low-impact; there's no need for a large screen to cover almost all of the piano or keyboard. And, it's compact and easy to set up.
Lighted keyboards, such as the one above, are one option for the self-taught pianist. However, they are limited in the number of pre-programmed songs that they can teach and they require the additional investment of buying yet another keyboard that might not be used after all the songs are exhausted.
Pianissimo is a smaller, non-redundant investment that keeps giving back. It is an enhancement to any piano or keyboard that is capable of reading in any MIDI file, so the number of songs it can demonstrate and its potential to teach is virtually limitless.
Participating Actors
The use case is initiated by a player.
Brief Description
The use case allows the player to set up the device and play a basic song.
Pre-Condition
The player must have access to a piano.
Flow of Events:
Our project is composed of two main systems that communicate with the user as well as with some preloaded MIDI files of music that the user wishes to learn or perform. The two main systems are the audio processor (acting as the main sensor module) and the laser projection system (acting as the main actuator module). The systems will act together to tutor a user in learning a piece of music.
Audio-Technica AT2005USB Cardioid Dynamic USB/XLR Microphone for recording notes played on the keyboard
4-Pin PWM Fan to rotate the mirror
that will reflect the laser bean onto the piano keys
Lightweight mirror for reflecting
laser beam onto the piano keys
Laser module to illuminate piano
keys and provide feedback
Raspberry Pi for central processing and laser projection control
As the piano player plays a song, the system will recognize the notes being played and compare those notes to a MIDI file. The FFTW C subroutine library will give use the necessary tools for transforming audio signals to the frequency domain in order to perform this comparison.
We will have exact control over the on or off state of the laser pointer in order to achieve precise lighting of the piano keys. As the motor rotates, the laser pointer will likewise be able to illuminate different keys in (pseudo) real-time.
This mode is useful for the piano player who has just picked up a new sonata or prelude. The set of keys to be played will remain illuminated until the correct keys have been pressed; once they have been pressed, the system will move on to the next set of keys to be played.
The microphone will give audio input to the processor via USB.
The microphone input will be compared with the MIDI file and the system will output a key map that corresponds to the physical piano keys and be given to the laser projection system.
The laser pointer will be controlled by the processor.
In order to support quick development and design with modularity in mind, there will be a common interface between note detection and the laser projection output.