PH 415 Computer Interfacing
OSU logo
The content of this page is undergoing revision and will be moved to another site soon.
Tektronix TDS1012B Oscilloscope

Table of Contents

Specifications for the Tektronix TDS1012B digital oscilloscope

  • USB client port on the back and a USB host port on the front.
  • 100 MHz bandwidth on the vertical amplifiers means that the gain is constant up to 100 MHz. Attenuated signals have been observed at 236 MHz.
  • The sampling rate of the 8-bit ADC is 1 GHz. The ADC full range of 0 to 255 runs from just below the bottom of the screen to just above the top.
  • The memory stores 2500 values for each channel.

Programming Syntax

  • The programming manual for the tds1000/2000 series explains the command sequences. Notice the SCPI compliance.

Detecting and Initializing

  • usb_devices_raw.py uses PyVisa to find all the IO devices. Notice the USB list, if the USB instruments have been switched on and connected.
  • usb_devices.py searches through all USB devices and returns a handle to the scope with the serial number specified. It also returns a handle to the AFG3021B with the specified serial number. Distinguishing with particular serial numbers enables one to use multiple identical instruments.
  • initialize_fg_scope.py initializes both devices to compatible operating conditions. initialize_fg_scope_commands.txt contains the actual commands determined from the programming manual.

Capturing and Plotting Waveforms

  • The program scope_waveforms.py will read the scope parameters, capture a specified number of waveforms from each channel and plot the data versus time or in xy mode. The module tek.py must be in the same directory as well as usb_devices.py. Uncomment only the appropriate call to AcquireWaveforms and the associated title and legends definitions.
  • A single waveform of 2500 data points can be transferred as ascii-encoded decimal in 4 seconds or as binary in 0.2 seconds. GetWaveform.py demonstrates both methods and shows one way to unpack the binary data into a numpy array of floats. For another approach to unpacking binary blocks of data, read unpacking_integers.txt.