LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Continuous filtering

Hello,

 

I need to filter analog data. My goal is that this filter causes a delay on my channels.

I will set a number of samples as data input for each channels in order to set the delay as i expect it to do.

I am not good in signal processing, anyone does know what kind of filter do i need to use ?

 

Thank you.

0 Kudos
Message 1 of 21
(2,994 Views)

Hi,

 

I didn't realy understand your question. You want to add a filter to analog data, OK. Do you want to have a delay or not?

Of course it will affect the signal propagation delay.

To choose the correct filter, some more informations about the signal and the expected noise is required. And what is your intention to use it?

 

Regards

Kay

0 Kudos
Message 2 of 21
(2,987 Views)

I want to have a delay which will be set by a number of sample.

For instance, if i am looking at a digital signal changing its state, i want to see the state change has changed on my digital filtered channel X samples later.

0 Kudos
Message 3 of 21
(2,981 Views)

Signals are noisy +/-1.5V.

Pupose is to adjust delay which might come from an HW card between UUT and software.

 

0 Kudos
Message 4 of 21
(2,977 Views)

 

I'm confused what you mean by "delay".  Any "real" filter involves a Delay, since we cannot "predict the future" and so must "filter" on data that has already been collected, say over a time interval of T (going back in time from the present, which we call Time Zero, or t0).  Is this the Delay you mean, or are you worrying about additional Delays that your measuring instruments might introduce?

 

Here's a simple example -- perform a low-pass filter by using averaging of N points.  If you are dealing with "real" data, the N points need to be already collected, so they exist "in the past".  If you bin your data in N-point bins and replace each bin with the average of the points inside the bin, then you could say that the average represents an estimate of the signal at the midpoint of the bin, occurring with a delay of N/2.

 

Bob Schor

0 Kudos
Message 5 of 21
(2,948 Views)

Thank you guys for your answers.

Indeed my need was not explained well enough. See attached document in order to understand better my need.

 

I acquire data as array of waweforms so i'd like to filter as an array of waweforms if the function exists, i didn't find it.

 

Best Regards

0 Kudos
Message 6 of 21
(2,932 Views)

Hello Gigi_31,

 

I think what you should use is the Feedback Node, and configure a delay depending by how many samples you want delay your output signal.

Here is the help about the Feedback Node : http://zone.ni.com/reference/en-XX/help/371361P-01/lvconcepts/block_diagram_feedback/

 

You'll find a pictured example of delay N>1 at the section "Samples of Data"

In this example, the delay introduced is 3.

 

You will find attached a VI snippet, and a graph showing the results for 10 iterations.

 

Is this what you are looking for ?

 

Best regards,

Download All
0 Kudos
Message 7 of 21
(2,921 Views)

Hi,

 

Thank you for your answer.

Can you share your spinnet into LabVIEW 2016 version please ?

I am not sure what's your idea using feedback nodes.

 

Thank you

0 Kudos
Message 8 of 21
(2,917 Views)

Hey,

 

I'm not able to create a 2016 snippet, so here is the VI for LV2016.

 

Best regards,

0 Kudos
Message 9 of 21
(2,914 Views)

Hi Salah,

 

I have to admit i didn't thought about it. That is doing the job even if i was thinking more about a filter (as i have so far a median filter) which can do this delay automatically. This solution worry me about CPU ressouces usage because a lot of data are going to be in memory. I'll try this out.

 

Attached my need i rewrote.

Thank you 🙂

0 Kudos
Message 10 of 21
(2,909 Views)