What are the Closed Loop Transfer Function Parameters for a PI Controller?

In summary, the conversation is discussing the transfer function of a PI controller and the closed-loop transfer function. There is some confusion about the correct form of the PI controller, but it is eventually determined that the given expression is valid. The conversation also touches on using the Routh–Hurwitz stability criterion to find suitable values for the controller parameters.
  • #1
gfd43tg
Gold Member
950
50

Homework Statement


upload_2015-10-20_18-1-44.png


Homework Equations

The Attempt at a Solution


I don't think you need to see the problem to figure this one out, if needed I will post it (takes up a lot of space in the thread).

I know for a PI controller, the controller transfer function is given

$$ g_{c} = k_{c} \frac {\tau_{I}s+1}{\tau_{I}s} $$

and the closed loop transfer function is given

$$ g_{CL} = \frac {g_{p} {g_{c}}}{1+g_{p}g_{c}} $$

So I multiply,

$$ g_{CL} = \frac { (\frac {-0.2735}{s^{2}+6.035s+4.146}) (k_{c} \frac {\tau_{I}s+1}{\tau_{I}s}) }{1 + (\frac {-0.2735}{s^{2}+6.035s+4.146}) (k_{c} \frac {\tau_{I}s+1}{\tau_{I}s})} $$

However, I don't know what ##k_{c}## or ##\tau_{I}## are, so I am wondering if there is some what I should know these? Then I can have a numerical answer for part (a).
 
Physics news on Phys.org
  • #2
Your expression as for gc is not a PI-controller but an ID-controller.

Generally you could write the transfer function for a PID-controller:

H(s) = k * ( s + a ) / ( s + b ) , where

k*a/b = the proportional amplification.
a = 1 / τd.
b = 1 / τi.

So if b=0 you cannot speak of a "proportional amplification".

But the rewriting of H(s) doesn't solve the problem, because: What are k, a, b ?

Well, you are the one to choose the values, so that the closed loop will become stable: Calculate the characteristic equation with k, a, b algebraically included, plot a root locus varying k, a, b and determine the ranges wherein the system will be stable.

Remember that if no steady state error is accepted, b must be zero. ( "Clean" integration of an error ).
 
  • #3
Maylis said:
I don't think you need to see the problem to figure this one out, if needed I will post it (takes up a lot of space in the thread).
Please post the full problem so we know the feedback configuration.

Maylis said:
However, I don't know what ##k_{c}## or ##\tau_{I}## are, so I am wondering if there is some what I should know these? Then I can have a numerical answer for part (a).
The task in (b) is to find suitable values for those controller parameters using the Routh–Hurwitz stability criterion.

Just leave them as variables for now and reduce the closed-loop transfer function down to a form where the numerator and denominator polynomials have simple coefficients.
 
  • #4
upload_2015-10-21_8-56-27.png
 
  • #5
Hesch said:
Your expression as for gc is not a PI-controller but an ID-controller.

Generally you could write the transfer function for a PID-controller:

H(s) = k * ( s + a ) / ( s + b ) , where

k*a/b = the proportional amplification.
a = 1 / τd.
b = 1 / τi.

So if b=0 you cannot speak of a "proportional amplification".

But the rewriting of H(s) doesn't solve the problem, because: What are k, a, b ?

Well, you are the one to choose the values, so that the closed loop will become stable: Calculate the characteristic equation with k, a, b algebraically included, plot a root locus varying k, a, b and determine the ranges wherein the system will be stable.

Remember that if no steady state error is accepted, b must be zero. ( "Clean" integration of an error ).
That is the expression for a PI controller as given in the textbook.
 
  • #6
Hesch said:
Your expression as for gc is not a PI-controller but an ID-controller.
It's a common form of a PI, i.e:
$$
k_c\frac{\tau_I s + 1}{\tau_I s} = k_c + \frac{k_c}{\tau_I s}
$$
 
  • #7
Maylis said:
That is the expression for a PI controller as given in the textbook.
I'm not the one, that has written your textbook. :smile:

Divide numerator a denominator by τI, then at least the zero of the numerator will become: s = -1 / τd

P = k*a / b = k*a / 0 doesn't make sense ( when b= 0 ).
 
  • #8
milesyoung said:
It's a common form of a PI, i.e:
I really don't know how to comment that form ( a sum of elements ).

I don't "feel" that it is "fit" for calculations.

Writing a PID-controller in the form: H(s) = k * ( s + a ) / ( s + b ), I can immediate plot a zero and a pole in my root locus. How will I plot kc + . . . ?
 
  • #9
Hesch said:
P = k*a / b = k*a / 0 doesn't make sense ( when b= 0 ).
I don't know what you're on about. This transfer function:
$$
g_{c} = k_{c} \frac {\tau_{I}s+1}{\tau_{I}s}
$$
represents the transfer function of a PI and it's perfectly fine.

And this:
Hesch said:
Well, you are the one to choose the values, so that the closed loop will become stable: Calculate the characteristic equation with k, a, b algebraically included, plot a root locus varying k, a, b and determine the ranges wherein the system will be stable.
doesn't make any sense. You can plot the root locus for a single parameter, and the set of root loci produced by varying one parameter and holding the others constant have no meaningful relationship to the necessary and sufficient condition for the stability of the OP's system.

Also, the problem statement specifically asks to apply the Routh–Hurwitz stability criterion, and not root-locus analysis.
 
  • #10
Hesch said:
I really don't know how to comment that form ( a sum of elements ).

I don't "feel" that it is "fit" for calculations.
I wrote it in that form to make it easy for you to recognize the proportional and integral terms, i.e, if you have:
$$
C(s) = H(s)E(s) = \left(k_c + \frac{k_c}{\tau_I s}\right) E(s) = k_c E(s) + \frac{k_c}{\tau_I s} E(s)
$$
where ##C(s)## and ##E(s)## is the controller output and system error, respectively.

So you have a term which is proportional to the error ##k_c E(s)##, and you have a term which is proportional to the integral of the error ##\frac{k_c}{\tau_I s} E(s)##. That's a PI controller.

It is, however, also a valid transfer function.
 
  • #11
milesyoung said:
I don't know what you're on about.
Can't help you.

The expression: H(s) = ( k * ( s + 1/τd ) / s ) suggests a zero at ( -1/τd ; 0 ) and a pole at ( 0 ; 0 ).
That's what I'm "on about".

milesyoung said:
You can plot the root locus for a single parameter, and the set of root loci produced by varying one parameter and holding the others constant have no meaningful relationship to the necessary and sufficient condition for the stability of the OP's system.
I can plot a lot of root loci, varying k and τd, not simultanious but in steps as for the latter ( maybe changing plot-color as for the latter).
I can do it in 5 minutes ( I have a computer ), and that's how I do it.

It's absolutely meaningful.
 
  • #12
Hesch said:
The expression: H(s) = k * ( s + 1/τd / s ) ...
Is this:
$$
H(s) = k\left(s + \frac{1}{\tau_d s}\right)
$$
is what you mean, then this:
Hesch said:
suggests a zero at ( -1/τd ; 0 ) and a pole at ( 0 ; 0 ).
isn't right.

Hesch said:
I can plot a lot of root loci, varying k and τd, not simultanious but in steps as for the latter ( maybe changing plot-color as for the latter).
I can do it in 5 minutes ( I have a computer ), and that's how I do it.
Maybe you'll show me what you have in mind when the OP has solved the assignment using the Routh–Hurwitz stability criterion.
 
  • #13
milesyoung said:
Maybe you'll show me what you have in mind when the OP has solved the assignment using the Routh–Hurwitz stability criterion.
I learned about Routh-Hurwitz many years ago (1976?), but when a PC became available, I forgot everything about it. So now I use root-locus.

It seems to me, that Routh-Hurwitz is a stable/not stable test, but when using root locus you can see how stable it is, what is the minimum damping ratio at which frequency, and so on, you can add a zero-pole pair near some location, preventing a local problem. That's why I suggest root locus to be used.
 
  • #14
Hesch said:
I learned about Routh-Hurwitz many years ago (1976?), but when a PC became available, I forgot everything about it. So now I use root-locus.
I still find a lot of uses for the Routh-Hurwitz stability criterion for high-order systems. A modern computer algebra system is a great help in producing Routh arrays.

Hesch said:
It seems to me, that Routh-Hurwitz is a stable/not stable test, but when using root locus you can see how stable it is
I agree, for one parameter.

If you have some transfer function with parameters A and B, then you can iterate over values of A, and for each value:
1. Plot the root locus.
2. From the root locus, record the set of values of B for which the system is stable.

From that table, you might be able to guess a necessary and sufficient condition for the stability of the system. I'd wager, though, that it's more complicated than you make it out to be.

Then you can try it with three parameters and feel the swift hand of dimensionality!
 
  • #15
I'm glad everyone is learning from my homework problem. So I simplified my expression in my OP to

$$ g_{CL} = \frac {-0.2735k_{c}(\tau_{I}s+1)}{\tau_{I}s^{3}+6.035 \tau_{I}s^{2} + (4.146 \tau_{I} - 0.2735k_{c} \tau_{I})s - 0.2735 k_{c}} $$

So my characteristic equation is

$$ \tau_{I}s^{3}+6.035 \tau_{I}s^{2} + (4.146 \tau_{I} - 0.2735k_{c} \tau_{I})s - 0.2735 k_{c} $$
The first necessary criteria is that all coefficients are positive, therefore ##\tau_{I} > 0##, and ##4.146 \tau_{I} - 0.2735k_{c}\tau_{I} > 0##, and ##-0.2735k_{c} > 0##.

This is weird, so it means ##k_{c} < 0##, and from the second coefficient, ##k_{c} > 15.159##, so it doesn't give a proper range of values for ##k_{c}##, I was expecting something like ## a < k_{c} < b##
 
Last edited:
  • #16
Maylis said:
The first necessary criteria is that all coefficients are positive ...
The first rule of the test is that all coefficients must be non-zero. The second rule is that they must all be positive or they must all be negative.

Maylis said:
... and from the second coefficient, ##k_{c} > 15.159##, ...
I think you forgot to flip the inequality sign (divide by a negative number).
 
  • #17
Yes, I see, so ##k_{c} < 15.159##. Well I just thought of something weird.

##-0.2735k_{c} > 0 ## and divide through, ## k_{c} < 0 ##

However, I start with the same and add to the other side, ##0 > 0.2735k_{c}##, then divide through, ##0 > k_{c}##. This is strange
 
  • #18
Maylis said:
This is strange
Why? In both cases you have ##k_c < 0##.
 
  • #19
Woops, my mind is in other places right now :rolleyes:

So ##k_{c} < 0##, and ##k_{c} < 15.159##, so once again I don't have a range like ##a < k_{c} < b##
 
  • #20
You have:
$$
a - b k_c > 0 \Leftrightarrow -b k_c > -a \Leftrightarrow k_c < \frac{a}{b},\quad a >0, b > 0
$$
Maylis said:
So ##k_{c} < 0##, and ##k_{c} < 15.159##, so once again I don't have a range like ##a < k_{c} < b##
If ##k_c < 0## then ##k_{c} < 15.159## is also satisfied.
 
  • #21
I get that, but I don't have a range for ##k_{c}##, so some regime where it is stable
 
  • #22
Maylis said:
I get that, but I don't have a range for ##k_{c}##, so some regime where it is stable
You're not done yet. You still need to compute the Routh array and apply the third rule of the test.

Edit:
To clarify:
Rule 1 and 2 are necessary conditions that you can check first before you go to the trouble of calculating the Routh array.

If you're, for instance, calculating the coefficients of the characteristic polynomial by hand, and find one that's zero, then you can stop there - the system is unstable.

When you have all the coefficients, then you can apply Rule 2 to see if you're able to stop there.

If not, then procede to Rule 3 of the test. The rules are ordered according to the effort it takes to apply them.
 
Last edited:
  • #23
Okay, here is my routh array

$$ \begin{bmatrix} \tau_{I} & 4.146\tau_{I}-0.2735k_{c} \tau_{I} & 0 \\ 6.035 \tau_{I} & -0.2735 k_{c} & 0 \\ 4.146 \tau_{I} + (0.045 - 0.274 \tau_{I})k_{c} & 0 \\ -0.2735k_{c} \end{bmatrix} $$

since I know ##k_{c}## is negative, then ##0.274\tau_{I}-0.045 < 0##, therefore ##\tau_{I} < 0.164##

So I know the range for the time constant is ##0 < \tau_{I} < 0.164##

I suppose ##0.274 \tau_{I} - 0.045## is negative, so I divide and get

##k_{c} > \frac {4.146 \tau_{I}}{0.274 \tau_{I} - 0.045} ##
so my gain range is ##\frac {4.146 \tau_{I}}{0.274 \tau_{I} - 0.045} < k_{c} < 0##
 
Last edited:
  • #24
milesyoung said:
I agree, for one parameter.

If you have some transfer function with parameters A and B, then you can iterate over values of A, and for each value:
1. Plot the root locus.
2. From the root locus, record the set of values of B for which the system is stable.From that table, you might be able to guess a necessary and sufficient condition for the stability of the system. I'd wager, though, that it's more complicated than you make it out to be.

Then you can try it with three parameters and feel the swift hand of dimensionality!
That's not how you do it, using root locus:

1. Plot the root locus.
Now, look at the curve. If there are problems problems, you can move/add poles and zeroes that twist the path of the curve. A pole will repel the path, a zero will attrack the path. It's like planning a slalom track by placing red and blue marks:
upload_2015-10-22_12-45-18.jpeg

Having moved/added poles/zeroes, just redraw the plot: Is it satisfactory? Maybe this zero should be moved a little more to the left ( e.g. dragging it graphically with your mouse )?
With a little training, you can systematically drag 8 poles and 8 zeroes in turns and redraw/inspect the result.
As I said: You can do it in 5 minutes ( well, maybe in 10 minutes as for 8 poles/zeroes ).

2. I don't have to record tables. It's more convenient just to look at the root locus plot.
The stable area is to the left of the imaginary axis as for the s-plane.
 

Attachments

  • upload_2015-10-22_13-5-22.jpeg
    upload_2015-10-22_13-5-22.jpeg
    10 KB · Views: 495
Last edited:
  • #25
Maylis said:
since I know ##k_{c}## is negative, then ##0.274\tau_{I}-0.045 < 0##, therefore ##\tau_{I} < 0.164##
That's not necessarily true for ##\tau_I##.

You have the condition for stability (there's another for ##k_c > 0, \tau_I < 0##):
$$
k_c < 0, \tau_I > 0, 4.15\tau_I + (0.0453 - 0.274 \tau_I) k_c > 0
$$
You could pick a very large value for ##\tau_I## that makes ##0.0453 - 0.274 \tau_I## negative, so ##k_c## must be less than some positive number, but you already know that ##k_c < 0##.

So for a value of ##\tau_I## that makes ##0.0453 - 0.274 \tau_I## negative, the requirement for stability is just that ##k_c < 0##.

Your result looks good for the case when ##0.0453 - 0.274 \tau_I## is positive.
 
  • #26
Hesch said:
That's not how you do it ...
I'm aware if how to do root-locus analysis and design.

Maybe this will make it easier to show you my point:
Try, from your root-locus analysis, to arrive at the same result as the OP.
 
  • #27
It's interesting to look at root locus plots for the cases where τ < .164 and τ > .164, varying kc from -100 to +100:
RL1.png


RL2.png
 

What is a closed loop transfer function?

A closed loop transfer function is a mathematical representation of the relationship between the output and input signals in a feedback control system. It describes the response of a system to a given input signal, taking into account the feedback loop that is used to control the system.

How is a closed loop transfer function different from an open loop transfer function?

The main difference between a closed loop transfer function and an open loop transfer function is that the closed loop transfer function takes into account the feedback loop, while the open loop transfer function does not. The closed loop transfer function is a more accurate representation of a system's response, as it considers the effect of the feedback loop on the system's output.

What are the advantages of using a closed loop transfer function in a control system?

The use of a closed loop transfer function in a control system allows for better control of the system's output. It can help to reduce errors and disturbances in the system, improve stability, and increase the system's response time. Additionally, the closed loop transfer function can be used to design and tune the parameters of the feedback control system to achieve desired performance.

What are the key components of a closed loop transfer function?

The key components of a closed loop transfer function include the forward path transfer function, the feedback path transfer function, and the summing junction. The forward path transfer function represents the relationship between the input and output signals, while the feedback path transfer function represents the effect of the feedback loop. The summing junction combines the two signals and sends the resulting signal back to the input of the system.

How is a closed loop transfer function used in real-world applications?

Closed loop transfer functions are commonly used in a variety of real-world applications, such as in control systems for airplanes, robots, and industrial machinery. They are also used in electronics, telecommunications, and other fields that require precise control and regulation of signals. In these applications, closed loop transfer functions can help to improve the performance and reliability of systems.

Similar threads

  • Engineering and Comp Sci Homework Help
Replies
4
Views
3K
  • Engineering and Comp Sci Homework Help
Replies
2
Views
1K
  • Engineering and Comp Sci Homework Help
Replies
8
Views
2K
  • Engineering and Comp Sci Homework Help
Replies
1
Views
3K
  • Engineering and Comp Sci Homework Help
Replies
2
Views
1K
  • Engineering and Comp Sci Homework Help
Replies
1
Views
341
  • Engineering and Comp Sci Homework Help
Replies
5
Views
1K
  • Engineering and Comp Sci Homework Help
Replies
2
Views
1K
  • Engineering and Comp Sci Homework Help
Replies
24
Views
2K
  • Engineering and Comp Sci Homework Help
Replies
16
Views
962
Back
Top