How to create a buffer FIFO, filter and then save in an array values that are between an specific range of values?

10 vues (au cours des 30 derniers jours)
I have a sine wave as input signal at a sampling rate of 0.02. I want to process the first 1000 sampling points = 20 sec in a FIFO buffer
Signal ---> buffer size (1000) ---> full --> save in an array only values that are negative. --> next 20 seconds.
This is the simulink implementation that I have so far. My idea is to have two signals the real one an the delayed one. Save in a buffer the data from the delayed signal. Lets say that the delayed signal has a delay of 20 seconds, from this one I buffer the first 20 seconds and apply my filter of negative values and save them in an array. That means that when I buffer the next 20 are ready to be buffered, processed and filter.
Hope we can discuss some good ideas!
  5 commentaires
Mariana
Mariana le 16 Fév 2020
Thanks! I also started to use the buffer box. Why the unbuffered box is also added?
stozaki
stozaki le 18 Fév 2020
unbuffered box :
It is simply to facilitate understanding.

Connectez-vous pour commenter.

Réponse acceptée

stozaki
stozaki le 16 Fév 2020
I attached modified model you made.
unbuffer is just for the description of the block. It is arranged to explain the difference from Buffer. There is no more meaning.
  7 commentaires
Mariana
Mariana le 17 Fév 2020
How can I delete the data from previous steps. I dont want accumulate all values in the matrix. I just want to have a fixed number of 1000 values inside this matrix.

Connectez-vous pour commenter.

Plus de réponses (0)

Produits


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by