Go Down

Topic: Driving a piezo loudly! (Read 681 times) previous topic - next topic

Danielvt

Jun 07, 2018, 09:16 pm Last Edit: Jun 07, 2018, 09:17 pm by Danielvt
Hi all!

I'm rather new to electronics, and i'm working on building an alarm. However i can't seem to figure out how to push my piezo to be louder. Currently i've hacked one of these 'cheap' personal alarms that can be bought at the hardware store and pulled out the piezo. Before doing so i measured 40v across the piezo from a mere 4.5 volts battery. I have many failed tries on trying different circuits to boost the power, using all sorts of different methods. Where i'm currently at i use an inductor and transistor like so:



wired up using:

  • Arduino Nano
  • BC550c transistor
  • 100uH inductor
  • 20mm piezo


Setup as shown on attachment.

The inductor and piezo is in the 5v output of the arduino.

When i measure across the piezo i get around 3.3v

Any idea what i'm doing wrong? How do i increase the volume/voltage across the piezo?

Thanks a lot in advance!

/ Daniel


MarkT

#1
Jun 07, 2018, 09:18 pm Last Edit: Jun 07, 2018, 09:19 pm by MarkT
Well the 10mH choke has a much better chance of resonating in the audio band than a tiny 100uH...
Using component values a hundred-fold out isn't normally successful.
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]

Danielvt

Well the 10mH choke has a much better chance of resonating in the audio band than a tiny 100uH...
Using component values a hundred-fold out isn't normally successful.
Thanks for the reply Mark!

(Correct me if i'm wrong) As i understand it, the resonance of the inductor is what can produce a higher voltage, right? - So the aim for me to increase the sound-pressure of the piezo would be to find an inductor that resonates at the exact same frequency as i would like the piezo to? (for instance 4kHz) so when i use
tone(3,4000,1500) in my arduino-code i'm not resonating the inductor at the correct frequency? That makes sense, and i've bumped into this before. However i don't understand how on earth i'm to find the correct frequency for the inductor to increase the voltage?

Can you point me in a direction?

Best regards
/ Daniel

MarkT

The piezo and the inductor form a resonant LC tank circuit.  Hit the resonant frequency and the voltages will
be much higher than the supply.

Piezo elements are basically flexible ceramic capacitors.
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]

jremington

#4
Jun 07, 2018, 10:38 pm Last Edit: Jun 07, 2018, 10:40 pm by jremington
Quote
However i don't understand how on earth i'm to find the correct frequency for the inductor to increase the voltage?
1. Look up or measure the capacitance C of the piezo element.

2. Calculate the parallel LC resonant frequency in Hz using f = 1/(2*PI*sqrt(L*C)).

allanhurst

#5
Jun 08, 2018, 12:53 am Last Edit: Jun 08, 2018, 01:19 am by allanhurst
The piezo will have a self-resonant frequency in it's housing at which it will be most efficient.

Hence most drivers use this as the tuned element of of a high voltage output oscillator....

I did this years ago for a burglar alarm  and got ear-piercing results at 3-4kHz

Special magnetics are required. eg TOKO make them. An auto-transformer wound on a ferrite core.

See if I can dig out a circuit.

The housing will be important for best output - look at a commercial unit. It has to be tuned as well.

A piezo disc is NOT a wideband device !

Allan


Danielvt

1. Look up or measure the capacitance C of the piezo element.

2. Calculate the parallel LC resonant frequency in Hz using f = 1/(2*PI*sqrt(L*C)).
Thanks a lot!

I measured the capacitance to 12.27nF and then found a inductor on 154mH to match, so that i would get around 3.6569 kHz which is where the piezo is hearable.

However when measuring the AC voltage i only get half of what's inputtet through the waveform generator, any guess what's wrong?

MarkT

What is the Q of the inductor?  Power inductors are not normally suitable for RF applications like this.
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]

Danielvt

What is the Q of the inductor?  Power inductors are not normally suitable for RF applications like this.
I'm not sure - i guess after seeing wiki, that you're asking about the quality-factor? I'm currently at university where we have a component-shop where i found the inductor. However atm. i've managed to actually find a frequency where i can bump the voltage up to around 10ACv from 2 outputs in the arduino, using the ToneAC library. This is done using two of the above mentioned inductors and some time finding a frequency with a waveform generator.

When you talk about power inductors, i'm not quite sure what the difference between different inductors are (and their usage), could you elaborate? :)

Thanks again for your help! :-)

MarkT

Its a very big subject area, inductors are far more complicated than any other passive component type,
there are literally thousands of different magnetic materials used, none is even remotely ideal except
for air-cored, and then you have resistance losses and stray capacitance to worry about.

It may be the case that the Q of the piezo element is too low for resonance even...

Another way to get higher drive voltages is using a step-up transformer.

You mentioned the cheap alarm the piezo came from - why not reverse-engineer the driver circuit
in that?
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]

allanhurst

I wouldn't call a few kHz RF....

And modern swmode psu's often run at 100's of kHz so their inductors should be fine.... though 154mH is a bit high for that. They're normally 10's to a couple of hundred uH.

What's it's core made of, OP?

Allan

Paul_KD7HB

A much easier solution is to use a self-excited piezo. Just apply 5 volts to get the sound. There are many different sound levels available. Pick one to suit your situation. I put one on an oven controller that is so loud I had to use it inside the enclosure. It was laying around the shop left over from some customer's project.

Paul

DVDdoug

#12
Jun 08, 2018, 08:57 pm Last Edit: Jun 08, 2018, 09:45 pm by DVDdoug
Quote
...The inductor and piezo is in the 5v output of the arduino.

When i measure across the piezo i get around 3.3v

...However when measuring the AC voltage i only get half of what's inputtet through the waveform generator, any guess what's wrong?
How do you know what's coming-out of the waveform generator?

DMMs are calibrated to measure the RMS voltage of a sine wave.   If you don't have a sine wave it won't be correct.*

A 0 - 5V square wave has a peak of 5V (and 5V peak-to-peak).  The average is 2.5V and the RMS is also 2.5V.   

The RMS of a sine wave is 0.707 times the peak and the average** is 0.637 x peak.   Since the meter assumes a sine wave, some meters will simply filter the rectified & filtered voltage to get the (rectified) average, and then multiply by (0.707/0.637) to get RMS.   

Or, it might read the peak and multiply by 0.707.  It looks like that's what your meter is doing...It's just the wrong formula for a square wave.


* There are "True RMS" meters.   I have one at work.   

** That's the average of the rectified voltage or the average of the absolute values.   The true  average is zero, since a sine wave is positive half time and negative half the time.

allanhurst

#13
Jun 08, 2018, 10:12 pm Last Edit: Jun 08, 2018, 10:15 pm by allanhurst
The reading is only true if you use a true RMS voltmeter - eg a Fluke 87 - a cheapo voltmeter measures the average and displays it as if it were RMS.

This is only accurate for a sinewave. Not for any other waveform.

Allan

ted


you need autotransformer

https://www.electroschematics.com/wp-content/uploads/2008/12/siren-driver-schematic.jpg

Go Up