Author Topic: Oscillation on resistive load on selfmade linear PSU  (Read 8669 times)

0 Members and 1 Guest are viewing this topic.

nemail

  • Guest
Oscillation on resistive load on selfmade linear PSU
« on: September 02, 2018, 01:13:16 am »
Hi

Intro:
inspired by Daves µSupply Bench PSU I did my own design (please see attached PDF).
Attached you'll also find some pictures which show the current PCB which I made (well, JLCPCB did it for me) and how it is basically working quite well. I tested it with a load of 1A using my aliexpress constant current load and then I did further testing using power resistors (20 Ohm, 5W in particular). There is a little bit of noise coming from the Teensy 3.5 which is the controller of the PSU but I guess thats fine, at least for now.

The PSU does 0-12V and 0-2A (I guess it'll do more than 2A easily, especially if forced airflow cools the huge heatsink).

Problem:
Here comes the "but"(t):
Using the 20 Ohm 5W resistor I discovered that when I turn the voltage up and when I reach about 3V, oscillation of about 40mV Pk-Pk and 83,33kHz occurs on the output. If I increase the voltage, the amplitude of the oscillation rises up to about 80mV Pk-Pk at 10V output voltage. The frequency decreases a bit to like 62,5kHz. I have attached a screenshot where the oscillation is visible.

Somehow it seems that the voltage control circuit is a bit unstable. Also I kind of think that it may be related to the output capacitor (C15) because if I change its value, it makes the biggest difference of everything I tried until now.

This is what I did/observed until now:
- If I temporarily hold an additional 10nf or 100nf cap to C4, the oscillation disappears immediately and doesn't even come back after I remove the cap.
- If I afterwards change the voltage again, even by only a couple of millivolts, the oscillation comes back instantaneously.
- I soldered an additional 10nF on top of C4, but that didn't change much, seems it made it even worse so I removed it again.
- Above 10V the oscillation usually disappears and comes only back if I decrease the voltage to about 10V in a certain speed. Generally between 9V and 12V and when decreasing the voltage from 12V or 10V down to zero, it depends on the speed in which I change the voltage, whether the oscillation starts or not. When I'm increasing the voltage, it starts almost every time (at least between 3V and 9V).
- Oscillation never has more than about 120mV Pk-Pk.
- If the PSU goes to constant current mode, the oscillation disappears. To make it clear: if the PSU is in constant current mode, no oscillations appear. ever. If I leave constant current mode, no oscillation starts, until I fiddle around with the voltage.
- I tried changing R8 (22k and 82k) but that didn't change much or anything either (I think 22k made it even worse)
- The output connector is completely separated through the relais. If oscillation occurs and I turn the relais of and on immediately (or after waiting, doesn't matter), the oscillation stops until I change the voltage (again, as always).

Any idea where to start or what to try or measure?
I used LM358 opamps in this design before which worked at least for the LTSpice simulation and on the breadboard as far as I was able to test it there. I decided to change them to OPA2197 because they seem to have better specs in every way and I wanted this to be kind of a precision supply (just for fun).


Basic description of the design for those whom it may help:
- It is an analog supply which is designed for input voltage of 18-24V and output of 0-12V and 0-2A.
- There is a dual darlington configuration with load sharing resistors and little output capacitance.
- Voltage regulation is done by a DAC which is controlled by a Teensy 3.5. DAC sends voltage to Opamp which has a gain of 3, opamp output goes to a PNP transistor (T4) which is excess current protection and then goes to the bases of the two Darlingtons.
- Current measurement and CC mode is done by a MAX4080F current measurement amplifier (gain of 5) which is in the feedback loop through D1. If current is higher than the one set by the DAC to the non inverting input of the current controlling opamp, the opamp pulls its output to ground, which in turn pulls IC2A's output to ground -> boom, CC mode active. this works in a perfectly linear way, so you can adjust output current in mA steps.
- The ADC channels are reading whether the PSU is in CC mode (OVRCRNT_DET), the output voltage before and after the relais and the current measurement from the MAX4080F to make cool things with those readings in software
- OVRCRNT_DET is buffered through one of the opamps because of the voltage divider which would goof up the current control circuit if connected without buffering.
- There is an NTC which monitors the Darlington's heatsink temperature
- There is a fan connector
- There is an LED connector for relais status (goofed the pot pins there)
- the TXB0104 level shifters are there because I have a 4.096V voltage reference which in turn means that the DAC and ADC supply voltages must not be below 4.096V. but then they don't understand the Teensy 3.5's logic signals which go only up to 3.3V, even if it is 5V input tolerant on all pins. So because this is SPI (for the display and the DAC and ADC), i had to choose high speed level shifters. The TXB0104's work like a charm there.
- LM334 is there on various L78xx for minimum load to ensure proper regulation, as well as on the Darlingtons.
- The schematic misses two sheets, but there are only the L78xx'es + the Teensy, nothing interesting so I guess you won't need them.

Thanks!
« Last Edit: September 02, 2018, 01:16:24 am by nemail »
 

nemail

  • Guest
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #1 on: September 02, 2018, 01:17:00 am »
more pics
 

Offline JS

  • Frequent Contributor
  • **
  • Posts: 947
  • Country: ar
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #2 on: September 02, 2018, 01:48:52 am »
Schematic?

JS
If I don't know how it works, I prefer not to turn it on.
 

nemail

  • Guest
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #3 on: September 02, 2018, 01:54:41 am »
Schematic?

JS

first post, first attachment (pdf)
 

Offline JS

  • Frequent Contributor
  • **
  • Posts: 947
  • Country: ar
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #4 on: September 02, 2018, 02:18:51 am »
Schematic?

JS

first post, first attachment (pdf)
Sorry, where do you add the cap?

JS
If I don't know how it works, I prefer not to turn it on.
 

Offline Circlotron

  • Super Contributor
  • ***
  • Posts: 3214
  • Country: au
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #5 on: September 02, 2018, 02:21:16 am »
My first guess is the loop gain of IC2A and T4 together must be off the planet.
Maybe a bit of series RC between IC2A pins 1&2 to damp things down a bit?

Edit:
I used LM358 opamps in this design before which worked at least for the LTSpice simulation and on the breadboard as far as I was able to test it there.
LM358 is probably a slower opamp. Try the RC as mentioned.
« Last Edit: September 02, 2018, 02:25:28 am by Circlotron »
 

Offline JS

  • Frequent Contributor
  • **
  • Posts: 947
  • Country: ar
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #6 on: September 02, 2018, 02:27:22 am »
Hey, I don't see any path for the BD139 bases to get current from, if it's working there's probably one or the little green dudes are doing something to keep it sort of working.

Adding some compensation between a TIP3055 and IC2A pin 2 could help... maybe 1nF (and some resistance if you want to keep it fast)

JS
If I don't know how it works, I prefer not to turn it on.
 

Offline Circlotron

  • Super Contributor
  • ***
  • Posts: 3214
  • Country: au
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #7 on: September 02, 2018, 02:38:45 am »
A pulldown resistor from T4 collector to ground might help too. A modest amount of current sinking capability here may help to keep the series pass transistors and therefore the entire loop under control.
 

Offline TimNJ

  • Super Contributor
  • ***
  • Posts: 1665
  • Country: us
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #8 on: September 02, 2018, 03:22:23 am »
How about a cap across the R8 + C4 branch? Maybe something between 220pF and 1nF or so? I think that should give you some reduction in gain at the higher frequencies.
 

Offline JS

  • Frequent Contributor
  • **
  • Posts: 947
  • Country: ar
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #9 on: September 02, 2018, 04:57:51 am »
How about a cap across the R8 + C4 branch? Maybe something between 220pF and 1nF or so? I think that should give you some reduction in gain at the higher frequencies.

That's pretty much the same function than the one I suggested, just two base emitter junctions after, but before the current sharing resistors where things get messier. I think that's the best place, could be as you say or at a TIP3055 base. Not a huge difference in a first approximation. IC voltage regulators take their feedback path from the emitter of the pass element but not right at the output, more at a middle point of the emitter itself, which is like having a small emitter resistor after, here we have it so we can cheat the same way they do.

JS
If I don't know how it works, I prefer not to turn it on.
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 16778
  • Country: us
  • DavidH
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #10 on: September 02, 2018, 05:50:17 am »
Did you really have to use DRM on the PDF to prevent copying the part numbers to look them up?

So what kind of capacitor is C15?  I'm going to ask you instead of wasting further time trying to look it up.

T4 causes uncontrolled excess loop gain in operational amplifier IC2A.
 

Offline TimNJ

  • Super Contributor
  • ***
  • Posts: 1665
  • Country: us
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #11 on: September 02, 2018, 05:58:37 am »
How about a cap across the R8 + C4 branch? Maybe something between 220pF and 1nF or so? I think that should give you some reduction in gain at the higher frequencies.

That's pretty much the same function than the one I suggested, just two base emitter junctions after, but before the current sharing resistors where things get messier. I think that's the best place, could be as you say or at a TIP3055 base. Not a huge difference in a first approximation. IC voltage regulators take their feedback path from the emitter of the pass element but not right at the output, more at a middle point of the emitter itself, which is like having a small emitter resistor after, here we have it so we can cheat the same way they do.

JS

Ah I was unable to put that connection together. You seem to know better than I do anyway.

Did you really have to use DRM on the PDF to prevent copying the part numbers to look them up?

So what kind of capacitor is C15?  I'm going to ask you instead of wasting further time trying to look it up.

T4 causes uncontrolled excess loop gain in operational amplifier IC2A.


DRM? I copied the number just fine. Anyway that's a Panasonic FR, Low-Z electrolytic.
 

nemail

  • Guest
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #12 on: September 02, 2018, 12:35:40 pm »
Sorry, where do you add the cap?

sorry, what cap do you mean?

Quote
Maybe a bit of series RC between IC2A pins 1&2 to damp things down a bit?
Wouldn't that change the gain of the opamp?

Quote
Hey, I don't see any path for the BD139 bases to get current from, if it's working there's probably one or the little green dudes are doing something to keep it sort of working.
Adding some compensation between a TIP3055 and IC2A pin 2 could help... maybe 1nF (and some resistance if you want to keep it fast)
They get current from IC2A pin 1 through T4...? T4 is excess current protection...
compensation: you mean within the feedback loop, between Darlington emitter and R3, 1nF to ground? Resistance in series before the cap? But as mentioned before: wouldn't resistance change the gain of the loop?

Quote
A pulldown resistor from T4 collector to ground might help too. A modest amount of current sinking capability here may help to keep the series pass transistors and therefore the entire loop under control.
like 10k? or more? Could you please explain why/what is happening there?

How about a cap across the R8 + C4 branch? Maybe something between 220pF and 1nF or so? I think that should give you some reduction in gain at the higher frequencies.

That's pretty much the same function than the one I suggested, just two base emitter junctions after, but before the current sharing resistors where things get messier. I think that's the best place, could be as you say or at a TIP3055 base. Not a huge difference in a first approximation. IC voltage regulators take their feedback path from the emitter of the pass element but not right at the output, more at a middle point of the emitter itself, which is like having a small emitter resistor after, here we have it so we can cheat the same way they do.

wait - what? cap across R8+C4 shouldn't change the gain or am I missing something? What do you mean "before the current sharing resistors", I thought you meant to place the 1nF after them, before R3?
or put 10nF to the TIP3055s bases?

I'm confused :-D

Did you really have to use DRM on the PDF to prevent copying the part numbers to look them up?

So what kind of capacitor is C15?  I'm going to ask you instead of wasting further time trying to look it up.

T4 causes uncontrolled excess loop gain in operational amplifier IC2A.

I did not use any DRM on purpose, just used "print to pdf" function from Eagle. Sorry for that.
The cap is a EEU-FR1H101 Panasonic Low ESR.

Why does T4 cause uncontrolled excess loop gain? Everything seems to work fine, except of the oscillation (which even disappears when I turn the relais off and on). wouldn't uncontrolled excess loop gain make things not work at all?

Thanks for all your inputs, still trying to figure out what to try next :-)



edit: OK i added 22pF directly between pin 1 and two of IC2A and that seems to have killed all the oscillations, at the moment the output is clean as a whistle :-) Any idea on how to test it and maybe make it oscillate again?
adding the cap was fun, see the attached photo :-D the transistors collector pin is properly soldered on the bottom side, no worries. I didn't want to fiddle around on the top side as I was afraid the cap would fall off again.
« Last Edit: September 02, 2018, 01:08:04 pm by nemail »
 

Offline TimNJ

  • Super Contributor
  • ***
  • Posts: 1665
  • Country: us
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #13 on: September 02, 2018, 02:03:24 pm »
How about a cap across the R8 + C4 branch? Maybe something between 220pF and 1nF or so? I think that should give you some reduction in gain at the higher frequencies.

That's pretty much the same function than the one I suggested, just two base emitter junctions after, but before the current sharing resistors where things get messier. I think that's the best place, could be as you say or at a TIP3055 base. Not a huge difference in a first approximation. IC voltage regulators take their feedback path from the emitter of the pass element but not right at the output, more at a middle point of the emitter itself, which is like having a small emitter resistor after, here we have it so we can cheat the same way they do.

wait - what? cap across R8+C4 shouldn't change the gain or am I missing something? What do you mean "before the current sharing resistors", I thought you meant to place the 1nF after them, before R3?
or put 10nF to the TIP3055s bases?

I'm confused :-D

Briefly, remember that loop gain is not a single value; For 99% of power supply compensation networks, loop gain varies with frequency. Combinations of capacitors and resistors creates poles and zeroes on a bode plot. If we wanted to reduce the gain at higher frequencies, we can put a cap across R8+C4.

 

Offline Twoflower

  • Frequent Contributor
  • **
  • Posts: 739
  • Country: de
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #14 on: September 02, 2018, 02:11:38 pm »
Looking at the solder quality I wouldn't wonder if the problem is related to that. For example C4 looks badly soldered. Especially the upper pin in your last picture.
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 16778
  • Country: us
  • DavidH
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #15 on: September 02, 2018, 02:13:07 pm »
DRM? I copied the number just fine. Anyway that's a Panasonic FR, Low-Z electrolytic.

Ah, that was my mistake.  Somehow I got my PDF reader into a mode where I could not copy the part numbers to the clipboard and it appeared to be protected.

That capacitor should be fine.  If a "zero" ESR capacitor was used like a polymer electrolytic or film capacitor, it could cause problems with frequency compensation.

Transistor T4 is really screwing things up though because it adds voltage gain within the operational amplifier's feedback loop.  The added voltage gain also varies with collector current which just makes things worse.  With a resistive load as the output voltage is increased, the collector current rises lowering the emitter resistance increasing the transconductance raising the voltage gain until the voltage feedback loop oscillates.

The best solution is to get rid of T4 or replace it with a more suitable circuit but you could also try adding resistance between the operational amplifier and emitter to lower and control the transconductance.  Then the frequency compensation should be taken directly from the output of the operational amplifier instead of the collector of the transistor.
 

Offline JS

  • Frequent Contributor
  • **
  • Posts: 947
  • Country: ar
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #16 on: September 02, 2018, 02:25:07 pm »
To test for stability the best way is with a injection transformer, plenty of talks about it after the omnicron teardown. You don't need such fancy transformer, there are many CM chokes that work for some applications and ranges.

The other way is to set a step in the output current. Best way is to have some load (a resistor probably) and a mosfet switching (fast and clean) a second load in and out (another resistor).   That way you will see the overshoot in current as you switch the mosfet on, in voltage as you switch it off and any ringing both directions that might expose an issue with stability, or at least close to one. You can get the closed loop response with that. The loop response will change with conditions (current, voltage and load impedance) so you migt want to check adding different capacitance, sometimes the intermediate values are problematic so check every decade or so, mostly bigger or close to your output cap.
  Inductive loads aren't so common for lab PSU but you migt have one some day, they tend to makes things more stable unless crazy happens, like huge inductance pulling energy into the PSU in some transient and for that you not only need stability but good protection.

Low ESR cap at the output is usually not a good idea, adding a 0.1 to 0.47 resistor in series with it can improve stability and muffle some jiggles. Some have a small cap, about 100nF directly across the output and a bigger, few uF with a series resistor. Here again, a zero appears and it helps preventing oscillations if properly placed.

JS

If I don't know how it works, I prefer not to turn it on.
 

Offline T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 21860
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #17 on: September 02, 2018, 03:21:34 pm »
Schematic looks fine.  It's a bit here-or-there with odd/inconsistent design choices.  That implies a level of experience of, say, advanced amateur, but not seasoned professional.  Which, mind, is still better than a sizable fraction of professional engineers* doing this sort of thing... :)

*Not P.E. as such, but in the sense that they get paid for it, and "engineer" is in their job title.

The only thing that stands out is that one transistor at the opamp output.  What the heck is that for?

By the way, a system that is stable at rest, but unstable in motion: that's a classic chaotic behavior.  You have a stable limit cycle: there is a region (in the "phase space" of the system) where the system will tend towards stability (no motion), but outside of that area, an instability which tends to push it into a circular (oscillating) trajectory.

A physically useful description of "phase space" might be, the voltage and current in an oscillating (LC) circuit.  A more abstract case would be a single parameter and its phase shift (Hilbert transform), hence(?) "phase space".

Whatever the case, anything that oscillates, always does so with at least two components.  The simplest possible case is equating two derivatives together (in a differential equation), which has the solutions of sine and cosine.  Derivatives, as in, the change in one causes the change in the other, and vice versa; and they are always changing, perfectly in step.

You might only have access to one component -- you can measure voltage easily enough on the oscilloscope -- but you need some kind of sense circuit or probe to measure current, say.  Or the complementary signal might be trapped inside an IC or something.  As long as you can see one, you can infer the other, and just know that, when you see a squiggle on the 'scope, you're actually seeing a sideways view of a corkscrew path through time (the phase plot is the along-axis projection).

Another distinguishing feature of chaotic systems, is having some control parameter (in this case, load resistance), which as it progresses, the size and shape of the stability regions change, and so a stable condition might become unstable and get stuck oscillating, and keep oscillating even as that parameter is dialed back down.  But that oscillation can be 'quenched' by damping it, returning the system to its stable state.  This bistability (or N-stable, more generally) is another classic sign of chaotic behavior.

Now, in linear systems -- control theory -- there is no such thing as a stable limit cycle.  A system is only ever stable, or not.  And it doesn't vary with independent parameters like DC voltage or current.  So even if you know nothing about chaos, you can tell that your system is nonlinear, and it was supposed to be linear.  Find that source of nonlinearity, remove it, and try adjusting compensation values again. :)

Tim
« Last Edit: September 02, 2018, 03:42:55 pm by T3sl4co1l »
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline Kleinstein

  • Super Contributor
  • ***
  • Posts: 14369
  • Country: de
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #18 on: September 02, 2018, 07:07:46 pm »
Except for the extra transisor T4, the voltage regulation loop looks reasonable. It is especially odd with the base to GND - so nothing should happen at all. The missing positive current source  / resistor to deliver the base current  is another point. Without it nothing should happen.

However the comment on the low Z capacitor applies. It usually helps to have at least some capacitance with larger ESR, like a normal type electrolytic and than a small ceramic or film typ in addition.

The current regulation might be prone to oscillation though: high side / collector side current sensing tends to be slow and not having a low impedance power source for the darlingtons is also not very good. A local capacitor for the power input might be a good ideal.#

For the external loads, it is usually a low Z capacitive load that causes the most trouble. A resistive load should be relatively easy, though the low ESR output cap could already be bad enough.

It might be a good idea to do a simulation of such a circuit with something like LTspice.
 

Offline JS

  • Frequent Contributor
  • **
  • Posts: 947
  • Country: ar
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #19 on: September 02, 2018, 08:18:14 pm »
I run a ton of sims in that kind of circuits, the two suggestions I previously made makes the thing reasonable stable. For low voltages where the opamp operates on its own it's pretty straight forward, once you need a discrrete part to drive the power transistors it gets trickier, as the opamp is no longer properly internally compensated. Using an opamp with external compensation might help, as you can tweak that parameter as well.

JS

If I don't know how it works, I prefer not to turn it on.
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 16778
  • Country: us
  • DavidH
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #20 on: September 02, 2018, 08:19:34 pm »
I agree about the current sense amplifier.  The MAX4080 is pretty slow so special attention needs to be paid to frequency compensation of the current control loop.  This is especially the case when a fast operational amplifier like the OPA2197 is used although the slow TIP3055s may be helping some.  The first time I designed a somewhat similar power supply, I also included a phase lead network around R3 for outstanding voltage mode performance but the added phase lag from the current sensing amplifier required so much compensation around the current control error amplifier that the current limit performance was abysmal.

Since then, my high side current sense circuits when used are more like video amplifiers if they are inside the control loop.  Better is to move the current control error amplifier itself to the high side so no separate current sense amplifier is required and this is what HP and Tektronix commonly did in their power supplies.

There is a tricky way to compensate for a low ESR output capacitance and load.  Move the current shunt to the output side of the power transistor and take AC feedback before the current shunt and DC feedback after it across the output capacitance.  Now for stability purposes, the current shunt is in series with the output capacitor raising the minimum ESR.

The uncontrolled and poorly defined voltage gain of T4 inside the voltage control loop is still the big problem though.
 

nemail

  • Guest
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #21 on: September 02, 2018, 10:10:37 pm »
Briefly, remember that loop gain is not a single value; For 99% of power supply compensation networks, loop gain varies with frequency. Combinations of capacitors and resistors creates poles and zeroes on a bode plot. If we wanted to reduce the gain at higher frequencies, we can put a cap across R8+C4.

Oh, ok - I still have a lot to learn :-)

Transistor T4 is really screwing things up though because it adds voltage gain within the operational amplifier's feedback loop.  The added voltage gain also varies with collector current which just makes things worse.  With a resistive load as the output voltage is increased, the collector current rises lowering the emitter resistance increasing the transconductance raising the voltage gain until the voltage feedback loop oscillates.

The best solution is to get rid of T4 or replace it with a more suitable circuit but you could also try adding resistance between the operational amplifier and emitter to lower and control the transconductance.  Then the frequency compensation should be taken directly from the output of the operational amplifier instead of the collector of the transistor.

Someone who helped me getting the CC mode non-oscillating in another electronics board recommended to put that T4 transistor in. Basically all I know is that it is excess current protection (as mentioned earlier). As there weren't any issues in the simulation, I did keep it.
What would be a suitable replacement circuit?
Resistance between Opamp and Emitter? What Emitter? Darlington or T4 (I thought I should rather get rid of T4)?
You mean better take the compensation from the output of the opamp rather than from the emitter of the transistor?

To test for stability the best way is with a injection transformer, plenty of talks about it after the omnicron teardown. You don't need such fancy transformer, there are many CM chokes that work for some applications and ranges.
Don't know what a injection transformer or a CM choke is, will have to look that up.

The other way is to set a step in the output current. Best way is to have some load (a resistor probably) and a mosfet switching (fast and clean) a second load in and out (another resistor).   That way you will see the overshoot in current as you switch the mosfet on, in voltage as you switch it off and any ringing both directions that might expose an issue with stability, or at least close to one. You can get the closed loop response with that. The loop response will change with conditions (current, voltage and load impedance) so you migt want to check adding different capacitance, sometimes the intermediate values are problematic so check every decade or so, mostly bigger or close to your output cap.

That sounds like I can do that quite easily. will have to wire up some MOSFET/load resistor action, though.

Inductive loads aren't so common for lab PSU but you migt have one some day, they tend to makes things more stable unless crazy happens, like huge inductance pulling energy into the PSU in some transient and for that you not only need stability but good protection.

Low ESR cap at the output is usually not a good idea, adding a 0.1 to 0.47 resistor in series with it can improve stability and muffle some jiggles. Some have a small cap, about 100nF directly across the output and a bigger, few uF with a series resistor. Here again, a zero appears and it helps preventing oscillations if properly placed.
How'd I protect the PSU from inductive loads pulling energy into it? I have a reverse diode from the darlingtons emitter to its collector but I guess if voltage rises above about 70V, the Darlington will be gonsky...
So I'd rather buy a non low ESR cap for the output or would the resistor in series still be necessary? Wait - why in series, not parallel to the cap? Parallel would be a bleeder resistor which is what we want, don't we?! (confused I am, again).

Schematic looks fine.  It's a bit here-or-there with odd/inconsistent design choices.  That implies a level of experience of, say, advanced amateur, but not seasoned professional.  Which, mind, is still better than a sizable fraction of professional engineers* doing this sort of thing... :)
Thanks :-) If I had to describe my expertise by myself, I'd say: I know more that the common Arduino LED blinking guy, but I didn't learn ANY of this in school and also didn't finish school so veeeery much of the math skills are missing (many formulas in datasheets I can't even read correctly). So yes, amateur/advanced amateur maybe describes it best :-)

*Not P.E. as such, but in the sense that they get paid for it, and "engineer" is in their job title.
I'm an IT guy, I was in the field for many years and now in an internal IT department of a big company. I know what you mean, I've stumbled across many, many "professionals" where I had excessive facepalming parties afterwards.

The only thing that stands out is that one transistor at the opamp output.  What the heck is that for?

according to the guy who told me to put it there, excess peak current protection. I'll try to translate from german:
"The solution with T4 has the advantage, that even with high unlimited currents the voltage drop stays low and you can get much closer to Ub. That means a higher stabilized output voltage at max. output current. Besides, I do the peak current limitation with this. For that, one has to check R1, having a short at the output and with disconnected D1."

I only kind of understand what he was trying to do, maybe you get more of an idea of it.

By the way, a system that is stable at rest, but unstable in motion: that's a classic chaotic behavior.  You have a stable limit cycle: there is a region (in the "phase space" of the system) where the system will tend towards stability (no motion), but outside of that area, an instability which tends to push it into a circular (oscillating) trajectory.

A physically useful description of "phase space" might be, the voltage and current in an oscillating (LC) circuit.  A more abstract case would be a single parameter and its phase shift (Hilbert transform), hence(?) "phase space".

Whatever the case, anything that oscillates, always does so with at least two components.  The simplest possible case is equating two derivatives together (in a differential equation), which has the solutions of sine and cosine.  Derivatives, as in, the change in one causes the change in the other, and vice versa; and they are always changing, perfectly in step.

You might only have access to one component -- you can measure voltage easily enough on the oscilloscope -- but you need some kind of sense circuit or probe to measure current, say.  Or the complementary signal might be trapped inside an IC or something.  As long as you can see one, you can infer the other, and just know that, when you see a squiggle on the 'scope, you're actually seeing a sideways view of a corkscrew path through time (the phase plot is the along-axis projection).

Another distinguishing feature of chaotic systems, is having some control parameter (in this case, load resistance), which as it progresses, the size and shape of the stability regions change, and so a stable condition might become unstable and get stuck oscillating, and keep oscillating even as that parameter is dialed back down.  But that oscillation can be 'quenched' by damping it, returning the system to its stable state.  This bistability (or N-stable, more generally) is another classic sign of chaotic behavior.

Now, in linear systems -- control theory -- there is no such thing as a stable limit cycle.  A system is only ever stable, or not.  And it doesn't vary with independent parameters like DC voltage or current.  So even if you know nothing about chaos, you can tell that your system is nonlinear, and it was supposed to be linear.  Find that source of nonlinearity, remove it, and try adjusting compensation values again. :)
Sounds reasonable and highly intelligent, way beyond my knowledge :-D SO how can I find that peace of *** which makes my system nonlinear? :-)

Except for the extra transisor T4, the voltage regulation loop looks reasonable. It is especially odd with the base to GND - so nothing should happen at all. The missing positive current source  / resistor to deliver the base current  is another point. Without it nothing should happen.

However the comment on the low Z capacitor applies. It usually helps to have at least some capacitance with larger ESR, like a normal type electrolytic and than a small ceramic or film typ in addition.

The current regulation might be prone to oscillation though: high side / collector side current sensing tends to be slow and not having a low impedance power source for the darlingtons is also not very good. A local capacitor for the power input might be a good ideal.#

For the external loads, it is usually a low Z capacitive load that causes the most trouble. A resistive load should be relatively easy, though the low ESR output cap could already be bad enough.

It might be a good idea to do a simulation of such a circuit with something like LTspice.
A little bit above I wrote about the purpose of T4 according to the guy who told me to put it there like this.. Maybe you'll understand better than me what it is doing there and how I could replace it with something more suitable...
Regarding the cap I also already wrote in this comment (replace with non low esr or put a resistor in?)
The current regulation seems to work very good, currently - no oscillations at all until now. :-) There are 20.000µF near the Darlingtons Collector, those caps are on another sheet...
Simulation is attached, I went quite to town with LTSpice before I built this thing up...

I agree about the current sense amplifier.  The MAX4080 is pretty slow so special attention needs to be paid to frequency compensation of the current control loop.  This is especially the case when a fast operational amplifier like the OPA2197 is used although the slow TIP3055s may be helping some.  The first time I designed a somewhat similar power supply, I also included a phase lead network around R3 for outstanding voltage mode performance but the added phase lag from the current sensing amplifier required so much compensation around the current control error amplifier that the current limit performance was abysmal.
At least for now, CC seems to work fine. Didn't do excessive testing yet, though...

Since then, my high side current sense circuits when used are more like video amplifiers if they are inside the control loop.  Better is to move the current control error amplifier itself to the high side so no separate current sense amplifier is required and this is what HP and Tektronix commonly did in their power supplies.
No idea how I could accomplish this :-)

There is a tricky way to compensate for a low ESR output capacitance and load.  Move the current shunt to the output side of the power transistor and take AC feedback before the current shunt and DC feedback after it across the output capacitance.  Now for stability purposes, the current shunt is in series with the output capacitor raising the minimum ESR.
No idea how to do this, either, unfortunately... Sounds interesting, though.

The uncontrolled and poorly defined voltage gain of T4 inside the voltage control loop is still the big problem though.
Ok, ok, I believe you now :-D


Thank you all for all your time, effort and input, I really appreciate that!

edit: LTSpice Simulation attached, however some things have been changed since the simulation... you'll need all the attached files within the same directory as the asc file. you'll need to remove .txt file ending and place a dot before lib or asy.
« Last Edit: September 02, 2018, 10:28:35 pm by nemail »
 

Offline bloguetronica

  • Frequent Contributor
  • **
  • !
  • Posts: 354
  • Country: pt
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #22 on: September 02, 2018, 10:35:51 pm »
Hi,

Had you tried holding a 100nF in parallel with the electrolytic at C15, to see how the circuit behaves? That oscillation at the output seems to be indicative of insufficient dampening. Probably the 100uF electrolytic alone won't suppress that behavior when the oscillation gets starting, because of its ESR. My guess is that the output is stable when you turn your supply on, but any change of load will make it oscillate. Once you put the 100nF it probably will kill the oscillation.

I wouldn't recommend reducing the gain of the feedback network at the higher frequencies, at least just yet. That will degrade the noise rejection on both the load and the line side. That means your PSU will be less able to cope with sudden transitions of line voltage or sudden transitions on the load current. That is undesirable on a PSU.

Kind regards, Samuel Lourenço
 

Offline T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 21860
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #23 on: September 02, 2018, 10:54:51 pm »
Ah... then I guess that transistor is intended to be in hFE-limited mode.  A big no-no, as hFE is all over the place.

The impedance of that transistor depends on signal level, which isn't something you want in your control loop.

The Darlington pair also depends on bias current, for which it may be desirable to preload them (put on a bigger bleeder resistor / downprogrammer?), or to change the bias resistor values around them.

Tim
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline Circlotron

  • Super Contributor
  • ***
  • Posts: 3214
  • Country: au
Re: Oscillation on resistive load on selfmade linear PSU
« Reply #24 on: September 03, 2018, 12:15:55 am »
Why not just ditch T4 completely and have the current limit op amp pull down on the reference input to the voltage op amp? Series resistor from the DAC to the voltage op amp then a diode from there to the current opamp.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf