[sdiy] Percussion MIDI controller - again

Ingo Debus debus at cityweb.de
Sun Mar 27 17:11:07 CEST 2005


Am Freitag, 25.02.05 um 10:03 Uhr schrieb Magnus Danielson:

>
>> How do I attach the piezo disks to the tube? I don't think piezos like
>> to be bent. Is it better to attach them at the sides of the tube, or
>> flat on some sort of "end cork"? In the former case I think I'd need
>> some "adaptor" (perhaps made from aluminum) concave on one side,
>> matching the tube's diameter, and flat on the other.
>
> To quote my friend who made the one we tried: "You thermo-glue them on 
> in the
> obvious way!". Basically you thermo-glue them on each end.


Ok, this project is progressing very slowly, but anyway:

I found a piece of PVC tube, two metres long, and hot-glued one piezo 
disk to either end, at the sides of the tube. I built two little 
preamplifier boards (TL072, only one amp used) with a gain of 10 to 
transmit the signal with low impedance, and attached these to the tube 
close to the piezos. Their output signals are high-pass filtered 
(simple RC, 10k/10nF) and offset by about +0.7 volts and fed into a 
74HCT14 Schmitt Trigger. I intend to feed the output of the Schmitts 
into a microprocessor that calculates the time difference.

The output signals of the preamplifiers look just like dampened 
oscillations, no surprise here. The big problem is, especially when the 
tube is hit far away from the receiving piezo, that the first peak of 
the signal isn't always the largest one. I think this is due to 
dispersion (correct term here?), i. e. parts of the signal are 
travelling with different speed than the rest. Thus it can happen that 
the first peak triggers the Schmitt, or that a later peak does this, 
Since the time between the peaks is in the same order of magnitude as 
the delay (fraction of a millisecond to a few milliseconds) it seems 
impossible to detect the position of the hit by the delay between the 
two signals.
As this is meant to be used as a percussion controller, of couse 
various signal levels are possible, thus with a fixed threshold I can 
never tell which of the peaks caused the trigger.

Any ideas how to solve this?
I thought I could build analog peak detectors and use the peak with 
maximum amplitude, but if these are two peaks almost of the same 
amplitude, I'm lost again.

Ingo




More information about the Synth-diy mailing list