LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Differentiating digital filter

Hi,
I have found a vi for implementing a low pass Bessel filter in LabView.
However, still not found any examples for implementing a filtered derivative.
Can anybody point me to LabView examples for this?

Thanks
0 Kudos
Message 1 of 8
(4,307 Views)
Hi momolxg

Here is a link with general informations about working with LabVIEW filters VIs:

http://zone.ni.com/devzone/conceptd.nsf/webmain/8bed37d53919702786256f6a008201ab#1

I hope it helps

regards

Manuel Wielander
NI
0 Kudos
Message 2 of 8
(4,296 Views)
If I read your request correctly, it sounds like you want a Savitzky-Golay filter. NI does not currently offer this (in the derivativ version, there is a point by point smoothing version). It is a standard convolution filter, so you can use LabVIEW to do it if you have the coefficients. You can get the coefficients from many locations. The easiest is probably the second edition of Numerical Recipes in C by Press et. al.

This topic comes up fairly frequently. Search for "Savitzky Golay" in the discussion forum box and you will get several hits, with code. If you don't find what you need, repost and I will dig something up. Before you use it, you may want to read the Numerical Recipes article to learn the ins and outs.
0 Kudos
Message 3 of 8
(4,289 Views)
Hi,
Thanks for the tip, I will try it out.
Ideally I would like a differentiating Bessel filter.

Bye
0 Kudos
Message 4 of 8
(4,277 Views)
I don't know of a single pass filter that both differentiates and employs a Bessel filter (but I am not really a filter expert, either). Have you tried a two pass approach? For example, run Bessel Filter.vi on your data followed by Derivative x(t).vi.

Note that the Savitzky-Golay approach preserves phase and peak height very well and does not introduce the phase shift common in most smoothing filters. It is used extensively in spectroscopy for that reason.
0 Kudos
Message 5 of 8
(4,271 Views)
I will let you know after our trial in the laboratory tomorrow!
0 Kudos
Message 6 of 8
(4,265 Views)
With help from the references given I could generate my Bessel filter differentiator.
(Impulse function into Bessel filter and take derivative of these FFT convolution coefficients for coefficients to feed the convolution function for getting the derivative.)

At the moment I am comparing this to a simple linear fit to obtain the slope and the derivative from the SavitskyGolay method.

Thanks for all the tips!
0 Kudos
Message 7 of 8
(4,244 Views)
Now implemented the Savitsky-Golay filter in FPGA - just what I was looking for. Thanks to all!
0 Kudos
Message 8 of 8
(4,139 Views)