# designing compensator with certain specification

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

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

s=tf('s')
g=4*10^(-7)/((s^2)*(s+0.5));
gc=122874*(s+0.0345)/(s+1.850);
step(feedback(g*gc,1))


what is the reason?

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.

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

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

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);
stepinfo(feedback(C*G,1))


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

• 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). – erfan Jun 16 '20 at 11:26
• youtube.com/watch?v=NMpmb0ihoFo how to define the pole and zero of compensator using this method? – erfan Jun 16 '20 at 11:28
• 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. – useless-machine Jun 18 '20 at 6:21