0
\$\begingroup\$

By closing the loop, I need to design a controller in the feedforward path to minimise the effects of the two pairs of dominant poles of the 5th order transfer function. Use a pole-zero cancellation technique on a root locus diagram and if need be introduce an integrator to eliminate the steady state error. Proceed to determine a suitable gain K that satisfies the following design specifications:

Less than 5% overshoot
Less than 2s settling time
Steady State Error Minimized

From the above performance requirements, I calculated where the closed loop poles should be:

enter image description here

desired_poles = [-2.6 + 1i*2.39, -2.6 - 1i*2.39, -100, -120, -110]; 

My 5th order system is defined as follows:

num = [0.0001 10];
den = [0.005 5 0.66 61 2.1 10];
tf = tf(num, den)
[A, B, C, D] = tf2ss(num, den);
e = eig(A)
sisotool(tf);
step(tf);

where:

e =

   1.0e+02 *

  -9.9990 + 0.0000i
  -0.0004 + 0.0347i
  -0.0004 - 0.0347i
  -0.0002 + 0.0041i
  -0.0002 - 0.0041i

and the step response is :

enter image description here

and using sisotool() I get a different step response:

enter image description here

and zoomed in with design requirements inputted/ I am unable to come up with any form of compensator which does not result in the two rightmost poels going unstable:

enter image description here

For example, if I add a lead compensator with a real zero at -2 and a real pole at -5 I get a reshaped root locus which passes through the desired area. However, the two furthest right poles will immediately go unstable as soon as I start moving the other poles around.

enter image description here


I am now trying to determine which compensator is needed to achieve the desired results.

  • Going through MATLAB official docs, the process seems to involve trial and error inside the sisotool() app.

How can I design a compensator to give me the above poles which yield desired results?

Any help is appreciated.

\$\endgroup\$
  • 1
    \$\begingroup\$ They are using a different step value as stimulus. \$\endgroup\$ – Andy aka Dec 27 '18 at 16:11
  • 1
    \$\begingroup\$ So were the TF parameters given to 10 sig figs in the original question? \$\endgroup\$ – Chu Dec 27 '18 at 17:18
  • 1
    \$\begingroup\$ I leave 10 significant figures for accuracy purposes, but yes that is the correct transfer function which I need to work with. I will edit since I agree that this is not well presented. \$\endgroup\$ – Rrz0 Dec 27 '18 at 17:23
  • 1
    \$\begingroup\$ 10 sig figs is NOT accuracy, it's obscuring the picture. Give the original 5th order TF as posed in the question. \$\endgroup\$ – Chu Dec 27 '18 at 17:28
  • 1
    \$\begingroup\$ As I understand, root loci can be reshaped using a compensator so that a pair of dominant CL poles can be placed in the desired location. This is done by adding poles and zeros to the OL transfer function and forcing the root loci to pass through the desired CL poles. So technically we are reshaping/cancelling the closed loop poles by altering the open loop transfer function. \$\endgroup\$ – Rrz0 Dec 27 '18 at 20:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.