DC Servo question...

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
I done some more playing with the LTspice simulation of Dxvideo's preamp-with-DC-Servo circuit.

I have been using the .four command to have spice calculate the THD (Total Harmonic Distortion) of the output, so I could see what effect my changes to the circuit were having on the output's quality.

Some interesting patterns have been emerging:

When replacing Dxvideo's original R12 (between the integrator output and the amp input) with two smaller resistors, with a capacitor to ground from between them, it's difficult or impossible to not cause the THD to increase. It's better to make the first resistor after the integrator smaller than the other one, and to use only a small capacitor to implement the low-pass filter there. Apparently, the resistance that then connects to the U3 amplifier's input is not providing enough isolation. (Using an opamp buffer/follower there, i.e. between the low-pass capacitor and the resistor that goes to the U3 input, improves things.)

So it turns out that using a low-pass filter between the U3 (main amplifier) output and the integrator's input looks like a better approach to lowering the THD, at least if an active filter is not used after the integrator's output.

Here is the latest version of all of the changes that I have made, so far, to Dxvideo's schematic, which he showed in Post # 30 of this "DC Servo Question..." thread, at diyaudio.com:

1. Changed R5 from 1Meg to 511K and 309K in series, with a 1uF polyester capacitor from between those resistors to ground. Note: The 511K is the one connected to the output of U3 and the 309K is connected to the - input of U2. (The 1uF polyester capacitor could be one of the small 63V "yellow box" ones of the AVX BQ-series, which have 5mm lead spacing.) This implements a low-pass filter before the integrator. The filter's f-3dB is about 0.31 Hz.

2. Changed R11 from 1Meg to 820K, to match the resistances seen by the integrator opamp's inputs.

3. Changed C5 from 470 nF to 100 nF (polypropylene), to speed up the integrator (and match the AC impedances seen by U2's inputs).

4. Changed R12 from 47K to 1.82K (ideally, 1.83k, for minimum THD), to increase the dynamic range of the integrator, and, to minimize the output THD. With the low total resistance value required, here, in order to be able to servo-out a 0.5v DC input offset (= 1.5v DC output offset), any attempt to split this resistance and use a cap to gnd to form a low-pass filter caused an increase in output THD. It ALSO appears that, with the present circuit configuration, if this resistance is increased OR decreased (from 1.83k), the output's THD is increased and the servo's dynamic response (e.g. overshoot) is affected.

Some of the parameters above might be able to be adjusted, slightly, since the system is still slightly under-damped, resulting in a small amount of overshoot in the servo response.

When simulating this circuit, I have been using OP275 models from Analog Devices (analog.com), for the opamps, with +/-15vDC ideal power supply voltages. No power supply decoupling and no power supply or ground wire/trace impedances were modeled.

I have been using a 1V 0-peak 50 Hz sine ideal voltage source for the input signal, with an ideal DC-step voltage source in series with that, to provide 0vdc from 0 seconds until 0.19 seconds, and then a ramp from 0v to 0.5v between 0.19 and 0.20 seconds, and then 0.5v DC after 0.2 seconds.

I have not yet simulated the circuit with any higher frequency or any other amplitude for the input sine, and have not tried any other offset amplitude.

For the conditions simulated, the circuit appears to work quite well.

- Tom Gootee

http://www.fullnet.com/~tomg/index.html
 
gootee said:
I have done some more playing with the LTspice simulation of Dxvideo's preamp-with-DC-Servo circuit.

I have been using the .four command to have spice calculate the THD (Total Harmonic Distortion) of the output, so I could see what effect my changes to the circuit were having on the output's quality.

Some interesting patterns have been emerging:

When replacing Dxvideo's original R12 (between the integrator output and the amp input) with two smaller resistors, with a capacitor to ground from between them, it's difficult or impossible to not cause the THD to increase. It's better to make the first resistor after the integrator smaller than the other one, and to use only a small capacitor to implement the low-pass filter there. Apparently, the resistance that then connects to the U3 amplifier's input is not providing enough isolation. (Using an opamp buffer/follower there, i.e. between the low-pass capacitor and the resistor that goes to the U3 input, improves things.)

So it turns out that using a low-pass filter between the U3 (main amplifier) output and the integrator's input looks like a better approach to lowering the THD, at least if an active filter is not used after the integrator's output.

Here is the latest version of all of the changes that I have made, so far, to Dxvideo's schematic, which he showed in Post # 30 of this "DC Servo Question..." thread, at diyaudio.com:

1. Changed R5 from 1Meg to 511K and 309K in series, with a 1uF polyester capacitor from between those resistors to ground. Note: The 511K is the one connected to the output of U3 and the 309K is connected to the - input of U2. (The 1uF polyester capacitor could be one of the small 63V "yellow box" ones of the AVX BQ-series, which have 5mm lead spacing.) This implements a low-pass filter before the integrator. The filter's f-3dB is about 0.31 Hz.

2. Changed R11 from 1Meg to 820K, to match the resistances seen by the integrator opamp's inputs.

3. Changed C5 from 470 nF to 100 nF (polypropylene), to speed up the integrator (and match the AC impedances seen by U2's inputs).

4. Changed R12 from 47K to 1.82K (ideally, 1.83k, for minimum THD), to increase the dynamic range of the integrator, and, to minimize the output THD. With the low total resistance value required, here, in order to be able to servo-out a 0.5v DC input offset (= 1.5v DC output offset), any attempt to split this resistance and use a cap to gnd to form a low-pass filter caused an increase in output THD. It ALSO appears that, with the present circuit configuration, if this resistance is increased OR decreased (from 1.83k), the output's THD is increased and the servo's dynamic response (e.g. overshoot) is affected.

Some of the parameters above might be able to be adjusted, slightly, since the system is still slightly under-damped, resulting in a small amount of overshoot in the servo response.

When simulating this circuit, I have been using OP275 models from Analog Devices (analog.com), for the opamps, with +/-15vDC ideal power supply voltages. No power supply decoupling and no power supply or ground wire/trace impedances were modeled.

I have been using a 1V 0-peak 50 Hz sine ideal voltage source for the input signal, with an ideal DC-step voltage source in series with that, to provide 0vdc from 0 seconds until 0.19 seconds, and then a ramp from 0v to 0.5v between 0.19 and 0.20 seconds, and then 0.5v DC after 0.2 seconds.

I have not yet simulated the circuit with any higher frequency or any other amplitude for the input sine, and have not tried any other offset amplitude.

For the conditions simulated, the circuit appears to work quite well.

- Tom Gootee

http://www.fullnet.com/~tomg/index.html


ONE MORE CHANGE:

For change 1 in my last post (quoted above), change the 1 uF capacitor to "0.68uF in parallel with 0.082 uF" (or, maybe 0.82 uF alone, if you can't use two caps in parallel).

Lowering that 1uF (integrator input LP filter) capacitance to 0.762 uF improved the transient response to be almost critically-damped, and also further-lowered the THD of the output.

With the latest component values icluded in Dxvideo's "Preamp with DC Servo" circuit, simulation with LTspice shows that a 1.5 v DC output (or 0.5 v DC input) offset is fully corrected in about 2.47 sec (for a 500 Hz 2v p-p sine input signal). The output offset then overshoots by about 0.124 mV, recovering in another 2 seconds or so. For a 50 Hz 2v p-p sine input, the 1.5 v DC output offset is fully-corrected within about 2.69 sec, then overshoots by about 0.045 mV, recovering after about 2 more seconds.

The AC component of the integrator output (U2 output) is about 48 uV p-p for a 500 Hz input signal, and about 4.9 mV p-p for a 50 Hz input signal. (However, note that the 1.83K resistor does not fully isolate that node from the input, meaning that the integrator output's contribution to that AC voltage component may be lower than what was stated.)

For both the 50 Hz and the 500 Hz input frequencies, LTspice reported the THD of the output to be the same as the THD of the input, at .000001% (with LT-Spice's "Max Timestep" = {1/(300*freq)}. (Note that for other component-value combinations, output THDs of well over .001% were seen, while the input THD always remained at <= .000001%.) Output THD was computed with the first nine harmonics, for the last 20 cycles of a 5-second transient simulation.

OK, I couldn't help myself, and also simulated it with a 20 Hz input sine: THD of output = .000003% while THD of input is .000001%. Correction time and overshoot etc were virtually identical to the 50 Hz case. AC at the integrator output node was about 30.5 mV p-p.

For 1000 Hz input: THD of output = .000001% while THD of input is .000001%. Correction time and overshoot etc were virtually identical to the 50 Hz case. AC at the integrator output node was about 12.5 uV p-p.

So, it looks like this latest Preamp with DC Servo circuit might work fairly well.

- Tom Gootee

http://www.fullnet.com/~tomg/index.html
 
AndrewT said:
I don't think after all your efforts there can be any "might" about it.

Thanks, Andrew, for your "vote of condfidence". (But there really wasn't very much effort involved; probably not much more than an hour, altogether, except maybe for the typing of the descriptions, etc, into this thread.)

I guess I learned a long time ago to almost always use "qualifiers" such as "might", et al, probably mainly just to "cover" my statements, so they'd more-often be correct, regardless of the actual facts. :)

In this circuit's case, especially since I didn't do any sort of formal control-theory type of analysis, nor even any frequency-response simulations, I guess I still am wondering, just a little bit, about the low-frequency area, and about whether or not it's filtered well-enough, there. If not, I suppose that the integrator and the integrator input filter could both be slowed-down, some more, by increasing their capacitors' values, and the response re-tuned.

And, actually, it might be possible to improve it by changing the maximum correctable offset range, to make it smaller, for example. I don't really know what is reasonable, there. A 1.5 V maximum correctable DC output offset seems possibly excessive.

So far, though, it looks very good, to me, epecially considering the fact that it has only the single 1st-order low-pass filter, for the integrator.

Now I guess we need some spice opamp models that include thermal effects! :)

- Tom Gootee

http://www.fullnet.com/~tomg/index.html
 
Hi,
do you remember my three questions? post 17.
They seem more pertinent following your recent comments.

I too am surprised that distortion at the output is determined by tiny adjustments in the DCservo output filter.
But seeing just how low those predicted distortions are, I am now wondering if this could be an artefact of the simulator rather than actual audio distortion (whether measurable/audible).
 
AndrewT said:
Hi,
do you remember my three questions? post 17.
They seem more pertinent following your recent comments.

Hi Andrew,

[Edit: You should probably read my LAST four paragraphs, first.]

Yes. I remember your questions from Post 17. I did my best to "slide around them" in Post 19, remember? :)

Here are your questions from post 17:

<AndrewT>: "Can someone enlighten us on what the relative low pass frequencies should be to obtain best performance from the dual input/output filters either side of the integrating opamp?
Should the input filter be higher or lower than the output filter?
Where in the frequency band should these filters operate to minimise the effect on the wanted audio signal?
How low is too low to make the correction too sluggish in response to output offset errors?"</AndrewT>

(Note that in this circuit, there is no longer any filter AFTER the integrator. The only filter is the low-pass before the integrator. So your question 2, although generally important, is moot for this particular discussion.)

I still think that, if "nothing else" is considered (except steady-state operation), then, to minimize any "bad" impact on the audio quality, the DC Servo loop's integrator and filter(s) would need to have the lowest-possible cutoff frequencies.

But, of course, there ARE other things to be considered, and you specified obtaining "best performance". So, technically, we would need to enumerate and then quantify the other factors that would need to be considered. And then, to get "best performance", we would need to define an "optimization metric" involving all of the relevant variables, and change the system until the optimization metric was as good as possible.

For this simple type of "classical feedback control system", though, we really only have two operating regimes to worry about: transient response and steady-state response. Thinking of the system that way might simplify the optimization considerations.

The steady-state response's performance goals seem fairly obvious: We want it to accurately cancel-out any DC offset that's <= some maximum value that we have chosen, and to be stable, and to introduce the minimum amount of distortion and noise at the amplifier's output. I can't think of anything else, for that, offhand.

To define the transient response's performance goals, we need to better-define the purposes of the DC Servo (as we had started to discuss, earlier in this thread). For example, is the servo meant to also be able to protect the entire "downstream" system, if the input to the amplifier containing the servo suddenly slams to one of the power rails and stays there, or if the servo-controlled amplifier's output, itself, tries to do the same? No? I think that it COULD be argued that if "a DC Servo is used instead of DC-blocking caps", then it SHOULD be able to servo-out at least an output DC offset, from its own amplifier, that's almost equal to either power rail's amplitude, and should be able to do it "fast enough".

However, that's clearly NOT what we have been designing, HERE. Our type of servo seems to be only intended to be able to adaptively remove the "small" DC output offsets that might be encountered under "normal operating conditions". And, if THAT is the case, then the servo's transient response's speed hardly matters at all. And if THAT is true, then the steady-state performance is what should be optimized. And that's lucky for us, since improving the steady-state performance, mainly by lowering the low-pass cutoff frequencies in the integrator loop, to minimize the injected AC and the distortion produced, means ALSO slowing-down the transient response of the servo.

There is probably still SOME trade-off necessary, between transient and steady-state goals, since any DC offset presented to the speakers will cause the drivers' magnets to not be centered, which could affect the sound qualities. But I do not yet have any idea of the magnitude or significance of that effect. At any rate (no pun intended), assuming that the servo's power-on transient can be finished before the first music starts playing, then, other than that, the servo's transient response only needs to be fast-enough to be able to keep up with whatever "normal" DC offset drifts might occur, due to effects such as component heating, any other internal drifts, and whatever else might affect the offset during normal operation. I also do not know what servo-response speeds and magnitudes any of those last-mentioned effects might require.

So, I guess we're back to more-or-less "guessing", for now at least. It seems like something on the order of 5 seconds for servo transient-response elimination of initial DC offsets is reasonable, before music is started after power-on, maybe +/- a few seconds. And if only "typical" DC offsets need to be handled, we could probably specify something as low as 500 mV offset at the amplifier output as the maximum that coulpd be corrected.

------------

I will try to address the possible invalidity of the simulated THD results, more, later. But note that, regarding the possibility that the low THD numbers could be a "simulation artifact": I have actually seen many THD simulation artifacts, with LT-Spice. BUT, I have ONLY seen simulated THD that was too LARGE, due to the "max timestep" being too small, or due to not waiting long enough, i.e. measuring before a "steady-enough" steady-state was reached. I have never seen the THD be "too low", due to any simulation-related effect, OTHER than when a "too-ideal" circuit is simulated. (Could that be the case, here?)

So, for now, maybe, instead of looking at THD as much, I will check the frequency response of the servo output (maybe temporarily isolated with a buffer), to see how much of the integrator's residual AC is being "injected into" the amplifier input.

-----------

One other thing I noticed is that I had no source impedance specified, for the input sine source. I will add something like 50 Ohms, I guess, and see what happens.

---------- Oops:

I wish I had noticed THIS, initially, but, it ALSO seems that the circuit topology, itself, in terms of how the correction is injected into the amplifier's input, is "suspect":

For a non-inverting amplifier, a DC offset correction would typically be injected into a resistance ladder connected from the amplifier's negative input to ground. See Page 6 of AN-31 from national.com. In Dxvideo's current circuit, R3 and R12 are (maybe) sort-of acting as a passive voltage-summing network. But there's "nowhere for the current to go", except into the integrator (of course). Through R12, I see that for a 4v p-p input at 20 Hz, there is an average of about 3.5 mA, with 2 mV p-p of AC, flowing from the U3 amplifier's "+" input node toward the integrator IC U2's output node.

That is more-or-less expected, since it's an inverting integrator. It's just not clear (to me, at least, yet) that this would be a good way to manipulate the U3 output offset. It also seems like it might be causing the circuit to not allow some of the "normal design rules" for a DC Servo to apply correctly, although I don't have that opinion "nailed-down" well, yet, at this point.

So, I will also try it with the more-typical offset-correction-injection topology, and see if the results can be made to be comparable, and maybe better-behaved.

- Tom Gootee

http://www.fullnet.com/~tomg/index.html
 
Here is a 3X preamp (derived from Dxvideo's schematic) with a DC Servo that uses the "standard" circuit topology for offset correction for a non-inverting amplifier:


An externally hosted image should be here but it was not working when we last tested it.


Note that I also inserted the 3300 pF capacitor, C4, to form an RF filter for the input, which makes the f-3dB for the preamp about 320 kHz.

-----------------------

Here is a plot of Preamp w/Servo behavior, for a 1.5v output offset inserted at t=0.2 sec. The input is a 20 Hz sine, 2v p-p. In the upper plot pane, the red trace is the integrator output voltage, V(U1_OUT), and the blue trace is the voltage at the integrator post-filter, V(V_C2). The lower plot pane is the voltage at the output, V(OUT).

An externally hosted image should be here but it was not working when we last tested it.


Larger plot image:
http://www.fullnet.com/~tomg/DXSERV1O.gif

- Tom Gootee

http://www.fullnet.com/~tomg/index.html
 
Here is another DC Servo for a 3X preamp.

But THIS ONE is capable of correcting a 15V DC output offset in about 200 ms:


An externally hosted image should be here but it was not working when we last tested it.


----------

Below is a plot for the circuit above, showing the response for a 5V input offset (or 15V output offset, which actually only got to 14V or so, due to opamp voltage-swing limitation.) injected at t=0.2 sec. The input is a 100 Hz sine, 2v p-p. In the upper plot pane, the red trace is the integrator output voltage, V(U1_OUT), and the blue trace is the voltage at the integrator post-filter, V(V_C2). The lower plot pane is the voltage at the output, V(OUT).

An externally hosted image should be here but it was not working when we last tested it.


Larger plot image:

http://www.fullnet.com/~tomg/DXSERV25.gif

Just in case the LT-Spice THD calculations are valid, in some sense, for this circuit, I stepped the input frequency, to see where the output THD "went bad". The THD that LTspice calculated for the input varied from .000002% to .000003%, for the simulations that were run to get the THD data below:

Freq | THD
----------------
10 Hz .909424%
15 Hz .071643%
20 Hz .000273%
25 Hz .000004%
----------------


Note that I have not actually built the circuits for either of the two schematics that I just posted.


- Tom Gootee

http://www.fullnet.com/~tomg/index.html
 
Hi Tom,
in post 49 you show two schematics with essentially the same circuitry.
considering only the upper schematic.
R12 connects to junction R6&R2. Why did you do it this way?
I would connect R12 to top of R2 =inverting input pin. However, when connected this way R12 value must be much larger. I would say 10k minimum, maybe even as high as 47k.
That would then allow the filter R7+C2 to be rescaled to about 10k+22uF. It might even work @ 10K+2.2uF values.

Similar applies to the lower schematic.
 
AndrewT said:
Hi Tom,
in post 49 you show two schematics with essentially the same circuitry.
considering only the upper schematic.
R12 connects to junction R6&R2. Why did you do it this way?
I would connect R12 to top of R2 =inverting input pin. However, when connected this way R12 value must be much larger. I would say 10k minimum, maybe even as high as 47k.
That would then allow the filter R7+C2 to be rescaled to about 10k+22uF. It might even work @ 10K+2.2uF values.

Similar applies to the lower schematic.

Hi Andrew,

I see only one schematic in Post 49 (and one in post 50). Are those the "two" that you meant?

The reason I connected R12 between R2 and the newly-added R6 is because I wanted to see what happened if I followed the "standard" method/circuit given on Page 6 of AN-31 from national.com , for compensating for a DC offset for a non-inverting amplifier with any type of feedback. But it looks like maybe they were just trying to scale-down the effect of a large pot, to get small adjustments from it. However, it divides-down the AC, too, which helps. C2 isn't really even needed, in that circuit.

But I just tried connecting R12 directly to the "-" input of U2, with R12=10K and R7=8.2K and C2=2.2uF, and it seems to work pretty well. Eliminating R6 (100 Ohms), changing R2=1.2K, and leaving R1=2.2K also makes the gain about right, too, at 3.03.

The total of R12 + R7 can't go much higher than the 18.2K that I just tried, at least when correcting for a 1.5V output offset, since the output of integrator opamp U1 goes up to over 12v, as it is.

I will try the same type of thing for the schematic in Post 50, and see if I can get rid of the gain peak at 7.5 Hz, for that one.

Note that the Post 50 schematic ("15V/200ms") was just sort of an experiment that I decided to try, since I had mentioned maybe needing to be able to correct for rail-pegged opamp output voltages, in a very short time.

- Tom Gootee

http://www.fullnet.com/~tomg/index.html
 
Here is a better version, to replace the schematic in Post 49:

dxserv1a.jpg


The values of C2 and C5 could be lowered. They could also be replaced with a single bi-polar capacitor. They could even be completely omitted.

- Tom Gootee

http://www.fullnet.com/~tomg/index.html
 

GK

Disabled Account
Joined 2006
gootee said:

The AC component of the integrator output (U2 output) is about 48 uV p-p for a 500 Hz input signal, and about 4.9 mV p-p for a 50 Hz input signal. (However, note that the 1.83K resistor does not fully isolate that node from the input, meaning that the integrator output's contribution to that AC voltage component may be lower than what was stated.)


If you capacitively couple the output of the intergrator into an inverting unity gain amplifier, and then sum the output of the unity gain inverting amplifier with the output of the intergrator using another opamp stage, the AC component can be made to bye byes almost completely right down to less than 1Hz. (with a bit of gain trimming)
Quad opamp packages come in usefull here. I've been doing this for a while already. Never seen anyone else do it though.

Cheers,
Glen
 
G.Kleinschmidt said:



If you capacitively couple the output of the integrator into an inverting unity gain amplifier, and then sum the output of the unity gain inverting amplifier with the output of the intergrator using another opamp stage, the AC component can be made to bye byes almost completely right down to less than 1Hz. (with a bit of gain trimming)
Quad opamp packages come in usefull here. I've been doing this for a while already. Never seen anyone else do it though.

Cheers,
Glen

Glen,

Thanks!

I didn't know anyone else had tried that, either! Now you're giving away our secret! :)

I got the idea when I was reminded of "active noise cancellation", while thinking about getting rid of the AC. Sounds like you beat me to it, though! (My sim files show 11JUL07 as my first use of that, for a DC Servo at least. And I haven't built one, yet.)

It's really great to have you post here, Glen (except, of course, for the paralyzing fear from having a true pro looking over one's shoulder :) ! I have read many, many posts of yours, and wish I had even just 1% of your knowledge. I AM working on it, though!

Maybe I'll try to re-visit some of my "active-cancellation" servo designs and see if I can get one refined-enough to post here.

By the way, Glen, what do you think about the idea of trying to have a DC servo that could also "very quickly" servo-out power-rail-magnitude output offsets, which has been discussed, a little, here? I had always just sort-of assumed that it would not be possible, at least not with a "standard"-topology DC servo, because of the "opposite" nature of the two goals, i.e. high speed/wide range and lots of LP filtering. But, for a low-gain amplifier (like this 3X preamp, perhaps; or would that matter?), at least, do you think it could be done, with very good performance, "distortionlessly"? Maybe the cancellation-type circuit for the AC could help a lot. I did come up with a schematic for one (Post 50, here, but refined a little since then). But I'm still having a bit of trouble trusting the sim results, since I always needed much better LP filtering than that, to get low-enough THD, in the past. Or maybe I'm just "looking at it wrong". Of course, most of what I just asked assumes that the concept is even worth pursuing. What do you think?

You could read my and AndrewT's et al's posts, in this thread, but, I think my original "concern" was mainly just that if my circuit was going to "eliminate DC-blocking caps", then maybe my circuit should also perform their protective functions under (at least some) fault conditions, as long as that could be done without much compromise, if any, in audio quality. I know that that could probably turn out to be a pretty large can of worms, if we really delved into all of the possible application scenarios, etc etc. But if you could maybe impart just a nugget or two of overarching wisdom about the general concept, it might at least help to point me in the right direction. (Oh, what a difficult thing to really consider: What IS the "optimal direction", in general, in which to point oneself.....?? Now my brain hurts.)

Thanks again, Glen!

Highest regards,

Tom Gootee

http://www.fullnet.com/~tomg/index.html
 
Well, I guess I just found the answer to at least SOME parts of my own question(s):

It DOES appear to be technically feasible, to say the least, to make a "very fast" DC Servo that can zero-out "very large" DC offsets, while also not injecting any significant AC signal back into the amplfier being controlled.

Using a sped-up "AC-cancelling" stage after the servo's integrator, instead of the typical low-pass pre and/or post filter(s), I was pretty-quickly able to design and simulate a "first cut" of what I might call a "Super Servo" circuit, which can zero-out a relatively-large DC output offset in an amplifier circuit, relatively quickly, and also NOT inject significant AC into the input of the amplifier being controlled.

On one of my first tries, with LTspice, just now, after only an hour or two of "getting my feet wet", I used a chipamp spice model (TI's OPA541 "E" model), running from +/- 30v, with a gain of about 21, producing a 100 Hz sine output of about 23v p-p, as the "simulated audio amp stage", and, used AD OP275 opamps in the DC servo feedback loop, all running at +/-15v:

The circuit was able to zero-out a 17v DC offset at the chipamp's output (created by injecting a DC voltage step in series with the chipamp's input source), in only about 30 ms(!), with no overshoot, while increasing the output's THD by less than .00009%.

And I am very confident that this first "Super Servo" circuit can be vastly improved, probably fairly easily, since I basically "just now" started working on it.

So, now, possibly, many other questions remain: Is it even needed, or possibly useful at least? Could it, for example, protect speakers (and maybe subsequent amplifier stages), in the absence of DC blocking capacitors, during certain amplifier fault conditions? Is it even "worth it", to try to do that, this way? If so, how would it have to be able to perform, to be good for that? What else might it good for? What might be some performance and behavioral goals, for other possible application scenarios?

More later.

- Tom Gootee

http://www.fullnet.com/~tomg/index.html
 

GK

Disabled Account
Joined 2006
gootee said:


Glen,

Thanks!

I didn't know anyone else had tried that, either! Now you're giving away our secret! :)

I got the idea when I was reminded of "active noise cancellation", while thinking about getting rid of the AC. Sounds like you beat me to it, though! (My sim files show 11JUL07 as my first use of that, for a DC Servo at least. And I haven't built one, yet.)


Hey, I got the idea when servicing my old Tektronics mainframe vacuum tube oscilloscopes. These old units have multiple electronically regulated supply rails, with ripple cancellation realised with a bit of ripple from the raw supply capacitively coupled into the feedback part of the regulator.


gootee said:

By the way, Glen, what do you think about the idea of trying to have a DC servo that could also "very quickly" servo-out power-rail-magnitude output offsets, which has been discussed, a little, here? I had always just sort-of assumed that it would not be possible, at least not with a "standard"-topology DC servo, because of the "opposite" nature of the two goals, i.e. high speed/wide range and lots of LP filtering. But, for a low-gain amplifier (like this 3X preamp, perhaps; or would that matter?), at least, do you think it could be done, with very good performance, "distortionlessly"? Maybe the cancellation-type circuit for the AC could help a lot. I did come up with a schematic for one (Post 50, here, but refined a little since then). But I'm still having a bit of trouble trusting the sim results, since I always needed much better LP filtering than that, to get low-enough THD, in the past. Or maybe I'm just "looking at it wrong". Of course, most of what I just asked assumes that the concept is even worth pursuing. What do you think?

You could read my and AndrewT's et al's posts, in this thread, but, I think my original "concern" was mainly just that if my circuit was going to "eliminate DC-blocking caps", then maybe my circuit should also perform their protective functions under (at least some) fault conditions, as long as that could be done without much compromise, if any, in audio quality. I know that that could probably turn out to be a pretty large can of worms, if we really delved into all of the possible application scenarios, etc etc. But if you could maybe impart just a nugget or two of overarching wisdom about the general concept, it might at least help to point me in the right direction. (Oh, what a difficult thing to really consider: What IS the "optimal direction", in general, in which to point oneself.....?? Now my brain hurts.)


Hmmm.....I think a "fast" servo could be made to work to some degree using ac cancellation but it would probably introduce more problems than it could solve.
You can get an ac-cancelling servo working almost perfectly in SPICE, but in real life, such a scheme will always be less than perfect. I’ve only ever used it to further improve DC servos with very long time constants.
I think the prospects for measurable "colouration" of the audio signal would be much greater for a fast servo than a suitably proportioned coupling capacitor or two.
With regards to offering some degree of fault protection, I'm not exactly sure what you have in mind here. If a significant fault causing a DC offset error occurs in an amplifier it is doubtful, in probably most instances, that it could still be safely driven back to the quiescent DC operating point by a servo.


gootee said:

Thanks again, Glen!


No worries :)


Cheers,
Glen
 
Hi,
it strikes me that DC servo to allow capacitorless coupling and for warm-up drift, is a completely different animal to near Vrail output offset.

If the offset is that big then something has gone wrong.
It is time for the DC detect circuit to activate the shutdown, either by isolating the output until the DC disappears and/or to mute the input or to go into complete latched mains shutdown and await investigation.
 
OK. You guys have pretty-well convinced me that the high speed and large range are not needed, and that the DC Servo only needs to deal with "normal operating conditions".

Maybe, instead, the "fast, large range" servo circuit could be used for the "DC detection", to activate a shutdown mechanism, IF it would do much good to have more speed, for that. Otherwise, obviously, the "regular" DC Servo's output could be used to activate any protection circuits, if it were designed so that something near its maximum correctable offset was deemed to be unacceptably high, and a valid cause for shutdown or muting or whatever.

-----------------------

Anyway, I'm now back to this: What should be the MINIMUM amplifier output offset-correction range, for a "regular" type of DC Servo? I realize that it might be dependent on the rail voltages, type of amplifier topology, etc. But is there a general "rule of thumb", for choosing it? I think that I have seen a "generally accepted" maximum DC offset value, somewhere, but can't quite remember what it was.

I know that I could just "pick a value", such as, say, 300 mV. But the exact value chosen probably matters a lot, especially if "best" performance is a serious goal. The chosen "maximum correctable offest" value, besides determining many of the servo circuit's parameters, also directly affects the maximum amplitude of the AC that is allowed to be injected back into the amplifier input. The SMALLER the maximum correctable offset value needs to be, the lower the maximum feedback-injected AC can be, and the lower the added distortion can be (and the better the accuracy and precision can be, probably).

Also, if the DC Servo ever hits its limit, and sticks there, the distortion it adds can become suddenly a lot worse. So, TOO low of a maximum correctable offset might be worse than too high. (Ideally, though, I guess, we might want to add a shutdown or mute feature, which would be activated just before the servo's max was reached.)

So what might be the LOWEST value of "maximum correctable offset" that I can assume would probably always be "good-enough"?

- Tom Gootee

http://www.fullnet.com/~tomg/index.html
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.