Azzera filtri
Azzera filtri

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

16 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

Rick Rosson
Rick Rosson il 2 Mar 2016
You can use a Discrete FIR Filter with coefficients of ones(1,N) where N = Fs*t.

Più risposte (0)


Community Treasure Hunt

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

Start Hunting!

Translated by