05-16-2024 12:18 PM
I define two DAQ tasks (two separate PXI DAQ cards in my PXI chassis) that run concurrently and then I am reading the data from each of the tasks. Same amount of samples, same trigger, same reference clock. After the trigger occurs, The code waits and then reads the sample waveforms from DAQ task2, then DAQ task 1. The task names are maintained in a functional global variable VI which works properly.
When I read the sample from DAQ task 2, I receive the correct waveform. However, I found that I also receive an error that references the other task, DAQ task 1, not DAQ task 2.
1) If I had fed the output error from the read of DAQ task 2 into the error input of DAQ Task 1, then the samples read on DAQ task 1 would fail and not execute, resulting in a null waveform.
2) If I do not feed the output error from DAQ task 2 (as shown in the figure) into the read of DAQ task 1, then the samples read correctly and I receive the correct waveforms.
Is there an implicit timing relationship based on card position in the chassis? Or another timing relationship that I must account for before reading samples from either DAQ task?
I do not understand why a read of one task can result in an error on a different task.
Thanks.
05-16-2024 02:11 PM
The screenshot doesn't show enough to diagnose the issue. What is the error code? What is your sample rate? Are you doing finite or continuous sampling?
Please:
1. Enter typical values for any front panel controls
2. Add several temporary indicators that show error state before and after your DAQmx Read calls.
3. Run your vi and generate the problem you describe.
4. From the vi's Edit menu, select Make Current Values Default
5. From the vi's File menu, select Save For Previous Version and choose something like LV 2020. Post this back-saved code. (Note: LabVIEW will save it into a subfolder under your original vi)
-Kevin P