# Proportional Controller and SS Error

1. Nov 18, 2012

### SArsalan

hi
i am having a bit of a problem understanding the steady state error in proportional controllers..

The output from a P type Controller is proportional (u=kp(error))to the error so why does this error arise??
The output from the controller tries to achieve the S.P. Once the O/p = SP the error equals 0 the controller output should be 0 and when the there is no output from the controller again an error should occur..Our controller on sensing this error will again produce a proportional response till the error is zero. Once the error is zero again the cycle should continue..

Now if i am right here, what i don't get is why is the SS error a constant shouldn't our controller o/p keep fluctuating..achieving the set point and then again dropping..

2. Nov 23, 2012

### SArsalan

umm no answer...did i as this in a wrong place??

3. Nov 23, 2012

### S_Happens

With proportional control you only get a set change in output proportional to the error. With a poorly designed system, you may experience lots of overshoot and/or cycling, but you use that example to understand the limitations of proportional control, not the fundamentals.

To understand why there will always be offset, imagine that your measured value is increasing at some rate and is a higher value than your setpoint. As the measured value increases, so does the output from the controller. If the changes are slow enough, then you will reach a point where the output has increased enough to stop the change in the measured variable. If your measured variable stops and stays at this point above the setpoint, then there will be no change in error and therefore no change in output. The system has reached an equilibrium where the measured variable is some value above the setpoint. This is called offset and with proportional only control, is the point around which the system will actually oscillate, not zero.

4. Nov 23, 2012

### SArsalan

plz correct me if i am wrong..so the output from the controller gets constant because of the physical limitations of the system and it has nothing to do with the mathematics.right?

5. Nov 23, 2012

### S_Happens

I'm not quite sure what you mean by your statement. Offset will always be a consequence of using proportional only control. Your simple proportional equation also reflects this (it has to). The addition of integral control is what allows the offset to be brought to zero in SS operation (or being manually manipulated by an operator).

In proportional only control, if the difference between the measured value and the setpoint (what you are calling error) stays constant, then the output also stays constant. To put it another way, for the output of the controller to change, a change in error is required, not simply a nonzero value for the error. The proportional change in output is applied once, when the change in error is measured and then any further changes in output are only in response to changes in that error.

Last edited: Nov 23, 2012
6. Nov 23, 2012

### SArsalan

i am sorry but i didn't get what you said..may be i am missing something here..
Lets say we have a water tank(height = 10m) whose level we want to control..we install a level sensor, a computer and a control valve(on the inlet) forming a closed loop system..The water through the tank is continuously draining and we want to maintain a level of 8m by modulating the water flow in the tank through the control valve..We program the controller as a proportional only controller with gain Kp..
Here the S.P = 8m, lets assume the valve is fully closed and the water level in the tank is 4m..
Now upon sensing the error (S.P-P.V [here 8m-4m]) the controller will multiply the error with Kp [o/p = Kp*(error)] and send the signal to the valve which will open the appropriate amount(say 75% initially).
This is the part where i get confused
1) As the water level will start rising the error will start decreasing so wouldn't the controller signal to the valve decrease thus causing it to be open less than 75% and eventually valve will get a zero signal when the level reaches 8m (o/p = Kp*0)...

2) When the error will be 0 the controller o/p will also be 0 (valve will close) so the tank level will again drop..on sensing the level to be less than 8m the controller will again generate a signal to open the valve and so the valve will open up till the level rises and again close when it is 8m...so this cycle will continue forming a small ripple near the S.P

I know i am making a mistake/s somewhere so please identify the problem here..
thanks ur help is much appreciated

7. Nov 24, 2012

### S_Happens

Okay, I see what you're asking now. Going back, it does look like you asked it in your first post, but I missed it.

The controller is biased so that zero error does not mean zero output. You simply add a bias term to the equation.

8. Nov 24, 2012

### S_Happens

I should add that in MOST cases bias would be nonzero, but it could be any value from 0-100% output. This is for proportional only control, as adding integral control removes both the offset and necessary bias.

9. Nov 24, 2012

### SArsalan

ok now it has started to make some sense but please clarify this last question

if we have a constant set point for which we design our feedback system setting Kp and settling time etc etc will the offset still exist or does it only come into play for varying SP.

10. Nov 24, 2012

### S_Happens

There is only one condition for each proportional only control loop where offset will be zero. Equilibrium can be reached for any other conditions within the range of the control loop, but offset will exist.

It's not just the setpoint that you design around, but all of the process conditions (inlet, outlet, etc). And all this discussion has been for constant setpoint with changes in the measured variable (resulting in changes in error). There's no need to try and muddy the waters with changes in setpoint to understand what's going on. If you designed the control loop for the specific condition that it actually achieves in steady state, then you will have zero error. Any deviations from these conditions will result in steady state operation at an offset.

11. Nov 24, 2012

### jim hardy

don't make it more complex than it is.

Mark's Mechanical Engineer's Handbook has a good chapter on automatic control.

The controller itself is pretty dumb, It has no idea what it is connected to.
So it just produces an error signal, which is difference between input and setpoint.
Error might be multiplied by gain,
and a bias might be added in so that zero error is represented by something other than zero output
It is the duty of the design guy to connect it in such a manner as to give satisfactory system response. Which requires that he understand the process to which he connects the controller.

Consider the humble toilet tank level controller - it's proportional only.
It allows water to flow into the tank at a rate proportional(over a small range) to how far actual level is below the shutoff point of the float valve. So its output might be thought of as
flow= K times (error)
If there's no leakage out of the tank
flow will decrease as level approaches desired setpoint, stopping when setpoint is reached.
You have observed this thousands of times.

But if there is leakage out of the tank, flow will only decrease until it equals leakage. When flow and leakage become equal, level stops increasing so the float never raises to shutoff point. So the controller reaches equilibrium with some nonzero error and hence nonzero output. Try it - place a string under the flapper so it'll leak and see where level settles out. But tie off the string so it doesn't get into the flow channel beneath the rim and plug those little openings, they are important.

I think the source of your confusion is that you are not separating in your mind the controller and the process. They are two separate mathematical operating blocks.
It is important to think them in sequence.

The controller block is: flow = k X level error
and the tank block is: level = k X ∫ (inflow - outflow)

my point being - control system behavior is not intuitive to most people.
It's like computer programming - we have to force ourself to go one step at a time. The mind wants to leap to the answer.

Control systems usually employ integration somewhere to drive error to zero. The toilet tank system has its integration in the process instead of the controller. That chapter in Mark's shows how in a closed loop it doesn't really matter which block has it

study derivation of that G / (1+GH) term.

old jim

12. Nov 25, 2012

### SArsalan

Thanks a lot S_Happens
Jim the toilet water tank with the leakage example is a really good one..Understood the whole problem..And yes you are right i also noted that i was jumping to the conclusion instead of taking it one step at a time..
Will take a look at the book for sure.

13. Nov 25, 2012

### jim hardy

thanks for the kind words. I hope you get really interested in control theory, it explains so much about how Mother Nature designed the universe. She just loves a balance....

14. Dec 31, 2012

### hisham.i

Good explanation Jim!
but just a question concerning this sentence:
Do you think the nature can design anything!..The nature is designed to behave in such a manner so how it can design any thing!?

15. Dec 31, 2012

### jim hardy

You said it, "...nature is designed...."

Don't you sometimes just look at it all and wonder?

I like these two by Einstein:

For me, Mother Nature is as good as any other name.
And it's pretty non-denominational.

But i dont want to start a religious argument, or get the thread moved to PF-Lounge, just explaining why i used the phrase.