Ηere is an open-loop transfer function and specifications for compensator design.

enter image description here

I defined the required poles and defined the angles according to the normal procedure of the root locus method and determined the zero and pole of the lead compensator. It led to

$$ G_c(s) = \frac{s+0.0345}{s+1.923} \cdot \frac{4 \cdot 10^{-7}}{s^2(s+0.5)} $$

and $K = 122874$ but as the question says settling time and percent overshoot cannot be satisfied as the same time with the compensator I just mentioned. Here is the code in MatLab


what is the reason?


1 Answer 1


If you do not meet both requirements, you designed the wrong compensator. If we take a look to the root locus figure of the compensator you designed we see that the poles (pink dots) are not in the white area, but there is still one in the yellow area. Root locus of the system with compensator

I came up with a different compensator, which clearly has all its poles in the white region. Root locus of my compensator

We can verify the system by checking the step response and see that it meats all your design requirements. Step response of my compensator

Another way to verify this is using the following MATLAB commands:

s = tf('s');
G = 4e-7/s^2/(s+0.5);
C = 1.357e06*(s+0.07513)*(s+0.3614);

Note that your system $G_p$ already has an integrator thus the zero steady-state error to step and ramp commands is already met. However, this integrator causes some additional overshoot (besides the pole placements), therefore it is important to check the system response.

I would also like to refer to my other answer where I cover the design steps in more detail.: PI controller for second order system

  • $\begingroup$ it seems like you used kind of trial-error and Matlab to meet the required poles of closed-loop and it works as it is obvious, but how can we obtain the required open-loop pole and zero (lead compensator) using root locus method? i mean using the given zeta and wn we determine the required poles of closed-loop and then designing the compensator (defining the angles from poles and zeros of open-loop transfer function to defined closed-loop pole and then choose the zero and pole of the compensator). $\endgroup$
    – erfan
    Commented Jun 16, 2020 at 11:26
  • $\begingroup$ youtube.com/watch?v=NMpmb0ihoFo how to define the pole and zero of compensator using this method? $\endgroup$
    – erfan
    Commented Jun 16, 2020 at 11:28
  • $\begingroup$ I used the root-locus method as described above. However, you did not specify a pole location but you had criteria. Therefore, I drew the white area and as long as all your poles are in the white area they will satisfy your requirements. Hence, I can find infinite many compensators which satisfy the requirements. $\endgroup$ Commented Jun 18, 2020 at 6:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.