필터 지우기
필터 지우기

Calculating Settling time in Matlab, different from stepinfo

조회 수: 19 (최근 30일)
Bart Nijman
Bart Nijman 2017년 1월 14일
댓글: Bart Nijman 2017년 1월 16일
I would like to compute the settling time of a signal y in Matlab. It should give the amount of time required before the signal reaches a steady state error y(t)-y_{ss} which is smaller than some absolute value x and stays smaller than x for all future times.
I already tried to use the Matlab function stepinfo, but this defines the value x as "a fraction 2% of their peak value for all future times" and that is not what i want.
Is there any way that i could adjust the Matlab function stepinfo, that i could code this myself or perhaps there is another function available that calculates the settling time in this way?

답변 (1개)

Greg Dionne
Greg Dionne 2017년 1월 16일
Are you analyzing a step or a series of steps? Try settlingtime() if you have the Signal Processing Toolbox. That defines the termination condition as being within a given tolerance of the final state level over a specified minimum duration.
  댓글 수: 2
Bart Nijman
Bart Nijman 2017년 1월 16일
no i'm not analyzing a step change, it is not a SISO system. I have now already written my own code for it, thank you.
Bart Nijman
Bart Nijman 2017년 1월 16일
this is the code for anyone interested:
SettlingTime = tspan(find(y>error,1,'last')).
turned out to be quite simple.

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

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

Start Hunting!

Translated by