Can I calculate the settling time in MATLAB?
57 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have many closed loop transfer functions that are in similar form to this one:

I want to calculate the settling time up until 2% of the final value. I have many of those transfer functions so hopefully whatever method you guys suggest I can use it to automate this process for all.
0 Kommentare
Antworten (1)
Star Strider
am 16 Okt. 2023
Perhaps this —
s = tf('s');
G = (7507.852*s^3 - 37030.228*s^2 - 70479.368*s + 100001.744) / (s^5 + 50*s^4 + 1000*s^3 + 10000.585*s^2 + 9997.664*s + 10001.744);
figure
stepplot(G)
grid
s = stepinfo(G)
Settling_Time = s.SettlingTime
From the documentation:
By default, SettlingTime measures the time it takes for the error to stay below 2% of |yfinal – yinit|.
That would appear to meet your requirement for it.
.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Numerical Integration and Differentiation finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
