01-04-2017 05:56 AM
I'm trying to output some basic waveforms with USB-6003 using a DAQmx analog output channel in regenerative mode. In the VI, when a timeout event occurs, task is stopped, timing settings and sample data is updated and task is restarted. I'm expecting the device to continuously output the available samples until another timeout event occurs and new samples are written. Most of the time device does this. However, sometimes the regeneration does not work and newly written data is outputted only once or twice.
Here is an example simplified block diagram generating the problem,
An example output signal captured with the same device,
The flat lines above are the problem. They should be square waves instead.
I'm also getting an internal software warning after a short time the program starts. I don't know wheter it is related to the problem or not.
I would be very glad if anyone can point out the cause of the problem.
01-04-2017 12:42 PM
I ran your code with no notable duration of constant state between the square wave pulses. I'm using a PCIe-6341 in a desktop PC. Just wondering if what you're seeing is some extra latency delay time to stop & restart due to using a USB device.
Also, no warnings or errors seen here.
-Kevin P
01-06-2017 01:12 AM
Hi Kevin,
I've modified the VI a little bit such that the output data is shifted up and down at each update. This makes the update more visible. In the following example output, you can see that there is no notable delay after writing the new data and restarting the task. The device outputs the written data for a couple of cycles and then outputs constant voltage until the next update.
01-06-2017 12:22 PM
Do you have any other DAQ hardware you can test the code on? It continues to run fine on my desktop PCIe-6341. Here's a 5-second grab for example.
-Kevin P
01-06-2017 02:00 PM
I only have one more of the same device. Unfortunately I get the same results with it.