0
\$\begingroup\$

I need to achieve 110dB at 25khz from a Piezo Transducer. According to the datasheet, the resonant frequency of the Piezo is 25khz and at 10 vrms it will produce 110dB.

I will be using an MSP430G2553 controller's PWM pins to bit-bang it.

Currently, though, I am using an Arduino Mega 2560 to do a 'push-pull'. I have connected the 2 pins of the transducer to 2 separate PWM pins on the arduino and am using a library that synchronizes the PWM output on the 2 pins so that they are opposite of each other. This gives full motion to the piezo instead of having it vibrate between 0 - 3.3v, it oscillates between -3.3v->3.3v. This doubles the voltage and got my output from 50dB up to 80dB. However, I need to get up to 110dB.

So, the big question again is: How do I increase the volume up to 110dB ? (Basically, I need to achieve -5v -> +5v instead of -3.3v -> +3.3v) How do I get the voltage up without screwing up the 25khz oscillation? I need a circuit that will accomplish this.

Here's the current wiring:

Resister is 100ohm Piezo has capacitance of 2500pf Voltage from Arduino Mega 2560 goes from -3.3v to 0 and 0 to 3.3v on the 2 PWM pins. These are set to oscillate at 25khz.

Wiring

\$\endgroup\$
1
  • \$\begingroup\$ Use an audio amplifier or use levelshifters to levelshift the 3.3 V signals to 5 V then buffer the signals using inverters or buffers. \$\endgroup\$ Commented Jun 15, 2016 at 5:50

2 Answers 2

1
\$\begingroup\$

If you have the 5V available somewhere, it is easy. Put a 74HCT buffer or inverter between your both signals and the piezo. I can suggest 74HCT2G125 or 74HCT2G14 (thay are small, and 2-gates only, so it won't clutter your circuit).

74HCT can drive +/-20mA, which should be enough (see next paragraph), and it accepts 3.3V signals as input (74HCT uses 5V TTL levels, wich are compatible with 3.3V CMOS levels - don't use 74HC, they won't be appropriate). They will output 5V.

Note that in order to avoid overcurrent on the 74HCT outputs, you should make your resistor a little bit higher (at least 470 Ohm). This will limit the output current to the specified 20mA, but this won't affect your signal much, even at 25KHz. Given your piezo, this will give a rise/fall time of about 4µS, so with a period of 40µS, it is still acceptable.

If you don't have 5V available: here is a circuit that works like a charge pump (or voltage multiplier), with your two out-of-phase signals (they really need to be symmetrical, or you'll end up wasting some power)

enter image description here

It will provide +/-6V to the piezo (modelized by the 2500p capacitor).

But Dave Tweed made a good point, and even +/-6V is not enough to reach the dB level you need. You could multiply this again by two, by chaining the above circuit twice (with some adjustments), but I'm afraid it would start to be ineffective at this point - and clumsy.

\$\endgroup\$
1
  • \$\begingroup\$ Comments are not for extended discussion; this conversation has been moved to chat. \$\endgroup\$
    – Dave Tweed
    Commented Jun 21, 2016 at 16:01
6
\$\begingroup\$

10 Vpp is NOT the same thing as 10 Vrms. In order to get the full output from the transducer at 10 Vrms, you're going to have to drive it with a 20 Vpp square wave, or a 28.3 Vpp sine wave.

With a single supply and an H-bridge driver, you will need a 12 to 15 V power supply in order to get there.


An alternative would be to build a relatively high-currrent bridge driver that runs directly from your 3.7 V battery, and use a 1:5 transformer to boost the voltage to the level the transducer needs.

\$\endgroup\$
0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.