Hello Zneijk,
The program you built uses the PCI-4070 as a DMM, but for your application it seems it would be more convenient to use it as a digitizer and acquire a waveform.
The NI-DMM driver installs example programs that show you how to program the board in digitizer mode. I woudl recommend you to start with the "Fetch & Graph Waveform.vi" example program and modify so the structure of the program is as follows:
- niDMM Initialize
- niDMM Configure Waveform Acquisition
* Function: Waveform_Voltage (or Waveform_Current)
* Range: Refer to the Specifications of the PCI-4070 or the section "Devices >> NI 4070" section of the NI Digital Multimeters Help (accessible ia the Start menu or at ni.com/manuals) for a list of available ranges.
* Rate: 12kHz (Valid values are 1.8MHz/n, where n=1,2,3,4...1.8M, so 12kHz is valid for n=150. Values are coerced to the closest integer divisor of 1.8 MHz)
* Waveform Points: 12000 (No. of points to acquire)
- niDMM Configure Trigger
* Trigger Source: External
* Trigger Delay: If you do not specify it, the driver chooses the default value, which is no trigger delay.
- niDMM Configure Trigger Slope
* Slope: Positive (Rising). The default is negative (falling).
- niDMM Configure Waveform Coupling
* Coupling: DC
- niDMM Initiate
while (No. of Points Aquired <= Waveform Points)
{
- niDMM Check Status
- niDMM Fetch Waveform
* Number to Fetch = backlog (this is returned by niDMM Check Status)
No. of Points Acquired =+ Actual Number of points fetched (this is returned by niDMM Fetch Waveform)
}
- niDMM Abort
- niDMM Close
I made a program in LabVIEW with these modifications and saved it for LabVIEW 7.0 version, so I hope you can open it. Please look at the attachment.
This program will receive an external trigger through pin 9 of the AUX I/O connector and will acquire 12000 points at 12kHz (1 second worth of data). The 12kHz sampling rate is decimated from the internal maximum sampling clock of the board (1.8MHz).
Please feel free to send me more information about what you want to measure in your applciation and if this program meets your needs.
From your description it seems that you want to measure phase delay and amplitude differences between two or more waveforms. However, I did not understand very well the characteristics of the signals you are measuring (frequency and amplitude). Also I would like to know if you are using two PCI-4070s that start acquiring using the same external trigger and then you are comparing the acquired data, or if you are running separate experiments with the same PCI-4070 and then you compare the acquired data.
Hope this helps,
Claudia L
DMM R&D
National Instruments
P.S. I would also like to answer your question about the 500us constant aperture time. When you use the PCI-4070 as a DMM, the NI-DMM driver will allow you to program all the parts of the measurement cycle and the state of every measurement option. So you can set your own aperture time; set your own settling time; enable or disable features like AutoZero, ADC Cal, etc.
When you configure the PCI-4070 just by using the function niDMM Configure Measurement (which only asks you to enter the Function, Range and Resolution) and you do not configure the other parts of the measurement cycle manually, the NI-DMM driver sets those measurement options to their default values.
For more information on the PCI-4070 measurement cycle and defaults, please refer to the entries "DMM Measurement Cycle" and "DMM Measurement Defaults" in the seciton "Devices >> NI 4070 >> DMM Measurement" of the NI digital Multimeters Help accesible via the Start menu in your PC or at ni.com/manuals.
For example, if you set the resolution for 5 1/2 digits, the NI-DMM driver will choose an aperture time of 500us. Remember that you can always set the aperture time to a custom value by writing to the "Aperture Time" property node, as shown in one of the shipping example programs in the folder "..\National Instruments\LabVIEW 7.0\examples\instr\niDMM\Advanced Examples".