0
$\begingroup$

I have to design a compensator using root locus for the system $G(s) = \frac{1}{s\cdot(s-4)}$ that follow the following criteria:

$op\% \le 5\%$

$t_{2\%} \le 4s$

So I started computing $\zeta$ and $\omega_n$ this way:

$$\zeta = \sqrt{\frac{ln(op\%)^2}{\pi^2 + ln(op\%)^2}} = \sqrt{\frac{ln(0.05)^2}{\pi^2 + ln(0.05)^2}} = 0.6901$$

$$t_{2\%} = \frac{4}{\zeta \omega_n}\Rightarrow \omega_n = \frac{4}{4\cdot0.6901} = 1.4491$$

I've added a compensator $C(s) = (s+1)$ and plotted the root-locus, a horizontal line at $-\omega_n\zeta$ and a line with angle $\theta = \cos^{-1}(\zeta)$ which looks like this:

enter image description here

Now, from my understanding of the root-locus method picking a point in the same region this point on the next picture was chosen should fulfill my design criteria:

enter image description here

But if I use 9.35 as my gain on the feedback loop this is the step response I get:

enter image description here

The timing is alright but the overshoot is gigantic and I can't figure out why. What am I doing wrong here and why is my system not following the system criteria?

I define the system as such:

Kp = 9.35;
s = tf('s');
G = 1/(s*(s-4));
C = (s+1);

The root-locus is drawn like that:

rlocus(C*G)
line([0 -30], [0 30*tan(theta)])
line([0 -30], [0 -30*tan(theta)])

and the system is defined as such:

sys = feedback(Kp*C*G, 1);
$\endgroup$
  • $\begingroup$ I think this is due to your zero at -1. Perhaps you could try placing your zero further left. $\endgroup$ – Ben May 23 at 23:58

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.