I have a second-order unity feedback control system with forward transfer function $$G(s) = \frac{10}{s(s+2)}$$

Here damping ratio, $$\zeta = \frac{1}{\sqrt{10}}$$ and natural frequency, $$w_n = \sqrt{10}$$

First, I gave a unit step input to the system. Now I can calculate the maximum overshoot of the unit step response from $$\%M_p = e^{\frac{-\zeta\pi}{\sqrt{1-\zeta^2}}}$$ and settling time from $$t_s = \frac{4}{w_n\zeta}$$

Now, If I give a unit ramp input to the system, Can I use the same formulas above to calculate settling time and maximum overshoot?

For reference, this is my unit ramp response in the time domain $$y(t) = -\frac{1}{5}+t+\frac{1}{5}e^{-t}Cos(3t)-\frac{4}{15}e^{-t}Sin(3t)$$

As you can see, this is uniformly increasing. How can I find settling time from this? Can I just equate y(t) with unit ramp input and find the time at which they are equal?

  • 1
    \$\begingroup\$ If I remember correctly, the formula is obtained as the maximum value of the transient response compare to the desired one being constant. Now with a ramp, the desired value change over time. So you can not use it to give accurately the maximum overshoot. If will give you a superior bound which can not be exceeded. \$\endgroup\$ Aug 15, 2020 at 8:25
  • 1
    \$\begingroup\$ Concerning the seetling time, you can not use the formula as well. By the way, in a system specification (in electronic), it is expected to give the maximum error expected associated to the settling time. For instance a settling time to 0.01% of 15ns. \$\endgroup\$ Aug 15, 2020 at 8:28
  • \$\begingroup\$ I have added the ramp response of my system. Can you help me in finding the settling time? \$\endgroup\$ Aug 15, 2020 at 8:37
  • \$\begingroup\$ Why did you ask the same question again? You could have just edited it. \$\endgroup\$ Aug 15, 2020 at 9:40
  • \$\begingroup\$ Sorry, I am new here. I deleted the other question \$\endgroup\$ Aug 15, 2020 at 9:43

1 Answer 1


In a nutshell, the error is the difference between desired output and the one you got: $$e(t) = y^*(t) - y(t)$$

Then you resolve $$e(t) < ErrorMax$$.

To simplify the comparison note that $$sin(a + b) = sin(a)cos(b) + sin(b)cos(a)$$ so $$ a cos(\omega t) + b sin(\omega t) = M sin(\omega t + \phi)$$ where $$ M = \sqrt{a^2 + b^2}$$ and $$\phi = atan(a/b)$$

In consequence, you get something in the form $$M sin(\omega t + \phi) e^{-t} < ErrorMax$$

  • \$\begingroup\$ Consider that the absolute value of the error should be less than ErrorMax \$\endgroup\$ Aug 15, 2020 at 9:39
  • \$\begingroup\$ So the upper bound should be taken as my overshoot right? What about settling time? \$\endgroup\$ Aug 15, 2020 at 9:44
  • \$\begingroup\$ If you expect a settling time for an error less than 0.1, solve $$M|\sin(\omega t + \phi)| e^{-t} < 0.1$$. The value of t is the settling time (in this case close to 0.961). The overshoot is the maximum value of the error where $$y > y^*$$. So the overshoot can exceed the limits you desire \$\endgroup\$ Aug 15, 2020 at 9:57

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.