# Newbie asking questions regarding Disturbance Rejection!

Hi,
I'm a newbie in the field of "Control Theory" and feel confused with some issues concerning feedback control for disturbance rejection and
Currently I'm reading that in order to obtain good disturbance rejection (i.e. minimizing the sensitivity-function S(s)=1/(1+Plant(s)*Controller(s) ) one needs to cancel the poles and zeros of the plant and from there design an additional filter that contribute to amplification inside the loop. Here I'm a little unsure if this is the right approach for all "disturbance rejectors". What I'm confused about is most easily described (I hope) by this simple example:
I have a Plant(s) = 1/s and consequently a controller(s)=s, thus the Sensitivity, S(s), function yields:
S(s) = 1/(1 + s*1/s) = 1/2 = ~6dB attenuation with no phase shift!
Now going into the time-domain; if I apply an ultra low-frequency sinuoid signal as disturbance signal and it is first filtered by the Plant then the phase-shift will be close to -90 degrees. Given the Controller that cancels the pole of the plant the sinusoid signal will be shifted +90 degrees to achieve infinite attenuation (generating perfect anti-noise). If I'm wrong here I'd be glad to be corrected!
Now I can see why everything goes well when the disturbance is a sinuoid signal but when it instead is a random signal this controller design no longer delivers unfinite disturbance rejection as this would need a non-causal filter to produce a phase shift corresponding to the inverse of the plant - Am I right in this?
Best Regards Tom
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
On Mon, 26 May 2008 03:05:23 -0700, Tom wrote:

_Where_ did you hear _that_???
Masking your plant poles with controller zeros is about 99 44/100% wrong, and it's certainly all wrong for improving real disturbance rejection! It may be something that looks good from a naive mathematical standpoint, but it doesn't stand up to much scrutiny.
Take your case, with an integrating plant whose transfer function is 1/s, and a differentiating 'controller' whose transfer function is s. Ignoring little issues like the impossibility of building a perfect differentiator, consider what happens when you have a constant disturbance at the output of your controller. Your plant will integrate it, and move. At some speed your controller will null out the disturbance -- but the plant will continue to move forever, to give you an infinite disturbance. That's not good disturbance rejection!
Normally you improve stability rejection by moving the system poles around, _without_ masking the plant poles with controller zeros. This is done by designing a controller (with it's own poles) and manipulating the controller gain, poles, and zeros so the whole system behaves in an acceptable manner.
The only time that I can think of where it makes sense to mask plant poles with controller zeros is when your plant is some mechanical assembly that has a clear and easily predictable resonance. Then, to enhance stability, you may find it useful to put a notch filter into your controller -- but when you do, the resonance becomes uncontrollable, which means that you are _not_ improving the disturbance rejection at the resonance frequency _at all_.
I suggest you find a good book on this subject. Failing that, there's always mine: http://www.wescottdesign.com/actfes/actfes.html . You need a book that'll lead you through the whole design process, and it's certainly not something you'll get from reading scattered web pages.
--
Tim Wescott
Control systems and communications consulting
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
wrote:
[snip...snip...]

Got your book and like it ... but I had to smile at the perhaps somewhat infelicitous phrasing in the quoted reply above. Might want to phrase that just a little differently. ;-)
--
Rich Webb Norfolk, VA

<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Rich Webb wrote:

It was intentional: at least once a year I try to be modest, just to show that I can do it.
OP: Perhaps I shouldn't downplay my own work _too_ much. Mine is one of only two books that I know of that are written specifically for the practitioner who needs to self-teach, and in my opinion it's the far better one of the two.
--

Tim Wescott
Wescott Design Services
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>

Hi Tim,
Thanks for your comments - it was well written. I did indeed read about cancelation with regards to mechanical assembly and assumed that accounted for controller design in general. I have still a lot to learn I can tell. I will order your book and then I might return with some more questions
Tom
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Tim Wescott wrote:

I forgot to mention that even in the case of a mechanical resonance a notch is often not the right answer. If the resonance is inside the bandwidth of the loop you may be best off with a PID with an extra lead (essentially a double-differentiator, which can have it's own issues), if the resonance is _well_ within the bandwidth of the loop you may not even notice it (i.e. if your resonance is formed by a 100lb mass swinging on itty bitty wires), if the resonance frequency changes from unit to unit or over temperature then a notch won't work without individual tuning, etc.
Pretty much the _only_ time that I'll put a notch into a controller is if I have a darn good idea what creates the resonance, I have good reason to believe that it'll stay put in frequency, and if it's more than about 5x my 0dB loop frequency (and 5x is pushing it).
I have a love-hate relationship with the whole notch filter thing. It has a dramatic, positive effect on stability, but it's kind of like using an unexploded grenade as a weight-bearing member in your house. Putting one into a system design does practically guarantee me ongoing business, because the resonance frequency will creep away from the design value over time. This means that the system will constantly be going out of tune and require expert help. The best job you can do in such a case is to arrive at a tuning that's immune to mechanical design changes, but that still needs to be fiddled with whenever the mass changes, or the rigidity of the assembly is changed.
--

Tim Wescott
Wescott Design Services