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?
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.
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.
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?
Look up or measure the capacitance C of the piezo element.
Calculate the parallel LC resonant frequency in Hz using f = 1/(2PIsqrt(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'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?
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?
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.
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.
...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 [u]RMS voltage[/u] 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.
So the whole problem revolves around the fact, that i need to drive the piezo to the highest possible DB-level from a 3v battery. I've designed and 3D-printed a resonance chamber which seems to work okay. My biggest succes has come from driving around 4.6kHz from the output arduino pin to a transistor and from there to a parallel setup with a 4.7kH inductor and the piezo. The piezo is measured as 18.5nF which by my calculations should result in a ressonance frequency around 17068Hz. However this is far from where i get my highest voltage when measuring vAC. Around 4.6kHz is where i get the highest voltage (around 6.2vAC). Any suggestions on how to increase the voltage across the piezo? My current setup just doesn't seem to cut it. It needs to be louder (it's for an alarm)
Danielvt:
So the whole problem revolves around the fact, that i need to drive the piezo to the highest possible DB-level from a 3v battery. I've designed and 3D-printed a resonance chamber which seems to work okay. My biggest succes has come from driving around 4.6kHz from the output arduino pin to a transistor and from there to a parallel setup with a 4.7kH inductor and the piezo. The piezo is measured as 18.5nF which by my calculations should result in a ressonance frequency around 17068Hz. However this is far from where i get my highest voltage when measuring vAC. Around 4.6kHz is where i get the highest voltage (around 6.2vAC). Any suggestions on how to increase the voltage across the piezo? My current setup just doesn't seem to cut it. It needs to be louder (it's for an alarm)
Thanks again for inputs!
Look for a PULSE TRANSFORMER with winding ratios that will give the voltage you want. Use to be almost free from surplus establishments. Now probably hard to find used.