12-14-2017 11:57 AM
I am trying to set-up an NI 9237 module card to collect data at a data rate of 1 kS/sec. In order to do this, I need the module to run on an external timebase, specifically the 40 MHz onboard clock on the cRIO 9082 I am using. I can already collect my data at a sample rate of 1000 hertz. The problem is, I need the anti aliasing filters to filter the data at a corner frequency less than 500 hertz. It is currently filtering at a corner frequency of around 790 hertz based on the minimum 1.613 kS/sec sample rate.
10-18-2018 09:26 AM - edited 10-18-2018 09:33 AM
There is one example to lower the "sample rate" by just using every n-Index Value inside the output signal array..
have a look here:
The Problem with this example is that you can not set the samplerate very dynamic, the lenght of the array cut element is 20 indexes long....:-/
its nice because the loop at the and just runs once, but i haven't found a way to jump dynamc to create a selfmade undersampling for that module, heck even average of 1/10 is possible 🙂
10-22-2018 02:47 PM
I'm not totally understanding the problem. It sounds like you maybe want to oversample and then apply a digital filter? If so, can you just throw a butterworth at it? It has an input for the desired low pass frequency:
http://zone.ni.com/reference/en-XX/help/371361P-01/lvanls/butterworth_filter/
11-13-2018 07:03 AM
Yes a very high filter will help with a more stable output and butterworth is a good choice, maybe you can go as low as 1 Hz to 5 Hz in order to stabelize the values
But for a weight scale it also makes the system very slow, having less samplerate in hardware means less noise while retaining some speed i would argue...