I have a very annoying problem. I use a Tektronix AFG3022B (Arbitrary Function Generator), via USB, with Labview 2013 and the IVI driver (tkafg3k, ver. 3.7). Instrument is set up correctly, as far as I can tell, and I can communicate with the device and all. My issue is this:
I want to be able to change a parameter of the output (say, the signal DC offset) dynamically, inside a while loop. The simplest approach doesn't work at all:
When the "dc offset" is changed in the front end, a clicking sound is continuously produced by the instrument (as if it is constantly resetting), but nothing else happens.
[Note: Outside the loop this works, i.e. by using a constant instead of a knob for the dc offset. Also, the clicking stops when I return the dc offset to 0].
So, I used an event structure:
Now, this works, but whenever I change the value of the dc offset, the instrument momentarily resets (with the characteristic clicking sound), before applying the changes. This, apart from being annoying and potentially harmful for the device, is not tolerable in my experiment for a variety of reasons: I can't have voltages resetting all the time, as this screws up the measurements, and the time it takes (~1s) is just too long.
Dwelling just one level deeper, I see that the VI I'm using inside the event structure, the "tkafg3k Configure Standard Waveform.vi" is just a function call to the driver DLL:
So, there doesn't seem there's much I can do! Can this really be the case? Could there be any possible workaround?
[Note: the physical knobs and buttons on the instrument are still operational when the vi is running. Does this mean that the DLL constantly opens and drops communications?]
Thank you for your time.
Solved! Go to Solution.
I don't think it has any connection with LabVIEW.
Seems to me like you will not be able to change the parameters while a task is running.
My suggestion to you is to contact Tektronix and ask them directly.
Thanks, sure I will. However these AFGs from Tektronix are quite common, and I find it hard to believe that no one has come across this problem before. And the Labview community is quite large and knowledgeable, so I thought there might be something here.