LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

multiple channels FFT with averaging

I'm measuring several analog channels with "AI Waveform Scan.vi". The output waveform array goes to a for loop with "FFT Power Spectrum.vi" in it. This should output the FFT's of each channel, but averaged over time.
What happens though is that the FFT's of the different channels are averaged allthogether, while they should be treated individually. I have no idea what to do to overcome this.
A similar question, with a reply I don't get, can be found here: http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101&RNAME=ViewQuestion&HOID=5065000000080000003C1A0000&ECategory=LabVIEW.LabVIEW+General

Any help is appreciated!
Thanks,
David.
0 Kudos
Message 1 of 5
(3,199 Views)
This is a challenging proposition, in fact, National Instruments has invested man-years in enhancing the FFT to include averaging, power in band, zoom FFT and so on. Averaging includes RMS, Vector, and Peak Hold features. These are all implemented as multichannel functions in the Sound and Vibration Toolset. You can download the manual from the web site. What they have done here, is to work through all the details of keeping the history for each channel separately, and so forth. Even though their is an additional charge for the toolset, you will find that the cost of the toolset is about the same as a couple days of your time.

I hope this helps.

Sincerely

Preston Johnson
Preston Johnson
Solutions Manager, Industrial IoT: Condition Monitoring and Predictive Analytics
cbt
512 431 2371
preston.johnson@cbtechinc
0 Kudos
Message 2 of 5
(3,199 Views)
Thanks for your reply Preston.
I was hoping for a solution without the need to spend extra money... I've seen messages of people copying the top level vi to different files, having one per channel. So that's probably what I'll try first, although I must admit it's "ugly". And I still need to test it, so I've no idea if it actually works.
But thanks for the suggestion. I might need it anyway.

Best regards,
David.
0 Kudos
Message 3 of 5
(3,199 Views)
The FFT Power Spectrum is a polymorphic VI that accepts either a single waveform or an array of waveforms (you need LabVIEW 6.1 or 7.0). The array of waveforms version was written to handle your use case exactly. You should be able to pass your array of waveforms obtained from "AI Waveform Scan.vi" directly to the "FFT Power SPectrum.vi". Each waveform is treated as a "channel" and is averaged independent of the other "channels". I have written a simple example that demonstrates this usage.
0 Kudos
Message 4 of 5
(3,199 Views)
I never realised LV 6.1 would make this possible. I've been working with LV 6.0 until now because it has always served me well. Appearently this is a good time to upgrade, since 6.0 only accepts 1 waveform at a time.
I just installed 6.1 and your example works perfectly.

Many thanks for your reply!
Regards,
David.
0 Kudos
Message 5 of 5
(3,199 Views)