Can I Get Both the Time Domain and Frequency Information of my Signal at the Same Time? Primary Software: Driver Software>>NI-DSAPrimary Software Version: 1.1 Primary Software Fixed Version: N/A Secondary Software: N/A
Problem: Can I get both the time domain signal and the analyzed data (frequency spectrum, octave/level measurements) on the DSA boards at the same time? Solution: When using the NI 4451 and NI 4452 for PCI (these boards don't have a processor), you could do streaming to disk or to memory of the time domain waveform. Then you could perform post-processing using NI-DAQ functions just like you would with an MIO board. This means that you could perform the same operation with the NI 4551 and NI 4552 for PCI in NI-DAQ mode. This is would not use the NI-DSA instrument driver, which means you would not be using the on-board processor. You could not use any of the NI-DSA real-time functionality at all. The NI 4551 and NI 4552, when programmed with the NI-DSA instrument driver mode, perform as stand-along dynamic signal analyzer instruments. Like any dynamic signal analyzer, they provide many real-time processing features to analyze the time domain signals in the frequency domain. When used as dynamic signal analyzers, they cannot stream time domain data to disk. The board will be capturing a time record and performing the windowing, FFTs, cross channel measurements, averaging, etc. The measurements will be made while the next record is captured. In this manner the frequency information of the complete time signal will be gathered (not a single part of the time signal will be lost). The frequency analysis results will be averaged on the instrument if averaging is enabled and the partial or final results will be transferred to the host when the NIDSA Check New Measurement function is called. The data transferred to the host will contain the averaged frequency information and a single (the latest) snap of the time domain signal. So if you call that function in a loop you might get snaps of the time domain waveform but they might not be consecutive because the real time processing on the board will be faster than the software speed of your loop to get the data back to the host. Depending on the alias free frequency span and FFT size selected for analysis (up to 95 kHz), your time record length will change. This is the length of the record that has to be acquired in order to calculate the desired FFT on the selected span. If that time record length is long enough for your program to iterate around the check new measurements function without loosing a single time record, you should be able to ask for the time domain signal as well as your frequency domain results. You can also tile the time domain blocks to have a continuous time domain acquisition. If your time domain record is faster than your loop, the board will analyze faster than the computer. In this case you might want to use averaging in order to avoid loosing frequency domain information. The bottom line is that the time blocks you bring back to the host as fast as possible might not be continuous. However you can ensure that the time records are continuous with the latest release of the NI-DSA driver, version 1.1. This leads to the next question. How do I know if the time records will be continuous or not? It is possible to make your time records continuous with a new feature found in the new version 1.1 of NI-DSA. A time capture feature is provided in NI-DSA version 1.1 to allow a start and end capturing functions to control the streaming to the on board processor memory of the complete time domain waveform. The memory on the processor will allow a limited time capture. The captured information could then be transferred to the host memory for its storing or processing along with the complete set of frequency domain analysis done on board. NI-DSA also offers a function or VI called NIDSA Check Status. This function will return some status (if the board is running in real time or not) and also will return the number of lost buffers. This number is the number of time records captured by the board that have not been read back to the host. If that number is 0, it means that your computer is fast enough and your time record is long enough to allow your program to transfer every single time record. Related Links: Attachments:
Report Date: 11/12/2005 Last Updated: 11/12/2005 Document ID: 3RBDOPDS |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
