I've been exploring the idea of making an induction heater.
Mostly I see people using the ZVS circuit to do it, but I would like to get an understanding as to how you would do it if you had an ADC and a microcontroller (where you could switch the transistor/s at any given point in the wave).

I've read Can a PWM source be used to drive an LC circuit to get it to resonate? and Question - LC Tank - Resonance , Duty Cycle , Back EMF.

In both questions there's user Andy aka showing a circuit with a transistor driving the LC tank on the low side. I recreated it in falstad:
enter image description here
The 2.5μH and ~1μF do resonate at 100kHz.

However, no matter what I do, I can never get the voltage within the LC circuit to go above the supply voltage. The swing across the inductor is ±5v which means that there is at most 10V at the collector. It always looks like this (green is voltage across inductor/capacitor, yellow is current through the inductor, red is the pulses):
enter image description here
(voltage and current are not 1:1 in terms of scale due to some automatic scaling falstad does)

It seems the oscillation always 'synchronizes' with the pulses, such that the transistor only conducts when the voltage across the capacitor is the same as the supply voltage. This ultimately makes it have no effect on the current, because the inductor is still getting the same voltage across it that it would get from the capacitor alone.

Seems to me like the more opportune time to turn on the transistor is the point where the capacitor voltage is equal to the supply (so the capacitor isn't disturbed), and the current is increasing:
enter image description here
Here the current should also keep it's slope as the voltage across the inductor doesn't change.

I tried this manually by just manually switching a switch, and it seems to work: enter image description here
The resistor is to simulate losses.

In the aforementioned scenario where an ADC is used (or I suppose a comparator could achieve the same goal) with a microcontroller, this could be the point at which to do the switching. The only issue I see with doing so is that it would reduce frequency based on how long it was switched on.

Am I doing something wrong that my simulation doesn't work like Andy aka's?
Is the above switching 'moment' the appropriate one if the goal is to get as much amplitude as possible? Or for an induction heater application?

  • \$\begingroup\$ @RohatKılıç How do you figure? If the swing across the inductor is ±5v then there is at most 10V at the collector (just tested, it is indeed 10V max). Plus, the induction heater output is based on the current going through that inductor, which is dictated by the voltage across it. As far as I can see the collector voltage is of little to no relevance. \$\endgroup\$
    – TrisT
    Commented Jan 14 at 9:38
  • \$\begingroup\$ Sorry for the misunderstanding, I deleted my previous comment. The voltage seen across the switch should be a sinewave with a DC offset of 5V. I simulated your circuit on LTspice, and I got a swing of ~24Vpp. So, across the tank, you should see the same sine but without the DC offset and with a phase difference. I will also try Falstad. \$\endgroup\$ Commented Jan 14 at 9:58
  • \$\begingroup\$ I tried with Falstad. Same output as I explained in my comment above. Here. \$\endgroup\$ Commented Jan 14 at 10:10
  • \$\begingroup\$ My advice is to use a decent simulator. I have zero faith in falsenad. \$\endgroup\$
    – Andy aka
    Commented Jan 14 at 11:09
  • \$\begingroup\$ Yeah I'm starting to think this is falstad goofing up. Suspected it could be the transistor limiting current, so I reduced the base resistor and voltage went up. Then I tried with a mosfet (expecting it to go even higher) but turns out if you put 15v at the gate and 40v at the drain only 2A flow. Maybe this was a stupid question because I assumed the simulation was right. Later I'll try it with ltspice and if it's a matter of simulation I'll write my own answer saying that. \$\endgroup\$
    – TrisT
    Commented Jan 14 at 11:13

2 Answers 2


Without delving into a full design, I'll just contribute some high-level hints:

Presumably, you want high efficiency, so you aren't stuck bolting big transistors to huge heatsinks and making a big linear amplifier for nothing.

Amplifier dissipation is (mostly) the average power dissipated by its transistors. When voltage and current are both high, power is high, and when this happens most of the time, average power is also high.

If we can arrange a circuit so that voltage and current are alternately very close to zero, and only very little time is spent inbetween (when both are simultaneously high), we can push the average down quite far. Almost arbitrarily in fact. That's a big win. It means smaller components, lower cost (to a point), and most of the input power makes it to the output. Cool.

To do this, already assumes some things about the circuit. We need an element connected to the transistor, whose voltage can change ~instantly, without drawing huge current (or change) from the transistor. Conversely, the transistor's current needs to change ~instantly, and we need somewhere for that current to go.

Inductor voltage can change instantly without a corresponding (instant) change in current, so that's promising. We could switch directly into the inductor, then. But a single switch would set the inductor's current to zero as soon as it turns off, and all the inductive energy is lost. (Where? Switch arcing, or transistor avalanche. Even with a truly ideal switch, it'll go into radiation loss or something; only some of which will be the work we're trying to induce power in, so, still efficiency would be poor.)

Note that inductive energy is necessary here: typical induction coils have a loaded Q factor of at least a few, and industrial applications and wireless power transmission can have a Q factor in the 100s. That is, for every watt we want to transmit, we need Q times more VARs circulating in the coil.

VARs are watts, but "sideways": the peak power might be Vrms * Irms, but because V and I are phase-shifted, the power is oscillating up and down around zero average. In terms of dimensional analysis, we're putting volts and amps together but not getting watts, for the same reason torque is a force times a length but isn't mechanical work -- work is when those quantities are parallel, torque when perpendicular.

Anyway, if we use two switches alternating, we can conserve the magnetic energy, recirculating it to a supply. This is a half-bridge direct-drive circuit:


simulate this circuit – Schematic created using CircuitLab

Give the simulation a try. Note that switch currents alternate from negative to positive, i.e. current is fed back into the supply, then draw out later. This is done at low voltage drop, or high voltage and low current when off, so the efficiency is good, at least with respect to putting VAs into the coil.

Downside: the switches have to handle full apparent power (VAs, watts and VARs). We can use transistors in switching mode so it's not a complete freakshow, but it's unsatisfying that we still need so much capacity -- if the Q factor is 10, and we want 100W, we need 1kVA inverter capacity, and we could otherwise get 1kW (or at least a modest fraction, like 1/2 or 1/4 of that capacity) from the same transistors in a conventional DC-DC converter for example. Seems unfair, right? And it's hardly scalable if we want to drive a high-Q inductor.

We can cancel out the inductive reactance by capacitive reactance. We then have a resonant frequency, and sinusoidal voltage and current. Control is more tricky because we have to track resonance, but we don't have to deal with all that reactive power.

We can connect the capacitor in series, or in parallel (or a combination thereof, I suppose). In series, we can change the voltage suddenly (thanks to the inductor, current changes more gradually); in parallel, we can change current suddenly (thanks to the capacitor, voltage changes more gradually).

We can use switches to work with either arrangement, but for reasons I won't go into here, voltage-sourcing inverters are preferred; sort of, more fundamental. So, we would prefer inverter types of voltage-fed push-pull, or half- or full-bridge, with honorable mention to quarter-bridge and class E types.

So, your circuit. The nice part is: comparing to the single-switch case mentioned above, inductive energy does have somewhere to go -- it flies back into the capacitor, and resonates (as your simulations show, more or less). The problem is turning on: if we open and close the switch arbitrarily, at some rates we will find residual charge on the capacitor; switching on into the capacitor ~instantly discharges it, and thus its energy (the energy difference from whatever voltage it had, to whatever voltage the transistor is forcing it to) is dissipated in the switch, while a huge gulp of current flows. This is bad. We can control the switching such that this is avoided most of the time, but it still must occur at least at startup, and we don't get much control over what it's doing -- the capacitor voltage has to be charged to at least the supply voltage in order for the switching transistor to saturate (reach a low voltage drop). We can't have less power than this, unless we skip pulses and just wait.

Such circuits do find use -- primarily where the control range is not an issue, and the startup impulse happens infrequently enough to tolerate. Induction cooktops are typically such an example. See:
Help me to understand the working of induction cooker circuit
and related topics. A class-E circuit is used, which is like a flyback circuit, but instead of clamping the voltage with a diode, it resonates into the capacitor; the switch voltage waveform is basically a free-ringdown wave, truncated to show only the top part, repeated every cycle inbetween a flat charging period. It's quasi-resonant, because the actual operating frequency is below resonance: during the switch-on time, the inductor is charged with current, reaching a peak current proportional to on-time. Thus as frequency goes lower, power goes higher; but off-time must be kept constant, corresponding to the flyback phase of the waveform.

Note that, because the switch drives the inductor directly for part of the cycle, this technique isn't very scalable to higher Q loads -- it's typically used for low-Q loads. Cooktop coils typically have a loaded Q of 3-10, so this isn't a bad compromise; a bit of extra switch capacity is required, but only one switch (and drive and control circuit) is needed, so it's cost-effective.

For general use and experimentation, I would recommend something a little safer to operate. As long as you avoid shoot-through (both switches on simultaneously; this can be enforced by choice of drive IC), the half-bridge circuit, with a series resonant tank circuit, can be driven above or below resonance, with a relatively small penalty in power dissipation below resonance (where hard switching occurs). An example:

Source: Breadboarded_Induction_Test.pdf | Seven Transistor Labs, LLC (disclosure: my site)

Discussion thread: Simple induction heater - T3sl4co1l | EEVblog Forum

C3/C6 makes a virtual ground point, allowing single-supply operation instead of the double voltage sources shown above. Alternately, these can be two halves of the resonant capacitor (they act in parallel), with the bulk capacitors moved across the supply (+15/GND) rails. (Bulk bypass, across the supplies, is required regardless. The series combo C3/C6 serves this purpose as well.)

C4 needs to be a high-Q type; polypropylene is preferred. Note that a 555 timer can generate the waveform if you don't have a signal generator handy. Also the transistor inverter can be eliminated if a complementary type driver is used (various in the IR21xx family and others apply). IR2101 is a direct type, no deadtime included, so C7 and C8 here provide a little turn-on delay to prevent shoot-through.

A control circuit is greatly encouraged before scaling this up in power -- fixed frequency means wildly uncontrolled power output, depending on what the load and tuning is. Control design is a huge topic unto itself, but the upside is, everything this circuit does, a larger one will do, but you have the relative safety of nothing blowing up -- or if you badly abuse the transistors, just cheap ones fried, or some melted breadboards or smoked coils.

I would consider current feedback and phase limit as minimal requirements, with power feedback a plus, and peak current and desat fault protection as nice-to-haves, and a requirement above a few kW.


However, no matter what I do, I can never get the voltage within the LC circuit to go above the supply voltage...

I have been able to observe damping and non-damping oscillations in an LC tank using the conceptual arrangement below. A programmable CSV voltage source produces narrow pulses that control the low-side switch SW.

Damped oscillation

At 10ms, a single pulse excites damped oscillations in the LC tank. The voltage at its lower end periodically rises above and falls below Vcc.


simulate this circuit – Schematic created using CircuitLab



Undamped oscillation

Now a series of pulses excites undamped oscillations in the LC tank at a frequency of 50 Hz. At the moment when the voltage at the lower end of the LC tank is at its lowest (close to ground), the switch closes briefly and "pulls" that end to ground; a small step is obtained in this moment. As above, the LC voltage periodically rises above and falls below Vcc.


simulate this circuit




Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.