Step response settling time

16 次查看(过去 30 天)
Hi,
The settling is the time required for the response curve to reach and stay within a range of 2% of the final value.
So why in Matalb the two following systems have the same stelling time ? >> Tz = 1
>> Tp = 3
>> SO1 = tf([ 1],[Tp 1])
>> SO2 = tf([Tz 1],[Tp 1])
>> InfoSO1 = stepinfo(SO1);
>> InfoSO2 = stepinfo(SO2);
Theorically (for me) these settling times should be :
tr1 = -Tp*log(0.02)
tr2 = -Tp*log(0.02/(1+Tz/Tp))
Thank's for any answer.
V.

采纳的回答

Arkadiy Turevskiy
Arkadiy Turevskiy 2014-12-11
If you look at the doc page for stepinfo , you will see that settling time is defined as:
The response has settled when the error y(t) - yfinal becomes smaller than a fraction ST of its peak value. The default value is ST=0.02 (2%).
Changing the value of zero changes the initial output value for the step response, but does not change the time constant of the first order system. stepinfo computes the settling time as a time when the difference between step response and final value (1) is 2% of the difference between initial value and final value.
So that's why the zero does not change the settling time.
  2 个评论
Vincent
Vincent 2014-12-11
Ok for considering the zero as an inital condition. However, this definition of settling time is for me a little bit strange.
Thank you for your perspicacity
V.
Bart Nijman
Bart Nijman 2017-1-14
Sorry to bump this old question, but i have a similar problem. I would like to calculate settling time where the error bandwidth is specified as some absolute value rather than a percentage of its peak value. Is there any code,function or adjustment that i could make, so that i could calculate the settling time in that manner?

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Control System Toolbox 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by