5.1 Control System Design for Feedback Systems

There are two classical design methods: Transient Response and Frequency Response. Frequency Response will be discussed in detail in Chapter 6.

 

Closed-Loop

 

 

 

 

where e is error, TFc is the transfer function of the controller and TFp is the transfer function of the plant.

 

For a closed-loop:

 

 

 

Closed-Loop with Disturbance

 

Alternate Feedback Systems

 

where TFP is transfer function of the plant and TFC is the transfer function of the controller.

Recall that the characterisic equation is the denominator of the transfer function set equal to zero, which in this case would be 1+TFCTFP=0

 

Matlab Example 5.1: Solving for Possible Poles

1+K*TFOLwoK=0 for a TFOLwoK = 1/(s2+5s+25).
By plugging in TFOLwoK in the initial equation, the resulting equation is s2+5s+25 +K*1 = 0.

for K = 0:.1:1000

p = roots([1 5 (25+K)]);

plot(real(p),imag(p),’.’)

hold on

end

This code results in the following plot:

Next, we will obtain the plot using the rlocus function:

sys = tf(1,[1 5 25])

rlocus(sys)

The rlocus function plots the root locus of the provided system (sys), allowing for us to view the pole trajectories as gain varies.

More information on rlocus can be found on the MATLAB website.

 

5.2 Root Locus Plots

A Root Locus Plot reveals all solutions of the characteristic equation for K > 0. The poles and zeros from an open loop transfer function can be plotted. The line represents the closed loop poles for gains of K=0, which occurs at the poles, to K=+∞.

 

General Rules for Root Locus

Rule #1: The poles of the closed loop system follow a path from the poles of the open loop system (K=0) to the zeros of the open loop system (or an asymptote):

The open loop pole is a closed loop pole if K=0.

The open loop zero is a closed loop pole if K=∞.

Rule #2: Everything is symmetric across the real axis.

Steps to Construct a Root Locus Plot by hand

1. Locate and draw the poles and zeros of the open loop transfer function. Root locus diagrams will start at open-loop poles and end at zeros or infinity.

2. Determine the root loci on the real axis. Root loci exist on parts of the real axis where the total number of real poles and real zeros to the right of that part is odd.

If there are an odd number of poles and zeros on the real axis, the root loci will extend forever to the left after the last pole or zero as an asymptote of 180°.

If there are two poles or zeros at the same location, they should be counted as seperate entities.

3. Determine asymptotes of root loci:

angle of asymptotes equals plus or minus 180 times open parenthesis 2 time k plus 1 closed parenthesis divided by the quantity of n minus m

where n is the number of poles and m is the number of zeros.

 

Asymptotes are drawn as lines from the point int:

Recall that these are always symmetric around the real axis.

If n-m=0, then there are no asymptotes.

For other cases:

 

4. Find breakaway and break-in points:

Generally, on the real axis, if you have two poles or two zeros with a root locus between them, represented by a line connecting them, there is a break-in or breakaway point between them that must occur.

If the characteristic equation is described by B(s)+KA(s)=0 then

Solve to get a number of possible s values that will satisfy the above equation.

Only s values that appear on the root loci are break points. This can be determined by looking at the graph you have so far or by substituting the s back into B(s)+KA(s)=0 and solving for K. This must be positive for it to be a real break point.

 

5. Determine the angle of departure and arrival.

If there is a complex pole, the root locus, represented by a line, will leave that pole in the direction known as the angle of departure.  If there is a complex zero, the root locus will approach that zero at the angle of arrival.  These can be calculated as needed.

Angle of departure from a complex pole = 180 – (sum of the angles of vectors to the pole from other poles) + (sum of the angles of vectors to the pole from all zeros)

Angle of arrival to a complex zero = 180 – (sum of the angles of vectors to the pole from other zeros) + (sum of the angles of vectors to the pole from all poles)

Example: AOD=180-(90+θ+Φ)

6. Find where the root loci cross the imaginary axis.

This can be achieved by substituting jw for s, equating the real and imaginary parts to zero and solving for K and w.

where the poles are -1, -2 and -3.

The closed-loop denominator is 1+KTFOLwoK=0=1+K/(s3+6s2+11s+6).

By substituting in jw for s,

(jw)3+6(jw)2+11jw+6+K=0-j(w)3-6w2+11jw+6+K=0

-6w2+6+K=0 and -j(w)3+11jw=0, so w=0, -3.3, 3.3 and K=-6, 60, 60.

 

Example 5.1:

Step 1 and 2 for Root Locus:

For the given transfer function, plot the Root Locus.

From the numerator, we see that a zero occurs at -2, as indicated by the hollowed circle symbol on the Root Locus plot, and poles occur at -1, -3 and -4, as indicated by the star symbols.

Step 3 for Root Locus:

From our calculations, the asymptote occurs at -5/2 at a ±90° angle.

The same plot resulting from MATLAB is shown below:

Example 5.2:

 

 

 

From the numerator of the transfer function, we can determine that the open loop zero is -10. From the denominator of the transfer function, we can determine that the open loop poles are -0.5 ± 0.866i. The zero and poles have been plotted below.

 

There are two poles and one zero, so n-m=1, resulting in one resulting asymptote at 180°.

There is only a zero on the real axis, so there is an odd number of poles and zeros on the real axis. This means that the root loci will extend forever to the left after the zero as an asymptote of 180°.

 

 

Next, we need to determine if the root locus crosses the imaginary axis. This can be achieved by substituting jw for s, equating the real and imaginary parts to zero and solving for K and w.

After substituting jw for s, this is our resulting transfer function:

(jw)2 + (1+K)jw + (1+10K) = 0

Recall that j2 = -1, so our equation becomes -(w)2 + (1+K)jw + (1+10K) = 0

Next, we can reorder the equation so that the real terms come before the imaginary terms: (1+10K) – (w)2 + (1+K)jw=0

For the imaginary terms in the equation: (1+K)jw=0, so K=-1 or w=0.

For the real terms in the equation: (1+10K) – (w)2 = 0

If K=-1, then (1+10(-1))-(w)2=0, so -9 = (w2), so w is not real.

If w=0, then (1+10K)-0=0, so K=(-1/10) which is not positive.

There are no imaginary crossings.

Lastly, we know that all lines must go from open loop poles to open loop zeros or asymptotes, and that everything is symmetric across the real axis. We know that there will be a break-in point between -10 and -∞.

The plot resulting from MATLAB is shown below:

MATLAB Example 5.2:

From the numerator of the transfer function, we can determine that the open loop zero is -z. From the denominator of the transfer function, we can determine that the open loop poles are -0.5 ± 0.866i.

By entering this code into MATLAB, the poles are plotted on the Imaginary vs. Real plot:

sys = tf([1],[1 1 1]);

sisotool(sys)

By clicking the symbol as shown in the figure below, we can add a zero to the plot.

 

Recall that you can create the open loop system in MATLAB:

num = [1 2 3];

den = [ 1 2 3 4];

sys = tf(num,den);

or

k = 1;

z = [-1 -2 -3];

p = [-4 -5 -6];

sys = zpk(z,p,k);

 

and you can also use:

rlocus(sys)

or sisotool(sys)

SISOTOOL

When you call sisotool(sys) in MATLAB, a Control System Designer window opens and the Root Locus Editor panel can be located.

You can import a system that describes your plant and you can get the root locus plot:

 

You can also use graphical tuning to change the display using “Tuning Methods” on the Toolbar.

 

You can add gridlines and design constraints to assist with selecting the best poles. By dragging the pink square, you can see what effect different gains may have. You can also add controller poles and zeros with the menu buttons.

 

5.3 Reshaping Root Locus

Some General Themes to Root Locus Design

Nearby zeros tend to shift the root locus towards the zero

Nearby poles tend to shift the root locus away from the pole

You can use zeros and poles to reshape your root locus!

Adding Poles and Zeros

1. Generally it is beneficial for settling time and overshoot to put a zero on the left, close to the root locus.

2. A controller that gives you a zero is a Proportional-Derivative Controller.

Controller=Kpr+Kds=K(s+z)

GH=K*TFplant*(s+z)

 

3. Another choice is a lead controller.

Controller=K(s+z)/(s+p)

GH=K*TFplant*(s+z)/(s+p)

5.4 Fixing Steady-State Error with a Controller

5.5 Steady-State Error


Exercises

Exercise 5.1

Given the open-loop transfer function, what is the characteristic equation?

1.

 

2.

 

3.

Exercise 5.2

Write an algorithm to solve for poles at K from 0 to 25.

You might want to rearrange the equation to make it a polynomial.

Assume you have a function roots that can take the root of a polynomial. For example s + 2s2 + 3s = 0 could be solved with the function:  [r] = roots([ 1 2 3])

Exercise 5.3

Construct the root loci by hand.

1.

blank root locus plot

2.

blank root locus plot

Exercise 5.4

Sketch the following root loci.

1.

2.

Exercise 5.5

How might we improve the transient response (settling time) of these root loci (a) with just changing proportional gain? What is the best 2% settling time possible?

1.

2.

 

 

 

 

License

Icon for the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License

Control Systems Copyright © by sewsara and Valerie Jardon is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License, except where otherwise noted.

Share This Book