# Designing a lead compensation for a third-order system

Consider the control system shown in Fig. 1. Design a compensator such that the unit-step response curve will exhibit a maximum overshoot of 25% or less and a settling time of 5 sec or less.

What I tried:
I'm not sure how to approach the solution but what I did was indicate the $$\\zeta\$$ & $$\\omega_n\$$ from the equations of Mp & ts as in here & then approache the typical solution which yielded the following results:

Results I could get: $$\\zeta = 0.4\$$

$$\\omega_n = 2\$$

$$\G_c =\frac{60.944(s+0.438)}{(s+8.041)}\$$

$$\G_cGH =\frac{60.944(s+0.438)}{s^2(s+4)(s+8.041)}\$$

The question doesn't state any further information; it's a mid-term exam.

• What is the resulting closed-loop transfer function? Nov 8, 2019 at 21:02
• @TimWescott i'm not sure, that'd be tedious to calculate, i used matlab to do the job; Nov 8, 2019 at 21:12
• The two ways I know how to verify your results are to get the closed-loop transfer function and look at the dominant pole locations, or to simulate the results. You can do both of these in Matlab fairly easily, at least if you have the appropriate toolboxes. Even without it's only a bit harder. Do you have a toolbox that'll let you get the closed-loop transfer function? Can you extract the characteristic polynomial and factor it? Nov 8, 2019 at 21:18
• Thanks for the hint, I think through matlab I verified the equation I formed was correct! the maximum overshoot was tuned to approx. 1 and settling time to approx. 5. Nov 8, 2019 at 22:10

To verify the solution, you should obtain the closed-loop transfer function using a feedback of $$\H(s) = 1\$$, then check if the new system matches a maximum overshoot of 25% of less and that the settling time was reduced to at least 5 seconds.

Here is the code used in verification (works for both Matlab & octave):

num1 = [1]
den1 = [1 4 0 0]
num2 = [60.944 24.3776];
den2 = [1 12.041 32.164 0 0]

g1 = tf(num1, den1)
g2 = tf(num2, den2)
sys1 = 1 / (1 + g1)
sys2 = 1 / (1 + g2)

t = 0:0.05:20
c1 = step(sys2, t)
c2 = step(sys1, t)

plot(t,c1,'-',t,c2)
title('Exam 3. Question 1.')
xlabel('t Sec')
ylabel('Outputs c1, c2')
text(10, -0.25,'Compensated System')
text(6,1.2,'Uncompensated System')