High Voltage Forum

High voltage => Transformer (ferrite core) => Topic started by: neukyhm on December 22, 2018, 06:43:09 PM

Title: Piernas's Fast ZVS Mazzilli Driver
Post by: neukyhm on December 22, 2018, 06:43:09 PM
Hi everyone, I'm posting now part of the project https://highvoltageforum.net/index.php?topic=514.0
This is a Fast mod for the original ZVS.



The X-Ray machine has an ETD59 gapped core, and I had to drive it somehow. The problem was that the original Mazzilli driver is very slow at charging the Mosfet gates so I had to think a solution, and this was using a dual Mosfet driver, the TPS2814P. For more info,  here is the hackaday.io page (https://hackaday.io/project/162935-piernass-fast-zvs-mazzilli-driver)



This schematic is very useful if you're looking for a way to drive a HV transformer and your primary's inductance is low, making the resonant frequency too high for a regular ZVS driver. Hope you like it.



With this circuit I'm able to drive 150V across the primary, using two IRFP250N at 110kHz.

Title: Re: Piernas's Fast ZVS Mazzilli Driver
Post by: Mads Barnkob on March 11, 2019, 09:04:04 AM
This thread went under the radar for me, which is a shame, because a active drive addition to the Mazilli ZVS is a great improvement against cross-conduction failures at low input voltage.

Does it have built-in dead-time to avoid cross-conduction and possible improve it with a separate drive power supply with a large capacitance on it, in order to make sure that gate drive is the last to shut down when pulling the main power or tripping a breaker.

Thanks for sharing.
Title: Re: Piernas's Fast ZVS Mazzilli Driver
Post by: neukyhm on March 11, 2019, 05:02:06 PM
This thread went under the radar for me, which is a shame, because a active drive addition to the Mazilli ZVS is a great improvement against cross-conduction failures at low input voltage.

Does it have built-in dead-time to avoid cross-conduction and possible improve it with a separate drive power supply with a large capacitance on it, in order to make sure that gate drive is the last to shut down when pulling the main power or tripping a breaker.

Thanks for sharing.
Hi Mads :P

I'm not an expert on this stuff (I'm a physicist not an electronics engineer). With "dead-time" and "cross-conduction", you mean to avoid enabling both Mosfets at the same time?

Talking now about the driver being the last thing to turn off, this circuit is inside the x-ray machine, that also has 2 relays, one of them is for the filament and the other feeds the Mosfet driver of the ZVS. I programmed the arduino board to first shutdown the main 48V psu via TTL signal, waits 200ms, and then shutdown the relay that feeds the Mosfet driver, this way any energy left in the LC circuit of the ZVS will leave through a fully ON Mosfet.
Title: Re: Piernas's Fast ZVS Mazzilli Driver
Post by: Hydron on March 12, 2019, 10:18:03 AM
I'm not an expert on this stuff (I'm a physicist not an electronics engineer). With "dead-time" and "cross-conduction", you mean to avoid enabling both Mosfets at the same time?
That's exactly what it means - deadtime is the enforced period between the top switch turning off and the bottom turning on (or vice versa), while cross-conduction is what happens when both end up on at the same time, shorting out the supply (generally a bad thing :P)
Title: Re: Piernas's Fast ZVS Mazzilli Driver
Post by: Mads Barnkob on March 12, 2019, 01:06:39 PM
Now I had time to look up the datasheet for the TPS2814P ( https://datasheet.octopart.com/TPS2811P-Texas-Instruments-datasheet-69875.pdf ) and it says just in the description "...a design that inherently minimizes shoot-through current..." and on page 7 is a table over the typical propagation delay times, which is 25-35ns between input/output and that should hinder most cross-conduction, which shoot-through is a word for the same.
Title: Re: Piernas's Fast ZVS Mazzilli Driver
Post by: neukyhm on March 12, 2019, 02:06:00 PM
I didn't know about cross-conduction and deadtime. I did know that I had to take care that there is only one Mosfet enabled at the same time, and also to avoid that there is none enabled, because the inductor in all Mazzilli drivers will cause a voltage peak to both Mosfets, I could see this in the oscilloscope.

As far as I understand, there is no way to fully prevent cross-conduction, right? the turning ON process of a transistor is not immediate, not in real life.
Title: Re: Piernas's Fast ZVS Mazzilli Driver
Post by: flyrod on March 13, 2019, 02:35:03 AM
I missed this thread before too, but thanks for sharing your results!  Do you have any traces of the gate signal(s)?  Also, can you talk some about how you picked the various resistor values?  Are they just what you had or did they need to be tuned using the oscilloscope?  I've found these circuits to be very sensitive to the particular components and layout, so without a scope it's mostly trial and error for me.
Title: Re: Piernas's Fast ZVS Mazzilli Driver
Post by: neukyhm on March 13, 2019, 04:24:18 PM
I missed this thread before too, but thanks for sharing your results!  Do you have any traces of the gate signal(s)?  Also, can you talk some about how you picked the various resistor values?  Are they just what you had or did they need to be tuned using the oscilloscope?  I've found these circuits to be very sensitive to the particular components and layout, so without a scope it's mostly trial and error for me.

This is the signal to the input of the Mosfet driver:
 [ Invalid Attachment ]

There is a peak at the beginning that I suspect it's caused by the UF4007 when they block current suddenly so a voltage peak it's produced there, but the TPS2814P manages it well.

This is the mosfet's gate signal at 200W:
 [ Invalid Attachment ]

There is ringing, but the mosfets stay cold. This is a stress test I did at high power (200W) but the x-ray machine is below 100W. At less power, the ringing is also smaller, but it's frequency what contributes the most to it. The frequency here is high (>100kHz).

Talking about the resistors, I knew that a big resistor at the IC inputs would reduce ringing there, but these inputs also has a capacitance, so a big resistor would have made the input activation a bit slower, I chose 1k because they worked well. I also placed 100ohm resistors next to the diodes because I could see that the fast ringing seen at the gates when turning off was caused by the 100mH inductor in all ZVS. I could see that, at the exact time mosfets are switching, this inductor causes a voltage peak to both drains that also block both diodes, and this causes a small voltage peak at the IC inputs, I could see that placing a 100ohm ressitor there reduced this noise a lot, I think it's because that resistors make the IC inputs discharge just a bit slower (due to the input capacitance), so the turning off process is delayed some nanoseconds and the other mosfet has time to turn ON, preventing the scenario where mosfets are switching and we can't consider yet that one of them is fully on, so the voltage peak produced by the 100mH inductor is smaller.

This is hard to explain and harder to understand, I had to think a lot what was causing that noise when the mosfet is turning off, until I discovered that the 100mH inductor was causing it.
Title: Re: Piernas's Fast ZVS Mazzilli Driver
Post by: flyrod on March 14, 2019, 04:25:24 PM
Thanks for the detailed reply!  I wonder how much of that ringing is really there.  Have you seen this AN?

https://www.onsemi.com/pub/Collateral/AN-9005.pdf.pdf

You can get noticeably different results just based on how you measure it (figure 36/37).  I've seen this mentioned in a few different places when trying to measure a fast signal.  Also, I wonder how much the layout is a factor.  What happens if you put a bypass capacitor very close to the driver chip and put the driver as close to the FET gate pins as possible?  I've also seen it mentioned on the forums somewhere that it helps to have the drains close to the capacitors so that the high current wires don't act as inductors too much.

Also, have you tried different gate resistors besides 10ohm?  I've seen different articles on picking a gate resistor value, but I think that has more to do with hard switching and reducing ringing on the output.

Title: Re: Piernas's Fast ZVS Mazzilli Driver
Post by: neukyhm on March 14, 2019, 11:30:12 PM
Thanks for the detailed reply!  I wonder how much of that ringing is really there.  Have you seen this AN?

https://www.onsemi.com/pub/Collateral/AN-9005.pdf.pdf

You can get noticeably different results just based on how you measure it (figure 36/37).  I've seen this mentioned in a few different places when trying to measure a fast signal.  Also, I wonder how much the layout is a factor.  What happens if you put a bypass capacitor very close to the driver chip and put the driver as close to the FET gate pins as possible?  I've also seen it mentioned on the forums somewhere that it helps to have the drains close to the capacitors so that the high current wires don't act as inductors too much.

Also, have you tried different gate resistors besides 10ohm?  I've seen different articles on picking a gate resistor value, but I think that has more to do with hard switching and reducing ringing on the output.
I didn't test other gate resistors, but a higher value will reduce noise. However I'm convinced that most of that noise isn't due to the inductance of the path from mosfet driver to mosfet, I think it's because of switching dead time: if the mosfets are switching but none of them is fully ON, then the current the circuit was consuming makes the 100mH inductor create a voltage peak that seeks for ground. This voltage peak at both drains blocks both diodes as I said before, and this makes the mosfet driver try to turn on both transistors for an instant. But both transistors can't be enabled at the same time because if one of them is, the opposite diode is looking at ground and disables it's mosfet (*) This keeps happening for a few nanoseconds until the voltage peak of the 100mH disappears and everything goes back to normal oscillating, that's my hypothesis.

(*) Omg this is so hard to explain