how to hold max amplitude of a signal until next amplitude value is bigger?

조회 수: 15 (최근 30일)
for a signal with varying amplitude, I need to find max amplitudes and hold that max value untill another max value is detected. the hold can be i.e for 1000 samples, if not max value is detected after 1000 samples it should slowly go back to its original position as shown in figure. can anybody help how to do that in simulink?

답변 (1개)

Image Analyst
Image Analyst 2017년 7월 30일
편집: Image Analyst 2017년 7월 30일
Take a look at the boundary() and envelope() functions. Try them and write back, attaching your data and code, if you can't figure out the parameters to use with them. Anyway, that's what I'd do in MATLAB. I don't have Simulink so I don't know if you can do that in Simulink, or if Simulink has better approaches.
  댓글 수: 2
Mohammad Wasi Ahmadi
Mohammad Wasi Ahmadi 2017년 7월 30일
if you have Matlab, you must have simulink also.
envelope() and boundary() cannot be done in simulink because the whole length of the signal is not known. however, envelope() does not return what I am asking for, which is holding the peak value for some time.
Image Analyst
Image Analyst 2017년 7월 30일
"if you have Matlab, you must have simulink also." Absolutely not true. If you have a student suite, you get both, but I have a professional license for MATLAB only.
Try movmax() instead.

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

카테고리

Help CenterFile Exchange에서 Signal Generation에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by