Tektronix products are covered by U.S. and foreign patents, issued and pending. Information in this publication
supersedes that in all previously published material. Specifications and price change privileges rese rved.
TEKTRONIX and TEK are registered trademarks of Tektronix, Inc.
Contacting
Tektronix, Inc.
14150 SW Karl Braun Drive
P.O . Bo x 50
Beaverton, OR 97077
USA
For product information, sales, service, and technical support:
In North America, call 1-800-833-9200.
Worl d wi
Tektronix
0
de, visit www.tektronix.com to find contacts in your area.
This programmer manual covers the H500 and SA2500 Spectrum Analyzer
instruments. It provides information on operating your instrument using an
Ethernet net
This manual is composed of the following sections
Getting Started outlines how to configure and use the network interface.
Syntax and Commands defines the syntax used in command descriptions,
presents a list of all command subsystems, and presents detailed descriptions
of all programming commands.
Status and Events describes how the status and Events Reporting system
operates and presents a list of all system errors.
Appendices provides additional information.
work interface.
Relate
d Documentation
H500 User Manual (Tektronix part number 071-3115-XX) and SA2500 User
Manual (Tektronix part number 071-3118-XX). These manuals contain
al information about how to put your instrument into service, guides to
gener
user interface controls, and application examples.
and SA2500 instruments Online Help The online help contains detailed
H500
information about application controls and parameter fields.
H500 & SA2500 Programmer Manualiii
Preface
ivH500 & SA2500 Programmer Manual
Getting Started
Getting Started
You can write computer programs that remotely set the instrument front panel
controls or that take measurements and read those measurements for further
analysis or s
section includes the following subsections
torage. To help you get started with programming the instrument, this
Overview of the Manual
Syntax and Commands
Overview of
Summarizes each major section of this manual.
Configurin
Describes how to configure the H500 or SA2500 network interface, and how
to physically connect the instrument to a controller.
Using the Programmable Interface
Describes the communication protocol for using the programmable interface.
The information contained in each major section of this manual is described below.
x and Commands, describes the structure and content of the messages your
Synta
program sends to the instrument. The following figure shows command parts as
described in the Command Syntax subsection.
the Manual
g the Network Interface
Figure 1-1: Command parts
H500 & SA2500 Programmer Manual1-1
Getting Started
Figure 1
Section 2 also d
of how you might use it. The Command Groups subsection provides lists by
functional areas. The commands are listed alphabetically in the CommandDescriptions section.
-2: Functional groupings and an alphabetical list of commands
Status and Events
The program may request information from the instrument. The instrument
es information in the form of status and error messages. The following
provid
figure illustrates the basic operation of this system. Section 3, Status and Events,
describes how to get status or event information from the program and details
the event and error messages.
escribes the effect of each command and provides examples
Figure 1-3: E vent-driven program
1-2H500 & SA2500 Programmer Manual
Getting Started
Configuring th
e Network Interface
The H500 or SA2500 programmable interface is accessible through the
instruments network interface when the H500 or SA2500 application is running.
You m u st c on fi
interface. Use the following steps to configure the instrument network interface:
1. Work with yo
H500 instrument. If the network has DHCP enabled, the instrument will
automatically obtain an IP address when powered on and connected to the
network. If your network does not support DHCP, or you need a fixed IP
address for your instrument, have your system administrator provide you
with an address.
2. Connect a standard Ethernet cable from a network connector to the Ethernet
port on the top of the instrument. You can do this before or after powering
on the in
strument.
gure instrument network settings before using the programmable
ur network administrator to determine the IP address of the
Figure 1-4: Instrument ethernet connection
3. Power on the instrument if it is not already powered on.
4. On the instrument, tap Start > Settings > Network and Dial-up Connections
to open the Network Connections dialog box. The instrument network
interface is listed as ENDS4ISA1.
5. Double-tap the ENDS4ISA1 icon to open the CSA8900 Settings dialog box:
If your instrument is using DHCP to obtain an IP address, and the Obtain
an IP address via DHCP button is set, you do not need any further
network configuration. Close the dialog box and continue to the next
umbered step.
n
If the instrument has already been assigned a fixed IP address, the address
fields should show the address information.
If you are assigning or changing the instrument fixed IP address, tap the
Specify an IP address button, enter the appropriate address settings,
and tap OK.
6. Close the Network Connections dialog box. You can now use the
network interface to control the H500 or SA2500 application using the
network-accessed programmable interface.
H500 & SA2500 Programmer Manual1-3
Getting Started
Using the Prog
rammable Interface
The H500 and SA2500 programmable interface consists of simple text commands.
These are modeled after the Standard Commands for Programmable Instruments
(SCPI) synta
requests the spectrum analyzer's center frequency. The instrument uses raw
TCP sockets to receive commands and send replies. To send a command to the
H500 or SA2500, make a connection on TCP port 34835 and send the text of the
command, followed by a newline (ASCII 10). The instrument will reply on the
same TCP port, and will add a newline to the end of its response.
Appendix C lists C++ source code that uses the Win32 Winsock library to
interface to the H500 or SA2500. Included is a custom library module with
routine
responses, and determining details when error conditions occur. Also included is
a test wrapper that uses the custom library module to perform basic instrument
operations. Appendix C also lists MATLAB code that uses the MATLAB
Instrument Control Toolbox plug-in to interface to the H500 or SA2500. The
MATLAB example opens the interface, sends a simple query command, and then
the response. The example filesareprovidedasattachmentstothisPDFfile.
reads
x. As an example of a typical command, :SENS:FREQ:CENT?
s for opening and closing the interface, writing commands, reading query
1-4H500 & SA2500 Programmer Manual
Syntax and Commands
Command Syntax
This section contains information on the Standard Commands for Programmable
Instruments (SCPI) and IEEE 488.2 Common Commands you can use to program
your H500 or S
subsections
A2500 instrument. The information is organized in the following
Backus-Nau
SCPI Commands and Queries
IEEE 488.2 Common Commands
Constructed Mnemonics
Backus-Naur Form Definition
This manual may describe commands and queries using the Backus-Naur Form
(BNF) notation. The following table defines the standard BNF symbols.
Table 2-1: BNF symbols and meanings
Symbol
<>
:=
|Exclusive OR
{ }Group; one element is required
[]
.. .
( )Comment
rFormDefinition
Meaning
Defined element
Is defined as
Optional; can be omitted
Previous element(s) may be repeated
H500 & SA2500 Programmer Manual2-1
Command Syntax
SCPI Commands
and Queries
SCPI is a standard created by a consortium that provides guidelines for remote
programming of instruments. These guidelines provide a consistent programming
environment
defined programming messages, instrument responses, and data format across all
SCPI instruments, regardless of manufacturer. The instrument uses a command
language based on the SCPI standard.
The SCPI language is based on a hierarchical or tree structure as shown in the
following figure that represents a subsystem. The top level of the tree is the root
node; it is followed by one or more lower-level nodes.
Figure 2-1: Example of SCPI subsystem hierarchy tree
You can create commands and queries from these subsystem hierarchy trees.
Commands specify actions for the instrument to perform. Queries return
rement data and information about parameter settings.
measu
for instrument control and data transfer. This environment uses
Creating Commands
Creating Queries
SCPI commands are created by stringing together the nodes of a subsystem
hierarchy and se parating each node by a colon.
In the figure above, TRIGger is the root node and EVENt, EXTernal, INPut,
INTe rnal, and SOURce are lower-level nodes. To create a SCPI command, start
th the root node TRIGger and move down the tree structure adding nodes
wi
until you reach the end of a branch. Most commands and some queries have
parameters; you must include a value for these parameters. If you specify a
parameter value that is out of range, the parameter will be set to a default value.
The command descriptions list the valid values for all parameters.
For example, :TRIGger:EVENt:INTernal BOTH is a valid SCPI command created
from the hierarchy tree. (See Figure 2-1.)
To create a query, start at the root node of a tree structure, move down to the end
of a branch, and add a que stion mark. TRIGger:EVENt:SOURce? is an example
of a valid SCPI query using the hierarchy tree in the figure. (See Figure 2-1.)
2-2H500 & SA2500 Programmer Manual
Command Syntax
Query Responses
Parameter Types
The query cause
s the instrument to return information about its status or settings.
When a query is sent to the instrument, only the values are returned. When the
returned value is a mnemonic, it is noted in abbreviated format, as shown in the
following table.
Table 2-2: Query response examples
Query
CALCulate:SPECtrum:MARKer:X
TRACe1:DPSA:DETection
Response
7.50E+9
AVER
A few queries also initiate an operation action before returning information. For
example, the *CAL? query runs a calibration.
Every parameter in the command and query descriptions is of a specified type.
The parameters are enclosed in brackets, such as <value>. The parameter type is
listed after the parameter and is enclosed in parentheses, for example, (boolean).
Some parameter types are defined specifically for the H500 and SA2500
instruments command set and some are defined by A NSI/IEEE 488.2-1987 as
shown in the following table.
Table 2-3: Parameter types used in syntax descriptions
Parameter typeDescriptionExample
arbitrary block
1
A specified length of
arbitrary data
#512234xxxxx . . . where
5 indicates that the following
5 digits (12234) specify the
length of the data in bytes;
xxxxx ... indicates the data
booleanBoolean numbers or values
binaryBinary numbers
octal
hexadecimal
2
Octal numbers#Q57, #Q3
Hexadecimal numbers
ON or 1; OFF or 0
#B0110
#HAA, #H1
(0-9,A,B,C,D,E,F)
NR12numericIntegers0, 1, 15, -1
NR223numericDecimal numbers1.2, 3.141516, -6.5
NR32numericFloating point numbers3.1415E-9, -16.1E5
NRf2numeric
4
string
Flexible decimal number that
maybetypeNR1,NR2orNR3
Alphanumeric characters (must
See NR1, NR2, and NR3
examples
"Testing 1, 2, 3"
be within quotation marks)
1
Defined in ANSI/IEEE 488.2 as "Definite Length Arbitrary Block Response Data."
2
An ANSI/IEEE 488.2-1992-defined parameter type.
3
Some commands and queries will accept an octal or hexadecimal value even though t he parameter type is
defined as NR1.
4
Defined in ANSI/IEEE 488.2 as "String Response Data."
H500 & SA2500 Programmer Manual2-3
Command Syntax
Special Characters
Abbreviating Commands,
Queries, and Parameters
All characters
These characters are used in arbitrary block arguments only; using these characters
in other parts of any command yields unpredictable results.
You can abbre
short form. This manual shows these short forms as a combination of upper and
lower case lette rs. The upper case letters indicate the accepted short form of a
command. As shown in the following figure, you can create a short form by
using only the upper case letters. The accepted short form and the long form are
equivalent and request the same action of the instrument.
Figure 2-2: Example of abbreviating a command
in the range of ASCII 127-255 are defined as special characters.
viate most SCPI commands, queries, and parameters to an accepted
2-4H500 & SA2500 Programmer Manual
Command Syntax
Chaining Commands and
Queries
You can chain se
create a chained message, first create a command or query, add a semicolon
(;), and then add more commands or queries and semicolons until the message
is complete. If the command following a semicolon is a root node, precede it
with a colon (:). The following figure illustrates a chained message consisting
of several commands and queries. The single chained message should end in a
command or q
are separated by semicolons.
Figure 2-3: Example of chaining commands and queries
If a command or query has the same root and lower-level nodes as the previous
command or query, you can omit these nodes. In the following figure, the second
command has the same root node (TRIGger:EVENt) as the first command, so
nodes can be omitted.
these
veral c ommands or queries together into a s ingle message. To
uery, not a semicolon. Responses to any queries in your message
gure 2-4: Example of omitting root and lower-level nodes in a chained message
Fi
H500 & SA2500 Programmer Manual2-5
Command Syntax
General Rules
Here are three g
eneral rules for using SCPI commands, queries, and parameters:
You can use single (‘ ’) or double (“ ”) quotation marks for quoted s trings, but
you cannot use
both types of quotation marks for the same string.
correct"This string uses quotation marks correctly."
correct‘This string also uses quotation marks correctly.'
incorrect"This string does not use quotation marks correctly.'
You can use upper cas e, lower case, or a mixture of both cases for all
commands, queries, and parameters.
:SENSE:DPSA:COLOR:MAXIMUM 50
is the same as
:sense:
dpsa:color:maximum 50
and
:SENSE:dpsa:COLOR:maximum 50
NOTE. Literal strings (quoted) are case sensitive, for example, file names.
No embedded spaces are allowed between or within nodes.
correct
:SENSE:DPSA:COLOR:MAXIMUM 50
incorrect:SENSE: DPSA: COLOR:MAXI M UM 50
2-6H500 & SA2500 Programmer Manual
Command Syntax
IEEE 488.2 Com
Command and Query
mon Commands
Description
Structure
ANSI/IEEE Standard 488.2 defines the codes, formats, protocols, and usage of
common commands and queries used on the interface between the controller and
the instrume
The syntax for an IEEE 488.2 common command is an asterisk (*) followed by a
command and, optionally, a space and parameter value. The syntax for an IEEE
488.2 comm
All of the common commands and queries are listed in the last part of the Syntaxand Commands section. The following are examples of common commands:
Some header mnemonics specify one of a range of mnemonics. For example,
a trace mnemonic can be either TRACe1, TRACe2, TRACe3, TRACe4, or
TRACe5. You use these mnemonics in the command just as you do any other
monic. For example, there is a TRACe1:SPECtrum:FUNCtion command,
mne
and there is also a TRACe2:SPECtrum:FUNCtion command. In the command
descriptions, this list of choices is abbreviated as TRACe<x>. The value of <x> is
the upper range of valid suffixes. If the numeric suffix is omitted, the instrument
uses the default value of "1".
Table 2 -4: Constructed mnemonics
SymbolMeaning
MARKer<x>
TRACe<x>A trace specifierwhere<x>=1,2,3,4,or5.
A marker specifierwhere<x>=0,1,2,3,4,5,or6.
Refer to Marker Mnemonics.
Refer to TRACe Commands for details.
H500 & SA2500 Programmer Manual2-7
Command Groups
Command Group
s
This section
first presents them by functional groups. It then lists them alphabetically. The
functional g roup list starts below. The alphabetical list provides more detail on
each command.
The H500 and SA2500 instruments conform to the Standard Commands for
Programmable Instruments (SCPI) 1999.0 and IEEE Std 488.2-1987 except
where noted.
Items followed by question marks are queries; items without question marks are
commands. Some items in this section have a question mark in parentheses () i n
the command header section; this indicates that the item can be both a command
and a que
For the conventions of notation in this manual, refer to Command Syntax and
follow
lists the H500 and SA2500 instrument commands in two ways. It
ry.
ing pages.
2-8H500 & SA2500 Programmer Manual
Command Groups
Functional Gr
oups
All commands are divided into groups as shown in the following table.
Table 2-5: List of command group
Command groupFunction
IEEE common
ABORt
CALCulateControls the markers and the search operations.
CALibrationControls the external correction.
DISPlayControls the display of measurement results and waveforms.
FETChRetrieves measurements from the latest INITiate command data.
INITiate
INPut
MMEMory
OUTPutControls the characteristics of the signal output.
SENSeSets up detailed conditions for each measurement.
STATusQueries measurement mode status.
SYSTemSets or queries system parameters for operation.
TRACeControls trace activation and math operations.
TRIGgerControls triggering.
UNIT
Conforms to the IEEE Std 488.2.
Resets the trigger system and stops measurements.
Controls data acquisition.
Controls the characteristics of the signal input.
Provides mass storage capabilities for the instrument.
Specifies fundamental units for measurement.
H500 & SA2500 Programmer Manual2-9
Command Groups
Programming Hints
Here are some basic tips for using the H500 and SA2500 commands:
Selecting a measurement mode
Use Display commands to select or display a measurement mode.
[Example]
DISPlay:GENeral:MEASview:NEW SPECtrum
Selects the Spectrum measurement mode.
Setting measurement parameters
Use Sense commands to set conditions for the measurement session.
[Example]
Sets the c
SENSe:SPECtrum:FREQuency:CENTer 1.5e9
enter frequency to 1.5 GHz in the Spectrum measurement mode.
Acquiring an input signal
Use an In
[Example]
itiate or Abort command to start or stop data acquisition.
INITiate:CONTinuous ON;INITiate:IMMediate
Starts data acquisition in the continuous mode.
Processing waveforms arithmetically
Use Trace commands for math operation on waveforms.
[Example]
TRACe1:SPECtrum:FUNCtion
AVERage Averages the spectrum waveform.
Measuring with the markers
Use Calculate commands to measure some quantity using the markers.
[Example]
itions the marker at the highest peak signal on the spectrum.
Pos
CALCulate:SPECtrum:MARKer1:MAXimum
Obtaining the measurement results
a Fetch command to get the results.
Use
[Example]
FETCh:SPECtrum:TRACe1
Returns the spectrum trace data.
Scaling the waveform
Use Display commands to change the waveform portion on screen.
[Example]
DISPlay:SPECTtrum:Y:SCALE:PDIVISION 5
Sets the scale to 5 dB per division in the Spectrum measurement mode.
The following sections list the commands by group.
2-10H500 & SA2500 Programmer Manual
IEEE Common Commands
IEEE Common Co
The IEEE 488.
Table 2-6: Status and error commands
HeaderDescription
*CAL?
*CLSClears status.
*ESESets or queries the bits in the ESER register.
*ESR?Returns the contents of the SESR register.
*IDN?Returns the instrument identification code.
*OPCSynchronizes commands.
*RSTReturns the instrument settings to the factory defaults.
*SRESets or queries the bits in the SRER register.
*TRGGenerates a trigger.
*WAIPrevents the instrument from executing further commands.
mmands
2 common commands have a "*" prefix.
Runs and returns the instrument normalization status.
H500 & SA2500 Programmer Manual2-11
Abort Commands
Abort Command
s
Use the Abort
Table 2-7: Abort commands
HeaderDescription
ABORt
commands to reset the trigger system and to stop measurements.
Resets the trigger system and places the instrument in a paused
state.
2-12H500 & SA2500 Programmer Manual
Calculate Commands
Calculate Com
mands
Use the Calcu
late commands to control the markers and the search operations.
Table 2-8: Calculate commands
HeaderDescription
CALCulate:AVTime subgr ou p
CALCulate:AVTime:MARKer<x>:MAXimum
CALCulate:AVTime:MARKer<x>:MODESets or queries the markers absolute/delta readout mode.
CALCulate:AVTime:MARKer<x>:PEAK:HIGHer
CALCulate:AVTime:MARKer<x>:PEAK:LEFTMoves the marker to the next peak to the left on the trace.
CALCulate:AVTime:MARKer<x>:PEAK:LOWer
CALCulate:AVTime:MARKer<x>:PEAK:RIGHt
CALCulate:AVTime:MARKer<x>:STATeSets or queries the enable/disable state of the marker.
CALCulate:AVTime:MARKer<x>:TRACESets or queries the trace on w hich the specified marker is placed.
CALCulate:AVTime:MARKer<x>:XSets or queries the current time position of the specified marker.
CALCulate:AVTime:MARKer<x>:Y?Queries the vertical position of the marker.
CALCulate:DPSA subgroup
CALCulate:DPSA:MARKer<x>:MAXimum
CALCulate:DPSA:MARKer<x>:MODESets or queries the markers absolute/delta readout mode.
CALCulate:DPSA:MARKer<x>:PEAK:HIGHer
CALCulate:DPSA:MARKer<x>:PEAK:LEFTMoves the marker to the next peak to the left on the trace.
CALCulate:DPSA:MARKer<x>:PEAK:LOWer
CALCulate:DPSA:MARKer<x>:PEAK:RIGHt
CALCulate:DPSA:MARKer<x>[:SET]:CENTerSets the center frequency to the marker frequency.
CALCulate:DPSA:MARKer<x>:STATeSets or queries the enable/disable state of the marker.
CALCulate:DPSA:MARKer<x>:XSets or queries the frequency position of the marker.
CALCulate:DPSA:MARKer<x>:Y?Queries the vertical position of the marker.
CALCulate:MARKer subgroup
CALCulate:MARKer:PEAK:THResholdSets or queries the threshold level to detect peaks.
CALCulate:SEARch subgroup
CALCulate:SEARch:LIMit:FAIL?Query whether or not the current acquisition has a m ask violation.
CALCulate:SEARch:LIMit:MATCh:BEEP[:STATe]Sets or queries whether to beep when a mask v iolation occurs.
CALCulate:SEARch:LIMit:MATCh:SACQuire[:STATe]Sets or queries w hether to stop acquiring data when a mask violation
CALCulate:SEARch:LIMit:MATCh:SPICture[:STATe]Sets or queries whether to perform a screen save when a mask v iolation
CALCulate:SEARch:LIMit:MATCh:STRace[:STATe]Sets or queries whether to save the waveform trace when a mask
CALCulate:SEARch:LIMit:OPERation:MASK:LOADLoads the spectrum mask from a specified file for the search operation.
Amplitude vs. Time measurement
Moves the marker to the highest peak on the trace.
Moves the marker to the next peak higher in amplitude on the trace.
Moves the marker to the next peak lower in amplitude on the trace.
Moves the marker to the next peak to the right on the trace.
DPX spectrum measurement
Moves the marker to the highest peak on the trace.
Moves the marker to the next peak higher in amplitude on the trace.
Moves the marker to the next peak lower in amplitude on the trace.
Moves the marker to the next peak to the right on the trace.
occurs.
occurs.
violation occurs.
H500 & SA2500 Programmer Manual2-13
Calculate Commands
Table 2-8: Calculate commands (cont.)
HeaderDescription
CALCulate:SEARch:LIMit:STATeSets or queries whether to enable or disable the search function
(spectrum mask mode).
CALCulate:SPECtrum subgroupSpectrum measurement
CALCulate:SPECtrum:MARKer<x>:MAXimumMoves the specified marker to the highest peak on the trace.
CALCulate:SPECtrum:MARKer<x>:MODESets or queries the markers absolute/delta readout mode.
CALCulate:SPECtrum:MARKer<x>:PEAK:HIGHer
CALCulate:SPECtrum:MARKer<x>:PEAK:LEFTMoves the marker to the next peak to the left on the trace.
CALCulate:SPECtrum:MARKer<x>:PEAK:LOWer
CALCulate:SPECtrum:MARKer<x>:PEAK:RIGHt
CALCulate:SPECtrum:MARKer<x>[:SET]:CENTerSets the center frequency to the marker frequency.
CALCulate:SPECtrum:MARKer<x>:STATeSets or queries the enable/disable state of the marker.
CALCulate:SPECtrum:MARKer<x>:TRACeSets or queries the trace on which the marker is placed.
CALCulate:SPECtrum:MARKer<x>:XSets or queries the horizontal position of the marker.
CALCulate:SPECtrum:MARKer<x>:Y?Queries the vertical position of the marker.
Moves the marker to the next peak higher in amplitude on the trace.
Moves the marker to the next peak lower in amplitude on the trace.
Moves the marker to the next peak to the right on the trace.
2-14H500 & SA2500 Programmer Manual
Loading...
+ 157 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.