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

3 vues (au cours des 30 derniers jours)
Mohammad Wasi Ahmadi
Mohammad Wasi Ahmadi le 30 Juil 2017
Commenté : Image Analyst le 30 Juil 2017
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?

Réponses (1)

Image Analyst
Image Analyst le 30 Juil 2017
Modifié(e) : Image Analyst le 30 Juil 2017
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 commentaires
Mohammad Wasi Ahmadi
Mohammad Wasi Ahmadi le 30 Juil 2017
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 le 30 Juil 2017
"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.

Connectez-vous pour commenter.

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by