Hi,
in my current project, I want to drive a piezo crystal using the DAC of the Arduino Uno R4 Minima (it can be any other DAC as well, this way it's built in).
Use a current amplifier to obtain ca. 300-500mA in the 0-5V range
Use a DC-DC converter from 0-5V to 0-150V.
However, I am not an electrical engineer and I don't know how to realize the current amplification. Can someone point out some components, or even a complete circuit to use. I am happy to use any breakout board or to make a circuit by myself. What do I need for it?
I dont need a particular stable or perfect voltage for the piezo, as I have a feedback look with another sensor in my system to dynamically control the piezo.
Ah yes sorry, this crucial information was missing.
Basically, I want to increase the pressure of my system to a pre-defined set-point.
If the piezo increases its thickness, I can increase the pressure. The pressure is read out using a load-cell, used in a feedback loop.
I already tested it with some manually controlled power supply, and it works well.
I don't understand this bit. To get 300-500mV from a 0-5V range you could use an opamp. But it would be more straightforward to just output 300-500mV directly from the DAC.
But your mention of 'current amplifier' implies that maybe you mean 300-500mA, in which case my question would be why you'd want/need to do that.
Well, a linear amplifier, essentially. You could make some kind of totem-pole arrangement with two high-voltage MOSFETs and a suitable driver circuit. But I suspect that ready-made amplifiers are available for this purpose; they might be costly, but given the cost of your piezo, it's clear we're not talking a low-end hobby project here and that you have a reasonable budget.
So you do need reasonable stability, otherwise you'll run into oscillation problems.
What kind of transients do you expect to need to drive? I.e. how fast do you need to ramp up/down?
You are aware that 150VDC is in principle lethal, yes?
This is what I mean.. sorry for the typo. To my knowledge, the DAC deliveres max. 40mA (or less, but this value I've seen in the Arduino specs). Therefore, I had an idea to amplify the current, and then use a DC-DC converter to drive the piezo.
This is true, yet commercial piezo driver are in the range of approx. 1000€ each. If there is a way to make it for less money, let's say 200-300€, I am happy to find that solution.
Can you maybe elaborate on this more?
I don't need it particular fast. Let's say to drive from minimum to maximum length within 5 seconds is sufficient.
Yes, I am well aware of this fact. Thanks for pointing it out
OK, that's really slow. In that case, you may not need much more than something like a shunt regulator. It won't be particularly efficient, but it'll be fairly easy (and cheap) to make. This is the basic topology:
Replace V1 with something like 155VDC - just above the max voltage you need. Replace the stack of zeners (d1...d4) with an adjustable voltage reference; this could be something as simple as the same stack of zeners with a suitable pot across it. It'll have to be pretty high value (500k or 1Meg or so) to keep dissipation down. For M1, use any N-channel MOSFET in a TO220 case and mount a heatsink to it just to be safe; it shouldn't actually dissipate much at all in your application. The 'Load' resistor is replaced with your piezo.
Two things that are missing in this setup and should be added are
a current limiting circuit that keeps the charge current down as you switch on the device and/or ramp up the voltage.
a protection against M1's drain floating at a higher voltage than its base as you remove power from the input but the piezo charge still lingers.
Just off the top of my head; I'm always willing to yield to much better ideas.
Edit: I realize it needs to be micronctroller-controlled; you could take a stable, high voltage and then derive a pwm-switched and RC-filtered reference for M1's gate from that. Something along these lines:
You'd have to fidget a bit with the values; R1 charges C1 so it'll float up to the supply voltage. M1 in this diagram will bleed C1 & C2 through current limiter R4. Note that R1/R4 form a divider that sets the minimum voltage level; I wouldn't try and go all the way down to 0V (R4 = 0R) unless you select M1 very carefully so it doesn't die due to the discharge of the caps. R2/C2 is a low-pass filter to clean up "HV_ref".
Note that the action will be inverted; a high duty cycle on the gate of M1 will result in a a low voltage output and vice versa. There's no pullup or pulldown of the gate in this example; I'd add one (you could argue which would be wisest)/
Heck, thinking about it, you may get away with just this and forget about the whole shunt regulator shown above.
OK, good. I'd also suggest using a power supply that's current-limited because not only is 150VDC dangerous if you touch it, it also tends to create nasty bangs and flashes if something goes wrong.
Also, a perhaps even easier solution to all this is to just take the output from a DAC and run it into a high-voltage opamp with the gain set appropriately for your application.
Wow, that is a very detailed answer! I will look into that and may ask for more once I looked up the parts I didn't understood yet. Same for pointing out the different op-amps!
Glad you could help me
Maybe i am missing something, but I don't see from the data sheet that you need a DC Voltage, in fact under the temperature rating it state the following
Typical Performance Plots
The temperature increase of the chip was measured
after applying a sine-wave drive voltage, with maximum
and peak-to-peak amplitudes of 150 V, at the specified
frequency for 10 minutes.
It would appear that it is a sin wave at 0V - 150VAC Peak to Peak
So you are willing to destroy your 200€ piezo in an effort to find some cheap driver design?
If it were me, I'd use a design that is proven to work in a real world application.