discrete low pass in an array

8 visualizaciones (últimos 30 días)
Neko Benítez
Neko Benítez el 8 de Oct. de 2019
Comentada: Star Strider el 21 de Oct. de 2019
I have an array that is the power measurement. It is recorded each second, but sometimes the sample rate is higher. I want to apply a low-pass filter to that array, to eliminate noise. The signal is an already "discretized" array, and the sample time is a value per second, but it is not always constant. I want to be able to modify some parameters to check the denoise level applied. Is there some code, function or algorithm available to apply this low-pass filter?
P.S. I attached a file 'data.mat' with data.

Respuesta aceptada

Star Strider
Star Strider el 8 de Oct. de 2019
You willl first need to use the resample function to create uniform sampling intervals for your data. Then there are any number of ways you can design a filter for it.
Your ‘test_data.mat’ file contains a (1000x1) double array that I assume is your signal (I have not examined it). If you want help with it, you need to provide a matching array of sampling times.
  8 comentarios
Neko Benítez
Neko Benítez el 21 de Oct. de 2019
I don't know how to use that link to design the FIR filter. Do I also need the Signal Processing Toolbox to implement the FIR filter? The link you sent me does not clarify how to do it.
Star Strider
Star Strider el 21 de Oct. de 2019
There are several websites that can likely design the FIR filter for you (I linked to one of them), or you can design it yourself.
If you are going to do any significant amount of signal processing, I definitely recommend that you get the Signal Processing Toolbox.
If you design a linear-phase FIR filter, the MATLAB filter function is all you need.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Digital and Analog Filters en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by