This is what I suggested as a comment a couple of days ago: -
Fit a 220 ohm resistor between base and emitter and let the op-amp do
the little punches.
So, what does the output voltage look like when we discard the BJTs and connect the op-amp (via a 220 Ω resistor) to a 1 kHz sinewave of 10 mA peak-to-peak: -
The output ripple is about 0.3 mV p-p but, is this too much? It might not be too much for many applications but, that's for the OP to decide. Of course, there are other tricks that can be done but, the main focus now is to show the clear benefit of adding a 220 Ω resistor (as previously mentioned). Maybe I'll add more additions in a day or so when the OP provides more detail.
Recap - I'm not trying to solve the OP's overall problem because, without full details of the load that's guesswork. However, the OP has been asked (in a comment under the question) this: -
@DanKadera please explain what the maximum current draw from the pos rail is when current from the neg rail is at its lowest. This indicates the imbalance forces that need to be countered in order to maintain a steady mid-point rail. Ditto for the neg rail when the pos rail current is lowest. We'll then have the full picture of the AC current that needs to be supplied by the mid-rail generator. Also, state what the loading capacitance is on the mid-rail as that could cause instabilities quite easily. If you can't supply these details then it's guesswork. Frequencies of current are also useful.
As soon as numbers are provided, an attempt will be made. However, at this moment, I'm trying to show the clear benefit of fitting a 220 Ω resistor between base and emitter. Read on please...
So, the above is what you will get for light current load variations when that demand is small to moderate i.e. before the BJTs can bring anything much to the party.
Why did I choose 10 mA p-p ripple current (I here someone ask)?
I chose a 10 mA p-p ripple current because, at this level, the peak to peak voltage on the true op-amp output would be just about starting to activate the BJTs should they be fitted. If the output current ripple were any greater, then the BJTs would start to do the heavy lifting and we'd not recognize how useful the 220 Ω resistor can be.
So, just for clarity, here's the true output of the op-amp when feeding the mid-rail net via a 220 Ω resistor connected to a 10 mA p-p ripple sinewave of 1 kHz: -
As you can see, the true op-amp output voltage peaks are hitting a little higher than the nominal +/- 0.7 volts i.e. they would just be starting to properly to activate the BJTs (should they have been connected).
And clearly, we are not taxing the op-amp at all. In fact it could handle a load ripple current of about 20 to 30 mA p-p (as opposed to 10 mA p-p). So, I'm not asking the op-amp to do much here. But it won't handle much more. However, it doesn't need to because that's when the BJTs will be doing the heavy lifting (when fitted). Here's what happens when they are fitted (with a load ripple of 100 mA p-p): -
The above is the mid-rail output voltage with a load ripple of 100 mA p-p. The ripple voltage is about 2.9 mV p-p. It's not bad but, for audio applications it might just be too much. With a load of 200 mA p-p ripple current we see this: -
The ripple is about 5.5 mV p-p. But, here's the rub...
If I removed the 220 Ω resistor to mimic the OP's original circuit idea (same load ripple of 200 mA p-p) we see an output ripple voltage of about 450 mV p-p i.e. about eighty times more ripple: -
This is why I suggested adding a 220 Ω base-emitter resistor because it's a no-brainer. Circuit with the 220 Ω resistor fitted: -
Remember, I'm trying to show the benefit of adding 1 resistor to the OP's circuit.
But, you could also bias-up the BJTs a tad and turn your class B stage into a class AB stage: -
So, flowing through each BJT is about 6.8 mA DC due to the little bit of biasing applied with the extra resistors. Here's what the ripple looks like with a 200 mA p-p load: -
It's about 0.15 mV p-p and might possibly be good enough for the OP's application. Notable is that if I remove the original 220 Ω resistor (R1 above), the ripple remains about the same.
So, the options are: -
- Use R1 with no BJT biasing (class B) to get a ripple of about 5.5 mV p-p
- Don't use R1 to get a ripple voltage of about 450 mV p-p (yuk)
- Bias the BJTs (class AB) to get a ripple voltage of about 0.15 mV p-p
Also remember that if there is capacitive loading (probably quite likely) then some effort will need to be made to prevent the op-amp from turning into an oscillator. However, quite often with op-amps circuits like this, if you "over-power" the output with a significant amount of capacitance then the op-amp comes back into stability. It's roughly the 1 nF to 10 μF region of loading capacitance that can turn a linear amplifier into an oscillator and, that must be totally avoided.
So, with a 10 μF "smoothing" capacitor added to the output, the circuit will "sing": -
But, if the op-amp part has a localized 100 pF feedback capacitor, you get a stable result: -
But, because you have de-graded the op-amp performance with the 100 pF localized feedback capacitor (in order to stop it being unstable), you have also de-graded its ability to counteract ripple from the previous level of 0.15 mV p-p (no output capacitance and no localized feedback) to 0.85 mV p-p (10 μF output capacitance + localized stabilizing feedback). Circuit with 10 μF output capacitor and localized feedback capacitor: -
So, it's a fine balance that you need to make when you add capacitance to the output. It may be that with a 10 kHz ripple-current loading on the output (previously 1 kHz), the balance swings to adding an output capacitor so that it does the heavy lifting rather than the op-amp and BJTs.