Can a Piezo/ Accelerometer pick up both frequency and amplitude?

I would like to use a piezo/ accelerometer to measure the note played by an instrument as well as the volume. I am not looking to use it as a pick per say but just need to get the raw data. I intend of converting this to midi. Is it possible for one of these sensors to measure both frequency(note) of a vibration and the amplitude (volume)?

I don't believe they can respond to other then the resonant frequency of the specific piezo element at hand. They are pretty 'sharp' in bandwidth and as most/all are ultrasonic in frequency, well above audible sound frequencies.

Lefty

Hey Lefty

What do you mean by resonant frequency? Surely the piezo must work with in the audable frequency band else how does it work for guitar pick ups?

Nic

loft:
Hey Lefty

What do you mean by resonant frequency? Surely the piezo must work with in the audable frequency band else how does it work for guitar pick ups?

Nic

Well in context of arduino most piezo elements are those used in ultrasonic range finder applications. Those run in the 100-150khz frequency range and are well above human hearing. They can be obtained either as raw elements or included with electronics to handle the driving and receiving amplification.

Now there are piezo buzzers used as simple sound makers outputs in some arduino projects, but I don't know if they can be adapted as input sensor elements or not.

I know nothing of guitar pick ups but if you can link to a specific electrical datasheet for one, possible we could see if it could be used as an arduino sensor and what if any frequency bandwidth it might offer.

but just need to get the raw data. I intend of converting this to midi.

This is a very tricky thing to do, many have failed. You never know you might be the first one to succeed.

The problem is that all the harmonics in the waveform make it difficult to extract the frequency unambiguously.
Even the commercial MIDI pickups aren't very good. Do a bit of googling for successful projects.

Ok from some research ive been doing over the last day or so, i think im asking the wrong question. Basically there exists piezo's that are used as microphones, this means they can pick up the vibrations of audio.

The question i now pose is,if i plant a piezo on an instrument, does anyone know how to extract from the vibration of an instrument (didge) the frequency and the amplitude and represent it in numerical form, ie some coding pieces.

frequency will basically be how quickly the cycles are happening and amplitude will be how big they are. anyone know how to code that?

frequency will basically be how quickly the cycles are happening and amplitude will be how big they are. anyone know how to code that?

Actually real-time processing of analog audio signals, no matter what the source of the audio signal, is a awful lot to ask of an arduino. It would involve a lot of math (FFT calcs). Not saying it's impossible, but rather very unlikely you would be able to do anything useful. Micros with built in signal processing hardware (DSP) are more suited to that kind of task.

Lefty

If i stick a piezo straight to my didgeridoo, will i not be bypassing the audio and going straight to the vibration of the wood, will this not simplify the signal and therefore the processing?

loft:
If i stick a piezo straight to my didgeridoo, will i not be bypassing the audio and going straight to the vibration of the wood, will this not simplify the signal and therefore the processing?

To be read by an arduino it must be converted to an electrical analog signal, no matter what kind of transducer is used. So my answer is no it will not be eaiser and probably not even possible with an Arduino. Others may have other opinions but again the arduino is great at many things but digital signal processing is not one of them.

Lefty

Ok cool, so what do you mean by a micro? And is there any DSP you could recommend for giving signal frequency and amplitude, i mostly found DSP's to be for compression and EQing

loft:
Ok cool, so what do you mean by a micro? And is there any DSP you could recommend for giving signal frequency and amplitude, i mostly found DSP's to be for compression and EQing

I have never used any DSP enhanced micros. I know PIC and TI make a lot of them. Perhaps someone else here can make a recommendation?

Lefty

thanks man for the knowledge