LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to make sure a Tektronix TDS3054 Osciloscope measures 128averages of a voltage and returns 64 times (in For-Loop) the proper value without returning any zeros

The attached Labview-Programm seems to switch 64 channel-voltage-sources with visa. It should read a voltage on a Tektronix TDS3054 Oscilloscope averaging 128 times per channel. But without using those unsensible seeming huge time delays the program gets wrong zero values from time to time. It should be possible to ask the oscilloscopes status and make sure a proper read out can be done.
Download All
0 Kudos
Message 1 of 2
(2,691 Views)
I am not familiar with your oscilloscope or its capabilities, so I cannot offer specific suggestions.

Check closely the GPIB programming manual for the instrument to determine whether the delays are required. If the instrument uses the RQS funtion you can use the Wait for GPIB RQS to minimize the waits. The GPIB Wait function can respond to several status variables.

Do you need to write all the parameters and commands every time even if they do not change except after 32 iterations? If the instrument retains the settings you may only need to send the MEASUREMENT:MEAS1:VALUE? query each time. That would save 42 seconds for each iteration except the first and 32nd.

I have modified your VI to use a state machine architecture. Usually state ma
chines are implemented with while loops and case structures. I used for loops so that I did not have to create a set of stopping logic which does not exist in your original program. The state machine is much more versatile than the sequence structure and easier to modify. The modified version is not identical in performance, especially in the error handling and status indicators, but it should give some ideas. Look at examples and search for "state machine" to learn more about this powerful technique.

Lynn
Message 2 of 2
(2,691 Views)