01-28-2011 12:05 PM
Hi,
I have a CompactRIO (controller 9024 with a module 9237). When I filter my load cell signal directly on the FPGA, the filtered signal drift more and more if I reduce the cutting frequency.
For exemple, I acquire at a 2000 S/s data rate and I filter with a butterworth (low pass, cutting frequency = 100Hz) the signal do not drift. If I filter it at 10 Hz, the signal drift more and more.
Does anybody know with?
An other question is regarding the reset input of the Butterworth filter FPGA block, does anybody physically what it does?
01-31-2011 03:45 PM
Math50:
Would you be willing to post a screen shot of your filter code, along with the output data? I'd like to get a better visualization of what you're seeing.
Thanks.
02-01-2011 02:15 PM
Here is my programm. As you will be able to see, it is an hybrid programm between the 'Ni 9237 Getting started'' example and the 'Using reconfigurable FPGA Butterworth filter'' example.
I also put a picture of what's happen when I reduce the cutting frequency from 100 Hz to 50 Hz and 25 Hz. You can see the drift.
Thank you
P.S. The file name NI 9237.... simplified.jpg is a format .rar not .jpg. Please change the format from .jpg to .rar by writing it in the name.
02-01-2011 02:16 PM
Here is the picture of the drift phenomena.
02-01-2011 02:39 PM
please zip your project and post that way if possible.
I am assuming that the load on the load cell is constant?
02-01-2011 03:16 PM
Here a zip folder.
02-01-2011 03:51 PM
I assume you mean the frequency is drifting? It isn't clear to me what you are showing in the jpeg. Sorry.
02-01-2011 03:57 PM
The jpg is showing the acquisition from a load cell when I put a mass of 50 grams (i.e. a constant load). At the beginning I set the filter to a cutoff frequency of 100 Hz and the measurement is 50 grams. After 30 sec, I set the cutoff frequency of the filter to 50 Hz. At this moment, my signal drop to 45 grams. After 60 sec, I set the cutoff frequency of the filter to 25 Hz. At this moment, my signal drop to 35 grams.
02-01-2011 04:32 PM
your example is taking 1000 samples from each case that you are testing and taking the average of the filtered 1000 points. the difference that you are seeing is due to the different time constant of each filter. it takes longer to go from the intial state (0) to saturate your filter with the lower cutoff frequency, thus the average will be lower. of you observe the last 100 points of each 1000 point sample and average those, you will see a value that what you expect.
or if you make this into a continous case, the values will be the same as well
the attached png file shows the different responses
02-01-2011 04:40 PM
BTW, the reset input to the filter "resets" the internal values of the filter similar to the initial conditions of the filter. If you reset the filter while running, you will see the output start at zero and wind its way up to the steady state output value of the filter again according to it's time constant.