Finally bit the bullet and considered getting help with a simulation I'm looking to get right. Just a heads up, I have limited experience with SMPS simulation in both LTSpice and Multisim. The circuit I'm attempting to simulate is an interesting ZVS and ZCS flyback I found in an IEEE report. It utilizes a resonant clamp along with a half bridge voltage multiplier to achieve the zero voltage and current switching. Basic Schematic

Here it is in multisim: Simulation Schematic

I first attempted to follow along with the report's calculations and use my own parameters for fun, but the waveforms looked nothing like the expected or tested waveforms they presented. I then went back and plugged in the component values listed in the report to try to get the correct waveforms with no success. Here's the theoretical waveforms for the primary side:Primary Waveforms

And here's what the simulation gave me: S1 Waveforms S2 Waveforms

The voltage waveform looks clipped because the IRF250 has a breakdown of 200V. Not intending to operate at this level. The characteristics of the transformer are 9:30 turns ratio, 22 uH magnetizing inductance, and a 2.4 uH leakage inductance if anyone's interested. The gates of S1 and S2 are driven by 15V signals opposite each other and at 60V a duty cycle of 40% gets it close to a 340V output (370W).

My question is, is there anything glaringly wrong with the simulation? If not, what could I be doing wrong?

  • 1
    \$\begingroup\$ Check that the transformer is not a "DC trafo". Better use coupled inductors. It looks like 24.4u and 244.4u will give you those values. I don't knwo how Multisim does it, but also make sure that the drivers are correctly driving the switches relative to their source. And is V1 a pulsed source? Shouldn't that be a DC level for the PWM block afterwards? \$\endgroup\$ Commented Apr 15, 2021 at 22:41
  • 1
    \$\begingroup\$ Beware how you are driving Q2. You have the source flapping around at a high voltage node. In an actual circuit, you will blow your driver circuit and probably destroy Q2. Since this is for educational purposes, replace the MOSFETs with a switch component (LTspice has a SW part which has floating inputs) and add in the parasitic diodes and capacitances. \$\endgroup\$
    – qrk
    Commented Apr 15, 2021 at 23:12
  • \$\begingroup\$ @qrk Since I would like to learn as much as possible, how would you suggest I drive Q2? \$\endgroup\$
    – justaguy
    Commented Apr 15, 2021 at 23:54

1 Answer 1


Using tips from both @a concerned citizen and @qrk I think I figured this out. I switched to LTSpice as it has a bunch of half bridge drivers already in the libraries and it just seemed easier to use. I went back and modeled the transformer as a coupled inductor with the leakage in series. This seemed to help some with the S1 current waveforms.

I used a GaN fet I already had modeled in spice and double checked the curves. I think the Q2 current wasn't showing up in Multisim due to the fact that I was driving it incorrectly. The PWM amplitude was 9.5v referenced to ground when it really needed to be referenced to the source of Q2. Using a half bridge driver fixed this. The LTSpice circuit looks like this:LTSpice Schematic

The waveforms: LTS1 LTS2

  • 1
    \$\begingroup\$ Nicely done! Two things: 1) there is no need for L3 since those values are meant to be used with a coupling of 0.9 (2.4u for a 22u magnetizing inductance means about 0.9), but it won't hurt much this way, either, and 2) instead of the default diode, D, use MUR460, or something similar. And if you want a complementary pulse generator with more flexibility, see this (td sets the dead-time, but it can be used to set the duty cycle, too). If you just want to see "how it works", using VCSW as in the link will be much faster. +1 \$\endgroup\$ Commented Apr 16, 2021 at 7:11

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.