Text preview for : 2897_3700_ScriptAppNote.pdf part of Keithley 2897 3700 ScriptAppNote Keithley 3706 2897_3700_ScriptAppNote.pdf



Back to : 2897_3700_ScriptAppNote.p | Home

Number 2897


Application Note Comparing a Series 7000
Series SCPI Application to a Series 3700
Script Application
Introduction The SCPI Instrument Model
Some measurements require direct control over an instrument's
For many years, instrument manufacturers have used "Standard
hardware. To provide this control, SCPI-based instruments con-
Commands for Programmable Instrumentation" or SCPI to con-
tain command subsystems that control particular instrument
trol programmable test and measurement devices in instrumen-
functions and settings. These commands trade interchangeably
tation systems. SCPI provides a uniform and consistent language
for fine control. The ability to configure instruments and make
for the control of test and measurement instruments. The same
measurements with different degrees of control is a major advan-
commands and responses control corresponding instrument
tage of SCPI.
functions in SCPI equipment, regardless of the manufacturer or
the instrument type. The SCPI Instrument Model controls the way instrument
functionality is divided among the SCPI command subsystems.
By design, Keithley's new Series 3700 System Switch/ In the case of Series 7000 instruments, the command subsystems
Multimeter instruments do not use SCPI commands. Instead, are broken down into the following categories:
instruments on this platform use an internal Test Script 1. DISPlay: Controls the display of the 700X.
Processor (TSP) to process and run programs called "scripts." 2. OUTput:Controls the polarities of the digital output port.
The motivation to migrate toward the use of TSP was to address
3. ROUTe: Controls the signal routine through the switch
today's more demanding system throughput requirements.
system.
Communication with any TSP-based instrument is much the
same as interfacing to a conventional instrument, using commer- 4. SENSe: Used to read the digital input ports.
cially available software applications and an application develop- 5. SOURce: Controls the logic level(True or False) of each
ment environment. The user simply sends text strings containing digital output line.
either TSL (Test Script Language) or ICL (Instrument Control 6. STATus: Controls the status registers.
Library) commands to the instrument via the communication
7. SYSTem: Contains miscellaneous commands for scanner
interface. Although Keithley provides an application suite called
setup.
Test Script Builder (TSB) for use in developing scripts for TSP-
based instruments, it is not intended to be the only tool used for 8. TRIGger: Contains a series of commands to configure the
communicating to the instrument, nor does not replace commer- three layers of the Trigger Model.
cially available software applications.
TSP and Scripting: A More Efficient
A script is a collection of instrument control commands and/ Programming Method
or program statements. Program statements control script execu- The TSP language of the Series 3700 offers an equivalent set of
tion and provide facilities such as variables, functions, branch- instrument commands. The following command set applies to
ing, and loop control. TSB provides a programming interface in the Series 3700:
which users can create powerful, high speed, multi-channel tests 1. Beeper: Commands used to control the built-in beeper.
to download into either the unit's volatile or nonvolatile memory.
2. Bit: Used to perform logic operations on one or two
Using the downloaded script, the unit controls itself, indepen-
numbers.
dent of the system's host controller. This capability can free up
the system controller to interface with the other equipment in 3. Channel: Commands used to configure and control the
the test rack more frequently, thereby increasing the channels of the switching cards.
overall system throughput. Series 3700 instruments have very 4. Delay: Used to control trigger operations.
deep memory; program memory can hold 50,000 lines of code 5. Digital I/O: Configures parameters of the digital I/O
and data memory can store at least 650,000 readings. features (write/read, trigger and limits).
6. Display: Used to control display messaging on the front
This application note compares SCPI commands with the new
panel of the Series 3700 instrument.
Series 3700 scripting approach and illustrates how to convert a
Series 7000 SCPI-based application to a Series 3700 test script 7. Error: Used to read the entries in error event queue.
application. 8. Exit: Used to terminate a script that is presently running.
9. Format: Used for data printed with the printnumber 1. Reset the unit.
and printbuffer commands. 2. Create the scan list.
10. GPIB: Used to set the GPIB address.
3. Configure the scan count, which is defined as how many
11. LAN: Used to set Local Area Network parameters. times the instrument goes through the scan list.
12. Local node: Used to set the power line frequency 4. Start the scan.
control (on/off) prompting and control (hide/show) error
messages on the display. Memory Pattern Scan
13. Reset: Used to set all the logical instruments in the system
This example takes advantage of the memory pattern feature of
to the default settings.
Series 7000 and Series 3700 instruments. The memory pattern
14. Scan: Used to specify and configure channels and/or feature allows multiple channel closures to be saved in a memory
change channel patterns to scan. As well as associated location, then the memory location is placed in the scan list. The
buffers, triggers, or other scanning aspects. scan list can be run as a standard sequential scan but with the
15. Setup: Used to save or recall stored set-up configurations memory patterns instead of single channels. This is a powerful
and to set the power-on state. feature that can be used in applications that require multiple
16. Timer: The timer can be used to measure the time it takes switch closures in a system in order to have certain configura-
to perform various actions. tions for the specific test.
17. Trigger: Used to control triggering. In this example, two channels are closed and saved in each
18. TSPLink: Used to assign node numbers to a mainframe memory location. Note that the Model 7002 requires the SCPI
and initialize the TSP-Link system. commands to be sent and processed. The Model 3706-S can do
this using either of two techniques. The first technique is similar
19. UserString: Used to store/retrieve user-defined strings in
to that of the Series 7000 instrument, where commands, either
non-volatile memory.
SCPI or ICL, are simply sent to the instrument to create the mem-
20. Print Buffer: Used to print numbers and data. ory pattern, memory location, and scan list. Even when using
21. Slot[1]: Used to program attributes in different slots in this technique, the Model 3706-S uses fewer commands, making
mainframe. the programming easier.
There are two simple ways to program and communicate The second technique is the script technique in which the
with the Model 3706 Switch System: either by executing indi- Model 3706-S is running the user-created "test program/script"
vidual TSP commands (similar to sending individual SCPI com- rather than waiting to receive each command via the computer
mands) or by writing test scripts. Scripts are a collection (list) bus, which can be slowed significantly by command traffic.
of instrument control commands and/or program statements. Notice that the channels are never closed and saved as in the
All commands and statements in the script are executed by the Model 7002 SCPI codes. The channel.pattern.setimage com-
Model 3706 Switch system. Running a script at the switch system mand does this automatically. See the example script in Table 2.
is faster than running the test program from the PC. The use of
scripts can eliminate the transmission time from the PC to the Model 2400 Sweep and Model 3706 Scan
switch system.
Here is an example using the Model 700X as a scanner and a
Table 1 compares the SCPI approach for a Series 7000 instru- Model 2400 SourceMeter