LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

taps in digital FIR filter.vi

I'm trying to use the digital fir filter.vi and while most things seem to behave in a reasonable fashion, the number of taps does not. Using the FIR filter help  I implemented the vis shown in the help section  with the digital FIR filter.vi and the results (magntidue) agree very well with what is asked for in terms of cut-offs and drop off rate. However, given that I'm using a unit impulse function as the input waveform, the output of the filter vi should be the coefficients of the filter. When I graph those, it is immediately apparent that it is using way more coefficients than I asked for. It quickly became apparent that it is completely ignnoring whatever number you put in for # of taps. Now to a certain extent I understand that. In order to get ever sharper cut-offs you should need more and more points. The question is, why is the number of taps an input if it is ignored or am I missing something?

The other somewhat worrying question has to do with the convolution process. If the filter is using a very large number of taps, there should be a massive delay at the start. I don't think I'm seeing that.

0 Kudos
Message 1 of 5
(3,469 Views)

Hello rossu,

 

This is a good question. What is the topology setting of your digital FIR filter? The default setting is "off", which may be a contributing factor. You can see more effects the settings have on the output by viewing the example "FIR Filtering and Response" in LabVIEW (good for reference).

 

If you are able to, can you post a screenshot of your code? Being able to view the code may help clarify the issue.

Warm Regards,

Josh
0 Kudos
Message 2 of 5
(3,410 Views)

As requested one block diagram. Another somewhat puzzling issue is that the filter seems to be able to process data right up to the end of the input signal. With a convolution of n points, there should be n/2 points at the start and n/2 points at the end that ti can't do (The Savitsky-Golay filter shows this). How does this filter avoid this?

0 Kudos
Message 3 of 5
(3,385 Views)

Russo,

 

Thank you for posting the screenshot. I am going to discuss it with my colleagues in order to further troubleshoot this issue.

 

 

Warm Regards,

Josh
0 Kudos
Message 4 of 5
(3,364 Views)

Hello Russo,

 

Your code looks like it is set up effectively. I spoke with our development team about your question regarding the Digital Filter VI.  They confirmed that when Topology is FIR by Specification, the VI reads the filter specification and estimates an order. Then, it calls Parks-McClellan VI to design the filter. That is to say, #Taps is actually not used in this case. When Topology is Equi-ripple FIR or Windowed FIR, the #Taps is used for filter design. You can verify it by checking the order which is equal to #Taps - 1 in filter information output.

 

If you are interested in a more advanced filter design application, I would suggest you consider checking out the LabVIEW Digital Filter Design Toolkit.

 

Here is a link to an informative article comparing the LabVIEW Development VIs and the Toolkit VIs:

http://www.ni.com/white-paper/4851/en/#toc2

Warm Regards,

Josh
0 Kudos
Message 5 of 5
(3,318 Views)