Compute cumulative sum of a singal for a certain period of time (moving sum)

Hello,
I am trying to determine the cumulative sum of signal values over a period of time 't seconds' in a simulink model. After simulation start, for t seconds, the sum has to be cumulative and after t seconds, with each timestep, the oldest value has to be subtracted from the cumulative sum and the latest value has to be added.
Does anyone have a clever idea of implementing it? I have considered using delay blocks, but I have to use numerous blocks. Also considered Integrator and Cumulative sum blocks, but their reset the values set everything to zero and hence, don't fit the above requirement.
Thanks and Regards
Karthik

 Réponse acceptée

You can use a Discrete FIR Filter with coefficients of ones(1,N) where N = Fs*t.

Plus de réponses (0)

Catégories

En savoir plus sur Simulink dans Centre d'aide et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by