LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Sample datasets to validate digital filtering programs?

Hello all,

I have a dynamics data processing program for a telemetry environment that performs various signal processing and frequency analysis on the source data (20-50 parameters consisting of strain gauge and accelerometer data running at typically ~3000Hz acquisition rates).  The program displays FFTs, 2D color maps of recent FFT results, computes amplitude at various frequencies tracking at multiples of the various shaft speeds on the test apparatus, and uses inverse FFT as a fast approximation of band pass filtering.

 

If there is one thing that I have learned about digital signal analysis, it is that no two applications of the same or dissimilar analysis methods will produce exactly the same result.  My software output is always being compared to the output of other programs and the difference is always scrutinized.  

 

I have already built a simulated waveform generator where the user can enter a simulation mode and construct a waveform by adding various sine waves at specified frequency and amplitude.  The signal generator window shows each generated sine wave separately and then combines them so the end user has no question as to what waveforms are being generated and summed up.  This is great for FFT and tracked frequency amplitude validation. 

 

However, I have not yet devised a way to show what my inverse FFT gives as a pseudo-band pass filter and how that would compare to common band pass filters such as n-pole Butterworth.  Do any reference datasets exist with "known" vibratory content at various pass bands so that I could offer comparisons between my inverse FFT result and other more standard results?  Does NI use some form of reference datasets for signal processing code validation that is publically available?             

0 Kudos
Message 1 of 4
(2,403 Views)

Hi Chris,

I found another thread in which someone wanted to display the inverse FFT. In order to so, the steps outlined in the second post of it may be helpful:
http://forums.ni.com/t5/LabVIEW/FFT-conversion-to-spectrum-display/td-p/223306

Regards,

Justin

0 Kudos
Message 2 of 4
(2,341 Views)

Thank you.  I do have inverse FFT working in my program already.  My program has actually been in production for about a year now.  I keep getting asked though why my program reports 15% higher or lower magnitudes than some other program using some other band pass method.  This is still good accuracy as there isn't really a correct answer with dynamic data.  Send too few samples into your FFT and you miss lose frequency resolution to discern your content of interest.  Send too much, and you smear the short duration vibrator excursion in time resulting in a lower reported magnitude than actual.  Switch to another transform and you get more variables.

 

What I am looking for is sets of reference datasets of known frequency content that I can use as test cases to compare this program to results that would be expected from more traditional band pass methods.  I though I've seen reference test cases listed before at the end of an NI document on signal analysis, but for the life of me, I can't find it back.

 

-Chris.

0 Kudos
Message 3 of 4
(2,336 Views)

Hi Chris,

I wasn’t able to find any existing test cases or datasets like that. I did however find a white paper in which may be helpful. It contains information on the FFT function, and Table 3 has information on Correction Factors and Worst-Case Amplitude Errors: It can be found here: http://www.ni.com/white-paper/4278/en

 

-Justin

0 Kudos
Message 4 of 4
(2,322 Views)