Professional Documents
Culture Documents
COM1003 Remote Manual
COM1003 Remote Manual
COM 3003
1 Table of Contents
1 TABLE OF CONTENTS 2
2 THE SCPI LANGUAGE 3
3 SETTING THE IEEE ADDRESS 5
4 SCPI COMMANDS 6
4.1 MEASure 6
4.2 CONFigure 8
4.3 READ 8
4.4 INITiate 9
4.5 FETCh 9
4.6 SENSe 9
4.7 STATus 11
4.8 CALCulate 16
4.9 SYSTem 18
5 IEEE-488.2 COMMON COMMANDS 19
5.1 *CLS 19
5.2 *ESE <NRf> 19
5.3 *ESE? 19
5.4 *ESR? 20
5.5 *IDN? 20
5.6 *OPC 21
5.7 *OPC? 21
5.8 *RST 21
5.9 *SRE <NRf> 22
5.10 *SRE? 22
5.11 *STB? 23
5.12 *TST? 23
5.13 *WAI 23
6 ERROR MESSAGES 24
6.1 Command error -100 24
6.2 Execution error -200 24
6.3 Device-specific errors 24
6.3.1 Device-specific error -300 24
6.3.2 Queue overflow -350 24
6.4 Query error -400 24
6.5 Power on -500 24
7 HISTORY 25
COM3003_SCPI_EXT_GB_V100.doc 2/ 25
ZERA The SCPI Language LOH/10.03
The short form of a level name consists of the first four characters. If the long form of the
name consists of more than four characters and the fourth character is a vowel, then the
short form is the first three characters of the long form. If the long form is 4 characters
long, the short and the long form are identical.
The colon(:) is used to move the path down one level in the selected instrument model.
A semicolon(;) can be used to separate two commands in the same command string.
Query Commands(?) will instruct the instrument to send a response message. Queries
return either measured values or internal instrument settings.
Caution: If you send two query commands without reading the response of the first
query, the first response will get lost as the device recognises an interrupted action. In
this case the query error bit in the standard event status register will also be set.
Common Commands(*) are required to perform the identical function for all
instruments that are compliant with the IEEE-488.2 interface standard. These
commands are used to control reset, self-test, and status operations in a device.
COM3003_SCPI_EXT_GB_V100.doc 3/ 25
ZERA The SCPI Language LOH/10.03
The following commands are device specific to COM3003. Not all of these commands
are included in the 1997.0 version of SCPI standard. However, these commands are
designed with the SCPI format in mind and they follow all of the syntax rules of the
standard.
COM3003_SCPI_EXT_GB_V100.doc 4/ 25
ZERA Setting the IEEE address LOH/10.03
COM3003_SCPI_EXT_GB_V100.doc 5/ 25
ZERA SCPI Commands LOH/10.03
4 SCPI Commands
4.1 MEASure
The READ? query may be further divided into the INlTiate command and the FETCh?
query. The INlTiate command starts the measurement, and the FETCh ? query returns
the requested result. The FETCh ? query may be executed multiple times. This allows a
query to be made for several different signal characteristics from the same
measurement, such as the DC and AC component of a signal. The INlTiate and FETCh?
concept provides less compatibility because the programmer needs to know whether an
instrument configured for a particular measurement is capable of providing the
additionally requested signal characteristic. The properties of the different measurement
instruction sets are summarised in the following Figure.
COM3003_SCPI_EXT_GB_V100.doc 6/ 25
ZERA SCPI Commands LOH/10.03
The following list gives an overview which measured values can be read out from the
device. The user must always specify the whole header to read out the values.
To read out the reactive power the command would be
MEAS:POW:AC:REAC ? (short form) or
MEASURE:POWER:AC:REACTIV? (long form)
As COM3003 is a 3phase meter , the device will put 3 values into the output buffer.
MEASure
:VOLTage[?]
:DC?
:AC[?]
:PHASe?
:CURRent
:AC[?]
:PHASe?
:POWer
:AC[?]
:ACTiv?
:REACtiv?
:APParent?
:PFACtor?
:FREQuency?
COM3003_SCPI_EXT_GB_V100.doc 7/ 25
ZERA SCPI Commands LOH/10.03
4.2 CONFigure
Configure
4.3 READ
READ
:VOLTage[?]
:DC?
:AC[?]
:PHASe?
:CURRent
:AC[?]
:PHASe?
:POWer
:AC[?]
:ACTiv?
:REACtiv?
:APParent?
:PFACtor?
:FREQuency?
COM3003_SCPI_EXT_GB_V100.doc 8/ 25
ZERA SCPI Commands LOH/10.03
4.4 INITiate
INITiate
4.5 FETCh
FETCh
:VOLTage[?]
:DC?
:AC[?]
:PHASe?
:CURRent
:AC[?]
:PHASe?
:POWer
:AC[?]
:ACTiv?
:REACtiv?
:APParent?
:PFACtor?
:FREQuency?
4.6 SENSe
The sense instrument model contains the functions that perform the real data
acquisition. Its primary purpose is to convert analogue signals into digital data.
The functionality covered by the SENSe subsystem performs the real data acquisition
and converts the already-conditioned signal into internal data. There exists a broad
range of characteristics that can be measured from a wide variety of signal types, each
using different methodologies. Therefore, it is not surprising that the SENSe subsystem
is one of the most comprehensive subsystems of SCPI. Roughly speaking, this
subsystem can be divided in two major functionality groups.
The first group of functions can be best described as those dealing with the signal
oriented settings of the sensor. Sensors are used to measure a wide variety of physical
quantities and units from different signals, such as voltage, resistance, power, etc. The
setup needed for the functionality depends heavily upon the physical quantity and type of
signal to be sensed. For each quantity to be sensed, a subsystem is available within the
SENSe subsystem, which provides the setup functions appropriate for the given signal.
A typical instrument does not implement all possible sensor functions offered by the
SCPI standard, but will provide sufficient commands to set up the acquisition tasks for
which the instrument was designed.
COM3003_SCPI_EXT_GB_V100.doc 9/ 25
ZERA SCPI Commands LOH/10.03
Within the SENSe subsystem, commands are provided to set up a sensor for such
quantities as voltage, power or resistance. Commands are also provided to set up a
sensor for amplitude, frequency or phase modulated signals.
In COM3003 the following commands have been realised. The user can set and read
out voltage and current ranges, enable or disable range automatic or activate the range
automatic once. This means that first automatic is enabled, the best suitable range is
selected and automatic is switched off again.
SENSe
:CURRent
:AC
:RANGe?
:RANGe { <numeric value>}
:AUTO {ON,OFF | ONCE}
:VOLTage
:AC
:RANGe?
:RANGe {<numeric value>}
:AUTO {ON,OFF | ONCE}
:DC
:RANGe[?]
:RANGe {<numeric value>}
COM3003_SCPI_EXT_GB_V100.doc 10/ 25
ZERA SCPI Commands LOH/10.03
4.7 STATus
Covers all status reporting functionality. SCPI instruments implement three important
status groups. The first group is the Standard Status structure as defined by the IEEE
4882 standard. The next group, QUEStionable Status, gives an indication about the
quality of the signal being measured or generated. The third group, OPERation status,
provides information about the state of the normal device operation.
The status reporting system consists of register models and queue models, as shown in
above Figure. All status registers and queue structures are summarised in the Status
Byte register. The settings of the Service Request Enable register determine which
Status Byte bits will cause a Service Request (SRQ) to occur on the GPIB. A Status
Byte bit being set True will cause the device to generate an SRQ interrupt if the
corresponding bit position in the Service Request Enable register is also set True. This
is shown in above figure by the circled & (ampersand) sign, which represents a logical
AND operation.
COM3003_SCPI_EXT_GB_V100.doc 11/ 25
ZERA SCPI Commands LOH/10.03
Bit6 RQS Requested Service indicates that the device has re quested service.
This means that an SRQ interrupt was issued. The RQS bit is sent at
bit position 6 in the response to a serial poll. It differs from the MSS bit
in that the RQS bit is cleared after the serial poll. It is only set True
again when a new event occurs that requires service.
MSS Master Summary Indicates that there is a Status Byte bit which
caused the device to request service. The MSS bit is returned at bit
position 6 in the response to the *STB? query. The MSS bit is cleared
only when the overlaying status structure being summarised is cleared.
It is also cleared when the Service Request Enable register, which
selects the Status Byte bits that will cause a SRQ interrupt, is cleared
by the *SRE command.
Bit5 ESB Event Summary Bit Contains the summary of the Standard Status
structure.
Bit4 MAV Message Available Indicates the status of the Output Queue is not
empty. This bit is set True when at least one byte is available in the
queue. It is set False when the Output Queue is emptied.
COM3003_SCPI_EXT_GB_V100.doc 12/ 25
ZERA SCPI Commands LOH/10.03
Bit2 Error/Event Queue indicates the status of the Errorl Event Queue is not empty.
The bit is set True when at least one byte is available in the
queue. It is set False when the queue is emptied.
Commands to handle the Status Byte and Service Request Enable register
The parameter value associated with a command that programs the bit setting of a
status register (Transition Filter or Event Enable register) is an <NRf> or nondecimal
numeric data type . Expressing this value in base 2 specifies the bit values in the
register. The response to a query for the contents of a status register is an < NR1 > data
type . This value, expressed in base 2, reflects the bit settings of the queried register.
Some instrument, however, provide the FORMat:SREGister command. Programmers
may use this command to select other response formats, such as hexadecimal, etc.
COM3003_SCPI_EXT_GB_V100.doc 13/ 25
ZERA SCPI Commands LOH/10.03
Examples:
*STB?
A returned response of 144, for example, specifies the binary value 10010000. This
indicates that the status byte bits OPER (bit7) and the MAV (bit 4) are set True.
*SRE 24
Since 24 is the decimal value of the bit code 00011000, this command causes the
instrument to generate an SRQ interrupt when the status byte bits QUES (b3) or MAV
(b4) are set True.
All SCPI instruments implement the OPERationable and the QUESTionable status
System. The figure below show the QUESTionable status as an example of status
structure in general. IF masked each bits change in the CONDition Register (positive or
negative transition) will set its corresponding bit in the EVENT register. If the
corresponding bit in the ENABle register is also set then the QUES bit in the Status Byte
will be set. If the corresponding bit in the Service Request Enable Register is also set
then the device will generate a Service Request.
COM3003_SCPI_EXT_GB_V100.doc 14/ 25
ZERA SCPI Commands LOH/10.03
COM3003 uses the SCPI Status models to report overload conditions in the voltage or
current sense systems.
Bit8 of QUESTionable Status reports Overload in the voltage system.
Bit9 of QUESTionable Status reports Overload in the current system.
All Status model mask , event and enable registers can be set or read out by the
following commands
STATus
:OPERation
[:EVENt]?
:CONDition?
:ENABle?
:ENABle {<numeric value>}
:PTRansition?
:PTRansition {<numeric value>}
:NTRansition?
:NTRansition {<numeric value>}
:QUEStionabe
[:EVENt]?
:CONDition?
:ENABle?
:ENABle {<numeric value>}
:PTRansition?
:PTRansition {<numeric value>}
:NTRansition?
:NTRansition {<numeric value>}
Example:
The device shall generate a Service Request when an overload condition occurs.
Each overload condition will set the QUES bit in the Status Byte.
COM3003_SCPI_EXT_GB_V100.doc 15/ 25
ZERA SCPI Commands LOH/10.03
4.8 CALCulate
Type of
Subsystem within
postprocessing Description
CALCulate
function
Mathematical :Math Allows for user defined expressions for
mathematical manipulation of sensed or
memorised data.
Filtering :FILTer Performs TIME or FREQuency filtering.
The filter process may operate on the
acquired data, or on the outcome of
another calculation process, such as the
frequency transformation of an acquired
waveform. Hence, the FILTer process
may operate in a domain which may not
be identical to the domain of the
acquisition signal.
COM3003_SCPI_EXT_GB_V100.doc 16/ 25
ZERA SCPI Commands LOH/10.03
COM3003 uses the CALCulate model for setting the measuring mode and the devices
integration time as both functions can be seen as a kind of postprocessing of the
acquired voltage and current signals. The following table shows the commands
implemented.
CALCulate
:MATH
:EXPRession
:CATalog?
:NAME {<expression name>}
:FILTer
:TIME?
:TIME {<numeric value>}
CALC:MATH:EXPR:CAT? will put a list of all available measuring modes into the output
queue.
CALC:MATH:EXPR:NAME 4WA will set 4-Wire active measuring mode
COM3003_SCPI_EXT_GB_V100.doc 17/ 25
ZERA SCPI Commands LOH/10.03
4.9 SYSTem
Includes the more general housekeeping functions of an SCPI instrument, which are not
directly related to the instrument performance. Functions which can be found in this
subsystem are time and date setting, configuration for GPIB, serial and Centronics
interfaces, help utilities, instrument security, and the retrieval of error messages.
In COM3003 only the VERSion and the ERRor Subsystems are implemented.
SYSTem
:ERRor[?]
:ALL?
[:NEXT]?
:CODE[?]
:ALL?
[:NEXT]?
:COUNt?
:VERSion?
COM3003_SCPI_EXT_GB_V100.doc 18/ 25
ZERA IEEE-488.2 Common Commands LOH/10.03
5.1 *CLS
The Clear Status command clears the device’s status structures. This includes the
following:
• all event registers summarised in the Status Byte, including
- the Standard Event Status register
- the Operation Event register
- the Questionable Event register
• the Error/ Event Queue
• sets the device in the Operation Complete Command Idle state
• sets the device in the Operation Complete Query Idle state
Note: The *CLS command does not affect the Output Queue. However, when there is
data in the Output Queue, and a *CLS command immediately follows a Program
Message Terminator, the Output Queue will be cleared. The Message Exchange Control
protocol requires the controller to first read the response to a terminated query before
sending a new command. Therefore, a *CLS command which follows a Program
Message Terminator violates this protocol and causes the device to generate a Query
Error (Interrupted), which clears the Output Queue.
5.3 *ESE?
The Standard Event Status Enable query returns a decimal value, which reflects the bit
values of the Standard Event Status Enable register when expressed in base 2. The
returned value is a NR1 response data type. SCPI instruments may implement the
FORMat:SREGister command and allow for the selection of other response data types.
COM3003_SCPI_EXT_GB_V100.doc 19/ 25
ZERA IEEE-488.2 Common Commands LOH/10.03
5.4 *ESR?
The Standard Event Status Register query returns a decimal value, which reflects the bit
values of the Standard Event Status Register when expressed in base 2. The returned
value is a NR1 response data type. The *ESR? query causes the Standard Event Status
register to be cleared. SCPI instruments may implement the FORMat:SREGister
command and allow for the selection of other response data types.
5.5 *IDN?
The Identification query is used to identify the instrument within a system. The response
to the *IDN? is an <instrument_identifier> which is organised into four fields separated
by commas (, 2Chex).
The overall length of the response is less than 72 characters. The returned fields may
use any ASCII characters in the range 20hex to 7Ehex, except commas (,2Chex) and
semicolons (;3Bhex)
<instrument-identifier> =
<manufacturer> , <model> , <serial_number> , <firmware_level>
Field Description
Name of the manufacturer of the instrument. This field is identical for
<manufacturer>
all devices produced by a single company.
<model> The type or model number of the instrument.
The serial number of the instrument. Instruments may omit this field.
<serial_number>
If omitted, the ASCII value 0 (30hex) is returned.
The firmware level of the instrument. This field contains information
<firmware_level> about all revisable subsystems. Instruments may omit this field. If
omitted, the ASCII value 0 (30hex) is returned.
Note: The syntax for the *IDN? response is Arbitrary ASCII Response Data. The IEEE
488.2 standard requires this data type to be terminated with a Response Message
Terminator. Therefore, controllers should send the *IDN? query as the last query
message unit in a terminated program message. If not, the device will generate a Query
Error and the response to the following queries will not be sent.
COM3003_SCPI_EXT_GB_V100.doc 20/ 25
ZERA IEEE-488.2 Common Commands LOH/10.03
5.6 *OPC
The Operation Complete command allows for message synchronisation between a
controller and one or more devices. The receipt of the *OPC command causes the
instrument to set the Operation Complete bit (OPC, bit 0) in the Standard Event Status
register to True when all selected pending operations are terminated. This implies that
all device operations initiated by previously executed programming commands have
been entirely completed or aborted. A power-on cycle, a 'device clear active state'
message, a *CLS or a *RST will reset the OPC signalling mechanism.
The *OPC command is to be sent as the last message unit in a terminated program
message. The *OPC operation may not function properly if other commands follow the
*OPC command.
5.7 *OPC?
The Operation Complete query allows for message synchronisation between a controller
and one or more devices. The receipt of the *OPC query causes the instrument to place
the ASCII character 1 (31hex) in the Output Queue when all selected pending operations
are terminated. This implies that all device operations initiated by previously executed
programming commands have been entirely completed or aborted. A power-on cycle, a
'device clear active state' message, a *CLS or a *RST will reset the OPC signalling
mechanism.
5.8 *RST
The Reset command sets the device operations and functions to a known state.
Together with the Interface Clear (IFC) message, the 'device clear active state' (dcas)
message, the Clear Status (*CLS) command, and, for SCPI instruments, the
STATus:PRESet command, the *RST command is part of the overall reset strategy of
the instrument. The *RST command does not affect the functionality associated with
memorised settings, the instrument configuration, the status system, or the Output
Queue, as listed below.
In particular, the *RST command:
• sets the instrument functionality to a fixed *RST condition as specified for each
programmable function
• sets the trigger macro as defined by the *DDT command to a device-defined state
• places the trigger sequences of SCPI instruments into the IDLE state
• disables the execution of macros (*EMC 0)
• aborts the Operation Complete signalling mechanism initiated by the *OPC
command or *OPC? Query
Explicitly excluded from being affected by the *RST command are:
• the state of any GPIB interface function, including the primary and secondary bus
address
COM3003_SCPI_EXT_GB_V100.doc 21/ 25
ZERA IEEE-488.2 Common Commands LOH/10.03
Note: Formally, a non-decimal numeric value is not allowed. However, rather than
generating a Command Error, instruments may accept a non-decimal numeric value as
a legal parameter data type. Because register bit settings can be best expressed as a
hexadecimal value, this is a more user-friendly programming practice.
5.10 *SRE?
The Service Request Enable query returns a decimal value, which reflects the bit values
of the Service Request Enable register when expressed in base 2. The returned value is
an NR1 response data type. The value of bit position 6 is always set to 0. SCPI
instruments may implement the FORMat:SREGister command to allow for the selection
of other response data types.
COM3003_SCPI_EXT_GB_V100.doc 22/ 25
ZERA IEEE-488.2 Common Commands LOH/10.03
5.11 *STB?
The Read Status Byte query returns a decimal value, which reflects the bit values of the
Status Byte register when expressed in base 2. At bit position 6, the Master Summary
Status (MSS) is returned. The returned result is an NR1 response data type. Executing
the *STB? query does not directly affect the contents of the Status Byte register. SCPI
instruments may implement the FORMat:SREGister command to allow for the selection
of other response data types.
Note: Formally, a non-decimal numeric value is not allowed. However, rather than
generating a Command Error, instruments may accept a non-decimal numeric value as
a legal parameter data type. Because register bit settings can be best expressed as a
hexadecimal value, this is a more user friendly programming practice.
5.12 *TST?
The SeIf-Test query allows the user to perform an internal self-test of the instrument and
to retrieve the test result. The execution of the self-test does not require any interaction
with a local operator.
The response to the *TST? query is a decimal numeric, using the NR1 data type. A
returned value of zero (0) indicates that the test successfully completed without any
errors detected. A returned non-zero value indicates that the test did not complete or did
complete with errors detected. In this case, the returned value may specify the reason for
the failure.
5.13 *WAI
The Wait-to-Continue command allows for message synchronisation between a
controller and a device. The receipt of the *WAl command causes the instrument to
prevent execution of any further programming commands until all selected pending
operations have been completed. This implies that all device operations initiated by
previous programming commands must first be completed or aborted. As such, the
*WAl command forces the sequential execution of programming messages.
COM3003_SCPI_EXT_GB_V100.doc 23/ 25
ZERA Error Messages LOH/10.03
6 Error Messages
An event/error queue (fifo) is provided by the System Instrument Model of SCPI. The
SCPI implementation of our COM3003 allows 10 events to be stored.
Overload conditions of the device are reported via the Questionable Status System of
SCPI. Voltage overload will set Bit8, current overload will set Bit9 of the Questionable
Condition Register. Parallel the Device specific error in the event queue is set. If
programmed these conditions will force a service request of the device.
COM3003_SCPI_EXT_GB_V100.doc 24/ 25
ZERA History LOH/10.03
7 History
COM3003_SCPI_EXT_GB_V100.doc 25/ 25