09-22-2016 08:19 AM
In order to generate multiple analog waveforms through an NI-9263, I am using this VI to produce waveforms that can be edited at runtime. However, the waveforms take ~30 seconds to update regardless of the buffer size, frequency of signals, or the number of channels in use. In order for my experiments to work properly, I need to find a way to cut the update time from 30 seconds to something on the order of 10 seconds or less. Any help with this issue would be greatly appreciated!!
09-22-2016 01:53 PM
Should not be like that.
What is the carrier of the NI-9263?
What frequency/number of samples did you try? Can you try one channel, 1000 Hz, 100 samples?
How do you measure update rate?
What is happening with output (look at the scope)? Does it generate your waveform (0.1 s) then sits for 29.9 s, waiting for the next iteration?
Does it say any errors? Is it exactly the same VI?
09-24-2016 12:56 PM
I'm using the NI 9181 carrier/chassis. I did tests where I connected an oscilloscope to the DAQ, set the sample rate to the 100 kS/second, and observed how long the waveform took to update on the oscilloscope.
I tested the update time in relation to buffer size and frequency, where I set the buffer to 5000 samples, 2500 samples, 1000 samples, and 500 samples. At each of these buffer sizes, I would change the frequency of the output signal (through one channel) from 100 Hz to 10 Hz, record the time it took for the oscilloscope to read the new frequency waveform after entering in the new signal info on the VI. I measured this update rate by simply setting a stopwatch on my phone as I pressed enter on the VI with the new info, stopping the watch when the oscilloscope registered the updated signal. I would then test the time it took to update the waveform from 10 Hz to 100Hz at each buffer size. Across the board, the update time between entering new info on the VI and seeing a different frequency waveform on the oscilloscope remained 30 seconds.
On the oscilloscope, the output waveform looks continuous, and when the updated signal appears on the screen, the new waveform replaces the old one and also appears to be continuous. The VI only gave me errors when I tried to use a buffer of 250 samples, but aside from that, I have seen no other errors.
Let me know if you have any more questions/want me to test things!
09-26-2016 09:55 AM
"Do not allow regeneration" means it should stop at the last value when it has completed the buffer. If it continues to generate, it has data. 5000 samples, 100k samples/s - takes 50 ms. Either it makes large buffer and loops through it, or queues the daqmx writes (10 Hz is continuous!), or rate is not 100ks/s
Does sine rate on the scope match the one you set (10 Hz, 100 Hz)?
Can you connect your number of samples to samples input of daqmx timing?
Can you add 100 ms delay to the loop? Will 40 ms delay (at 5000 samples) change update time?
Can you set your current values as default, save VI for 2011 and attach it?
09-26-2016 10:39 AM
The sine rate on my scope does match the frequency I assign in the VI, and I don't understand what you mean by "connecting the number of samples to samples input of daqmx timing"? I'm not very experienced with Labview, so I don't entirely understand how to modify my program in the ways that you're suggesting. I'll try to do what you suggested, and let you know what I find. I'll also upload the VI to the thread as soon as I get access to the computer it's on.
09-28-2016 10:16 AM
Here's the program file that I'm using. I was unable to answer the questions you had regarding:
Does sine rate on the scope match the one you set (10 Hz, 100 Hz)?
Can you connect your number of samples to samples input of daqmx timing?
Can you add 100 ms delay to the loop? Will 40 ms delay (at 5000 samples) change update time?
As I did not know how to modify the program like this. Please let me know what you think the issue might be.
09-29-2016 01:13 PM
Zach,
It doesn't look like you actually attached your code. Can you try again?
09-29-2016 01:22 PM
My bad, here's the file (hopefully).
09-30-2016 09:19 AM
This VI allows me to real-time update my waveform. Is there a way to modify the VI I posted earlier to function like this VI?
09-30-2016 12:30 PM
Zach,
Is the new VI that you posted working for you? Can you just use that one instead of trying to modify the other one? The two VIs are very similar except for a couple changes with how the waveform is generated. If the second VI works as expected, I would suggest just using that one.
J. Calvert
Applications Engineering
National Instruments