| Electronics > Projects, Designs, and Technical Stuff |
| Buck converter, ringing issue |
| << < (3/3) |
| T3sl4co1l:
Massive chokes! I'd have done it with, probably: 10uH, then 4.7uH, and maybe one more if needed. Whatever capacitors that then requires, given the impedance and cutoff frequency; in the 10s uF, probably a mix of polymer and ceramic. Sync inverter, current mode control, 200kHz say, maybe two phase as well (in which case LM25119 maybe, otherwise a single phase version). Have done it before at ~90% efficiency and higher frequency (with low noise measured). Pushing >95% should be no problem at a somewhat lower frequency, and with somewhat bigger transistors (but again, not huge, because that costs switching loss). Tim |
| dzseki:
So if ogden suggests 100uH coil Tim is suggesting a 10uH coil, then my 33uH coil sounds about right :-DD Seriously, in this circuit we want to control the duty cycle with 1% resolution (between 0 and 100% basically), so with higher switching frequency this gets a little problematic. I may consider a different output filter stage, but this wasn't the scope of this thread. But you made me curious... So I throw in the circuit diagram of my first generation circuit, I am interested about your opinion. This was a lower current version of the circuit (~2A), it is synchronous, a PWM driver with heavy output filtering (fc=50Hz). The problem with this circuit was that when the control pulled back from high duty cyle (say 90%) down to 50%, the energy stored in the output kicked back in a way that Vin voltage got elevated beyond its rated value, in extreme cases up to 60V (!), this obviously made the (24V 600W) power supply upset on that end. In one ocassion the LT1158's bootstrap circuit alsoy died... The solution I found for this was replacing Q1 with a diode (giving up syncronous mode). This is interesting, because Q1 already had a bulk diode, also the first attempt was to add an other diode parallel to Q1, but that did not help, Q1 had to be removed altogether. My idea was the problem originates from the shot-through dead time of the LT1158, and therefore this defeats somewhat the synchronous scheme in this application |
| T3sl4co1l:
--- Quote from: dzseki on December 15, 2018, 02:47:39 pm ---Seriously, in this circuit we want to control the duty cycle with 1% resolution (between 0 and 100% basically), so with higher switching frequency this gets a little problematic. I may consider a different output filter stage, but this wasn't the scope of this thread. --- End quote --- Problematic? A voltage regulator is continuously variable. Drive it with a DAC, use a PWMDAC at any frequency (with adequate input filtering -- use an active filter if necessary), get a programmable one, whatever you like. :) --- Quote ---But you made me curious... So I throw in the circuit diagram of my first generation circuit, I am interested about your opinion. This was a lower current version of the circuit (~2A), it is synchronous, a PWM driver with heavy output filtering (fc=50Hz). --- End quote --- This looks way better! (Except for the absolute fuckoff massive output filter values, as mentioned. :P ) Weird chip. Driver, with current limit, with controlled dead time. Not very much drive strength though. Expensive as hell, as all specialty-ish LT chips are. But if cost is no object, you can easily toss in another LT chip, a TimerBlox, and generate continuously variable PWM that way. Same idea, just a different way to get there. --- Quote ---The problem with this circuit was that when the control pulled back from high duty cyle (say 90%) down to 50%, the energy stored in the output kicked back in a way that Vin voltage got elevated beyond its rated value, in extreme cases up to 60V (!), this obviously made the (24V 600W) power supply upset on that end. In one ocassion the LT1158's bootstrap circuit alsoy died... --- End quote --- Well, yeah, that's precisely what you've done! That's what a synchronous inverter does, it works both ways: buck and boost are identical, down to the direction of current flow. :) Or if you don't need the output voltage changing so rapidly, just don't slew it so hard! This hints at another rarely-noted but key design principle: Always Limit Bandwidth. If you don't need it, filter it! If you had gone with a switching regulator instead -- those often have a freewheeling mode, i.e., the synchronous diode is turned off when inductor current goes negative. So they act as an ideal diode, and don't discharge the output. With a different choice of controller, you might've never discovered this property. Or, if you had reduced the stored energy, breaking up the filter into a number of small stages. --- Quote ---The solution I found for this was replacing Q1 with a diode (giving up syncronous mode). This is interesting, because Q1 already had a bulk diode, also the first attempt was to add an other diode parallel to Q1, but that did not help, Q1 had to be removed altogether. --- End quote --- Well yeah, you only get backflow into the supply when the output voltage is greater than the input (that's not going to happen), or when inductor current goes negative (which can only happen if Q1 stays on too long). I'm not sure how obvious all of this is, or should be -- obviously, it's obvious to me, because I've done this before; I hope I'm not being condescending as a result. That doesn't help. I just want to give you the insight that leads you to the correct conclusion. If nothing else, the underlying lesson should be: you've discovered a deeper generalization of switching circuits, and that insight should guide you to improve the controller, not worsen the inverter! --- Quote ---My idea was the problem originates from the shot-through dead time of the LT1158, and therefore this defeats somewhat the synchronous scheme in this application --- End quote --- I'm not sure what you'd base that on -- if nothing else, shoot-through is a very short duration phenomena, so it can't possibly affect the inductor's voltage or current by more than a small fraction. But the evidence shows that slamming the input up and down, causes a HUGE dip or surge in the supply, not a tiny change! Also, shoot-through is current flowing through both transistors, not the inductor -- it should have no effect at all, actually, instead causing the transistors to heat up excessively. So we can safely rule that out. :) HTH, Tim |
| dzseki:
--- Quote from: T3sl4co1l on December 15, 2018, 07:05:53 pm --- Problematic? A voltage regulator is continuously variable. Drive it with a DAC, use a PWMDAC at any frequency (with adequate input filtering -- use an active filter if necessary), get a programmable one, whatever you like. :) --- End quote --- I mean at 200kHz 1% duty cycle corresponds to a 50ns pulse, that is not that trivial to make. --- Quote ---Weird chip. Driver, with current limit, with controlled dead time. Not very much drive strength though. Expensive as hell, as all specialty-ish LT chips are. But if cost is no object, you can easily toss in another LT chip, a TimerBlox, and generate continuously variable PWM that way. Same idea, just a different way to get there. --- End quote --- We are on the same page here, I already use the LTC6992 for PWM modulator. --- Quote ---Or if you don't need the output voltage changing so rapidly, just don't slew it so hard! This hints at another rarely-noted but key design principle: Always Limit Bandwidth. If you don't need it, filter it! --- End quote --- I also figured this out (and actually did), but one annoying thing still remained: the same bad thing happens when the pulse by pulse current limiting of the driver kicks in, and there was no way to avoid it, so I dropped Q1 instead of the current limiting. Thanks for the explanation otherwise! |
| T3sl4co1l:
--- Quote from: dzseki on December 15, 2018, 07:58:11 pm ---I mean at 200kHz 1% duty cycle corresponds to a 50ns pulse, that is not that trivial to make. --- End quote --- And 0.1% corresponds to 5ns, and so on; it's arbitrary if you aren't using a fixed-threshold digital counter to generate it. :) Even if you are, you can always delta-sigma modulate the threshold (or count, or timer-compare, or whatever it's called on the chip). This costs more software if it's on an MCU, but it shows it's at least possible, if not easy. Can also adjust the total count (MAX_VAL or whatever), which gives you control of both numerator and denominator, which is finer control for certain values (the worst case step size is still 1/b though). These can be calculated relatively easily with the method of convergents. The downside is, now the frequency changes, but it can still be held within a modest range, say 2:1, that still meets whatever ripple spec after whatever filtering. Uh, but I digress... ;D --- Quote ---We are on the same page here, I already use the LTC6992 for PWM modulator. --- End quote --- Ah good, AFAIK those are continuous-time so you're set! --- Quote ---I also figured this out (and actually did), but one annoying thing still remained: the same bad thing happens when the pulse by pulse current limiting of the driver kicks in, and there was no way to avoid it, so I dropped Q1 instead of the current limiting. Thanks for the explanation otherwise! --- End quote --- Ah, so its protection is also synchronous, it doesn't go to open circuit? Yeah, weird chip... Tim |
| Navigation |
| Message Index |
| Previous page |