Author Options:

Input problem with OpAmp-controlled ZVS Induction Heater Answered


I'm trying to build a circuit which uses an OpAmp to drive 2 mosfets, which power the LC tank of an induction heater.
The idea is to detect when the voltage over the LC tank crosses zero, and at that voltage I would make the 2 outputs of the OpAmp change states from fully on, to fully off.

The two OpAmps (both inside one chip) have their positive and negative inputs connected to eachother, but with reversed polarity. This would make sure that one output is high, and the other one is low.

Why use an OpAmp? I wanted the MOSFET gate switching to go faster as usually, because in the mazzilli circuit, the gate voltage actually slews at the same rate as the LC tank's voltage slews when it crosses zero volts.
In the mazzilli circuit, it actually doesn't switch when the voltage is 0v, but when the tank voltage drops below the gate threshold voltage.
This would mean that you are always switching current at 5v (for example) instead of at 0V.
So for these two reasons, I wanted to try switching them with an OpAmp.

Probe I on drain 1, probe II on drain 2, and GND on the circuit's ground, gives me an expected result:
when switching states, at 0 voltage of the LC tank, the voltage on one side stays low (since it's pulled to ground) and the
voltage on the other side goes from 0v up to 50v, back down to 0v, like a sine-wave. Then the OpAmps switch again, and the one side now goes up to 50v as a sine wave, and the other one stays low at 0v.
All good, this is working just fine.

Probe I on the one differential input line, probe II on the other differential input line.
Since this is nothing more than just a 1/10 voltage division of the previous measurement, I'm also expecting the signal to be exactly the same, but 11x smaller.
-> problem:
However, this does not happen. Because of some strange reason, as you can see in the scope images: Both channels go high, Twice per cycle, instead of going high only once per cycle, and staying low for the next half of the cycle.
This really isn't good!
Do the inputs affect the waveform in some way?

Remarks about scope images:
Image: 2 gates
Blue gate voltage seems 'quite' fine. Turning on looks good, turning off is not really good becuse if tends to turn on for a short time once again, before it fully turns off.
Yellow gate voltage is terrible. Turning on doesn't happen as expected. Voltage drops back to 0 for a long while which is very bad for the circuit.
Frequency seems fine; 50kHz is as expected with the 14µH and 6µF.

Image: 2 drain voltages
These voltages were measured with a 1-10 voltage divider, and thus show only 1/11th of the actual voltage.
This is getting close to what I want the LC tank to do. The voltages seem quite like sine waves. I suspect that if the gate voltages would be as they should be, these drain voltages would also be perfect sine waves.
The regular sine amplitude of 50V is as expected, with a 24V supply voltage, but
at the moments when the drain voltages strangely drop down to 0v, as you can see in image: '2 gates', at these moments the drain voltage seems to spike over 250V!!

Image: 2 differential input lines
This is the image which I don't understand. I expect the same wave as in the previous picture, but only 11 times smaller because of the voltage divider. However, the voltage does NOT reach 0v while the drain voltage does, and its shape is also completely different.
In this image, both channels are doing one (half) sine wave, twice per switching period. They should be LOW for half a period, as the drain voltages do in the previous image.

Better quality images:
2 gates
2 drain voltages
2 differential input lines


Coils and capacitors:
Line inductor value: I'm not sure if this value is correct.

Center-tapped main coil inductance: This value should be pretty correct, I calculated it by measuring it's size and windings, and the operating frequency is also nearly the same as the calculated one.

tank capacitance: 6 times a 1µf MKP capacitor

- Why these strange large spikes?
- Why is the waveform suddenly different when reading it near the differential inputs?

For the first time ever, I can provide you with scope images! I finally bought a (quite cheap) oscilloscope. I hope it helps a lot.

Oh, and one more thing: The induction heater does actually work already. I'm getting huge currents in the LC tank, since the 6mm copper tubing gets hot after a minute. Water cooling has been added, and it works like a charm! The MOSFETS do get quite hot after 15 seconds of heating an object, or after 40 seconds of heating nothing. This, probably because the gate voltage isn't what it should be.

Kind regards,


You must be getting terrible noise from the layout. This isn't something I would do on a breadboard, I'd want very, very short wires to everything, lots of bypass capacitors on the chips, at the chips. I'd use a comparator and not an op-amp as I already said, and I'd probably put a fast snubber across the FETs.

It would be a good idea to put some kind of current sensing in. Look at using a current transformer, or a Rogowski coil

Here is the toroid current detector and a sample circuit.

But most important as Steve points out is the very short and properly shielded wiring see the pic from working ible, which I had provided for Electorials 9 days ago...!



Let us both point out that the terminals of a current transformer MUST NOT EVER be left open circuit, if the system is energised.

I might have suggested a hall effect sensor too. They're safe, open circuit.

So you can do that for sure, but you can also monitor the SHAPE of the current waveform, which is not related to the voltage one.

SNUBBING is pretty well essential on these very high speed loads.

This will suffer from poor gate drive too.

If you mean it does not snap a high current to rapidly charge the capacitive gate, I agree.

But consider this circuit works impressively well in a resonance switching scheme that detects reversal and sets a Phase-Locked-Loop, so the gate drive does not need sun energy light speed.

He's already suffering from hot mosfets though, because its soft-switching.

Yea, I didn't pick on his heating issue.

Then again, what is he switching if there is No inductive energy transfer.

Every six cycles he has a strong scope burble suggesting a bad sync lock.

The working ible I pointed to uses a current as the synch as opposed the 2.2nF capacitor voltage sync used by Electorials...

Just use split supplies and the comparator you were playing with last week. You're investing a bunch in the rest of it, adding a -ve rail isn't going to break the bank.

You still need the gate driver....

Holly C on a cracker.

Remind me not to complain about not enough information.

Ok you want a tight Schmitt trigger.

In this case reverse what you are doing go broad until they cross over into the range you want.

I know it sounds strange but if you look at this Instructable:


You will see I am getting 63.5 volts on a 5 volt circuit on my oscilloscope.

It is current being misinterpreted as voltage by the oscilloscope your circuit is out of balance.


Total power into the gateis usually negligible, compared to the load switch! Do the maths.

Your op-amp can only manage 125mA of output current. Seriously, you need amps. You have to charge and discharge the gate capacitance as fast as you possibly can. Its not a great idea to slam the inputs of the op-amp around like that either. Sometimes a pair of back-to-back diodes is fitted across the inputs to prevent the input stages of the amp being saturated, and they can recover faster.

You would benefit greatly from using a proper gate driver Ic. Ideally, you want AMPS of gate drive to snap the mosfets on hard. What's happening now, and why your mosfets are getting hot, is that they aren't really turning on or off fast enough.