08-08-2016 12:21 PM
I need help fixing a timing issue with LabVIEW outputting a weaveform to a NI 9263.
I have boiled down a VI I am working on where I want to output a waveform that I calculate, in this case a basic square wave where I can alter the duty cycle and freqeuncy at will. I included a measurement of the frequency to make sure I am sending the proper signal.
Problem example:
I am sending a clean 80 hz signal to the Daqmx write, and from the DAQ I am measuring a ~98 hz signal, where the square pulses vary from one to the next so it isn't even a clean 98 hz.
For the life of me I have checked through the help, examples, and forum posts and still I have been struggling with this for over a week. What is causing the issue? Even if it outputs the incorrect frequency, that would be managable as long as it was a CLEAN signal that didn't vary on random pulses.
08-08-2016 02:30 PM
At a minimum, you need a DAQmx Timing function somewhere to tell the analog output the desired update rate. See http://digital.ni.com/public.nsf/allkb/205F3DFD573D8C5A862569380058EA3A, "the t0 and dt waveform elements are not used during analog output." So you're generating the right set of values, but since you never set the update rate, it's most likely generating them as fast as it can. It's not really right to say your input waveform is at 80hz; instead you have a waveform, which you have set to 80hz, so of course that's what the software measures it as being. That 80hz however has no relation to the rate at which you're actually outputting the values.