Keysight Technologies Accelerate Program Development using

Keysight Technologies Accelerate Program Development using
Keysight Technologies
Accelerate Program Development
using Keysight Command Expert
with MATLAB
Application Note
Introduction
Keysight Command Expert for fast and easy
instrument control!
Keysight Technlologies, Inc. Command Expert is a FREE software application that
provides fast and easy instrument control in many PC application environments.
Command Expert combines instrument command sets, command sequences,
documentation, syntax checking, and command execution in one simple interface.
Command Expert helps you to:
–– Find instrument commands
–– Access command documentation
–– Verify command syntax
–– Build instrument command sequences
–– Execute instrument command sequences
–– Integrate sequences into the MATLAB, Visual Studio, Excel, LabVIEW, Keysight VEE, or Keysight SystemVue PC application environment
–– Generate code for command sequences in MATLAB, Visual C#, Visual Basic .NET, and Visual C/C++
–– Profile command execution time
–– Debug command sequences using breakpoints and single-stepping
Instrument command sets are available for instruments that use Standard
Commands for Programmable Instrumentation (SCPI) or IVI-COM drivers.
This application note
contains two main
sections:
–– Command Expert Basics
Introduces you to the
Command Expert user
interface and shows an
example sequence.
–– Command Expert in the
MATLAB Environment
Describes how to how
to run Command Expert
sequences from MATLAB and
automatically generate code
for use with the MATLAB
Instrument Control Toolbox.
03 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
Command Expert Basics
This section describes how to download, install, and start Command Expert, and uses an
example sequence to show the features of the Command Expert user interface.
Figure 1. Command Expert and MATLAB Integration
Downloading and Installing the Software
1. Download and install the Keysight IO Libraries Suite (Version 15.0 or above).
This software is required by Command Expert to find and communicate with
instruments. You can download Keysight IO Libraries Suite from
www.keysight.com/find/iosuite.
2. Install MATLAB and MATLAB Instrument Control Toolbox. Command Expert can
be used with MATLAB R2009a (or above) with Instrument Control Toolbox.
3. Download and install Command Expert. If MATLAB is already installed, the
Command Expert MATLAB Add-On will be installed automatically. You can
download Command Expert from www.keysight.com/find/commandexpert.
Figure 2. Command Expert Icon
04 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
Starting Command Expert
Click Start > All Programs > Keysight Command Expert > Keysight Command Expert.
The Command Expert opening window (Welcome Window) is shown below.
Command Expert comes with a number of preconfigured examples for popular instruments. The installation software installs an example instrument named N6700 that provides the commands for the Keysight N6700B Power Supply. We will use this instrument
and the N6700_PowerSupply_OutputSetup example to introduce you to the Command
Expert user interface.
Figure 3. Command Expert Welcome Window
Internet access and command sets
The N6700 instrument and its SCPI command set are installed by default. For
other instrument examples, you will be prompted to install the instrument’s
command set. After installing Command Expert, you will need Internet access to
download SCPI command sets or IVI-COM instrument drivers for your instruments.
If you work in a secure environment with limited Internet access, you can still
use Command Expert. Simply download the SCPI command sets or IVI-COM
instrument drivers using a computer with internet access. You can then transfer
the command sets or drivers to the computer with no internet access (using a USB
drive, for example).
05 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
The Command Sequence
The command sequence for the N6700_PowerSupply_OutputSetup example is shown
in the Sequence Pane in the graphic below. A Command Expert sequence is a series of
steps that are executed in order to connect to an instrument, configure an instrument,
set outputs, and perform measurements.
Figure 4. Command Expert User Interface Overview
–– The Instruments Pane shows your instruments and lets you connect to them.
–– The Search/Browse Pane shows you the commands for the selected instrument and lets you
search for commands.
–– The Command Pane shows the selected command and its documentation, and lets you execute
the command.
–– The Status Bar shows progress messages as Command Expert performs operations.
–– The Parameters Pane expands to show sequence parameters and lets you view and edit their
names and values.
–– The Sequence Pane shows the various steps in the Command Expert sequence and lets you
edit the sequence and replay commands. The Sequence Pane has the following features:
06 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
The Command Sequence (continued)
Figure 5. Sequence Pane Details
Working offline
The absence of a specific instrument address in step 1 of the sequence shown above
indicates that we are working offline. To connect to an actual instrument, select
step 1 in the Sequence Pane, and enter the instrument address in the address field
in the Command Pane.
Working offline is a simulation mode where you can view and perform commands
as usual, but the commands return default values. This is a good way to explore a
command set, view documentation, and prototype sequences without having to
connect to a physical instrument.
07 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
Sequence Steps
Selecting a step in the Sequence Pane reveals details about the command and its
parameters.
Figure 6. Command Details
Command Expert uses these types of steps:
–– Connect steps (to connect to instruments)
–– Command steps (SCPI or IVI-COM commands)
–– Wait statements
–– Comments
–– Steps to control timeouts and error handling
08 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
Sequence Debugging
You can debug a sequence by inserting breakpoints. When you run the sequence,
execution pauses at the first step with a breakpoint and Command Expert enters singlestep mode. In single-step mode you can single-step the sequence, monitor parameters
and results, replay the sequence, and play selected steps. When you are ready to run
the sequence without pausing at the breakpoint, remove the breakpoint and run the
sequence normally.
Figure 7. Debugging the Sequence
You can also skip steps to help with debugging.
Substituting an instrument
You can temporarily switch command sets in a sequence to see the effects of
switching to a different instrument. Any commands that aren’t supported by the
new instrument are highlighted in red.
09 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
Using IVI-COM
If you prefer, you can use IVI-COM commands instead of SCPI commands. Command
Expert has a number of IVI-COM examples and the operation is very similar to SCPI.
The example below (filename: AgN67xx_PowerSupply_OutputSetup.xlsx) uses IVI-COM
commands:
Figure 8. IVI-COM Commands
IVI-COM command sets and drivers
IVI-COM command sets are automatically extracted from IVI-COM drivers. You
must install an IVI-COM driver (outside of Command Expert) before you can use the
driver’s command set in Command Expert.
You can download Keysight IVI-COM drivers from www.keysight.com/find/ivi.
10 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
Using IVI-COM (continued)
The Command Expert IVI-COM interface is very similar to the SCPI interface. All elements
within the interface operate as described earlier in this application note. For more
information, see Command Expert for IVI-COM Tutorial in the Command Expert help:
Figure 9. IVI-COM Help
Using Command Expert with Non-Keysight Instruments
You can use Command Expert with any SCPI instrument that follows the SCPI-99 standard, using the Generic SCPI-99 Instrument command set. This command set provides
the commands that are common to SCPI-99 instruments.
You can also use direct commands to send additional SCPI commands. Using direct commands, you can send any SCPI command to any SCPI instrument.
Any instrument that has an IVI-COM driver can be used with Command Expert, regardless
of the manufacturer.
Getting Started with Command
Expert
To get started using Command Expert, you
can start with one of the many example
sequences and modify that sequence, or
you can create your own sequence. For
a step-by-step tutorial showing how to
create a sequence, see Command Expert
Tutorial in the Command Expert help:
Figure 10. Command Expert Tutorial
11 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
Command Expert in the MATLAB Environment
You can use Command Expert to help automate instrument control in MATLAB using
either or both of
these approaches:
–– Running Command Expert sequences in MATLAB
–– Generating MATLAB code from Command Expert
Running Command Expert Sequences in MATLAB
The Command Expert MATLAB Add-On provides a set of MATLAB functions that let you
run Command Expert sequences from MATLAB. The advantages of this approach are:
–– You can run an entire sequence from a single MATLAB command line.
–– The sequence can contain SCPI commands and/or IVI-COM.
–– There is no generated code to keep in sync with the Command Expert sequence.
You just update the Command Expert sequence as needed.
–– The Command Expert MATLAB Add-On handles translation between MATLAB data
types and the inputs/outputs of the SCPI and IVI-COM commands.
The limitation of this approach is that the Command Expert MATLAB Add-On only works
on Windows operating systems.
Using agRunSequence
The agRunSequence function allows you to run a Command Expert sequence from
MATLAB. For example, this command runs the Command Expert OutputSetup.iseq
sequence:
agRunSequence(‘OutputSetup’)
You can pass input parameters into the Command Expert sequence from MATLAB, and
return sequence outputs from Command Expert to MATLAB. In the following example,
the waveform, voltageMax, voltageMin, voltageAverage, xIncrement parameters are
output parameters from the Command Expert sequence (measurement data) and the
address, range, offset, recordSize, sampleRate are input parameters for the Command
Expert sequence.
12 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
Command Expert in the MATLAB Environment (continued)
Figure 11. Sequence Input and Output Parameters
The above example and a number of other examples showing agRunSequence are located in:
C:\Documents and Settings\All Users\Keysight\Command Expert\Examples (for Windows XP)
C:\ProgramData\Keysight\Command Expert\Examples (for Windows 7)
MATLAB examples are in these subfolders:
…\Scpi\MATLAB (SCPI examples)
…\IviCom\MATLAB (IVI-COM examples)
Other MATLAB Functions
In addition to agRunSequence, these functions are also available in the add-on:
–– agResetConnections - resets all Command Expert instrument connections.
–– agInstallCommandSets - installs any missing command set(s) for the sequence.
–– agSequenceInfo - displays information about the sequence.
–– agDefault - constructs a default argument object; the corresponding parameter’s default
value is used when running the sequence.
–– agSequence – (for advanced users) constructs a Command Expert sequence object.
13 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
Getting Help on Functions
To display information about any add-on function, including descriptions, syntax, and
examples, type help <function> in the MATLAB Command Window. For example:
Figure 12. Getting Help on Functions
For More Information
For a step-by-step tutorial, see Tutorial – Running Sequences in MATLAB in the
Command Expert help:
Figure 13. Tutorial -- Running Sequences in MATLAB
14 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
Generating Code from Command Expert
You can use Command Expert to generate code from SCPI command sequences. This
allows you to efficiently develop and test instrument command sequences before
incorporating the code into the MATLAB Instrument Control Toolbox.
The advantages of the code generation approach are:
–– The generated code can be used on Windows and non-Windows platforms.
–– If you have already written instrument control code using the MATLAB Instrument Control
Toolbox, the generated code will be a closer fit with your existing code.
The limitations of this approach are:
–– The generated code can get out of sync with the Command Expert sequence. That is, code
edits made in either Command Expert application or MATLAB application are not automatically
reflected in the other application.
–– MATLAB code generation is available for SCPI command sequences only. You cannot generate
MATLAB code from an IVI-COM command sequence. You can, however, run a Command Expert
IVI-COM sequence from MATLAB using the agRunSequence function as described earlier in this
application note.
The steps for generating code are (these steps are described in detail in the following
example):
1. Create a SCPI command sequence in Command Expert.
2. E xport the sequence to the clipboard with MATLAB calls to Instrument Control
Toolbox enabled.
3. Paste the generated code into a MATLAB file (also called a .m file).
You can then run the function, modify it, or use it in your application.
MATLAB Code Generation Example
The following steps use the SCPI N6700_PowerSupply_OutputSetup example to show
how to generate and paste code into a MATLAB file.
1. If not already open, open the N6700_PowerSupply_OutputSetup example from
the Command Expert Welcome Window.
2. The example opens with the SCPI commands listed (default mode). This example
sets the output voltage and current of a Keysight N6700B Power Supply:
15 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
MATLAB Code Generation Example (continued)
Figure 14. N6700 Example
3. Click File > Export Sequence… and select MATLAB with calls to Instrument Control Toolbox:
16 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
MATLAB Code Generation Example (continued)
Figure 15. Exporting the Sequence (MATLAB with calls to Instrument Control Toolbox)
4. Click Copy to Clipboard followed by Close. The MATLAB calls (such as fprint and
sprint) are automatically added to the sequence and the sequence is copied to the
clipboard.
When Command Expert generates code:
–– The generated code for skipped statements is commented out.
–– Comments in a sequence become comments in the generated code.
–– Wait statements become calls to appropriate library functions.
5. You can now paste this code into a MATLAB file. The following graphic shows the
generated code from the N6700_PowerSupply_OutputSetup example pasted into
a MATLAB file:
17 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
MATLAB Code Generation Example (continued)
Figure 16. Generated Code Pasted into a MATLAB File
For More Information
For a step-by-step tutorial, see Tutorial - Generating MATLAB Code in the Command Expert help:
Figure 17. Tutorial - Generating MATLAB Code
18 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
Where to Go Next
An easy way to get started using Command Expert with MATLAB is to browse through
the example folders and select an example that is similar to your test and measurement
application. Examples are located in:
C:\Documents and Settings\All Users\Keysight\Command Expert\Examples (for Windows XP)
C:\ProgramData\Keysight\Command Expert\Examples (for Windows 7)
MATLAB examples are in these subfolders:
…\Scpi\MATLAB (SCPI examples)
…\IviCom\MATLAB (IVI-COM examples)
Command Expert has extensive application documentation containing FAQs, tutorials,
examples, and getting started information. You can use one of these tutorials, available
in the Command Expert help, for step-by-step information on how to use Command
Expert with MATLAB:
–– Tutorial – Running Sequences in MATLAB
–– Tutorial – Generating MATLAB Code
You can find more information on Command Expert, including links to other application
notes, at www.keysight.com/find/commandexpert.
19 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
Command Expert PC Operating Requirements
Operating System
Windows XP, Service Pack 2 or above, 32-bit only.
Editions: Home, Professional
Windows 7, 32-bit or 64-bit.
Editions: Starter, Home Basic, Home Premium, Professional,
Ultimate, or Enterprise
Disk
At least 1GB free disk space
Keysight IO Libraries Suite
Version 15.0 or above www.keysight.com/find/iosuite
Monitor
At least 1024x768 monitor resolution
Browser
Internet Explorer 6 or above (7 or above recommended)
You can find the current list of instrument SCPI command sets at:
www.keysight.com/find/commandsetlist
Application Development Environment Requirements
MATLAB
MATLAB R2009a or above and Instrument Control Toolbox
Visual Studio
Visual Studio 2005, 2008, 2010 or above
LabVIEW
LabVIEW 8.2.1 or above.
VEE
VEE Pro 9.22 or above.
Excel
Excel 2007 or Excel 2010.
Download Command Expert now and experience fast and easy instrument control:
www.keysight.com/find/commandexpert
20 | Keysight | Accelerate Program Development using Keysight Command Expert with MATLAB - Application Note
myKeysight
www.keysight.com/find/mykeysight
A personalized view into the information most relevant to you.
Keysight Assurance Plans
www.keysight.com/find/AssurancePlans
Up to five years of protection and no budgetary surprises to ensure your
instruments are operating to specification so you can rely on accurate
measurements.
www.keysight.com/quality
Keysight Technologies, Inc.
DEKRA Certified ISO 9001:2008
Quality Management System
Keysight Channel Partners
www.keysight.com/find/channelpartners
Get the best of both worlds: Keysight’s measurement expertise and product
breadth, combined with channel partner convenience.
Microsoft is a trademark or registered trademark of Microsoft Corporation in
the United States and/or other countries.
Visual Studio is a trademark or registered trademark of Microsoft Corporation
in the United States and/or other countries.
Visual C++, Visual C#, and Visual Basic are trademarks or registered
trademarks of Microsoft Corporation in the United States and/or other
countries.
www.keysight.com/find/commandexpert
For more information on Keysight
Technologies’ products, applications or
services, please contact your local Keysight
office. The complete list is available at:
www.keysight.com/find/contactus
Americas
Canada
Brazil
Mexico
United States
(877) 894 4414
55 11 3351 7010
001 800 254 2440
(800) 829 4444
Asia Pacific
Australia
China
Hong Kong
India
Japan
Korea
Malaysia
Singapore
Taiwan
Other AP Countries
1 800 629 485
800 810 0189
800 938 693
1 800 112 929
0120 (421) 345
080 769 0800
1 800 888 848
1 800 375 8100
0800 047 866
(65) 6375 8100
Europe & Middle East
Austria
Belgium
Finland
France
Germany
Ireland
Israel
Italy
Luxembourg
Netherlands
Russia
Spain
Sweden
Switzerland
United Kingdom
0800 001122
0800 58580
0800 523252
0805 980333
0800 6270999
1800 832700
1 809 343051
800 599100
+32 800 58580
0800 0233200
8800 5009286
0800 000154
0200 882255
0800 805353
Opt. 1 (DE)
Opt. 2 (FR)
Opt. 3 (IT)
0800 0260637
For other unlisted countries:
www.keysight.com/find/contactus
(BP-07-10-14)
This information is subject to change without notice.
© Keysight Technologies, 2012 - 2014
Published in USA, August 2, 2014
5991-0502EN
www.keysight.com
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement