Keysight DigitalTestApps Programming Getting Started
Keysight DigitalTestApps Programming Getting Started
Programming
Getting Started
Notices
Keysight Technologies, Inc. 2008-2014
Version 03.30.0000
Ed ition
October 1, 2014
Available in electronic format only
Published by:
Keysight Technologies, Inc.
1900 Garden of the Gods Road
Colorado Springs, CO 80907 USA
Warranty
The material contained in this document is provided as is, and is subject
to being changed, without notice, in
future ed itions. Further, to the maximum extent permitted by applicable
law, Keysight d isclaims all warranties,
either express or implied, with regard
to this manual and any information
contained herein, includ ing but not
limited to the implied warranties of
merchantability and fitness for a particular purpose. Keysight shall not be
liable for errors or for incidental or
consequential damages in connection
with the furnishing, use, or performance of this document or of any information contained herein. Should
Keysight and the user have a separate
written agreement with warranty terms
covering the material in this document
that conflict with these terms, the warranty terms in the separate agreement
shall control.
Technology Licenses
The hardware and/or software described in
this document are furnished under a license
and may be used or copied only in accordance with the terms of such license.
Safety Notices
CAUTION
A CAUTION notice denotes a hazard.
It calls attention to an operating
procedure, practice, or the like that,
if not correctly performed or
adhered to, could result in damage
to the product or loss of important
data. Do not proceed beyond a CAUTION notice until the indicated conditions are fully understood and
met.
WARNING
A WARNING notice denotes a hazard. It calls attention to an operating procedure, practice, or the like
that, if not correctly performed or
adhered to, could resul t in personal
injury or death. Do not proceed
beyond a WARNING notice until the
ind icated cond itions are fully
understood and met.
In This Book
This book is an introduction to the Keysight DigitalTestApps Remote Programming
Interface. For more information, please see the Keysight DigitalTestApps
Programming Guide.
Contents
In This Book / 3
1 Introduction to Programming
How to Use This Toolkit / 8
Remote Development Toolkit / 8
Usage Scenarios / 8
System Requirements / 12
On the Server / 12
On the Client / 13
Programming Languages / 14
ARSL / 14
.NET / 15
Python / 15
LabVIEW / 15
Index
Keysight DigitalTestApps
Programming Getting Started
1 Introduction to Programming
How to Use This Toolkit / 8
System Requirements / 12
Programming Languages / 14
Running tests.
Getting results.
2 Create a custom remote client containing commands written in a .NET 2.0 (or
environment.
Introduction to Programming
NOTE
After installing the toolkit on your development computer, you can access its contents by
using either the "Keysight Automated DigitalTest App Remote Toolkit" shortcut on your
desktop or the Start menu path: All Programs > Keysight DigitalTest Applications > Remote
Development Toolkit.
Usage Scenarios
If one of the following scenarios describes what you need to do, read the topics
listed in the section to learn more about it.
Chapter 1:
Chapter 1:
Opening paragraphs
Introduction to Programming
Chapter 3:
Chapter 4:
All
Chapter 1:
Chapter 1:
Opening paragraphs
Chapter 2:
All
Troubleshooting:
As needed.
Chapter 1:
Chapter 1:
Opening paragraphs
.NET Interface
Chapter 3:
Microsoft .NET
Chapter 4:
All
Introduction to Programming
Chapter 1:
Chapter 1:
Opening paragraphs
.NET Interface
Chapter 3:
Python
Chapter 4:
All
Chapter 1:
Chapter 1:
Opening paragraphs
.NET Interface
Chapter 3:
Chapter 4:
10
Microsoft .NET
All
Chapter 5:
Introduction to Programming
Troubleshooting:
As needed.
I am using LabVIEW
In this Getting Started Guide, see:
Chapter 1:
Chapter 1:
Opening paragraphs
LabVIEW Interface
Chapter 4:
All
Chapter 5:
Troubleshooting:
As needed.
11
Introduction to Programming
System Requirements
This section describes how to configure the computers on which the automated
test application and the remote client program are running to enable remote
control of the automated test application.
On the Server
For automated test applications that run directly on a Windows-based
oscilloscope, "machine" below refers to the oscilloscope. For automated test apps
that run on a separate computer, "machine" below means refers to that computer.
1 Your client computer must be able to access the machine via your network.
2 (Real-time 9xxx and 9xxxx Series Infiniium versions 3.19 and older only, Remote
Interface versions 1.90 and older only) An automated test application remote
control license must be installed on the oscilloscope.
NOTE
A single application remote control license enables control of all remote-capable automated
test applications installed on the oscilloscope.
To purchase an N5452A remote programming option license, please visit
"www.keysight.com/find/scope-apps".
3 A remote-capable automated test application must be installed on the machine
4 The Windows Firewall on the machine must have these port exceptions defined
(Infiniium real-time only) Use the Infiniium menu system: Analyze >
Automated Test Apps > (application name)
- or -
(FlexDCA only) Use the FlexDCA menu system: Apps > Automated Test Apps
> (application name)
- or -
12
Introduction to Programming
(Infiniium real-time only) Use the Infiniium offline menu system: Analyze >
Automated Test Apps > (application name)
- or -
(FlexDCA only) Use the FlexDCA menu system: Apps > Automated Test Apps
> (application name)
On the Client
The "computer" below refers to the PC on which you are running your remote
client program.
1 The computer must be able to access the server (defined above) via your
network.
13
Introduction to Programming
Programming Languages
You may program a Keysight DigitalTest app using different languages, according
to your preferences and requirements:
ARSL
ARSL commands are SCPI-like text that enable you to automate an application
with a minimum of programming expertise. They may be sent to an automated test
application using either of the following methods:
1 Using the ARSL Command Line Utility.
This tool is provided in the Remote Development Toolkit in the "Tools" folder
and is executed in a Command Prompt window.
Here is an example of an ARSL command being executed in the utility:
In the example, the utility is running on a PC, the automated test application is
running on an oscilloscope at IP address 130.29.70.35, and the command
being sent is a property query to discover the version of the app's remote
interface (1.20).
ARSL syntax has a simple mapping to .NET languages and can be used to query
and set properties and execute methods, even those with custom type
parameters.
You may execute files containing scripts of ARSL commands, too.
ARSL is appropriate to use only when you do not require conditional or looping
algorithms or callback constructs, such as event subscriptions. If you need
these additional capabilities, use .NET programming.
In addition to providing the ARSL Command Line Utility itself, the Toolkit also
provides the Visual Studio project and source code used to build the tool.
2 Using the .NET API method, ExecuteArsl().
14
Introduction to Programming
.NET
Use of a .NET language enables access to the full spectrum of automated test
application programming capabilities, although it does require software
programming skills.
Here is an example of a C#-based remote client, the "Simple GUI Remote Client":
Python
You may use the Python programming language to automate Keysight
oscilloscopes as well. By adding the "Python for .NET" module, which is
compatible with versions up to 2.7, you can develop scripts using both "method
call" and SCPI-like "text based" paradigms.
LabVIEW
Remote Clients constructed using National Instrument's LabVIEW graphical
programming environment are also possible. Please see the Toolkit for details.
15
16
Introduction to Programming
Index
Symbols
.NET programming languages, 15
A
application name, 13
ARSL programming language, 14
Automation tab, commands for, 8
C
client requirements, 13
I
in this book, 3
introduction to programming, 7
K
Keysight.DigitalTestApps.Framework.Remot
e.dll, 13
L
LabVIEW 8.5, 13
LabVIEW programming language, 15
LabVIEW, using, 11
languages, programming, 14
licensing requirements, 12
R
remote client, Microsoft .NET, 10
remote client, sample, 9
remote development toolkit, 8
requirements, 12
requirements, client, 13
requirements, server, 12
S
sample remote client, 9
scenarios, usage, 8
server requirements, 12
system requirements, 12
T
test harness, .NET assemblies, 9
test harness, Python, 10
toolkit, how to use, 8
U
usage scenarios, 8
W
Windows Firewall exceptions, 12
M
Microsoft .NET 2.0, 13
N
notices, 3
P
programming languages, 14
17
Index
18