I have the circuit below, which generates 1.5kV from a transformer. The primary is driven by a MCU oscillator, mosfet driver and a pair of n-channel mosfets. It works very well as it is:

enter image description here

But now I need to make it stabilized: output voltage must be constant with a varying load.

The best approach, in my opinion, would be to take advantage of the LM350 adjustable regulator I use to feed Vcc to the circuit: if I could get a sample of the output voltage, using a simple voltage divider, and use it as a negative feedback to the LM350, I could make it react to any change in load. The primary voltage would change compensating changes in load, making a closed loop that would create constant voltage at the output.

The problem is: I have no idea on how to do it. I know how to adjust LM350 output using a potentiometer, but can't figure a way to use my divider voltage as a negative feedback. An additional detail to note is that the feedback voltage is negative in relation to ground (which may help, since the feedback is negative, or it may make things more complicated). And more than that: is this approach good? Is there a better way to do it?

Another concern is to prevent the regulator from going over a given voltage (18V for example) if the load is excessively high. From this point on, the load voltage would not be stabilized anymore, to protect the circuit.


  • \$\begingroup\$ The PWM controls the output voltage, so control the PWM duty cycle according to the error between a -1.5V reference voltage and the feedback signal. \$\endgroup\$
    – Chu
    Jul 27, 2016 at 15:29
  • \$\begingroup\$ @Chu, this was in fact my first try, and it ended smoking the mosfets! I don't know exactly what happened, but I think the transformer is dangerously near saturation, so disturbing the 50% duty-cycle made current draw to increase and burn the mosfets, which are not capable of dissipating too much power. I would rather keep these mosfets, because they can switch quite fast, in comparison to the power ones I tried before, and they run really cool at 50% duty-cycle. \$\endgroup\$ Jul 27, 2016 at 15:34
  • \$\begingroup\$ Are you sure the loop was negative feedback? \$\endgroup\$
    – Chu
    Jul 27, 2016 at 15:39
  • \$\begingroup\$ Ummm ... didn't you mean to return one leg of the secondary to ground instead of Q2 drain? That would ground-refer your feedback signal making life simpler... \$\endgroup\$
    – user16324
    Jul 27, 2016 at 16:13
  • \$\begingroup\$ @Chu, I didn't even got to this part. What I did was to program de ADC do continuously sample the voltage and decrease or increase the duty cycle depending on the reading, but with limits: duty-cycle would not go beyond 80% or less than 20%, to avoid saturation. On the ADC input I have used just a regular potentiometer, just to watch how the changing voltage would change the duty-cycle, and, in turn, it would change the output voltage. So, I didn't close the loop for this test, but the mosfets smoked a few seconds after I turn the potentiometer to make duty-cycle 80%. \$\endgroup\$ Jul 27, 2016 at 16:19

2 Answers 2


The least hardware would be to use an ADC on your micro and control the PWM directly.

Protection against a load that is too low probably should be a current limit on the MOSFET current rather than a limit on input voltage.

If you want to do the control loop with hardware, here is a starting point. In any case you'll may have to make some modifications to the loop response to get the closed-loop characteristics you need (overshoot, response time, stability).


simulate this circuit – Schematic created using CircuitLab

This is just a starting point- Rg controls the loop gain, so something like like a couple hundred K may work for you. Too high and it won't be stable, too low and you get sloppy control. Rg as an RC can act to zero the error but there are other bad effects (read up on control theory if you want to know this stuff).

Edit: The first amplifier is an inverting amplifier with gain of 0.00333 so you get 0~+5V for 0~-1500V in relative to ground. The second amplifier is the controller- it subtracts the signal from 5V and provides a signal that Rg/10K times the difference to the ADJ terminal of U1. For a stable output of -1500v say 7V is required, then the output of OA2 should be at 7V - Vref (of U1). Any change in the -1500V will cause a change at the adj terminal of 0.00333 * Rg/10K. If Rg/10K = 300K, then a 1% droop in the -1500V will cause the regulator voltage to rise by 1.5V.

  • \$\begingroup\$ Thanks a lot for the reply, Spehro. I'll try to understand your analog/op amp solution, but indeed, less hadware would be better! As I said in a previous comment, my first try was to change PWM duty-cycle, but I gave up when things burned. However, since you and @Chu mentioned that as a viable option, I will insist on that a bit more. \$\endgroup\$ Jul 27, 2016 at 16:30
  • 1
    \$\begingroup\$ If you are using the ADC you can truncate my schematic after the first op-amp and use that as a 0-5V input to the micro for a 0~-1500V input (assuming you ground-reference your output). You may wish to reduce R2 a bit to keep it in range of the op-amps etc. 20K would give you 0-3V for 0~-1500V inn \$\endgroup\$ Jul 27, 2016 at 16:32
  • \$\begingroup\$ Thanks again! The more I consider your opamp solution, the more I like it. Besides, I have plenty of TL082s lying around, and they're DIP8 parts, that would not make my circuitry much more complex at all. And there's another point to consider: my control of the PWM signal may not be granular enough to avoid little steps from appearing on regulated voltage. I had this problem when trying to control servos using MCU generated PWM, the steps are quite noticeable. The opamp solution, in other hand, is completely linear and smooth. \$\endgroup\$ Jul 27, 2016 at 16:58
  • 1
    \$\begingroup\$ LM358/LM324 or another newer single-supply type is required unless you have a negative supply such as -5V available. \$\endgroup\$ Jul 27, 2016 at 17:30

There is no chance to use PWM control on that circuit as is.

Dutycycle will have no effect on peak rectified output while any value over 50% (whatever it means with two anti-phase drivers) will turn into a big shortcircuit.

More: single wave rectifier is not a very good idea too.
Since switches driver works open loop, DC magnetizing current is going to automatically trim itself close to zero using voltage drops on rds(on) and primary windings. But this is a quite awkward process and can be easily upset by an asymmetric load.

As far as MOS failure is concerned, you have two MOS, they cannot be ON at the same time, then how can you go beyond 50% dutycycle for each one? Summing them up you would get more than 100% of period.

Your output rectifier is a peak rectifier, doesn't matter if it's half wave or full wave but you alwyas get peak value of secondary voltage.

You should try one forward converter, one series inductor turns it into an average value rectifier, so you can use dutycycle information to control output voltage.

This www.st.com/resource/en/application_note/CD00003910.pdf (pag. 14) is the very first one that googled out, but there are some many others

  • \$\begingroup\$ Well, the way my mosfets burned looked like they shorted indeed, but I can't clearly see why (besides core saturation due to the assymetrical magnectic field changes). The reason for the single wave rectifier is related my previous try on varying duty-cycle PWM: if I had a full wave rectifier, varying PWM duty-cycle would have no effect at all on resulting DC! But could you please tell me what kind of topology would be properly controlled by a varying duty-cycle PWM? Thanks! \$\endgroup\$ Jul 27, 2016 at 20:41
  • \$\begingroup\$ Thanks for the inductor advice, that makes complete sense. The traditional filtering capacitor doesn't work on this situation. Regarding duty-cycle: when I tried this solution, I programmed the MCU to increase duty-cycle on one side, and decrease it the same amount on the opposite side at the same time, keeping period constant, but generating an asymmetrical / unbalanced waveform. That's why I said I probably fried the mosfets because of core saturation: the core went biased on direction, saturating on that side, I guess. And thanks for the PDF, it will help a lot! \$\endgroup\$ Jul 28, 2016 at 12:33

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.